From bed84daeb2eb2872d277edf5bee8ab2217a61516 Mon Sep 17 00:00:00 2001 From: Denis Kara Date: Mon, 16 Mar 2026 16:53:56 +0100 Subject: [PATCH 1/5] Update requirements.txt --- .../packages/site-packages/requirements.txt | 41 ++++++++++--------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/addons/source-python/packages/site-packages/requirements.txt b/addons/source-python/packages/site-packages/requirements.txt index a26fd0ab4..95e277b26 100644 --- a/addons/source-python/packages/site-packages/requirements.txt +++ b/addons/source-python/packages/site-packages/requirements.txt @@ -1,30 +1,31 @@ -alabaster==1.0.0 -babel==2.17.0 -certifi==2025.1.31 -charset-normalizer==3.4.1 +alabaster==1.0.0 +babel==2.18.0 +certifi==2026.2.25 +charset-normalizer==3.4.6 colorama==0.4.6 configobj==5.0.9 -docutils==0.21.2 -greenlet==3.2.0 -idna==3.10 -imagesize==1.4.1 +docutils==0.22.4 +greenlet==3.3.2 +idna==3.11 +imagesize==2.0.0 Jinja2==3.1.6 -MarkupSafe==3.0.2 +MarkupSafe==3.0.3 mutagen==1.47.0 -packaging==24.2 -path==17.1.0 -Pygments==2.19.1 -PyMySQL==1.1.1 -requests==2.32.3 -roman-numerals-py==3.1.0 -snowballstemmer==2.2.0 -Sphinx==8.2.3 +packaging==26.0 +path==17.1.1 +Pygments==2.19.2 +PyMySQL==1.1.2 +requests==2.32.5 +roman-numerals==4.1.0 +roman-numerals-py==4.1.0 +snowballstemmer==3.0.1 +Sphinx==9.1.0 sphinxcontrib-applehelp==2.0.0 sphinxcontrib-devhelp==2.0.0 sphinxcontrib-htmlhelp==2.1.0 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 -SQLAlchemy==2.0.40 -typing_extensions==4.13.2 -urllib3==2.4.0 \ No newline at end of file +SQLAlchemy==2.0.48 +typing_extensions==4.15.0 +urllib3==2.6.3 From 96a811030b7eaa56614d5e0be35560198e7c630a Mon Sep 17 00:00:00 2001 From: Denis Kara Date: Mon, 16 Mar 2026 16:56:45 +0100 Subject: [PATCH 2/5] Remove roman-numerals-py This package is deprecated, therefore switched to roman-numerals. --- addons/source-python/packages/site-packages/requirements.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/addons/source-python/packages/site-packages/requirements.txt b/addons/source-python/packages/site-packages/requirements.txt index 95e277b26..5be95b1a8 100644 --- a/addons/source-python/packages/site-packages/requirements.txt +++ b/addons/source-python/packages/site-packages/requirements.txt @@ -17,7 +17,6 @@ Pygments==2.19.2 PyMySQL==1.1.2 requests==2.32.5 roman-numerals==4.1.0 -roman-numerals-py==4.1.0 snowballstemmer==3.0.1 Sphinx==9.1.0 sphinxcontrib-applehelp==2.0.0 From bae1ff2a426caafc22b6b47e040608d78e35f685 Mon Sep 17 00:00:00 2001 From: Denis Kara Date: Mon, 16 Mar 2026 17:34:10 +0100 Subject: [PATCH 3/5] Update missing psycopg2 --- addons/source-python/packages/site-packages/requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/source-python/packages/site-packages/requirements.txt b/addons/source-python/packages/site-packages/requirements.txt index 5be95b1a8..5c60c7afd 100644 --- a/addons/source-python/packages/site-packages/requirements.txt +++ b/addons/source-python/packages/site-packages/requirements.txt @@ -13,6 +13,7 @@ MarkupSafe==3.0.3 mutagen==1.47.0 packaging==26.0 path==17.1.1 +psycopg2==2.9.11 Pygments==2.19.2 PyMySQL==1.1.2 requests==2.32.5 From fe241b344e7878a3f453e436b6589e28415c1475 Mon Sep 17 00:00:00 2001 From: Denis Kara Date: Mon, 16 Mar 2026 17:57:06 +0100 Subject: [PATCH 4/5] Update site-packages (16.03.2026) --- .../packages/site-packages/babel/__init__.py | 24 +- .../packages/site-packages/babel/core.py | 255 +- .../packages/site-packages/babel/dates.py | 375 +- .../packages/site-packages/babel/global.dat | Bin 459316 -> 461219 bytes .../packages/site-packages/babel/languages.py | 10 +- .../packages/site-packages/babel/lists.py | 35 +- .../site-packages/babel/locale-data/cop.dat | Bin 0 -> 693 bytes .../babel/locale-data/cop_EG.dat | Bin 0 -> 679 bytes .../site-packages/babel/locale-data/da.dat | Bin 171756 -> 171762 bytes .../site-packages/babel/locale-data/en.dat | Bin 217633 -> 220701 bytes .../babel/locale-data/en_001.dat | Bin 31614 -> 31616 bytes .../site-packages/babel/locale-data/en_AU.dat | Bin 20023 -> 19022 bytes .../site-packages/babel/locale-data/en_CA.dat | Bin 37924 -> 37942 bytes .../site-packages/babel/locale-data/en_CZ.dat | Bin 0 -> 713 bytes .../babel/locale-data/en_Dsrt.dat | Bin 38656 -> 38658 bytes .../site-packages/babel/locale-data/en_ES.dat | Bin 0 -> 712 bytes .../site-packages/babel/locale-data/en_FR.dat | Bin 0 -> 714 bytes .../site-packages/babel/locale-data/en_GS.dat | Bin 0 -> 1168 bytes .../site-packages/babel/locale-data/en_HU.dat | Bin 0 -> 713 bytes .../site-packages/babel/locale-data/en_IT.dat | Bin 0 -> 712 bytes .../site-packages/babel/locale-data/en_NO.dat | Bin 0 -> 1010 bytes .../site-packages/babel/locale-data/en_PL.dat | Bin 0 -> 1038 bytes .../site-packages/babel/locale-data/en_PT.dat | Bin 0 -> 1039 bytes .../site-packages/babel/locale-data/en_RO.dat | Bin 0 -> 1020 bytes .../site-packages/babel/locale-data/en_SK.dat | Bin 0 -> 1065 bytes .../babel/locale-data/en_Shaw.dat | Bin 4774 -> 4776 bytes .../site-packages/babel/locale-data/fi.dat | Bin 204853 -> 204853 bytes .../site-packages/babel/locale-data/hi.dat | Bin 221948 -> 221948 bytes .../site-packages/babel/locale-data/ht.dat | Bin 0 -> 812 bytes .../site-packages/babel/locale-data/ht_HT.dat | Bin 0 -> 616 bytes .../site-packages/babel/locale-data/la.dat | Bin 33982 -> 33837 bytes .../site-packages/babel/locale-data/nl.dat | Bin 150031 -> 149984 bytes .../site-packages/babel/locale-data/root.dat | Bin 51983 -> 51999 bytes .../site-packages/babel/locale-data/syr.dat | Bin 111439 -> 111105 bytes .../site-packages/babel/locale-data/yo_BJ.dat | Bin 50036 -> 50090 bytes .../babel/locale-data/yue_Hant_CN.dat | Bin 636 -> 1196 bytes .../babel/locale-data/yue_Hant_MO.dat | Bin 0 -> 636 bytes .../site-packages/babel/localedata.py | 28 +- .../site-packages/babel/localtime/__init__.py | 12 +- .../babel/localtime/_fallback.py | 13 +- .../site-packages/babel/localtime/_unix.py | 2 +- .../site-packages/babel/localtime/_win32.py | 3 +- .../site-packages/babel/messages/__init__.py | 10 +- .../site-packages/babel/messages/catalog.py | 207 +- .../site-packages/babel/messages/checkers.py | 52 +- .../site-packages/babel/messages/extract.py | 233 +- .../site-packages/babel/messages/frontend.py | 443 +- .../site-packages/babel/messages/jslexer.py | 36 +- .../site-packages/babel/messages/mofile.py | 69 +- .../site-packages/babel/messages/plurals.py | 13 +- .../site-packages/babel/messages/pofile.py | 286 +- .../packages/site-packages/babel/numbers.py | 441 +- .../packages/site-packages/babel/plural.py | 57 +- .../packages/site-packages/babel/support.py | 172 +- .../packages/site-packages/babel/units.py | 52 +- .../packages/site-packages/babel/util.py | 58 +- .../site-packages/certifi/__init__.py | 2 +- .../packages/site-packages/certifi/cacert.pem | 783 +-- .../packages/site-packages/certifi/core.py | 33 +- .../site-packages/charset_normalizer/api.py | 364 +- .../charset_normalizer/cd.cp313-win_amd64.pyd | Bin 0 -> 10752 bytes .../site-packages/charset_normalizer/cd.py | 147 +- .../charset_normalizer/cli/__main__.py | 139 +- .../charset_normalizer/constant.py | 278 +- .../charset_normalizer/legacy.py | 25 +- .../charset_normalizer/md.cp313-win_amd64.pyd | Bin 0 -> 10752 bytes .../site-packages/charset_normalizer/md.py | 642 +- .../charset_normalizer/models.py | 21 +- .../site-packages/charset_normalizer/utils.py | 152 +- .../charset_normalizer/version.py | 2 +- .../site-packages/docutils/__init__.py | 152 +- .../site-packages/docutils/__main__.py | 21 +- .../packages/site-packages/docutils/core.py | 311 +- .../site-packages/docutils/examples.py | 76 +- .../site-packages/docutils/frontend.py | 425 +- .../packages/site-packages/docutils/io.py | 289 +- .../docutils/languages/__init__.py | 60 +- .../packages/site-packages/docutils/nodes.py | 2238 ++++-- .../docutils/parsers/__init__.py | 83 +- .../docutils/parsers/docutils_xml.py | 194 + .../site-packages/docutils/parsers/null.py | 8 +- .../docutils/parsers/recommonmark_wrapper.py | 53 +- .../docutils/parsers/rst/__init__.py | 15 +- .../parsers/rst/directives/__init__.py | 92 +- .../parsers/rst/directives/admonitions.py | 12 +- .../docutils/parsers/rst/directives/body.py | 74 +- .../docutils/parsers/rst/directives/images.py | 51 +- .../docutils/parsers/rst/directives/misc.py | 294 +- .../docutils/parsers/rst/directives/parts.py | 9 +- .../parsers/rst/directives/references.py | 5 +- .../docutils/parsers/rst/directives/tables.py | 39 +- .../docutils/parsers/rst/include/README.rst | 17 + .../parsers/rst/include/html-roles.txt | 45 + .../parsers/rst/languages/__init__.py | 31 +- .../docutils/parsers/rst/languages/af.py | 3 +- .../docutils/parsers/rst/languages/da.py | 3 +- .../docutils/parsers/rst/languages/de.py | 3 +- .../docutils/parsers/rst/languages/en.py | 3 +- .../docutils/parsers/rst/languages/eo.py | 3 +- .../docutils/parsers/rst/languages/es.py | 4 +- .../docutils/parsers/rst/languages/fi.py | 4 +- .../docutils/parsers/rst/languages/fr.py | 3 +- .../docutils/parsers/rst/languages/gl.py | 2 +- .../docutils/parsers/rst/languages/it.py | 3 +- .../docutils/parsers/rst/languages/ka.py | 3 +- .../docutils/parsers/rst/languages/lv.py | 4 +- .../docutils/parsers/rst/languages/nl.py | 3 +- .../docutils/parsers/rst/languages/pl.py | 1 - .../docutils/parsers/rst/languages/pt_br.py | 3 +- .../docutils/parsers/rst/languages/sv.py | 4 +- .../docutils/parsers/rst/roles.py | 67 +- .../docutils/parsers/rst/states.py | 517 +- .../docutils/parsers/rst/tableparser.py | 38 +- .../docutils/readers/__init__.py | 72 +- .../site-packages/docutils/readers/doctree.py | 8 +- .../site-packages/docutils/readers/pep.py | 21 +- .../site-packages/docutils/statemachine.py | 125 +- .../docutils/transforms/__init__.py | 39 +- .../docutils/transforms/components.py | 8 +- .../docutils/transforms/frontmatter.py | 48 +- .../site-packages/docutils/transforms/misc.py | 101 +- .../docutils/transforms/parts.py | 29 +- .../site-packages/docutils/transforms/peps.py | 51 +- .../docutils/transforms/references.py | 282 +- .../docutils/transforms/universal.py | 73 +- .../docutils/transforms/writer_aux.py | 48 +- .../site-packages/docutils/utils/__init__.py | 371 +- .../docutils/utils/_roman_numerals.py | 264 + .../site-packages/docutils/utils/_typing.py | 39 + .../docutils/utils/code_analyzer.py | 18 +- .../docutils/utils/math/__init__.py | 10 +- .../docutils/utils/math/math2html.py | 347 +- .../docutils/utils/math/mathml_elements.py | 26 +- .../docutils/utils/math/tex2mathml_extern.py | 26 +- .../docutils/utils/smartquotes.py | 18 +- .../docutils/utils/urischemes.py | 10 +- .../docutils/writers/__init__.py | 202 +- .../docutils/writers/_html_base.py | 674 +- .../docutils/writers/docutils_xml.py | 26 +- .../docutils/writers/html4css1/__init__.py | 213 +- .../writers/html5_polyglot/__init__.py | 89 +- .../writers/html5_polyglot/minimal.css | 23 +- .../docutils/writers/html5_polyglot/plain.css | 5 +- .../writers/html5_polyglot/responsive.css | 35 +- .../writers/html5_polyglot/tuftig.css | 5 +- .../docutils/writers/latex2e/__init__.py | 1304 ++-- .../docutils/writers/latex2e/docutils.sty | 118 +- .../docutils/writers/latex2e/xelatex.tex | 2 +- .../site-packages/docutils/writers/manpage.py | 653 +- .../site-packages/docutils/writers/null.py | 13 +- .../docutils/writers/odf_odt/__init__.py | 648 +- .../docutils/writers/odf_odt/prepstyles.py | 16 +- .../writers/odf_odt/pygmentsformatter.py | 15 +- .../docutils/writers/pep_html/__init__.py | 11 +- .../docutils/writers/pep_html/pep.css | 2 +- .../docutils/writers/pseudoxml.py | 9 +- .../docutils/writers/s5_html/__init__.py | 41 +- .../writers/s5_html/themes/README.rst | 6 + .../docutils/writers/xetex/__init__.py | 33 +- .../site-packages/greenlet/PyGreenlet.cpp | 63 +- .../site-packages/greenlet/PyModule.cpp | 8 +- .../site-packages/greenlet/TGreenlet.cpp | 7 + .../site-packages/greenlet/TGreenlet.hpp | 21 +- .../site-packages/greenlet/TMainGreenlet.cpp | 13 +- .../site-packages/greenlet/TPythonState.cpp | 54 +- .../site-packages/greenlet/TThreadState.hpp | 68 +- .../greenlet/TThreadStateCreator.hpp | 4 +- .../greenlet/TThreadStateDestroy.cpp | 22 +- .../site-packages/greenlet/__init__.py | 2 +- .../greenlet/_greenlet.cp313-win_amd64.pyd | Bin 0 -> 73216 bytes .../site-packages/greenlet/greenlet.cpp | 3 + .../greenlet/greenlet_allocator.hpp | 19 +- .../greenlet/greenlet_cpython_compat.hpp | 16 +- .../greenlet/greenlet_msvc_compat.hpp | 100 + .../greenlet/greenlet_slp_switch.hpp | 4 + .../greenlet/platform/switch_mips_unix.h | 5 +- .../greenlet/platform/switch_riscv_unix.h | 6 +- .../greenlet/slp_platformselect.h | 2 + .../packages/site-packages/idna/codec.py | 2 +- .../packages/site-packages/idna/core.py | 2 +- .../packages/site-packages/idna/idnadata.py | 78 +- .../site-packages/idna/package_data.py | 2 +- .../packages/site-packages/idna/uts46data.py | 1622 +++-- .../site-packages/imagesize/__init__.py | 6 +- .../site-packages/imagesize/imagesize.py | 1081 ++- .../site-packages/markupsafe/__init__.py | 5 +- .../site-packages/markupsafe/_speedups.c | 36 +- .../markupsafe/_speedups.cp313-win_amd64.pyd | Bin 0 -> 13312 bytes .../site-packages/packaging/__init__.py | 2 +- .../site-packages/packaging/_elffile.py | 4 +- .../site-packages/packaging/_manylinux.py | 75 +- .../site-packages/packaging/_musllinux.py | 2 +- .../site-packages/packaging/_parser.py | 35 +- .../site-packages/packaging/_structures.py | 8 + .../site-packages/packaging/_tokenizer.py | 57 +- .../packaging/licenses/__init__.py | 26 +- .../site-packages/packaging/licenses/_spdx.py | 42 +- .../site-packages/packaging/markers.py | 159 +- .../site-packages/packaging/metadata.py | 173 +- .../site-packages/packaging/pylock.py | 635 ++ .../site-packages/packaging/requirements.py | 15 +- .../site-packages/packaging/specifiers.py | 392 +- .../packages/site-packages/packaging/tags.py | 74 +- .../packages/site-packages/packaging/utils.py | 43 +- .../site-packages/packaging/version.py | 420 +- .../packages/site-packages/path/__init__.py | 20 +- .../packages/site-packages/path/masks.py | 4 +- .../packages/site-packages/pip/__init__.py | 6 +- .../site-packages/pip/__pip-runner__.py | 2 +- .../site-packages/pip/_internal/__init__.py | 4 +- .../site-packages/pip/_internal/build_env.py | 472 +- .../site-packages/pip/_internal/cache.py | 35 +- .../pip/_internal/cli/__init__.py | 3 +- .../pip/_internal/cli/autocompletion.py | 20 +- .../pip/_internal/cli/base_command.py | 43 +- .../pip/_internal/cli/cmdoptions.py | 358 +- .../pip/_internal/cli/command_context.py | 7 +- .../pip/_internal/cli/index_command.py | 42 +- .../site-packages/pip/_internal/cli/main.py | 25 +- .../pip/_internal/cli/main_parser.py | 14 +- .../site-packages/pip/_internal/cli/parser.py | 150 +- .../pip/_internal/cli/progress_bars.py | 91 +- .../pip/_internal/cli/req_command.py | 188 +- .../pip/_internal/cli/spinners.py | 86 +- .../pip/_internal/commands/__init__.py | 13 +- .../pip/_internal/commands/cache.py | 57 +- .../pip/_internal/commands/check.py | 3 +- .../pip/_internal/commands/completion.py | 22 +- .../pip/_internal/commands/configuration.py | 44 +- .../pip/_internal/commands/debug.py | 14 +- .../pip/_internal/commands/download.py | 28 +- .../pip/_internal/commands/freeze.py | 6 +- .../pip/_internal/commands/hash.py | 3 +- .../pip/_internal/commands/help.py | 3 +- .../pip/_internal/commands/index.py | 75 +- .../pip/_internal/commands/inspect.py | 8 +- .../pip/_internal/commands/install.py | 186 +- .../pip/_internal/commands/list.py | 101 +- .../pip/_internal/commands/lock.py | 175 + .../pip/_internal/commands/search.py | 42 +- .../pip/_internal/commands/show.py | 39 +- .../pip/_internal/commands/uninstall.py | 3 +- .../pip/_internal/commands/wheel.py | 45 +- .../pip/_internal/configuration.py | 67 +- .../pip/_internal/distributions/base.py | 10 +- .../pip/_internal/distributions/installed.py | 12 +- .../pip/_internal/distributions/sdist.py | 60 +- .../pip/_internal/distributions/wheel.py | 10 +- .../site-packages/pip/_internal/exceptions.py | 232 +- .../pip/_internal/index/__init__.py | 3 +- .../pip/_internal/index/collector.py | 58 +- .../pip/_internal/index/package_finder.py | 274 +- .../pip/_internal/index/sources.py | 31 +- .../pip/_internal/locations/__init__.py | 52 +- .../pip/_internal/locations/_distutils.py | 23 +- .../pip/_internal/locations/_sysconfig.py | 14 +- .../pip/_internal/locations/base.py | 7 +- .../site-packages/pip/_internal/main.py | 4 +- .../pip/_internal/metadata/__init__.py | 75 +- .../pip/_internal/metadata/_json.py | 9 +- .../pip/_internal/metadata/base.py | 53 +- .../_internal/metadata/importlib/_compat.py | 10 +- .../_internal/metadata/importlib/_dists.py | 39 +- .../pip/_internal/metadata/importlib/_envs.py | 86 +- .../pip/_internal/metadata/pkg_resources.py | 25 +- .../pip/_internal/models/__init__.py | 3 +- .../pip/_internal/models/direct_url.py | 47 +- .../pip/_internal/models/format_control.py | 10 +- .../_internal/models/installation_report.py | 7 +- .../pip/_internal/models/link.py | 109 +- .../pip/_internal/models/release_control.py | 92 + .../pip/_internal/models/search_scope.py | 13 +- .../pip/_internal/models/selection_prefs.py | 15 +- .../pip/_internal/models/target_python.py | 19 +- .../pip/_internal/models/wheel.py | 70 +- .../pip/_internal/network/__init__.py | 3 +- .../pip/_internal/network/auth.py | 50 +- .../pip/_internal/network/cache.py | 48 +- .../pip/_internal/network/download.py | 288 +- .../pip/_internal/network/lazy_wheel.py | 25 +- .../pip/_internal/network/session.py | 75 +- .../pip/_internal/network/utils.py | 4 +- .../pip/_internal/network/xmlrpc.py | 7 +- .../operations/build/build_tracker.py | 18 +- .../_internal/operations/build/metadata.py | 3 +- .../operations/build/metadata_editable.py | 3 +- .../pip/_internal/operations/build/wheel.py | 13 +- .../operations/build/wheel_editable.py | 13 +- .../pip/_internal/operations/check.py | 50 +- .../pip/_internal/operations/freeze.py | 21 +- .../_internal/operations/install/__init__.py | 3 +- .../pip/_internal/operations/install/wheel.py | 104 +- .../pip/_internal/operations/prepare.py | 81 +- .../site-packages/pip/_internal/pyproject.py | 76 +- .../pip/_internal/req/__init__.py | 35 +- .../pip/_internal/req/constructors.py | 134 +- .../site-packages/pip/_internal/req/pep723.py | 41 + .../pip/_internal/req/req_dependency_group.py | 75 + .../pip/_internal/req/req_file.py | 82 +- .../pip/_internal/req/req_install.py | 234 +- .../pip/_internal/req/req_set.py | 9 +- .../pip/_internal/req/req_uninstall.py | 48 +- .../pip/_internal/resolution/base.py | 6 +- .../_internal/resolution/legacy/resolver.py | 41 +- .../_internal/resolution/resolvelib/base.py | 29 +- .../resolution/resolvelib/candidates.py | 93 +- .../resolution/resolvelib/factory.py | 137 +- .../resolution/resolvelib/found_candidates.py | 46 +- .../resolution/resolvelib/provider.py | 187 +- .../resolution/resolvelib/reporter.py | 43 +- .../resolution/resolvelib/requirements.py | 24 +- .../resolution/resolvelib/resolver.py | 77 +- .../pip/_internal/self_outdated_check.py | 43 +- .../pip/_internal/utils/appdirs.py | 6 +- .../pip/_internal/utils/compat.py | 8 +- .../pip/_internal/utils/compatibility_tags.py | 47 +- .../pip/_internal/utils/datetime.py | 21 +- .../pip/_internal/utils/deprecation.py | 20 +- .../pip/_internal/utils/direct_url_helpers.py | 4 +- .../pip/_internal/utils/egg_link.py | 11 +- .../pip/_internal/utils/entrypoints.py | 10 +- .../pip/_internal/utils/filesystem.py | 64 +- .../pip/_internal/utils/filetypes.py | 13 +- .../pip/_internal/utils/glibc.py | 11 +- .../pip/_internal/utils/hashes.py | 15 +- .../pip/_internal/utils/logging.py | 80 +- .../site-packages/pip/_internal/utils/misc.py | 110 +- .../pip/_internal/utils/packaging.py | 22 +- .../pip/_internal/utils/pylock.py | 116 + .../pip/_internal/utils/retry.py | 11 +- .../pip/_internal/utils/subprocess.py | 37 +- .../pip/_internal/utils/temp_dir.py | 22 +- .../pip/_internal/utils/unpacking.py | 41 +- .../site-packages/pip/_internal/utils/urls.py | 2 +- .../pip/_internal/utils/virtualenv.py | 5 +- .../pip/_internal/utils/wheel.py | 10 +- .../site-packages/pip/_internal/vcs/bazaar.py | 34 +- .../site-packages/pip/_internal/vcs/git.py | 92 +- .../pip/_internal/vcs/mercurial.py | 45 +- .../pip/_internal/vcs/subversion.py | 43 +- .../pip/_internal/vcs/versioncontrol.py | 111 +- .../pip/_internal/wheel_builder.py | 155 +- .../site-packages/pip/_vendor/README.rst | 180 + .../site-packages/pip/_vendor/__init__.py | 1 + .../pip/_vendor/cachecontrol/LICENSE.txt | 13 + .../pip/_vendor/cachecontrol/__init__.py | 9 +- .../pip/_vendor/cachecontrol/adapter.py | 20 +- .../_vendor/cachecontrol/caches/file_cache.py | 57 +- .../pip/_vendor/cachecontrol/controller.py | 15 +- .../pip/_vendor/cachecontrol/filewrapper.py | 4 +- .../site-packages/pip/_vendor/certifi/LICENSE | 20 + .../pip/_vendor/certifi/__init__.py | 2 +- .../pip/_vendor/certifi/cacert.pem | 953 +-- .../site-packages/pip/_vendor/certifi/core.py | 33 +- .../pip/_vendor/dependency_groups/LICENSE.txt | 9 + .../pip/_vendor/dependency_groups/__init__.py | 13 + .../pip/_vendor/dependency_groups/__main__.py | 65 + .../dependency_groups/_implementation.py | 209 + .../_lint_dependency_groups.py | 59 + .../_vendor/dependency_groups/_pip_wrapper.py | 62 + .../_vendor/dependency_groups/_toml_compat.py | 9 + .../pip/_vendor/dependency_groups/py.typed | 0 .../pip/_vendor/distlib/LICENSE.txt | 284 + .../pip/_vendor/distlib/__init__.py | 4 +- .../pip/_vendor/distlib/scripts.py | 2 +- .../site-packages/pip/_vendor/distro/LICENSE | 202 + .../site-packages/pip/_vendor/idna/LICENSE.md | 31 + .../site-packages/pip/_vendor/idna/codec.py | 2 +- .../site-packages/pip/_vendor/idna/core.py | 2 +- .../pip/_vendor/idna/idnadata.py | 78 +- .../pip/_vendor/idna/package_data.py | 2 +- .../pip/_vendor/idna/uts46data.py | 1622 +++-- .../site-packages/pip/_vendor/msgpack/COPYING | 14 + .../pip/_vendor/msgpack/__init__.py | 4 +- .../pip/_vendor/packaging/LICENSE | 3 + .../pip/_vendor/packaging/LICENSE.APACHE | 177 + .../pip/_vendor/packaging/LICENSE.BSD | 23 + .../pip/_vendor/packaging/__init__.py | 2 +- .../pip/_vendor/packaging/_elffile.py | 4 +- .../pip/_vendor/packaging/_manylinux.py | 75 +- .../pip/_vendor/packaging/_musllinux.py | 2 +- .../pip/_vendor/packaging/_parser.py | 35 +- .../pip/_vendor/packaging/_structures.py | 8 + .../pip/_vendor/packaging/_tokenizer.py | 57 +- .../_vendor/packaging/licenses/__init__.py | 26 +- .../pip/_vendor/packaging/licenses/_spdx.py | 42 +- .../pip/_vendor/packaging/markers.py | 159 +- .../pip/_vendor/packaging/metadata.py | 173 +- .../pip/_vendor/packaging/pylock.py | 635 ++ .../pip/_vendor/packaging/requirements.py | 15 +- .../pip/_vendor/packaging/specifiers.py | 392 +- .../pip/_vendor/packaging/tags.py | 74 +- .../pip/_vendor/packaging/utils.py | 43 +- .../pip/_vendor/packaging/version.py | 420 +- .../pip/_vendor/pkg_resources/LICENSE | 17 + .../pip/_vendor/pkg_resources/__init__.py | 2 +- .../pip/_vendor/platformdirs/LICENSE | 21 + .../pip/_vendor/platformdirs/__init__.py | 40 +- .../pip/_vendor/platformdirs/android.py | 6 +- .../pip/_vendor/platformdirs/api.py | 7 +- .../pip/_vendor/platformdirs/macos.py | 18 +- .../pip/_vendor/platformdirs/unix.py | 5 +- .../pip/_vendor/platformdirs/version.py | 26 +- .../pip/_vendor/platformdirs/windows.py | 8 +- .../pip/_vendor/pygments/LICENSE | 25 + .../pip/_vendor/pygments/__init__.py | 4 +- .../pip/_vendor/pygments/__main__.py | 2 +- .../pip/_vendor/pygments/console.py | 2 +- .../pip/_vendor/pygments/filter.py | 2 +- .../pip/_vendor/pygments/filters/__init__.py | 2 +- .../pip/_vendor/pygments/formatter.py | 2 +- .../_vendor/pygments/formatters/__init__.py | 2 +- .../pip/_vendor/pygments/lexer.py | 2 +- .../pip/_vendor/pygments/lexers/__init__.py | 2 +- .../pip/_vendor/pygments/lexers/_mapping.py | 19 +- .../pip/_vendor/pygments/lexers/python.py | 51 +- .../pip/_vendor/pygments/modeline.py | 2 +- .../pip/_vendor/pygments/plugin.py | 2 +- .../pip/_vendor/pygments/regexopt.py | 2 +- .../pip/_vendor/pygments/scanner.py | 2 +- .../pip/_vendor/pygments/sphinxext.py | 2 +- .../pip/_vendor/pygments/style.py | 2 +- .../pip/_vendor/pygments/styles/__init__.py | 2 +- .../pip/_vendor/pygments/token.py | 2 +- .../pip/_vendor/pygments/unistring.py | 2 +- .../pip/_vendor/pygments/util.py | 2 +- .../pip/_vendor/pyproject_hooks/LICENSE | 21 + .../pip/_vendor/requests/LICENSE | 175 + .../pip/_vendor/requests/__version__.py | 4 +- .../pip/_vendor/requests/adapters.py | 57 +- .../pip/_vendor/requests/compat.py | 12 + .../pip/_vendor/requests/models.py | 4 +- .../pip/_vendor/requests/sessions.py | 2 +- .../pip/_vendor/requests/utils.py | 22 +- .../pip/_vendor/resolvelib/LICENSE | 13 + .../pip/_vendor/resolvelib/__init__.py | 9 +- .../pip/_vendor/resolvelib/providers.py | 143 +- .../pip/_vendor/resolvelib/reporters.py | 32 +- .../_vendor/resolvelib/resolvers/__init__.py | 27 + .../_vendor/resolvelib/resolvers/abstract.py | 47 + .../_vendor/resolvelib/resolvers/criterion.py | 48 + .../resolvelib/resolvers/exceptions.py | 57 + .../resolvelib/resolvers/resolution.py | 627 ++ .../pip/_vendor/resolvelib/structs.py | 147 +- .../site-packages/pip/_vendor/rich/LICENSE | 19 + .../pip/_vendor/rich/__main__.py | 52 +- .../pip/_vendor/rich/_inspect.py | 2 +- .../site-packages/pip/_vendor/rich/_ratio.py | 8 +- .../site-packages/pip/_vendor/rich/align.py | 8 +- .../site-packages/pip/_vendor/rich/box.py | 8 +- .../site-packages/pip/_vendor/rich/console.py | 73 +- .../site-packages/pip/_vendor/rich/control.py | 8 +- .../pip/_vendor/rich/default_styles.py | 4 +- .../pip/_vendor/rich/diagnose.py | 14 +- .../site-packages/pip/_vendor/rich/emoji.py | 7 +- .../site-packages/pip/_vendor/rich/live.py | 39 +- .../pip/_vendor/rich/live_render.py | 8 +- .../site-packages/pip/_vendor/rich/logging.py | 2 +- .../site-packages/pip/_vendor/rich/panel.py | 9 +- .../pip/_vendor/rich/progress.py | 30 +- .../site-packages/pip/_vendor/rich/spinner.py | 20 +- .../site-packages/pip/_vendor/rich/style.py | 20 +- .../site-packages/pip/_vendor/rich/syntax.py | 29 +- .../site-packages/pip/_vendor/rich/table.py | 1 - .../pip/_vendor/rich/traceback.py | 220 +- .../site-packages/pip/_vendor/tomli/LICENSE | 21 + .../pip/_vendor/tomli/__init__.py | 2 +- .../pip/_vendor/tomli/_parser.py | 49 +- .../site-packages/pip/_vendor/tomli/_re.py | 13 +- .../site-packages/pip/_vendor/tomli_w/LICENSE | 21 + .../pip/_vendor/tomli_w/__init__.py | 4 + .../pip/_vendor/tomli_w/_writer.py | 229 + .../pip/_vendor/tomli_w/py.typed | 1 + .../pip/_vendor/truststore/LICENSE | 21 + .../pip/_vendor/truststore/__init__.py | 4 +- .../pip/_vendor/truststore/_api.py | 41 +- .../pip/_vendor/truststore/_openssl.py | 4 +- .../pip/_vendor/urllib3/LICENSE.txt | 21 + .../site-packages/pip/_vendor/vendor.txt | 29 +- .../site-packages/psycopg2/__init__.py | 13 + .../psycopg2/_psycopg.cp313-win_amd64.pyd | Bin 0 -> 235008 bytes .../site-packages/psycopg2/errorcodes.py | 5 + .../site-packages/pygments/__init__.py | 2 +- .../pygments/lexers/_sql_builtins.py | 106 + .../pygments/lexers/scripting.py | 8 +- .../site-packages/pygments/lexers/sql.py | 142 +- .../site-packages/pymysql/__init__.py | 4 +- .../packages/site-packages/pymysql/_auth.py | 8 +- .../packages/site-packages/pymysql/charset.py | 3 +- .../site-packages/pymysql/connections.py | 54 +- .../site-packages/requests/__version__.py | 4 +- .../site-packages/requests/adapters.py | 57 +- .../packages/site-packages/requests/compat.py | 12 + .../packages/site-packages/requests/models.py | 4 +- .../site-packages/requests/sessions.py | 2 +- .../packages/site-packages/requests/utils.py | 22 +- .../site-packages/roman_numerals/__init__.py | 36 +- .../site-packages/snowballstemmer/__init__.py | 6 + .../snowballstemmer/arabic_stemmer.py | 1595 ++--- .../snowballstemmer/armenian_stemmer.py | 425 +- .../snowballstemmer/basestemmer.py | 74 +- .../snowballstemmer/basque_stemmer.py | 430 +- .../snowballstemmer/catalan_stemmer.py | 745 +- .../snowballstemmer/danish_stemmer.py | 124 +- .../snowballstemmer/dutch_porter_stemmer.py | 466 ++ .../snowballstemmer/dutch_stemmer.py | 1560 ++++- .../snowballstemmer/english_stemmer.py | 559 +- .../snowballstemmer/esperanto_stemmer.py | 588 ++ .../snowballstemmer/estonian_stemmer.py | 850 +++ .../snowballstemmer/finnish_stemmer.py | 287 +- .../snowballstemmer/french_stemmer.py | 554 +- .../snowballstemmer/german_stemmer.py | 391 +- .../snowballstemmer/greek_stemmer.py | 2627 +++---- .../snowballstemmer/hindi_stemmer.py | 77 +- .../snowballstemmer/hungarian_stemmer.py | 487 +- .../snowballstemmer/indonesian_stemmer.py | 125 +- .../snowballstemmer/irish_stemmer.py | 207 +- .../snowballstemmer/italian_stemmer.py | 544 +- .../snowballstemmer/lithuanian_stemmer.py | 473 +- .../snowballstemmer/nepali_stemmer.py | 242 +- .../snowballstemmer/norwegian_stemmer.py | 171 +- .../snowballstemmer/porter_stemmer.py | 209 +- .../snowballstemmer/portuguese_stemmer.py | 491 +- .../snowballstemmer/romanian_stemmer.py | 628 +- .../snowballstemmer/russian_stemmer.py | 357 +- .../snowballstemmer/serbian_stemmer.py | 4663 +++++++------ .../snowballstemmer/spanish_stemmer.py | 513 +- .../snowballstemmer/swedish_stemmer.py | 213 +- .../snowballstemmer/tamil_stemmer.py | 2129 ++---- .../snowballstemmer/turkish_stemmer.py | 618 +- .../snowballstemmer/yiddish_stemmer.py | 491 +- .../packages/site-packages/sphinx/__init__.py | 20 +- .../site-packages/sphinx/_cli/__init__.py | 10 +- .../packages/site-packages/sphinx/addnodes.py | 4 +- .../site-packages/sphinx/application.py | 115 +- .../site-packages/sphinx/builders/__init__.py | 191 +- .../sphinx/builders/_epub_base.py | 140 +- .../site-packages/sphinx/builders/changes.py | 17 +- .../site-packages/sphinx/builders/epub3.py | 7 +- .../site-packages/sphinx/builders/gettext.py | 21 +- .../sphinx/builders/html/__init__.py | 226 +- .../sphinx/builders/html/_assets.py | 54 - .../sphinx/builders/latex/__init__.py | 47 +- .../sphinx/builders/latex/theming.py | 9 +- .../sphinx/builders/latex/transforms.py | 6 +- .../sphinx/builders/linkcheck.py | 93 +- .../site-packages/sphinx/builders/manpage.py | 37 +- .../sphinx/builders/singlehtml.py | 4 +- .../site-packages/sphinx/builders/texinfo.py | 30 +- .../site-packages/sphinx/builders/text.py | 17 +- .../site-packages/sphinx/builders/xml.py | 29 +- .../site-packages/sphinx/cmd/build.py | 6 +- .../site-packages/sphinx/cmd/quickstart.py | 19 +- .../packages/site-packages/sphinx/config.py | 101 +- .../site-packages/sphinx/deprecation.py | 16 +- .../sphinx/directives/__init__.py | 19 +- .../site-packages/sphinx/directives/code.py | 11 +- .../site-packages/sphinx/directives/other.py | 15 +- .../sphinx/directives/patches.py | 28 +- .../site-packages/sphinx/domains/__init__.py | 30 +- .../site-packages/sphinx/domains/_index.py | 7 +- .../sphinx/domains/c/__init__.py | 38 +- .../site-packages/sphinx/domains/c/_ast.py | 22 +- .../site-packages/sphinx/domains/c/_parser.py | 17 +- .../site-packages/sphinx/domains/c/_symbol.py | 79 +- .../site-packages/sphinx/domains/changeset.py | 21 +- .../site-packages/sphinx/domains/citation.py | 6 +- .../sphinx/domains/cpp/__init__.py | 43 +- .../site-packages/sphinx/domains/cpp/_ast.py | 5 +- .../sphinx/domains/cpp/_parser.py | 31 +- .../sphinx/domains/cpp/_symbol.py | 332 +- .../site-packages/sphinx/domains/index.py | 2 +- .../sphinx/domains/javascript.py | 26 +- .../site-packages/sphinx/domains/math.py | 6 +- .../sphinx/domains/python/__init__.py | 85 +- .../sphinx/domains/python/_annotations.py | 60 +- .../sphinx/domains/python/_object.py | 30 +- .../site-packages/sphinx/domains/rst.py | 6 +- .../sphinx/domains/std/__init__.py | 71 +- .../sphinx/environment/__init__.py | 209 +- .../environment/adapters/indexentries.py | 23 +- .../sphinx/environment/adapters/toctree.py | 142 +- .../sphinx/environment/collectors/asset.py | 10 +- .../sphinx/environment/collectors/metadata.py | 2 +- .../sphinx/environment/collectors/title.py | 6 +- .../sphinx/environment/collectors/toctree.py | 8 +- .../packages/site-packages/sphinx/events.py | 141 +- .../sphinx/ext/apidoc/_extension.py | 2 +- .../sphinx/ext/autodoc/__init__.py | 3325 +-------- .../sphinx/ext/autodoc/_directive.py | 118 + .../sphinx/ext/autodoc/_directive_options.py | 350 + .../sphinx/ext/autodoc/_dynamic/__init__.py | 1 + .../ext/autodoc/_dynamic/_docstrings.py | 332 + .../sphinx/ext/autodoc/_dynamic/_importer.py | 431 ++ .../sphinx/ext/autodoc/_dynamic/_loader.py | 502 ++ .../ext/autodoc/_dynamic/_member_finder.py | 871 +++ .../sphinx/ext/autodoc/_dynamic/_mock.py | 220 + .../autodoc/_dynamic/_preserve_defaults.py | 157 + .../ext/autodoc/_dynamic/_signatures.py | 646 ++ .../ext/autodoc/_dynamic/_type_annotations.py | 45 + .../ext/autodoc/_dynamic/_type_comments.py | 230 + .../sphinx/ext/autodoc/_event_listeners.py | 169 + .../sphinx/ext/autodoc/_generate.py | 406 ++ .../autodoc/_legacy_class_based/__init__.py | 1 + .../_legacy_class_based/_directive_options.py | 100 + .../_legacy_class_based/_documenters.py | 2928 ++++++++ .../autodoc/_legacy_class_based/_sentinels.py | 31 + .../sphinx/ext/autodoc/_names.py | 181 + .../sphinx/ext/autodoc/_property_types.py | 240 + .../sphinx/ext/autodoc/_renderer.py | 176 + .../sphinx/ext/autodoc/_sentinels.py | 106 + .../sphinx/ext/autodoc/_shared.py | 162 + .../sphinx/ext/autodoc/directive.py | 47 +- .../sphinx/ext/autodoc/importer.py | 268 +- .../site-packages/sphinx/ext/autodoc/mock.py | 227 +- .../sphinx/ext/autodoc/preserve_defaults.py | 196 +- .../sphinx/ext/autodoc/type_comment.py | 160 +- .../sphinx/ext/autodoc/typehints.py | 62 +- .../sphinx/ext/autosectionlabel.py | 2 +- .../sphinx/ext/autosummary/__init__.py | 299 +- .../sphinx/ext/autosummary/generate.py | 192 +- .../site-packages/sphinx/ext/coverage.py | 10 +- .../site-packages/sphinx/ext/doctest.py | 82 +- .../site-packages/sphinx/ext/duration.py | 80 +- .../site-packages/sphinx/ext/extlinks.py | 2 +- .../site-packages/sphinx/ext/graphviz.py | 8 +- .../site-packages/sphinx/ext/imgmath.py | 97 +- .../sphinx/ext/inheritance_diagram.py | 3 +- .../sphinx/ext/intersphinx/_cli.py | 10 +- .../sphinx/ext/intersphinx/_load.py | 80 +- .../sphinx/ext/intersphinx/_resolve.py | 74 +- .../sphinx/ext/intersphinx/_shared.py | 4 +- .../site-packages/sphinx/ext/mathjax.py | 41 +- .../sphinx/ext/napoleon/__init__.py | 10 +- .../sphinx/ext/napoleon/docstring.py | 44 +- .../packages/site-packages/sphinx/ext/todo.py | 2 +- .../site-packages/sphinx/ext/viewcode.py | 28 +- .../packages/site-packages/sphinx/io.py | 140 +- .../site-packages/sphinx/jinja2glue.py | 1 - .../sphinx/locale/ar/LC_MESSAGES/sphinx.mo | Bin 7768 -> 7768 bytes .../sphinx/locale/ar/LC_MESSAGES/sphinx.po | 4464 ++++++------ .../sphinx/locale/bg/LC_MESSAGES/sphinx.mo | Bin 1358 -> 1358 bytes .../sphinx/locale/bg/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/bn/LC_MESSAGES/sphinx.mo | Bin 7719 -> 7719 bytes .../sphinx/locale/bn/LC_MESSAGES/sphinx.po | 4416 ++++++------ .../sphinx/locale/ca/LC_MESSAGES/sphinx.mo | Bin 94712 -> 99793 bytes .../sphinx/locale/ca/LC_MESSAGES/sphinx.po | 5458 +++++++-------- .../locale/ca@valencia/LC_MESSAGES/sphinx.mo | Bin 94362 -> 100081 bytes .../locale/ca@valencia/LC_MESSAGES/sphinx.po | 5468 +++++++-------- .../sphinx/locale/cak/LC_MESSAGES/sphinx.mo | Bin 2563 -> 2563 bytes .../sphinx/locale/cak/LC_MESSAGES/sphinx.po | 4464 ++++++------ .../sphinx/locale/cs/LC_MESSAGES/sphinx.mo | Bin 8098 -> 8059 bytes .../sphinx/locale/cs/LC_MESSAGES/sphinx.po | 4656 ++++++------- .../sphinx/locale/cy/LC_MESSAGES/sphinx.mo | Bin 5988 -> 5948 bytes .../sphinx/locale/cy/LC_MESSAGES/sphinx.po | 4562 +++++++------ .../sphinx/locale/da/LC_MESSAGES/sphinx.mo | Bin 12101 -> 12062 bytes .../sphinx/locale/da/LC_MESSAGES/sphinx.po | 4590 +++++++------ .../sphinx/locale/de/LC_MESSAGES/sphinx.mo | Bin 10644 -> 10604 bytes .../sphinx/locale/de/LC_MESSAGES/sphinx.po | 4640 ++++++------- .../sphinx/locale/de_DE/LC_MESSAGES/sphinx.mo | Bin 781 -> 781 bytes .../sphinx/locale/de_DE/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/el/LC_MESSAGES/sphinx.mo | Bin 74194 -> 73647 bytes .../sphinx/locale/el/LC_MESSAGES/sphinx.po | 5176 +++++++------- .../sphinx/locale/en_DE/LC_MESSAGES/sphinx.mo | Bin 782 -> 782 bytes .../sphinx/locale/en_DE/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/en_FR/LC_MESSAGES/sphinx.mo | Bin 738 -> 738 bytes .../sphinx/locale/en_FR/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/en_GB/LC_MESSAGES/sphinx.mo | Bin 69672 -> 69128 bytes .../sphinx/locale/en_GB/LC_MESSAGES/sphinx.po | 5388 +++++++-------- .../sphinx/locale/en_HK/LC_MESSAGES/sphinx.mo | Bin 784 -> 784 bytes .../sphinx/locale/en_HK/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/eo/LC_MESSAGES/sphinx.mo | Bin 2079 -> 2079 bytes .../sphinx/locale/eo/LC_MESSAGES/sphinx.po | 4460 ++++++------ .../sphinx/locale/es/LC_MESSAGES/sphinx.mo | Bin 74599 -> 74191 bytes .../sphinx/locale/es/LC_MESSAGES/sphinx.po | 5402 +++++++-------- .../sphinx/locale/es_CO/LC_MESSAGES/sphinx.mo | Bin 893 -> 893 bytes .../sphinx/locale/es_CO/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/et/LC_MESSAGES/sphinx.mo | Bin 30673 -> 30626 bytes .../sphinx/locale/et/LC_MESSAGES/sphinx.po | 4852 ++++++------- .../sphinx/locale/eu/LC_MESSAGES/sphinx.mo | Bin 6665 -> 6665 bytes .../sphinx/locale/eu/LC_MESSAGES/sphinx.po | 4658 ++++++------- .../sphinx/locale/fa/LC_MESSAGES/sphinx.mo | Bin 92028 -> 88836 bytes .../sphinx/locale/fa/LC_MESSAGES/sphinx.po | 5733 ++++++++-------- .../sphinx/locale/fi/LC_MESSAGES/sphinx.mo | Bin 3136 -> 3136 bytes .../sphinx/locale/fi/LC_MESSAGES/sphinx.po | 4417 ++++++------ .../sphinx/locale/fr/LC_MESSAGES/sphinx.mo | Bin 97642 -> 102189 bytes .../sphinx/locale/fr/LC_MESSAGES/sphinx.po | 5553 +++++++-------- .../sphinx/locale/fr_FR/LC_MESSAGES/sphinx.mo | Bin 902 -> 902 bytes .../sphinx/locale/fr_FR/LC_MESSAGES/sphinx.po | 4297 ++++++------ .../sphinx/locale/he/LC_MESSAGES/sphinx.mo | Bin 5070 -> 5070 bytes .../sphinx/locale/he/LC_MESSAGES/sphinx.po | 4521 ++++++------ .../sphinx/locale/hi/LC_MESSAGES/sphinx.mo | Bin 91811 -> 89066 bytes .../sphinx/locale/hi/LC_MESSAGES/sphinx.po | 5475 +++++++-------- .../sphinx/locale/hi_IN/LC_MESSAGES/sphinx.mo | Bin 778 -> 778 bytes .../sphinx/locale/hi_IN/LC_MESSAGES/sphinx.po | 4297 ++++++------ .../sphinx/locale/hr/LC_MESSAGES/sphinx.mo | Bin 15636 -> 15459 bytes .../sphinx/locale/hr/LC_MESSAGES/sphinx.po | 4821 ++++++------- .../sphinx/locale/hu/LC_MESSAGES/sphinx.mo | Bin 10478 -> 10302 bytes .../sphinx/locale/hu/LC_MESSAGES/sphinx.po | 4795 ++++++------- .../sphinx/locale/id/LC_MESSAGES/sphinx.mo | Bin 55726 -> 55353 bytes .../sphinx/locale/id/LC_MESSAGES/sphinx.po | 5424 +++++++-------- .../sphinx/locale/is/LC_MESSAGES/sphinx.mo | Bin 2890 -> 2890 bytes .../sphinx/locale/is/LC_MESSAGES/sphinx.po | 4399 ++++++------ .../sphinx/locale/it/LC_MESSAGES/sphinx.mo | Bin 10428 -> 10388 bytes .../sphinx/locale/it/LC_MESSAGES/sphinx.po | 4674 ++++++------- .../sphinx/locale/ja/LC_MESSAGES/sphinx.mo | Bin 79200 -> 78814 bytes .../sphinx/locale/ja/LC_MESSAGES/sphinx.po | 5350 ++++++++------- .../sphinx/locale/ka/LC_MESSAGES/sphinx.mo | Bin 68806 -> 68644 bytes .../sphinx/locale/ka/LC_MESSAGES/sphinx.po | 5230 +++++++------- .../sphinx/locale/ko/LC_MESSAGES/sphinx.mo | Bin 75559 -> 75136 bytes .../sphinx/locale/ko/LC_MESSAGES/sphinx.po | 5402 +++++++-------- .../sphinx/locale/lt/LC_MESSAGES/sphinx.mo | Bin 7134 -> 7134 bytes .../sphinx/locale/lt/LC_MESSAGES/sphinx.po | 4536 +++++++------ .../sphinx/locale/lv/LC_MESSAGES/sphinx.mo | Bin 6734 -> 6734 bytes .../sphinx/locale/lv/LC_MESSAGES/sphinx.po | 4528 +++++++------ .../sphinx/locale/mk/LC_MESSAGES/sphinx.mo | Bin 2287 -> 2287 bytes .../sphinx/locale/mk/LC_MESSAGES/sphinx.po | 4720 ++++++------- .../sphinx/locale/nb/LC_MESSAGES/sphinx.js | 63 + .../sphinx/locale/nb/LC_MESSAGES/sphinx.mo | Bin 0 -> 776 bytes .../sphinx/locale/nb/LC_MESSAGES/sphinx.po | 4304 ++++++++++++ .../sphinx/locale/nb_NO/LC_MESSAGES/sphinx.js | 2 +- .../sphinx/locale/nb_NO/LC_MESSAGES/sphinx.mo | Bin 7834 -> 7950 bytes .../sphinx/locale/nb_NO/LC_MESSAGES/sphinx.po | 4462 ++++++------ .../sphinx/locale/ne/LC_MESSAGES/sphinx.mo | Bin 8663 -> 8663 bytes .../sphinx/locale/ne/LC_MESSAGES/sphinx.po | 4536 +++++++------ .../sphinx/locale/nl/LC_MESSAGES/sphinx.mo | Bin 17590 -> 17550 bytes .../sphinx/locale/nl/LC_MESSAGES/sphinx.po | 4730 ++++++------- .../sphinx/locale/no/LC_MESSAGES/sphinx.js | 63 + .../sphinx/locale/no/LC_MESSAGES/sphinx.mo | Bin 0 -> 768 bytes .../sphinx/locale/no/LC_MESSAGES/sphinx.po | 4304 ++++++++++++ .../sphinx/locale/pl/LC_MESSAGES/sphinx.mo | Bin 27555 -> 27516 bytes .../sphinx/locale/pl/LC_MESSAGES/sphinx.po | 4848 ++++++------- .../sphinx/locale/pt/LC_MESSAGES/sphinx.mo | Bin 891 -> 891 bytes .../sphinx/locale/pt/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/pt_BR/LC_MESSAGES/sphinx.mo | Bin 96279 -> 98674 bytes .../sphinx/locale/pt_BR/LC_MESSAGES/sphinx.po | 5490 +++++++-------- .../sphinx/locale/pt_PT/LC_MESSAGES/sphinx.mo | Bin 7996 -> 7956 bytes .../sphinx/locale/pt_PT/LC_MESSAGES/sphinx.po | 4656 ++++++------- .../sphinx/locale/ro/LC_MESSAGES/sphinx.mo | Bin 8387 -> 8346 bytes .../sphinx/locale/ro/LC_MESSAGES/sphinx.po | 4656 ++++++------- .../sphinx/locale/ru/LC_MESSAGES/sphinx.mo | Bin 103530 -> 102562 bytes .../sphinx/locale/ru/LC_MESSAGES/sphinx.po | 5536 +++++++-------- .../sphinx/locale/si/LC_MESSAGES/sphinx.mo | Bin 3764 -> 3722 bytes .../sphinx/locale/si/LC_MESSAGES/sphinx.po | 4526 +++++++------ .../sphinx/locale/sk/LC_MESSAGES/sphinx.mo | Bin 60824 -> 60443 bytes .../sphinx/locale/sk/LC_MESSAGES/sphinx.po | 5170 +++++++------- .../sphinx/locale/sl/LC_MESSAGES/sphinx.mo | Bin 5462 -> 5462 bytes .../sphinx/locale/sl/LC_MESSAGES/sphinx.po | 4504 ++++++------ .../site-packages/sphinx/locale/sphinx.pot | 4392 ++++++------ .../sphinx/locale/sq/LC_MESSAGES/sphinx.mo | Bin 92336 -> 97692 bytes .../sphinx/locale/sq/LC_MESSAGES/sphinx.po | 5445 +++++++-------- .../sphinx/locale/sr/LC_MESSAGES/sphinx.mo | Bin 9370 -> 9330 bytes .../sphinx/locale/sr/LC_MESSAGES/sphinx.po | 4574 +++++++------ .../locale/sr@latin/LC_MESSAGES/sphinx.mo | Bin 584 -> 584 bytes .../sphinx/locale/sr_RS/LC_MESSAGES/sphinx.mo | Bin 579 -> 579 bytes .../sphinx/locale/sv/LC_MESSAGES/sphinx.js | 92 +- .../sphinx/locale/sv/LC_MESSAGES/sphinx.mo | Bin 6652 -> 93933 bytes .../sphinx/locale/sv/LC_MESSAGES/sphinx.po | 6031 +++++++++-------- .../sphinx/locale/te/LC_MESSAGES/sphinx.mo | Bin 765 -> 765 bytes .../sphinx/locale/te/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/tr/LC_MESSAGES/sphinx.mo | Bin 52653 -> 52446 bytes .../sphinx/locale/tr/LC_MESSAGES/sphinx.po | 5156 +++++++------- .../sphinx/locale/uk_UA/LC_MESSAGES/sphinx.mo | Bin 6638 -> 6638 bytes .../sphinx/locale/uk_UA/LC_MESSAGES/sphinx.po | 4518 ++++++------ .../sphinx/locale/ur/LC_MESSAGES/sphinx.mo | Bin 763 -> 763 bytes .../sphinx/locale/ur/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/vi/LC_MESSAGES/sphinx.mo | Bin 5849 -> 5849 bytes .../sphinx/locale/vi/LC_MESSAGES/sphinx.po | 4640 ++++++------- .../sphinx/locale/yue/LC_MESSAGES/sphinx.mo | Bin 692 -> 692 bytes .../sphinx/locale/yue/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/zh_CN/LC_MESSAGES/sphinx.js | 6 +- .../sphinx/locale/zh_CN/LC_MESSAGES/sphinx.mo | Bin 73260 -> 91640 bytes .../sphinx/locale/zh_CN/LC_MESSAGES/sphinx.po | 5186 +++++++------- .../sphinx/locale/zh_HK/LC_MESSAGES/sphinx.mo | Bin 706 -> 706 bytes .../sphinx/locale/zh_HK/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../locale/zh_TW.Big5/LC_MESSAGES/sphinx.mo | Bin 721 -> 721 bytes .../locale/zh_TW.Big5/LC_MESSAGES/sphinx.po | 4364 ++++++------ .../sphinx/locale/zh_TW/LC_MESSAGES/sphinx.mo | Bin 74540 -> 73986 bytes .../sphinx/locale/zh_TW/LC_MESSAGES/sphinx.po | 5361 ++++++++------- .../packages/site-packages/sphinx/parsers.py | 53 +- .../site-packages/sphinx/pycode/ast.py | 5 +- .../site-packages/sphinx/pycode/parser.py | 124 +- .../packages/site-packages/sphinx/registry.py | 56 +- .../packages/site-packages/sphinx/roles.py | 38 +- .../site-packages/sphinx/search/__init__.py | 63 +- .../sphinx/search/_stopwords/__init__.py | 0 .../sphinx/search/_stopwords/da.py | 101 + .../sphinx/search/_stopwords/da.txt | 102 + .../sphinx/search/_stopwords/de.py | 238 + .../sphinx/search/_stopwords/de.txt | 285 + .../sphinx/search/_stopwords/en.py | 181 + .../sphinx/search/_stopwords/en.txt | 311 + .../sphinx/search/_stopwords/es.py | 315 + .../sphinx/search/_stopwords/es.txt | 347 + .../sphinx/search/_stopwords/fi.py | 236 + .../sphinx/search/_stopwords/fi.txt | 88 + .../sphinx/search/_stopwords/fr.py | 171 + .../sphinx/search/_stopwords/fr.txt | 177 + .../sphinx/search/_stopwords/hu.py | 205 + .../sphinx/search/_stopwords/hu.txt | 203 + .../sphinx/search/_stopwords/it.py | 286 + .../sphinx/search/_stopwords/it.txt | 295 + .../sphinx/search/_stopwords/nl.py | 108 + .../sphinx/search/_stopwords/nl.txt | 112 + .../sphinx/search/_stopwords/no.py | 179 + .../sphinx/search/_stopwords/no.txt | 185 + .../sphinx/search/_stopwords/pt.py | 210 + .../sphinx/search/_stopwords/pt.txt | 245 + .../sphinx/search/_stopwords/ru.py | 166 + .../sphinx/search/_stopwords/ru.txt | 235 + .../sphinx/search/_stopwords/sv.py | 121 + .../sphinx/search/_stopwords/sv.txt | 124 + .../site-packages/sphinx/search/da.py | 108 +- .../site-packages/sphinx/search/de.py | 291 +- .../site-packages/sphinx/search/en.py | 210 +- .../site-packages/sphinx/search/es.py | 351 +- .../site-packages/sphinx/search/fi.py | 101 +- .../site-packages/sphinx/search/fr.py | 187 +- .../site-packages/sphinx/search/hu.py | 214 +- .../site-packages/sphinx/search/it.py | 304 +- .../site-packages/sphinx/search/ja.py | 3 +- .../sphinx/search/minified-js/README.rst | 7 + .../search/minified-js/arabic-stemmer.js | 1 + .../search/minified-js/armenian-stemmer.js | 1 + .../sphinx/search/minified-js/base-stemmer.js | 2 +- .../search/minified-js/basque-stemmer.js | 1 + .../search/minified-js/catalan-stemmer.js | 1 + .../search/minified-js/danish-stemmer.js | 2 +- .../search/minified-js/dutch-stemmer.js | 2 +- .../minified-js/dutch_porter-stemmer.js | 1 + .../search/minified-js/english-stemmer.js | 1 + .../search/minified-js/esperanto-stemmer.js | 1 + .../search/minified-js/estonian-stemmer.js | 1 + .../search/minified-js/finnish-stemmer.js | 2 +- .../search/minified-js/french-stemmer.js | 2 +- .../search/minified-js/german-stemmer.js | 2 +- .../search/minified-js/greek-stemmer.js | 1 + .../search/minified-js/hindi-stemmer.js | 1 + .../search/minified-js/hungarian-stemmer.js | 2 +- .../search/minified-js/indonesian-stemmer.js | 1 + .../search/minified-js/irish-stemmer.js | 1 + .../search/minified-js/italian-stemmer.js | 2 +- .../search/minified-js/lithuanian-stemmer.js | 1 + .../search/minified-js/nepali-stemmer.js | 1 + .../search/minified-js/norwegian-stemmer.js | 2 +- .../search/minified-js/porter-stemmer.js | 2 +- .../search/minified-js/portuguese-stemmer.js | 2 +- .../search/minified-js/romanian-stemmer.js | 2 +- .../search/minified-js/russian-stemmer.js | 2 +- .../search/minified-js/serbian-stemmer.js | 1 + .../search/minified-js/spanish-stemmer.js | 2 +- .../search/minified-js/swedish-stemmer.js | 2 +- .../search/minified-js/tamil-stemmer.js | 1 + .../search/minified-js/turkish-stemmer.js | 2 +- .../search/minified-js/yiddish-stemmer.js | 1 + .../site-packages/sphinx/search/nl.py | 115 +- .../site-packages/sphinx/search/no.py | 190 +- .../search/non-minified-js/arabic-stemmer.js | 1612 +++++ .../non-minified-js/armenian-stemmer.js | 350 + .../search/non-minified-js/base-stemmer.js | 184 +- .../search/non-minified-js/basque-stemmer.js | 736 ++ .../search/non-minified-js/catalan-stemmer.js | 886 +++ .../search/non-minified-js/danish-stemmer.js | 92 +- .../search/non-minified-js/dutch-stemmer.js | 2208 ++++-- .../non-minified-js/dutch_porter-stemmer.js | 637 ++ .../search/non-minified-js/english-stemmer.js | 1066 +++ .../non-minified-js/esperanto-stemmer.js | 762 +++ .../non-minified-js/estonian-stemmer.js | 1088 +++ .../search/non-minified-js/finnish-stemmer.js | 223 +- .../search/non-minified-js/french-stemmer.js | 402 +- .../search/non-minified-js/german-stemmer.js | 438 +- .../search/non-minified-js/greek-stemmer.js | 2873 ++++++++ .../search/non-minified-js/hindi-stemmer.js | 181 + .../non-minified-js/hungarian-stemmer.js | 152 +- .../non-minified-js/indonesian-stemmer.js | 409 ++ .../search/non-minified-js/irish-stemmer.js | 378 ++ .../search/non-minified-js/italian-stemmer.js | 227 +- .../non-minified-js/lithuanian-stemmer.js | 534 ++ .../search/non-minified-js/nepali-stemmer.js | 282 + .../non-minified-js/norwegian-stemmer.js | 154 +- .../search/non-minified-js/porter-stemmer.js | 213 +- .../non-minified-js/portuguese-stemmer.js | 225 +- .../non-minified-js/romanian-stemmer.js | 381 +- .../search/non-minified-js/russian-stemmer.js | 125 +- .../search/non-minified-js/serbian-stemmer.js | 4516 ++++++++++++ .../search/non-minified-js/spanish-stemmer.js | 225 +- .../search/non-minified-js/swedish-stemmer.js | 188 +- .../search/non-minified-js/tamil-stemmer.js | 1189 ++++ .../search/non-minified-js/turkish-stemmer.js | 649 +- .../search/non-minified-js/yiddish-stemmer.js | 1160 ++++ .../site-packages/sphinx/search/pt.py | 249 +- .../site-packages/sphinx/search/ro.py | 7 +- .../site-packages/sphinx/search/ru.py | 239 +- .../site-packages/sphinx/search/sv.py | 128 +- .../site-packages/sphinx/search/tr.py | 7 +- .../site-packages/sphinx/search/zh.py | 210 +- .../sphinx/templates/latex/latex.tex.jinja | 1 + .../sphinx/templates/latex/tabulary.tex.jinja | 3 + .../site-packages/sphinx/testing/fixtures.py | 6 +- .../sphinx/testing/restructuredtext.py | 53 +- .../site-packages/sphinx/testing/util.py | 25 +- .../site-packages/sphinx/texinputs/sphinx.sty | 199 +- .../texinputs/sphinxlatexadmonitions.sty | 11 +- .../sphinx/texinputs/sphinxlatexliterals.sty | 317 +- .../sphinx/texinputs/sphinxlatexobjects.sty | 30 +- .../sphinx/texinputs/sphinxlatexstyletext.sty | 8 +- .../sphinx/texinputs/sphinxlatextables.sty | 174 +- .../texinputs/sphinxpackagefootnote.sty | 13 +- .../sphinx/themes/basic/static/doctools.js | 11 +- .../basic/static/language_data.js.jinja | 7 +- .../sphinx/themes/basic/static/searchtools.js | 172 +- .../themes/basic/static/sphinx_highlight.js | 67 +- .../themes/scrolls/static/theme_extras.js | 22 +- .../packages/site-packages/sphinx/theming.py | 40 +- .../sphinx/transforms/__init__.py | 42 +- .../site-packages/sphinx/transforms/i18n.py | 130 +- .../transforms/post_transforms/__init__.py | 64 +- .../sphinx/transforms/post_transforms/code.py | 4 +- .../transforms/post_transforms/images.py | 24 +- .../sphinx/transforms/references.py | 6 +- .../site-packages/sphinx/util/__init__.py | 28 - .../packages/site-packages/sphinx/util/_io.py | 4 +- .../site-packages/sphinx/util/_pathlib.py | 44 +- .../site-packages/sphinx/util/_serialise.py | 16 +- .../site-packages/sphinx/util/cfamily.py | 9 +- .../site-packages/sphinx/util/display.py | 12 +- .../site-packages/sphinx/util/docfields.py | 26 +- .../site-packages/sphinx/util/docstrings.py | 2 +- .../site-packages/sphinx/util/docutils.py | 159 +- .../site-packages/sphinx/util/fileutil.py | 3 + .../site-packages/sphinx/util/http_date.py | 23 +- .../site-packages/sphinx/util/i18n.py | 18 +- .../site-packages/sphinx/util/images.py | 16 +- .../sphinx/util/index_entries.py | 2 +- .../site-packages/sphinx/util/inspect.py | 98 +- .../site-packages/sphinx/util/inventory.py | 10 +- .../site-packages/sphinx/util/logging.py | 30 +- .../site-packages/sphinx/util/math.py | 2 +- .../site-packages/sphinx/util/nodes.py | 128 +- .../site-packages/sphinx/util/osutil.py | 6 +- .../site-packages/sphinx/util/parallel.py | 2 +- .../site-packages/sphinx/util/parsing.py | 7 +- .../site-packages/sphinx/util/requests.py | 4 +- .../packages/site-packages/sphinx/util/rst.py | 72 +- .../site-packages/sphinx/util/tags.py | 17 +- .../site-packages/sphinx/util/template.py | 2 +- .../site-packages/sphinx/util/typing.py | 60 +- .../site-packages/sphinx/versioning.py | 2 +- .../site-packages/sphinx/writers/html.py | 5 +- .../site-packages/sphinx/writers/html5.py | 93 +- .../site-packages/sphinx/writers/latex.py | 269 +- .../site-packages/sphinx/writers/manpage.py | 64 +- .../site-packages/sphinx/writers/texinfo.py | 21 +- .../site-packages/sphinx/writers/text.py | 76 +- .../site-packages/sphinx/writers/xml.py | 15 +- .../site-packages/sqlalchemy/__init__.py | 15 +- .../sqlalchemy/connectors/__init__.py | 2 +- .../sqlalchemy/connectors/aioodbc.py | 12 +- .../sqlalchemy/connectors/asyncio.py | 368 +- .../sqlalchemy/connectors/pyodbc.py | 15 +- .../sqlalchemy/cyextension/__init__.py | 2 +- .../collections.cp313-win_amd64.pyd | Bin 0 -> 163328 bytes .../immutabledict.cp313-win_amd64.pyd | Bin 0 -> 67072 bytes .../processors.cp313-win_amd64.pyd | Bin 0 -> 57856 bytes .../resultproxy.cp313-win_amd64.pyd | Bin 0 -> 58368 bytes .../cyextension/util.cp313-win_amd64.pyd | Bin 0 -> 69120 bytes .../sqlalchemy/cyextension/util.pyx | 31 +- .../sqlalchemy/dialects/__init__.py | 5 +- .../sqlalchemy/dialects/_typing.py | 2 +- .../sqlalchemy/dialects/mssql/__init__.py | 2 +- .../sqlalchemy/dialects/mssql/aioodbc.py | 2 +- .../sqlalchemy/dialects/mssql/base.py | 173 +- .../dialects/mssql/information_schema.py | 65 +- .../sqlalchemy/dialects/mssql/json.py | 2 +- .../sqlalchemy/dialects/mssql/provision.py | 25 +- .../sqlalchemy/dialects/mssql/pymssql.py | 2 +- .../sqlalchemy/dialects/mssql/pyodbc.py | 2 +- .../sqlalchemy/dialects/mysql/__init__.py | 2 +- .../sqlalchemy/dialects/mysql/aiomysql.py | 271 +- .../sqlalchemy/dialects/mysql/asyncmy.py | 276 +- .../sqlalchemy/dialects/mysql/base.py | 943 ++- .../sqlalchemy/dialects/mysql/cymysql.py | 48 +- .../sqlalchemy/dialects/mysql/dml.py | 2 +- .../sqlalchemy/dialects/mysql/enumerated.py | 93 +- .../sqlalchemy/dialects/mysql/expression.py | 11 +- .../sqlalchemy/dialects/mysql/json.py | 40 +- .../sqlalchemy/dialects/mysql/mariadb.py | 19 +- .../dialects/mysql/mariadbconnector.py | 109 +- .../dialects/mysql/mysqlconnector.py | 131 +- .../sqlalchemy/dialects/mysql/mysqldb.py | 111 +- .../sqlalchemy/dialects/mysql/provision.py | 43 +- .../sqlalchemy/dialects/mysql/pymysql.py | 44 +- .../sqlalchemy/dialects/mysql/pyodbc.py | 48 +- .../sqlalchemy/dialects/mysql/reflection.py | 126 +- .../dialects/mysql/reserved_words.py | 3 +- .../sqlalchemy/dialects/mysql/types.py | 180 +- .../sqlalchemy/dialects/oracle/__init__.py | 16 +- .../sqlalchemy/dialects/oracle/base.py | 324 +- .../sqlalchemy/dialects/oracle/cx_oracle.py | 5 +- .../sqlalchemy/dialects/oracle/dictionary.py | 2 +- .../sqlalchemy/dialects/oracle/oracledb.py | 18 +- .../sqlalchemy/dialects/oracle/provision.py | 123 +- .../sqlalchemy/dialects/oracle/types.py | 2 +- .../sqlalchemy/dialects/oracle/vector.py | 365 + .../dialects/postgresql/__init__.py | 2 +- .../dialects/postgresql/_psycopg_common.py | 6 +- .../sqlalchemy/dialects/postgresql/array.py | 24 +- .../sqlalchemy/dialects/postgresql/asyncpg.py | 49 +- .../sqlalchemy/dialects/postgresql/base.py | 664 +- .../sqlalchemy/dialects/postgresql/dml.py | 2 +- .../sqlalchemy/dialects/postgresql/ext.py | 61 +- .../sqlalchemy/dialects/postgresql/hstore.py | 2 +- .../sqlalchemy/dialects/postgresql/json.py | 39 +- .../dialects/postgresql/named_types.py | 71 +- .../dialects/postgresql/operators.py | 2 +- .../sqlalchemy/dialects/postgresql/pg8000.py | 5 +- .../dialects/postgresql/pg_catalog.py | 42 +- .../dialects/postgresql/provision.py | 14 +- .../sqlalchemy/dialects/postgresql/psycopg.py | 81 +- .../dialects/postgresql/psycopg2.py | 2 +- .../dialects/postgresql/psycopg2cffi.py | 2 +- .../sqlalchemy/dialects/postgresql/ranges.py | 6 +- .../sqlalchemy/dialects/postgresql/types.py | 2 +- .../sqlalchemy/dialects/sqlite/__init__.py | 2 +- .../sqlalchemy/dialects/sqlite/aiosqlite.py | 209 +- .../sqlalchemy/dialects/sqlite/base.py | 503 +- .../sqlalchemy/dialects/sqlite/dml.py | 2 +- .../sqlalchemy/dialects/sqlite/json.py | 2 +- .../sqlalchemy/dialects/sqlite/provision.py | 41 +- .../sqlalchemy/dialects/sqlite/pysqlcipher.py | 2 +- .../sqlalchemy/dialects/sqlite/pysqlite.py | 201 +- .../sqlalchemy/engine/__init__.py | 2 +- .../sqlalchemy/engine/_py_processors.py | 2 +- .../sqlalchemy/engine/_py_row.py | 2 +- .../sqlalchemy/engine/_py_util.py | 6 +- .../site-packages/sqlalchemy/engine/base.py | 63 +- .../sqlalchemy/engine/characteristics.py | 2 +- .../site-packages/sqlalchemy/engine/create.py | 37 +- .../site-packages/sqlalchemy/engine/cursor.py | 391 +- .../sqlalchemy/engine/default.py | 40 +- .../site-packages/sqlalchemy/engine/events.py | 2 +- .../sqlalchemy/engine/interfaces.py | 80 +- .../site-packages/sqlalchemy/engine/mock.py | 15 +- .../sqlalchemy/engine/processors.py | 2 +- .../sqlalchemy/engine/reflection.py | 7 +- .../site-packages/sqlalchemy/engine/result.py | 31 +- .../site-packages/sqlalchemy/engine/row.py | 2 +- .../sqlalchemy/engine/strategies.py | 7 +- .../site-packages/sqlalchemy/engine/url.py | 4 +- .../site-packages/sqlalchemy/engine/util.py | 2 +- .../sqlalchemy/event/__init__.py | 3 +- .../site-packages/sqlalchemy/event/api.py | 6 +- .../site-packages/sqlalchemy/event/attr.py | 51 +- .../site-packages/sqlalchemy/event/base.py | 2 +- .../site-packages/sqlalchemy/event/legacy.py | 20 +- .../sqlalchemy/event/registry.py | 2 +- .../site-packages/sqlalchemy/events.py | 2 +- .../packages/site-packages/sqlalchemy/exc.py | 2 +- .../site-packages/sqlalchemy/ext/__init__.py | 2 +- .../sqlalchemy/ext/associationproxy.py | 22 +- .../sqlalchemy/ext/asyncio/__init__.py | 2 +- .../sqlalchemy/ext/asyncio/base.py | 6 +- .../sqlalchemy/ext/asyncio/engine.py | 12 +- .../sqlalchemy/ext/asyncio/exc.py | 2 +- .../sqlalchemy/ext/asyncio/result.py | 7 +- .../sqlalchemy/ext/asyncio/scoping.py | 19 +- .../sqlalchemy/ext/asyncio/session.py | 19 +- .../site-packages/sqlalchemy/ext/automap.py | 2 +- .../site-packages/sqlalchemy/ext/baked.py | 2 +- .../site-packages/sqlalchemy/ext/compiler.py | 2 +- .../sqlalchemy/ext/declarative/__init__.py | 2 +- .../sqlalchemy/ext/declarative/extensions.py | 2 +- .../sqlalchemy/ext/horizontal_shard.py | 4 +- .../site-packages/sqlalchemy/ext/hybrid.py | 22 +- .../site-packages/sqlalchemy/ext/indexable.py | 59 +- .../sqlalchemy/ext/instrumentation.py | 2 +- .../site-packages/sqlalchemy/ext/mutable.py | 66 +- .../sqlalchemy/ext/mypy/__init__.py | 2 +- .../sqlalchemy/ext/mypy/apply.py | 2 +- .../sqlalchemy/ext/mypy/decl_class.py | 2 +- .../sqlalchemy/ext/mypy/infer.py | 2 +- .../sqlalchemy/ext/mypy/names.py | 4 +- .../sqlalchemy/ext/mypy/plugin.py | 2 +- .../site-packages/sqlalchemy/ext/mypy/util.py | 2 +- .../sqlalchemy/ext/orderinglist.py | 86 +- .../sqlalchemy/ext/serializer.py | 2 +- .../sqlalchemy/future/__init__.py | 2 +- .../site-packages/sqlalchemy/future/engine.py | 2 +- .../site-packages/sqlalchemy/inspection.py | 2 +- .../packages/site-packages/sqlalchemy/log.py | 2 +- .../site-packages/sqlalchemy/orm/__init__.py | 3 +- .../sqlalchemy/orm/_orm_constructors.py | 91 +- .../site-packages/sqlalchemy/orm/_typing.py | 2 +- .../sqlalchemy/orm/attributes.py | 34 +- .../site-packages/sqlalchemy/orm/base.py | 10 +- .../sqlalchemy/orm/bulk_persistence.py | 28 +- .../sqlalchemy/orm/clsregistry.py | 6 +- .../sqlalchemy/orm/collections.py | 4 +- .../site-packages/sqlalchemy/orm/context.py | 10 +- .../site-packages/sqlalchemy/orm/decl_api.py | 115 +- .../site-packages/sqlalchemy/orm/decl_base.py | 24 +- .../sqlalchemy/orm/dependency.py | 8 +- .../sqlalchemy/orm/descriptor_props.py | 21 +- .../site-packages/sqlalchemy/orm/dynamic.py | 2 +- .../site-packages/sqlalchemy/orm/evaluator.py | 2 +- .../site-packages/sqlalchemy/orm/events.py | 145 +- .../site-packages/sqlalchemy/orm/exc.py | 2 +- .../site-packages/sqlalchemy/orm/identity.py | 2 +- .../sqlalchemy/orm/instrumentation.py | 2 +- .../sqlalchemy/orm/interfaces.py | 12 +- .../site-packages/sqlalchemy/orm/loading.py | 24 +- .../sqlalchemy/orm/mapped_collection.py | 10 +- .../site-packages/sqlalchemy/orm/mapper.py | 47 +- .../sqlalchemy/orm/path_registry.py | 6 +- .../sqlalchemy/orm/persistence.py | 12 +- .../sqlalchemy/orm/properties.py | 109 +- .../site-packages/sqlalchemy/orm/query.py | 43 +- .../sqlalchemy/orm/relationships.py | 10 +- .../site-packages/sqlalchemy/orm/scoping.py | 21 +- .../site-packages/sqlalchemy/orm/session.py | 36 +- .../site-packages/sqlalchemy/orm/state.py | 27 +- .../sqlalchemy/orm/state_changes.py | 10 +- .../sqlalchemy/orm/strategies.py | 9 +- .../sqlalchemy/orm/strategy_options.py | 36 +- .../site-packages/sqlalchemy/orm/sync.py | 2 +- .../sqlalchemy/orm/unitofwork.py | 2 +- .../site-packages/sqlalchemy/orm/util.py | 4 +- .../site-packages/sqlalchemy/orm/writeonly.py | 14 +- .../site-packages/sqlalchemy/pool/__init__.py | 2 +- .../site-packages/sqlalchemy/pool/base.py | 18 +- .../site-packages/sqlalchemy/pool/events.py | 29 +- .../site-packages/sqlalchemy/pool/impl.py | 23 +- .../site-packages/sqlalchemy/schema.py | 7 +- .../site-packages/sqlalchemy/sql/__init__.py | 2 +- .../sqlalchemy/sql/_dml_constructors.py | 2 +- .../sqlalchemy/sql/_elements_constructors.py | 2 +- .../sqlalchemy/sql/_orm_types.py | 2 +- .../site-packages/sqlalchemy/sql/_py_util.py | 2 +- .../sql/_selectable_constructors.py | 78 +- .../site-packages/sqlalchemy/sql/_typing.py | 25 +- .../sqlalchemy/sql/annotation.py | 10 +- .../site-packages/sqlalchemy/sql/base.py | 288 +- .../site-packages/sqlalchemy/sql/cache_key.py | 4 +- .../site-packages/sqlalchemy/sql/coercions.py | 7 +- .../site-packages/sqlalchemy/sql/compiler.py | 421 +- .../site-packages/sqlalchemy/sql/crud.py | 88 +- .../site-packages/sqlalchemy/sql/ddl.py | 9 +- .../sqlalchemy/sql/default_comparator.py | 5 +- .../site-packages/sqlalchemy/sql/dml.py | 29 +- .../site-packages/sqlalchemy/sql/elements.py | 119 +- .../site-packages/sqlalchemy/sql/events.py | 2 +- .../sqlalchemy/sql/expression.py | 7 +- .../site-packages/sqlalchemy/sql/functions.py | 181 +- .../site-packages/sqlalchemy/sql/lambdas.py | 31 +- .../site-packages/sqlalchemy/sql/naming.py | 7 +- .../site-packages/sqlalchemy/sql/operators.py | 2 +- .../site-packages/sqlalchemy/sql/roles.py | 2 +- .../site-packages/sqlalchemy/sql/schema.py | 27 +- .../sqlalchemy/sql/selectable.py | 192 +- .../site-packages/sqlalchemy/sql/sqltypes.py | 58 +- .../sqlalchemy/sql/traversals.py | 2 +- .../site-packages/sqlalchemy/sql/type_api.py | 28 +- .../site-packages/sqlalchemy/sql/util.py | 8 +- .../site-packages/sqlalchemy/sql/visitors.py | 9 +- .../sqlalchemy/testing/__init__.py | 2 +- .../sqlalchemy/testing/assertions.py | 9 +- .../sqlalchemy/testing/assertsql.py | 8 +- .../sqlalchemy/testing/asyncio.py | 2 +- .../sqlalchemy/testing/config.py | 13 +- .../sqlalchemy/testing/engines.py | 133 +- .../sqlalchemy/testing/entities.py | 2 +- .../sqlalchemy/testing/exclusions.py | 49 +- .../sqlalchemy/testing/fixtures/__init__.py | 2 +- .../sqlalchemy/testing/fixtures/base.py | 30 +- .../sqlalchemy/testing/fixtures/mypy.py | 32 +- .../sqlalchemy/testing/fixtures/orm.py | 2 +- .../sqlalchemy/testing/fixtures/sql.py | 33 +- .../sqlalchemy/testing/pickleable.py | 2 +- .../sqlalchemy/testing/plugin/__init__.py | 2 +- .../sqlalchemy/testing/plugin/bootstrap.py | 2 +- .../sqlalchemy/testing/plugin/plugin_base.py | 65 +- .../sqlalchemy/testing/plugin/pytestplugin.py | 42 +- .../sqlalchemy/testing/profiling.py | 7 +- .../sqlalchemy/testing/provision.py | 107 +- .../sqlalchemy/testing/requirements.py | 114 +- .../sqlalchemy/testing/schema.py | 32 +- .../sqlalchemy/testing/suite/__init__.py | 2 +- .../sqlalchemy/testing/suite/test_cte.py | 30 +- .../sqlalchemy/testing/suite/test_ddl.py | 6 +- .../testing/suite/test_deprecations.py | 2 +- .../sqlalchemy/testing/suite/test_dialect.py | 44 +- .../sqlalchemy/testing/suite/test_insert.py | 2 +- .../testing/suite/test_reflection.py | 350 +- .../sqlalchemy/testing/suite/test_results.py | 2 +- .../sqlalchemy/testing/suite/test_rowcount.py | 2 +- .../sqlalchemy/testing/suite/test_select.py | 32 +- .../sqlalchemy/testing/suite/test_sequence.py | 10 +- .../sqlalchemy/testing/suite/test_types.py | 6 +- .../testing/suite/test_unicode_ddl.py | 2 +- .../testing/suite/test_update_delete.py | 4 +- .../site-packages/sqlalchemy/testing/util.py | 15 +- .../sqlalchemy/testing/warnings.py | 2 +- .../site-packages/sqlalchemy/types.py | 6 +- .../site-packages/sqlalchemy/util/__init__.py | 8 +- .../sqlalchemy/util/_collections.py | 9 +- .../sqlalchemy/util/_concurrency_py3k.py | 2 +- .../site-packages/sqlalchemy/util/_has_cy.py | 2 +- .../sqlalchemy/util/_py_collections.py | 10 +- .../site-packages/sqlalchemy/util/compat.py | 126 +- .../sqlalchemy/util/concurrency.py | 4 +- .../sqlalchemy/util/deprecations.py | 2 +- .../sqlalchemy/util/langhelpers.py | 103 +- .../sqlalchemy/util/preloaded.py | 2 +- .../site-packages/sqlalchemy/util/queue.py | 2 +- .../sqlalchemy/util/tool_support.py | 2 +- .../sqlalchemy/util/topological.py | 4 +- .../site-packages/sqlalchemy/util/typing.py | 22 +- .../site-packages/typing_extensions.py | 1293 ++-- .../site-packages/urllib3/_collections.py | 8 + .../site-packages/urllib3/_version.py | 19 +- .../site-packages/urllib3/connection.py | 131 +- .../urllib3/contrib/emscripten/__init__.py | 1 + .../urllib3/contrib/emscripten/connection.py | 7 +- .../emscripten/emscripten_fetch_worker.js | 16 +- .../urllib3/contrib/emscripten/fetch.py | 34 +- .../urllib3/contrib/pyopenssl.py | 4 +- .../site-packages/urllib3/contrib/socks.py | 2 +- .../site-packages/urllib3/exceptions.py | 4 +- .../site-packages/urllib3/http2/connection.py | 8 +- .../site-packages/urllib3/poolmanager.py | 16 +- .../site-packages/urllib3/response.py | 366 +- .../site-packages/urllib3/util/request.py | 13 +- .../site-packages/urllib3/util/retry.py | 16 + .../site-packages/urllib3/util/ssl_.py | 21 +- 1234 files changed, 256276 insertions(+), 193537 deletions(-) create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/cop.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/cop_EG.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_CZ.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_ES.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_FR.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_GS.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_HU.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_IT.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_NO.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_PL.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_PT.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_RO.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/en_SK.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/ht.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/ht_HT.dat create mode 100644 addons/source-python/packages/site-packages/babel/locale-data/yue_Hant_MO.dat create mode 100644 addons/source-python/packages/site-packages/charset_normalizer/cd.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/charset_normalizer/md.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/docutils/parsers/docutils_xml.py create mode 100644 addons/source-python/packages/site-packages/docutils/parsers/rst/include/README.rst create mode 100644 addons/source-python/packages/site-packages/docutils/parsers/rst/include/html-roles.txt create mode 100644 addons/source-python/packages/site-packages/docutils/utils/_roman_numerals.py create mode 100644 addons/source-python/packages/site-packages/docutils/utils/_typing.py create mode 100644 addons/source-python/packages/site-packages/docutils/writers/s5_html/themes/README.rst create mode 100644 addons/source-python/packages/site-packages/greenlet/_greenlet.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/greenlet/greenlet_msvc_compat.hpp create mode 100644 addons/source-python/packages/site-packages/markupsafe/_speedups.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/packaging/pylock.py create mode 100644 addons/source-python/packages/site-packages/pip/_internal/commands/lock.py create mode 100644 addons/source-python/packages/site-packages/pip/_internal/models/release_control.py create mode 100644 addons/source-python/packages/site-packages/pip/_internal/req/pep723.py create mode 100644 addons/source-python/packages/site-packages/pip/_internal/req/req_dependency_group.py create mode 100644 addons/source-python/packages/site-packages/pip/_internal/utils/pylock.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/README.rst create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/cachecontrol/LICENSE.txt create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/certifi/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/LICENSE.txt create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/__init__.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/__main__.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/_implementation.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/_toml_compat.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/dependency_groups/py.typed create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/distlib/LICENSE.txt create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/distro/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/idna/LICENSE.md create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/msgpack/COPYING create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/packaging/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/packaging/LICENSE.APACHE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/packaging/LICENSE.BSD create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/packaging/pylock.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/pkg_resources/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/platformdirs/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/pygments/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/pyproject_hooks/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/requests/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/resolvelib/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/rich/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/tomli/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/tomli_w/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/tomli_w/__init__.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/tomli_w/_writer.py create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/tomli_w/py.typed create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/truststore/LICENSE create mode 100644 addons/source-python/packages/site-packages/pip/_vendor/urllib3/LICENSE.txt create mode 100644 addons/source-python/packages/site-packages/psycopg2/_psycopg.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/pygments/lexers/_sql_builtins.py create mode 100644 addons/source-python/packages/site-packages/snowballstemmer/dutch_porter_stemmer.py create mode 100644 addons/source-python/packages/site-packages/snowballstemmer/esperanto_stemmer.py create mode 100644 addons/source-python/packages/site-packages/snowballstemmer/estonian_stemmer.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_directive.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_directive_options.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/__init__.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_docstrings.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_importer.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_loader.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_member_finder.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_mock.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_preserve_defaults.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_signatures.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_type_annotations.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_dynamic/_type_comments.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_event_listeners.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_generate.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_legacy_class_based/__init__.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_legacy_class_based/_directive_options.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_legacy_class_based/_documenters.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_legacy_class_based/_sentinels.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_names.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_property_types.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_renderer.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_sentinels.py create mode 100644 addons/source-python/packages/site-packages/sphinx/ext/autodoc/_shared.py create mode 100644 addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.js create mode 100644 addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.mo create mode 100644 addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.po create mode 100644 addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.js create mode 100644 addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.mo create mode 100644 addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.po create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/__init__.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.py create mode 100644 addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.txt create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/README.rst create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/arabic-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/armenian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/basque-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/catalan-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/dutch_porter-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/english-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/esperanto-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/estonian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/greek-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/hindi-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/indonesian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/irish-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/lithuanian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/nepali-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/serbian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/tamil-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/minified-js/yiddish-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/arabic-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/armenian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/basque-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/catalan-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch_porter-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/english-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/esperanto-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/estonian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/greek-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hindi-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/indonesian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/irish-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/lithuanian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/nepali-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/serbian-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/tamil-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sphinx/search/non-minified-js/yiddish-stemmer.js create mode 100644 addons/source-python/packages/site-packages/sqlalchemy/cyextension/collections.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/sqlalchemy/cyextension/immutabledict.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/sqlalchemy/cyextension/processors.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/sqlalchemy/cyextension/resultproxy.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.cp313-win_amd64.pyd create mode 100644 addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/vector.py diff --git a/addons/source-python/packages/site-packages/babel/__init__.py b/addons/source-python/packages/site-packages/babel/__init__.py index 7b2774558..2fd88befa 100644 --- a/addons/source-python/packages/site-packages/babel/__init__.py +++ b/addons/source-python/packages/site-packages/babel/__init__.py @@ -1,19 +1,19 @@ """ - babel - ~~~~~ +babel +~~~~~ - Integrated collection of utilities that assist in internationalizing and - localizing applications. +Integrated collection of utilities that assist in internationalizing and +localizing applications. - This package is basically composed of two major parts: +This package is basically composed of two major parts: - * tools to build and work with ``gettext`` message catalogs - * a Python interface to the CLDR (Common Locale Data Repository), providing - access to various locale display names, localized number and date - formatting, etc. + * tools to build and work with ``gettext`` message catalogs + * a Python interface to the CLDR (Common Locale Data Repository), providing + access to various locale display names, localized number and date + formatting, etc. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ from babel.core import ( @@ -25,7 +25,7 @@ parse_locale, ) -__version__ = '2.17.0' +__version__ = '2.18.0' __all__ = [ 'Locale', diff --git a/addons/source-python/packages/site-packages/babel/core.py b/addons/source-python/packages/site-packages/babel/core.py index 5762bbe36..4210b46bb 100644 --- a/addons/source-python/packages/site-packages/babel/core.py +++ b/addons/source-python/packages/site-packages/babel/core.py @@ -1,11 +1,11 @@ """ - babel.core - ~~~~~~~~~~ +babel.core +~~~~~~~~~~ - Core locale representation and locale data access. +Core locale representation and locale data access. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ from __future__ import annotations @@ -22,6 +22,7 @@ 'Locale', 'UnknownLocaleError', 'default_locale', + 'get_cldr_version', 'get_global', 'get_locale_identifier', 'negotiate_locale', @@ -33,6 +34,7 @@ _GLOBAL_KEY: TypeAlias = Literal[ "all_currencies", + "cldr", "currency_fractions", "language_aliases", "likely_subtags", @@ -56,12 +58,14 @@ def _raise_no_data_error(): - raise RuntimeError('The babel data files are not available. ' - 'This usually happens because you are using ' - 'a source checkout from Babel and you did ' - 'not build the data files. Just make sure ' - 'to run "python setup.py import_cldr" before ' - 'installing the library.') + raise RuntimeError( + 'The babel data files are not available. ' + 'This usually happens because you are using ' + 'a source checkout from Babel and you did ' + 'not build the data files. Just make sure ' + 'to run "python setup.py import_cldr" before ' + 'installing the library.', + ) def get_global(key: _GLOBAL_KEY) -> Mapping[str, Any]: @@ -71,13 +75,14 @@ def get_global(key: _GLOBAL_KEY) -> Mapping[str, Any]: information independent of individual locales. >>> get_global('zone_aliases')['UTC'] - u'Etc/UTC' + 'Etc/UTC' >>> get_global('zone_territories')['Europe/Berlin'] - u'DE' + 'DE' The keys available are: - ``all_currencies`` + - ``cldr`` (metadata) - ``currency_fractions`` - ``language_aliases`` - ``likely_subtags`` @@ -119,7 +124,7 @@ def get_global(key: _GLOBAL_KEY) -> Mapping[str, Any]: 'mk': 'mk_MK', 'nl': 'nl_NL', 'nn': 'nn_NO', 'no': 'nb_NO', 'pl': 'pl_PL', 'pt': 'pt_PT', 'ro': 'ro_RO', 'ru': 'ru_RU', 'sk': 'sk_SK', 'sl': 'sl_SI', 'sv': 'sv_SE', 'th': 'th_TH', 'tr': 'tr_TR', 'uk': 'uk_UA', -} +} # fmt: skip class UnknownLocaleError(Exception): @@ -145,7 +150,7 @@ class Locale: >>> repr(locale) "Locale('en', territory='US')" >>> locale.display_name - u'English (United States)' + 'English (United States)' A `Locale` object can also be instantiated from a raw locale string: @@ -157,7 +162,7 @@ class Locale: territory and language names, number and date format patterns, and more: >>> locale.number_symbols['latn']['decimal'] - u'.' + '.' If a locale is requested for which no locale data is available, an `UnknownLocaleError` is raised: @@ -216,7 +221,11 @@ def __init__( raise UnknownLocaleError(identifier) @classmethod - def default(cls, category: str | None = None, aliases: Mapping[str, str] = LOCALE_ALIASES) -> Locale: + def default( + cls, + category: str | None = None, + aliases: Mapping[str, str] = LOCALE_ALIASES, + ) -> Locale: """Return the system default locale for the specified category. >>> for name in ['LANGUAGE', 'LC_ALL', 'LC_CTYPE', 'LC_MESSAGES']: @@ -268,8 +277,7 @@ def negotiate( :param aliases: a dictionary of aliases for locale identifiers :param sep: separator for parsing; e.g. Windows tends to use '-' instead of '_'. """ - identifier = negotiate_locale(preferred, available, sep=sep, - aliases=aliases) + identifier = negotiate_locale(preferred, available, sep=sep, aliases=aliases) if identifier: return Locale.parse(identifier, sep=sep) return None @@ -285,7 +293,7 @@ def parse( >>> l = Locale.parse('de-DE', sep='-') >>> l.display_name - u'Deutsch (Deutschland)' + 'Deutsch (Deutschland)' If the `identifier` parameter is not a string, but actually a `Locale` object, that object is returned: @@ -343,10 +351,11 @@ def parse( f"Empty locale identifier value: {identifier!r}\n\n" f"If you didn't explicitly pass an empty value to a Babel function, " f"this could be caused by there being no suitable locale environment " - f"variables for the API you tried to use.", + f"variables for the API you tried to use." ) if isinstance(identifier, str): - raise ValueError(msg) # `parse_locale` would raise a ValueError, so let's do that here + # `parse_locale` would raise a ValueError, so let's do that here + raise ValueError(msg) raise TypeError(msg) if not isinstance(identifier, str): @@ -420,7 +429,9 @@ def _try_load_reducing(parts): else: language2, _, script2, variant2 = parts2 modifier2 = None - locale = _try_load_reducing((language2, territory, script2, variant2, modifier2)) + locale = _try_load_reducing( + (language2, territory, script2, variant2, modifier2), + ) if locale is not None: return locale @@ -431,19 +442,18 @@ def __eq__(self, other: object) -> bool: if not hasattr(other, key): return False return ( - self.language == getattr(other, 'language') and # noqa: B009 - self.territory == getattr(other, 'territory') and # noqa: B009 - self.script == getattr(other, 'script') and # noqa: B009 - self.variant == getattr(other, 'variant') and # noqa: B009 - self.modifier == getattr(other, 'modifier') # noqa: B009 + self.language == getattr(other, 'language') # noqa: B009 + and self.territory == getattr(other, 'territory') # noqa: B009 + and self.script == getattr(other, 'script') # noqa: B009 + and self.variant == getattr(other, 'variant') # noqa: B009 + and self.modifier == getattr(other, 'modifier') # noqa: B009 ) def __ne__(self, other: object) -> bool: return not self.__eq__(other) def __hash__(self) -> int: - return hash((self.language, self.territory, self.script, - self.variant, self.modifier)) + return hash((self.language, self.territory, self.script, self.variant, self.modifier)) def __repr__(self) -> str: parameters = [''] @@ -454,9 +464,9 @@ def __repr__(self) -> str: return f"Locale({self.language!r}{', '.join(parameters)})" def __str__(self) -> str: - return get_locale_identifier((self.language, self.territory, - self.script, self.variant, - self.modifier)) + return get_locale_identifier( + (self.language, self.territory, self.script, self.variant, self.modifier), + ) @property def _data(self) -> localedata.LocaleDataDict: @@ -471,12 +481,12 @@ def get_display_name(self, locale: Locale | str | None = None) -> str | None: variant, if those are specified. >>> Locale('zh', 'CN', script='Hans').get_display_name('en') - u'Chinese (Simplified, China)' + 'Chinese (Simplified, China)' Modifiers are currently passed through verbatim: >>> Locale('it', 'IT', modifier='euro').get_display_name('en') - u'Italian (Italy, euro)' + 'Italian (Italy, euro)' :param locale: the locale to use """ @@ -499,24 +509,27 @@ def get_display_name(self, locale: Locale | str | None = None) -> str | None: retval += f" ({detail_string})" return retval - display_name = property(get_display_name, doc="""\ + display_name = property( + get_display_name, + doc="""\ The localized display name of the locale. >>> Locale('en').display_name - u'English' + 'English' >>> Locale('en', 'US').display_name - u'English (United States)' + 'English (United States)' >>> Locale('sv').display_name - u'svenska' + 'svenska' :type: `unicode` - """) + """, + ) def get_language_name(self, locale: Locale | str | None = None) -> str | None: """Return the language of this locale in the given locale. >>> Locale('zh', 'CN', script='Hans').get_language_name('de') - u'Chinesisch' + 'Chinesisch' .. versionadded:: 1.0 @@ -527,12 +540,15 @@ def get_language_name(self, locale: Locale | str | None = None) -> str | None: locale = Locale.parse(locale) return locale.languages.get(self.language) - language_name = property(get_language_name, doc="""\ + language_name = property( + get_language_name, + doc="""\ The localized language name of the locale. >>> Locale('en', 'US').language_name - u'English' - """) + 'English' + """, + ) def get_territory_name(self, locale: Locale | str | None = None) -> str | None: """Return the territory name in the given locale.""" @@ -541,12 +557,15 @@ def get_territory_name(self, locale: Locale | str | None = None) -> str | None: locale = Locale.parse(locale) return locale.territories.get(self.territory or '') - territory_name = property(get_territory_name, doc="""\ + territory_name = property( + get_territory_name, + doc="""\ The localized territory name of the locale if available. >>> Locale('de', 'DE').territory_name - u'Deutschland' - """) + 'Deutschland' + """, + ) def get_script_name(self, locale: Locale | str | None = None) -> str | None: """Return the script name in the given locale.""" @@ -555,21 +574,24 @@ def get_script_name(self, locale: Locale | str | None = None) -> str | None: locale = Locale.parse(locale) return locale.scripts.get(self.script or '') - script_name = property(get_script_name, doc="""\ + script_name = property( + get_script_name, + doc="""\ The localized script name of the locale if available. >>> Locale('sr', 'ME', script='Latn').script_name - u'latinica' - """) + 'latinica' + """, + ) @property def english_name(self) -> str | None: """The english display name of the locale. >>> Locale('de').english_name - u'German' + 'German' >>> Locale('de', 'DE').english_name - u'German (Germany)' + 'German (Germany)' :type: `unicode`""" return self.get_display_name(Locale('en')) @@ -581,7 +603,7 @@ def languages(self) -> localedata.LocaleDataDict: """Mapping of language codes to translated language names. >>> Locale('de', 'DE').languages['ja'] - u'Japanisch' + 'Japanisch' See `ISO 639 `_ for more information. @@ -593,7 +615,7 @@ def scripts(self) -> localedata.LocaleDataDict: """Mapping of script codes to translated script names. >>> Locale('en', 'US').scripts['Hira'] - u'Hiragana' + 'Hiragana' See `ISO 15924 `_ for more information. @@ -605,7 +627,7 @@ def territories(self) -> localedata.LocaleDataDict: """Mapping of script codes to translated script names. >>> Locale('es', 'CO').territories['DE'] - u'Alemania' + 'Alemania' See `ISO 3166 `_ for more information. @@ -617,7 +639,7 @@ def variants(self) -> localedata.LocaleDataDict: """Mapping of script codes to translated script names. >>> Locale('de', 'DE').variants['1901'] - u'Alte deutsche Rechtschreibung' + 'Alte deutsche Rechtschreibung' """ return self._data['variants'] @@ -631,9 +653,9 @@ def currencies(self) -> localedata.LocaleDataDict: :func:`babel.numbers.get_currency_name` function. >>> Locale('en').currencies['COP'] - u'Colombian Peso' + 'Colombian Peso' >>> Locale('de', 'DE').currencies['COP'] - u'Kolumbianischer Peso' + 'Kolumbianischer Peso' """ return self._data['currency_names'] @@ -642,9 +664,9 @@ def currency_symbols(self) -> localedata.LocaleDataDict: """Mapping of currency codes to symbols. >>> Locale('en', 'US').currency_symbols['USD'] - u'$' + '$' >>> Locale('es', 'CO').currency_symbols['USD'] - u'US$' + 'US$' """ return self._data['currency_symbols'] @@ -656,11 +678,11 @@ def number_symbols(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('fr', 'FR').number_symbols["latn"]['decimal'] - u',' + ',' >>> Locale('fa', 'IR').number_symbols["arabext"]['decimal'] - u'٫' + '٫' >>> Locale('fa', 'IR').number_symbols["latn"]['decimal'] - u'.' + '.' """ return self._data['number_symbols'] @@ -671,7 +693,7 @@ def other_numbering_systems(self) -> localedata.LocaleDataDict: See: https://www.unicode.org/reports/tr35/tr35-numbers.html#otherNumberingSystems >>> Locale('el', 'GR').other_numbering_systems['traditional'] - u'grek' + 'grek' .. note:: The format of the value returned may change between Babel versions. @@ -682,7 +704,7 @@ def other_numbering_systems(self) -> localedata.LocaleDataDict: def default_numbering_system(self) -> str: """The default numbering system used by the locale. >>> Locale('el', 'GR').default_numbering_system - u'latn' + 'latn' """ return self._data['default_numbering_system'] @@ -694,7 +716,7 @@ def decimal_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').decimal_formats[None] - + """ return self._data['decimal_formats'] @@ -706,7 +728,7 @@ def compact_decimal_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').compact_decimal_formats["short"]["one"]["1000"] - + """ return self._data['compact_decimal_formats'] @@ -718,9 +740,9 @@ def currency_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').currency_formats['standard'] - + >>> Locale('en', 'US').currency_formats['accounting'] - + """ return self._data['currency_formats'] @@ -732,7 +754,7 @@ def compact_currency_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').compact_currency_formats["short"]["one"]["1000"] - + """ return self._data['compact_currency_formats'] @@ -744,7 +766,7 @@ def percent_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').percent_formats[None] - + """ return self._data['percent_formats'] @@ -756,7 +778,7 @@ def scientific_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').scientific_formats[None] - + """ return self._data['scientific_formats'] @@ -767,7 +789,7 @@ def periods(self) -> localedata.LocaleDataDict: """Locale display names for day periods (AM/PM). >>> Locale('en', 'US').periods['am'] - u'AM' + 'AM' """ try: return self._data['day_periods']['stand-alone']['wide'] @@ -784,8 +806,7 @@ def day_periods(self) -> localedata.LocaleDataDict: @property def day_period_rules(self) -> localedata.LocaleDataDict: - """Day period rules for the locale. Used by `get_period_id`. - """ + """Day period rules for the locale. Used by `get_period_id`.""" return self._data.get('day_period_rules', localedata.LocaleDataDict({})) @property @@ -793,7 +814,7 @@ def days(self) -> localedata.LocaleDataDict: """Locale display names for weekdays. >>> Locale('de', 'DE').days['format']['wide'][3] - u'Donnerstag' + 'Donnerstag' """ return self._data['days'] @@ -802,7 +823,7 @@ def months(self) -> localedata.LocaleDataDict: """Locale display names for months. >>> Locale('de', 'DE').months['format']['wide'][10] - u'Oktober' + 'Oktober' """ return self._data['months'] @@ -811,7 +832,7 @@ def quarters(self) -> localedata.LocaleDataDict: """Locale display names for quarters. >>> Locale('de', 'DE').quarters['format']['wide'][1] - u'1. Quartal' + '1. Quartal' """ return self._data['quarters'] @@ -823,9 +844,9 @@ def eras(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').eras['wide'][1] - u'Anno Domini' + 'Anno Domini' >>> Locale('en', 'US').eras['abbreviated'][0] - u'BC' + 'BC' """ return self._data['eras'] @@ -837,9 +858,9 @@ def time_zones(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').time_zones['Europe/London']['long']['daylight'] - u'British Summer Time' + 'British Summer Time' >>> Locale('en', 'US').time_zones['America/St_Johns']['city'] - u'St. John\u2019s' + 'St. John’s' """ return self._data['time_zones'] @@ -854,7 +875,7 @@ def meta_zones(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').meta_zones['Europe_Central']['long']['daylight'] - u'Central European Summer Time' + 'Central European Summer Time' .. versionadded:: 0.9 """ @@ -868,9 +889,9 @@ def zone_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').zone_formats['fallback'] - u'%(1)s (%(0)s)' + '%(1)s (%(0)s)' >>> Locale('pt', 'BR').zone_formats['region'] - u'Hor\\xe1rio %s' + 'Horário %s' .. versionadded:: 0.9 """ @@ -923,9 +944,9 @@ def date_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').date_formats['short'] - + >>> Locale('fr', 'FR').date_formats['long'] - + """ return self._data['date_formats'] @@ -937,9 +958,9 @@ def time_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en', 'US').time_formats['short'] - + >>> Locale('fr', 'FR').time_formats['long'] - + """ return self._data['time_formats'] @@ -951,9 +972,9 @@ def datetime_formats(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en').datetime_formats['full'] - u'{1}, {0}' + '{1}, {0}' >>> Locale('th').datetime_formats['medium'] - u'{1} {0}' + '{1} {0}' """ return self._data['datetime_formats'] @@ -962,11 +983,11 @@ def datetime_skeletons(self) -> localedata.LocaleDataDict: """Locale patterns for formatting parts of a datetime. >>> Locale('en').datetime_skeletons['MEd'] - + >>> Locale('fr').datetime_skeletons['MEd'] - + >>> Locale('fr').datetime_skeletons['H'] - + """ return self._data['datetime_skeletons'] @@ -981,7 +1002,7 @@ def interval_formats(self) -> localedata.LocaleDataDict: smallest changing component: >>> Locale('fi_FI').interval_formats['MEd']['d'] - [u'E d.\u2009\u2013\u2009', u'E d.M.'] + ['E d.\\u2009–\\u2009', 'E d.M.'] .. seealso:: @@ -1015,11 +1036,11 @@ def list_patterns(self) -> localedata.LocaleDataDict: Babel versions. >>> Locale('en').list_patterns['standard']['start'] - u'{0}, {1}' + '{0}, {1}' >>> Locale('en').list_patterns['standard']['end'] - u'{0}, and {1}' + '{0}, and {1}' >>> Locale('en_GB').list_patterns['standard']['end'] - u'{0} and {1}' + '{0} and {1}' """ return self._data['list_patterns'] @@ -1045,9 +1066,9 @@ def measurement_systems(self) -> localedata.LocaleDataDict: """Localized names for various measurement systems. >>> Locale('fr', 'FR').measurement_systems['US'] - u'am\\xe9ricain' + 'américain' >>> Locale('en', 'US').measurement_systems['US'] - u'US' + 'US' """ return self._data['measurement_systems'] @@ -1149,7 +1170,12 @@ def default_locale( return None -def negotiate_locale(preferred: Iterable[str], available: Iterable[str], sep: str = '_', aliases: Mapping[str, str] = LOCALE_ALIASES) -> str | None: +def negotiate_locale( + preferred: Iterable[str], + available: Iterable[str], + sep: str = '_', + aliases: Mapping[str, str] = LOCALE_ALIASES, +) -> str | None: """Find the best match between available and requested locale strings. >>> negotiate_locale(['de_DE', 'en_US'], ['de_DE', 'de_AT']) @@ -1215,7 +1241,10 @@ def negotiate_locale(preferred: Iterable[str], available: Iterable[str], sep: st def parse_locale( identifier: str, sep: str = '_', -) -> tuple[str, str | None, str | None, str | None] | tuple[str, str | None, str | None, str | None, str | None]: +) -> ( + tuple[str, str | None, str | None, str | None] + | tuple[str, str | None, str | None, str | None, str | None] +): """Parse a locale identifier into a tuple of the form ``(language, territory, script, variant, modifier)``. @@ -1293,8 +1322,10 @@ def parse_locale( territory = parts.pop(0) if parts and ( - len(parts[0]) == 4 and parts[0][0].isdigit() or - len(parts[0]) >= 5 and parts[0][0].isalpha() + len(parts[0]) == 4 + and parts[0][0].isdigit() + or len(parts[0]) >= 5 + and parts[0][0].isalpha() ): variant = parts.pop().upper() @@ -1335,3 +1366,19 @@ def get_locale_identifier( lang, territory, script, variant, modifier = tup + (None,) * (5 - len(tup)) ret = sep.join(filter(None, (lang, script, territory, variant))) return f'{ret}@{modifier}' if modifier else ret + + +def get_cldr_version() -> str: + """Return the Unicode CLDR version used by this Babel installation. + + Generally, you should be able to assume that the return value of this + function is a string representing a version number, e.g. '47'. + + >>> get_cldr_version() + '47' + + .. versionadded:: 2.18 + + :rtype: str + """ + return str(get_global("cldr")["version"]) diff --git a/addons/source-python/packages/site-packages/babel/dates.py b/addons/source-python/packages/site-packages/babel/dates.py index 355a9236e..69610a7f0 100644 --- a/addons/source-python/packages/site-packages/babel/dates.py +++ b/addons/source-python/packages/site-packages/babel/dates.py @@ -1,18 +1,18 @@ """ - babel.dates - ~~~~~~~~~~~ +babel.dates +~~~~~~~~~~~ - Locale dependent formatting and parsing of dates and times. +Locale dependent formatting and parsing of dates and times. - The default locale for the functions in this module is determined by the - following environment variables, in that order: +The default locale for the functions in this module is determined by the +following environment variables, in that order: - * ``LC_TIME``, - * ``LC_ALL``, and - * ``LANG`` + * ``LC_TIME``, + * ``LC_ALL``, and + * ``LANG`` - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ from __future__ import annotations @@ -38,10 +38,11 @@ if TYPE_CHECKING: from typing_extensions import TypeAlias + _Instant: TypeAlias = datetime.date | datetime.time | float | None _PredefinedTimeFormat: TypeAlias = Literal['full', 'long', 'medium', 'short'] _Context: TypeAlias = Literal['format', 'stand-alone'] - _DtOrTzinfo: TypeAlias = datetime.datetime | datetime.tzinfo | str | int | datetime.time | None + _DtOrTzinfo: TypeAlias = datetime.datetime | datetime.tzinfo | str | int | datetime.time | None # fmt: skip # "If a given short metazone form is known NOT to be understood in a given # locale and the parent locale has this value such that it would normally @@ -75,7 +76,9 @@ def _localize(tz: datetime.tzinfo, dt: datetime.datetime) -> datetime.datetime: return dt.astimezone(tz) -def _get_dt_and_tzinfo(dt_or_tzinfo: _DtOrTzinfo) -> tuple[datetime.datetime | None, datetime.tzinfo]: +def _get_dt_and_tzinfo( + dt_or_tzinfo: _DtOrTzinfo, +) -> tuple[datetime.datetime | None, datetime.tzinfo]: """ Parse a `dt_or_tzinfo` value into a datetime and a tzinfo. @@ -153,13 +156,16 @@ def _get_datetime(instant: _Instant) -> datetime.datetime: return datetime.datetime.fromtimestamp(instant, UTC).replace(tzinfo=None) elif isinstance(instant, datetime.time): return datetime.datetime.combine(datetime.date.today(), instant) - elif isinstance(instant, datetime.date) and not isinstance(instant, datetime.datetime): + elif isinstance(instant, datetime.date) and not isinstance(instant, datetime.datetime): # fmt: skip return datetime.datetime.combine(instant, datetime.time()) # TODO (3.x): Add an assertion/type check for this fallthrough branch: return instant -def _ensure_datetime_tzinfo(dt: datetime.datetime, tzinfo: datetime.tzinfo | None = None) -> datetime.datetime: +def _ensure_datetime_tzinfo( + dt: datetime.datetime, + tzinfo: datetime.tzinfo | None = None, +) -> datetime.datetime: """ Ensure the datetime passed has an attached tzinfo. @@ -260,7 +266,7 @@ def get_period_names( """Return the names for day periods (AM/PM) used by the locale. >>> get_period_names(locale='en_US')['am'] - u'AM' + 'AM' :param width: the width to use, one of "abbreviated", "narrow", or "wide" :param context: the context, either "format" or "stand-alone" @@ -277,13 +283,13 @@ def get_day_names( """Return the day names used by the locale for the specified format. >>> get_day_names('wide', locale='en_US')[1] - u'Tuesday' + 'Tuesday' >>> get_day_names('short', locale='en_US')[1] - u'Tu' + 'Tu' >>> get_day_names('abbreviated', locale='es')[1] - u'mar' + 'mar' >>> get_day_names('narrow', context='stand-alone', locale='de_DE')[1] - u'D' + 'D' :param width: the width to use, one of "wide", "abbreviated", "short" or "narrow" :param context: the context, either "format" or "stand-alone" @@ -300,11 +306,11 @@ def get_month_names( """Return the month names used by the locale for the specified format. >>> get_month_names('wide', locale='en_US')[1] - u'January' + 'January' >>> get_month_names('abbreviated', locale='es')[1] - u'ene' + 'ene' >>> get_month_names('narrow', context='stand-alone', locale='de_DE')[1] - u'J' + 'J' :param width: the width to use, one of "wide", "abbreviated", or "narrow" :param context: the context, either "format" or "stand-alone" @@ -321,11 +327,11 @@ def get_quarter_names( """Return the quarter names used by the locale for the specified format. >>> get_quarter_names('wide', locale='en_US')[1] - u'1st quarter' + '1st quarter' >>> get_quarter_names('abbreviated', locale='de_DE')[1] - u'Q1' + 'Q1' >>> get_quarter_names('narrow', locale='de_DE')[1] - u'1' + '1' :param width: the width to use, one of "wide", "abbreviated", or "narrow" :param context: the context, either "format" or "stand-alone" @@ -341,9 +347,9 @@ def get_era_names( """Return the era names used by the locale for the specified format. >>> get_era_names('wide', locale='en_US')[1] - u'Anno Domini' + 'Anno Domini' >>> get_era_names('abbreviated', locale='de_DE')[1] - u'n. Chr.' + 'n. Chr.' :param width: the width to use, either "wide", "abbreviated", or "narrow" :param locale: the `Locale` object, or a locale string. Defaults to the system time locale. @@ -359,9 +365,9 @@ def get_date_format( format. >>> get_date_format(locale='en_US') - + >>> get_date_format('full', locale='de_DE') - + :param format: the format to use, one of "full", "long", "medium", or "short" @@ -378,7 +384,7 @@ def get_datetime_format( specified format. >>> get_datetime_format(locale='en_US') - u'{1}, {0}' + '{1}, {0}' :param format: the format to use, one of "full", "long", "medium", or "short" @@ -398,9 +404,9 @@ def get_time_format( format. >>> get_time_format(locale='en_US') - + >>> get_time_format('full', locale='de_DE') - + :param format: the format to use, one of "full", "long", "medium", or "short" @@ -421,25 +427,25 @@ def get_timezone_gmt( >>> from datetime import datetime >>> dt = datetime(2007, 4, 1, 15, 30) >>> get_timezone_gmt(dt, locale='en') - u'GMT+00:00' + 'GMT+00:00' >>> get_timezone_gmt(dt, locale='en', return_z=True) 'Z' >>> get_timezone_gmt(dt, locale='en', width='iso8601_short') - u'+00' + '+00' >>> tz = get_timezone('America/Los_Angeles') >>> dt = _localize(tz, datetime(2007, 4, 1, 15, 30)) >>> get_timezone_gmt(dt, locale='en') - u'GMT-07:00' + 'GMT-07:00' >>> get_timezone_gmt(dt, 'short', locale='en') - u'-0700' + '-0700' >>> get_timezone_gmt(dt, locale='en', width='iso8601_short') - u'-07' + '-07' The long format depends on the locale, for example in France the acronym UTC string is used instead of GMT: >>> get_timezone_gmt(dt, 'long', locale='fr_FR') - u'UTC-07:00' + 'UTC-07:00' .. versionadded:: 0.9 @@ -488,14 +494,14 @@ def get_timezone_location( St. John’s >>> tz = get_timezone('America/Mexico_City') >>> get_timezone_location(tz, locale='de_DE') - u'Mexiko (Mexiko-Stadt) (Ortszeit)' + 'Mexiko (Mexiko-Stadt) (Ortszeit)' If the timezone is associated with a country that uses only a single timezone, just the localized country name is returned: >>> tz = get_timezone('Europe/Berlin') >>> get_timezone_name(tz, locale='de_DE') - u'Mitteleurop\\xe4ische Zeit' + 'Mitteleuropäische Zeit' .. versionadded:: 0.9 @@ -524,7 +530,11 @@ def get_timezone_location( if territory not in locale.territories: territory = 'ZZ' # invalid/unknown territory_name = locale.territories[territory] - if not return_city and territory and len(get_global('territory_zones').get(territory, [])) == 1: + if ( + not return_city + and territory + and len(get_global('territory_zones').get(territory, [])) == 1 + ): return region_format % territory_name # Otherwise, include the city in the output @@ -543,10 +553,13 @@ def get_timezone_location( if return_city: return city_name - return region_format % (fallback_format % { - '0': city_name, - '1': territory_name, - }) + return region_format % ( + fallback_format + % { + '0': city_name, + '1': territory_name, + } + ) def get_timezone_name( @@ -563,11 +576,11 @@ def get_timezone_name( >>> from datetime import time >>> dt = time(15, 30, tzinfo=get_timezone('America/Los_Angeles')) >>> get_timezone_name(dt, locale='en_US') # doctest: +SKIP - u'Pacific Standard Time' + 'Pacific Standard Time' >>> get_timezone_name(dt, locale='en_US', return_zone=True) 'America/Los_Angeles' >>> get_timezone_name(dt, width='short', locale='en_US') # doctest: +SKIP - u'PST' + 'PST' If this function gets passed only a `tzinfo` object and no concrete `datetime`, the returned display name is independent of daylight savings @@ -576,9 +589,9 @@ def get_timezone_name( >>> tz = get_timezone('America/Los_Angeles') >>> get_timezone_name(tz, locale='en_US') - u'Pacific Time' + 'Pacific Time' >>> get_timezone_name(tz, 'short', locale='en_US') - u'PT' + 'PT' If no localized display name for the timezone is available, and the timezone is associated with a country that uses only a single timezone, the name of @@ -586,16 +599,16 @@ def get_timezone_name( >>> tz = get_timezone('Europe/Berlin') >>> get_timezone_name(tz, locale='de_DE') - u'Mitteleurop\xe4ische Zeit' + 'Mitteleuropäische Zeit' >>> get_timezone_name(tz, locale='pt_BR') - u'Hor\xe1rio da Europa Central' + 'Horário da Europa Central' On the other hand, if the country uses multiple timezones, the city is also included in the representation: >>> tz = get_timezone('America/St_Johns') >>> get_timezone_name(tz, locale='de_DE') - u'Neufundland-Zeit' + 'Neufundland-Zeit' Note that short format is currently not supported for all timezones and all locales. This is partially because not every timezone has a short @@ -649,7 +662,9 @@ def get_timezone_name( info = locale.time_zones.get(zone, {}) # Try explicitly translated zone names first if width in info and zone_variant in info[width]: - return info[width][zone_variant] + value = info[width][zone_variant] + if value != NO_INHERITANCE_MARKER: + return value metazone = get_global('meta_zones').get(zone) if metazone: @@ -660,7 +675,7 @@ def get_timezone_name( # If the short form is marked no-inheritance, # try to fall back to the long name instead. name = metazone_info.get('long', {}).get(zone_variant) - if name: + if name and name != NO_INHERITANCE_MARKER: return name # If we have a concrete datetime, we assume that the result can't be @@ -681,15 +696,15 @@ def format_date( >>> from datetime import date >>> d = date(2007, 4, 1) >>> format_date(d, locale='en_US') - u'Apr 1, 2007' + 'Apr 1, 2007' >>> format_date(d, format='full', locale='de_DE') - u'Sonntag, 1. April 2007' + 'Sonntag, 1. April 2007' If you don't want to use the locale default formats, you can specify a custom date pattern: >>> format_date(d, "EEE, MMM d, ''yy", locale='en') - u"Sun, Apr 1, '07" + "Sun, Apr 1, '07" :param date: the ``date`` or ``datetime`` object; if `None`, the current date is used @@ -720,7 +735,7 @@ def format_datetime( >>> from datetime import datetime >>> dt = datetime(2007, 4, 1, 15, 30) >>> format_datetime(dt, locale='en_US') - u'Apr 1, 2007, 3:30:00\u202fPM' + 'Apr 1, 2007, 3:30:00\u202fPM' For any pattern requiring the display of the timezone: @@ -729,7 +744,7 @@ def format_datetime( 'dimanche 1 avril 2007, 17:30:00 heure d’été d’Europe centrale' >>> format_datetime(dt, "yyyy.MM.dd G 'at' HH:mm:ss zzz", ... tzinfo=get_timezone('US/Eastern'), locale='en') - u'2007.04.01 AD at 11:30:00 EDT' + '2007.04.01 AD at 11:30:00 EDT' :param datetime: the `datetime` object; if `None`, the current date and time is used @@ -742,11 +757,12 @@ def format_datetime( locale = Locale.parse(locale or LC_TIME) if format in ('full', 'long', 'medium', 'short'): - return get_datetime_format(format, locale=locale) \ - .replace("'", "") \ - .replace('{0}', format_time(datetime, format, tzinfo=None, - locale=locale)) \ + return ( + get_datetime_format(format, locale=locale) + .replace("'", "") + .replace('{0}', format_time(datetime, format, tzinfo=None, locale=locale)) .replace('{1}', format_date(datetime, format, locale=locale)) + ) else: return parse_pattern(format).apply(datetime, locale) @@ -762,15 +778,15 @@ def format_time( >>> from datetime import datetime, time >>> t = time(15, 30) >>> format_time(t, locale='en_US') - u'3:30:00\u202fPM' + '3:30:00\u202fPM' >>> format_time(t, format='short', locale='de_DE') - u'15:30' + '15:30' If you don't want to use the locale default formats, you can specify a custom time pattern: >>> format_time(t, "hh 'o''clock' a", locale='en') - u"03 o'clock PM" + "03 o'clock PM" For any pattern requiring the display of the time-zone a timezone has to be specified explicitly: @@ -782,7 +798,7 @@ def format_time( '15:30:00 heure d’été d’Europe centrale' >>> format_time(t, "hh 'o''clock' a, zzzz", tzinfo=get_timezone('US/Eastern'), ... locale='en') - u"09 o'clock AM, Eastern Daylight Time" + "09 o'clock AM, Eastern Daylight Time" As that example shows, when this function gets passed a ``datetime.datetime`` value, the actual time in the formatted string is @@ -800,10 +816,10 @@ def format_time( >>> t = time(15, 30) >>> format_time(t, format='full', tzinfo=get_timezone('Europe/Paris'), ... locale='fr_FR') # doctest: +SKIP - u'15:30:00 heure normale d\u2019Europe centrale' + '15:30:00 heure normale d\u2019Europe centrale' >>> format_time(t, format='full', tzinfo=get_timezone('US/Eastern'), ... locale='en_US') # doctest: +SKIP - u'3:30:00\u202fPM Eastern Standard Time' + '3:30:00\u202fPM Eastern Standard Time' :param time: the ``time`` or ``datetime`` object; if `None`, the current time in UTC is used @@ -842,11 +858,11 @@ def format_skeleton( >>> from datetime import datetime >>> t = datetime(2007, 4, 1, 15, 30) >>> format_skeleton('MMMEd', t, locale='fr') - u'dim. 1 avr.' + 'dim. 1 avr.' >>> format_skeleton('MMMEd', t, locale='en') - u'Sun, Apr 1' + 'Sun, Apr 1' >>> format_skeleton('yMMd', t, locale='fi') # yMMd is not in the Finnish locale; yMd gets used - u'1.4.2007' + '1.4.2007' >>> format_skeleton('yMMd', t, fuzzy=False, locale='fi') # yMMd is not in the Finnish locale, an error is thrown Traceback (most recent call last): ... @@ -888,8 +904,16 @@ def format_skeleton( def format_timedelta( delta: datetime.timedelta | int, - granularity: Literal['year', 'month', 'week', 'day', 'hour', 'minute', 'second'] = 'second', - threshold: float = .85, + granularity: Literal[ + 'year', + 'month', + 'week', + 'day', + 'hour', + 'minute', + 'second', + ] = 'second', + threshold: float = 0.85, add_direction: bool = False, format: Literal['narrow', 'short', 'medium', 'long'] = 'long', locale: Locale | str | None = None, @@ -898,39 +922,39 @@ def format_timedelta( >>> from datetime import timedelta >>> format_timedelta(timedelta(weeks=12), locale='en_US') - u'3 months' + '3 months' >>> format_timedelta(timedelta(seconds=1), locale='es') - u'1 segundo' + '1 segundo' The granularity parameter can be provided to alter the lowest unit presented, which defaults to a second. >>> format_timedelta(timedelta(hours=3), granularity='day', locale='en_US') - u'1 day' + '1 day' The threshold parameter can be used to determine at which value the presentation switches to the next higher unit. A higher threshold factor means the presentation will switch later. For example: >>> format_timedelta(timedelta(hours=23), threshold=0.9, locale='en_US') - u'1 day' + '1 day' >>> format_timedelta(timedelta(hours=23), threshold=1.1, locale='en_US') - u'23 hours' + '23 hours' In addition directional information can be provided that informs the user if the date is in the past or in the future: >>> format_timedelta(timedelta(hours=1), add_direction=True, locale='en') - u'in 1 hour' + 'in 1 hour' >>> format_timedelta(timedelta(hours=-1), add_direction=True, locale='en') - u'1 hour ago' + '1 hour ago' The format parameter controls how compact or wide the presentation is: >>> format_timedelta(timedelta(hours=3), format='short', locale='en') - u'3 hr' + '3 hr' >>> format_timedelta(timedelta(hours=3), format='narrow', locale='en') - u'3h' + '3h' :param delta: a ``timedelta`` object representing the time difference to format, or the delta in seconds as an `int` value @@ -953,8 +977,7 @@ def format_timedelta( raise TypeError('Format must be one of "narrow", "short" or "long"') if format == 'medium': warnings.warn( - '"medium" value for format param of format_timedelta' - ' is deprecated. Use "long" instead', + '"medium" value for format param of format_timedelta is deprecated. Use "long" instead', category=DeprecationWarning, stacklevel=2, ) @@ -971,7 +994,7 @@ def _iter_patterns(a_unit): if add_direction: # Try to find the length variant version first ("year-narrow") # before falling back to the default. - unit_rel_patterns = (date_fields.get(f"{a_unit}-{format}") or date_fields[a_unit]) + unit_rel_patterns = date_fields.get(f"{a_unit}-{format}") or date_fields[a_unit] if seconds >= 0: yield unit_rel_patterns['future'] else: @@ -1016,9 +1039,17 @@ def _format_fallback_interval( ) -> str: if skeleton in locale.datetime_skeletons: # Use the given skeleton format = lambda dt: format_skeleton(skeleton, dt, tzinfo, locale=locale) - elif all((isinstance(d, datetime.date) and not isinstance(d, datetime.datetime)) for d in (start, end)): # Both are just dates + elif all( + # Both are just dates + (isinstance(d, datetime.date) and not isinstance(d, datetime.datetime)) + for d in (start, end) + ): format = lambda dt: format_date(dt, locale=locale) - elif all((isinstance(d, datetime.time) and not isinstance(d, datetime.date)) for d in (start, end)): # Both are times + elif all( + # Both are times + (isinstance(d, datetime.time) and not isinstance(d, datetime.date)) + for d in (start, end) + ): format = lambda dt: format_time(dt, tzinfo=tzinfo, locale=locale) else: format = lambda dt: format_datetime(dt, tzinfo=tzinfo, locale=locale) @@ -1030,9 +1061,9 @@ def _format_fallback_interval( return format(start) return ( - locale.interval_formats.get(None, "{0}-{1}"). - replace("{0}", formatted_start). - replace("{1}", formatted_end) + locale.interval_formats.get(None, "{0}-{1}") + .replace("{0}", formatted_start) + .replace("{1}", formatted_end) ) @@ -1049,16 +1080,16 @@ def format_interval( >>> from datetime import date, time >>> format_interval(date(2016, 1, 15), date(2016, 1, 17), "yMd", locale="fi") - u'15.\u201317.1.2016' + '15.–17.1.2016' >>> format_interval(time(12, 12), time(16, 16), "Hm", locale="en_GB") - '12:12\u201316:16' + '12:12–16:16' >>> format_interval(time(5, 12), time(16, 16), "hm", locale="en_US") - '5:12\u202fAM\u2009–\u20094:16\u202fPM' + '5:12\\u202fAM\\u2009–\\u20094:16\\u202fPM' >>> format_interval(time(16, 18), time(16, 24), "Hm", locale="it") - '16:18\u201316:24' + '16:18–16:24' If the start instant equals the end instant, the interval is formatted like the instant. @@ -1068,13 +1099,13 @@ def format_interval( Unknown skeletons fall back to "default" formatting. >>> format_interval(date(2015, 1, 1), date(2017, 1, 1), "wzq", locale="ja") - '2015/01/01\uff5e2017/01/01' + '2015/01/01~2017/01/01' >>> format_interval(time(16, 18), time(16, 24), "xxx", locale="ja") - '16:18:00\uff5e16:24:00' + '16:18:00~16:24:00' >>> format_interval(date(2016, 1, 15), date(2016, 1, 17), "xxx", locale="de") - '15.01.2016\u2009–\u200917.01.2016' + '15.01.2016\\u2009–\\u200917.01.2016' :param start: First instant (datetime/date/time) :param end: Second instant (datetime/date/time) @@ -1132,8 +1163,7 @@ def format_interval( # > format the start and end datetime, as above. return "".join( parse_pattern(pattern).apply(instant, locale) - for pattern, instant - in zip(skel_formats[field], (start, end)) + for pattern, instant in zip(skel_formats[field], (start, end)) ) # > Otherwise, format the start and end datetime using the fallback pattern. @@ -1154,13 +1184,13 @@ def get_period_id( >>> from datetime import time >>> get_period_names(locale="de")[get_period_id(time(7, 42), locale="de")] - u'Morgen' + 'Morgen' >>> get_period_id(time(0), locale="en_US") - u'midnight' + 'midnight' >>> get_period_id(time(0), type="selection", locale="en_US") - u'night1' + 'morning1' :param time: The time to inspect. :param tzinfo: The timezone for the time. See ``format_time``. @@ -1191,8 +1221,10 @@ def get_period_id( return rule_id else: # e.g. from="21:00" before="06:00" - if rule["from"] <= seconds_past_midnight < 86400 or \ - 0 <= seconds_past_midnight < rule["before"]: + if ( + rule["from"] <= seconds_past_midnight < 86400 + or 0 <= seconds_past_midnight < rule["before"] + ): return rule_id start_ok = end_ok = False @@ -1264,8 +1296,11 @@ def parse_date( use_predefined_format = format in ('full', 'long', 'medium', 'short') # we try ISO-8601 format first, meaning similar to formats # extended YYYY-MM-DD or basic YYYYMMDD - iso_alike = re.match(r'^(\d{4})-?([01]\d)-?([0-3]\d)$', - string, flags=re.ASCII) # allow only ASCII digits + iso_alike = re.match( + r'^(\d{4})-?([01]\d)-?([0-3]\d)$', + string, + flags=re.ASCII, # allow only ASCII digits + ) if iso_alike and use_predefined_format: try: return datetime.date(*map(int, iso_alike.groups())) @@ -1364,7 +1399,6 @@ def parse_time( class DateTimePattern: - def __init__(self, pattern: str, format: DateTimeFormat): self.pattern = pattern self.format = format @@ -1391,7 +1425,6 @@ def apply( class DateTimeFormat: - def __init__( self, value: datetime.date | datetime.time, @@ -1472,7 +1505,9 @@ def extract(self, char: str) -> int: elif char == 'a': return int(self.value.hour >= 12) # 0 for am, 1 for pm else: - raise NotImplementedError(f"Not implemented: extracting {char!r} from {self.value!r}") + raise NotImplementedError( + f"Not implemented: extracting {char!r} from {self.value!r}", + ) def format_era(self, char: str, num: int) -> str: width = {3: 'abbreviated', 4: 'wide', 5: 'narrow'}[max(3, num)] @@ -1522,12 +1557,12 @@ def format_weekday(self, char: str = 'E', num: int = 4) -> str: >>> from datetime import date >>> format = DateTimeFormat(date(2016, 2, 28), Locale.parse('en_US')) >>> format.format_weekday() - u'Sunday' + 'Sunday' 'E': Day of week - Use one through three letters for the abbreviated day name, four for the full (wide) name, five for the narrow name, or six for the short name. >>> format.format_weekday('E',2) - u'Sun' + 'Sun' 'e': Local day of week. Same as E except adds a numeric value that will depend on the local starting day of the week, using one or two letters. For this example, Monday is the first day of the week. @@ -1566,28 +1601,32 @@ def format_period(self, char: str, num: int) -> str: >>> from datetime import datetime, time >>> format = DateTimeFormat(time(13, 42), 'fi_FI') >>> format.format_period('a', 1) - u'ip.' + 'ip.' >>> format.format_period('b', 1) - u'iltap.' + 'iltap.' >>> format.format_period('b', 4) - u'iltapäivä' + 'iltapäivä' >>> format.format_period('B', 4) - u'iltapäivällä' + 'iltapäivällä' >>> format.format_period('B', 5) - u'ip.' + 'ip.' >>> format = DateTimeFormat(datetime(2022, 4, 28, 6, 27), 'zh_Hant') >>> format.format_period('a', 1) - u'上午' + '上午' >>> format.format_period('B', 1) - u'清晨' + '清晨' :param char: pattern format character ('a', 'b', 'B') :param num: count of format character """ - widths = [{3: 'abbreviated', 4: 'wide', 5: 'narrow'}[max(3, num)], - 'wide', 'narrow', 'abbreviated'] + widths = [ + {3: 'abbreviated', 4: 'wide', 5: 'narrow'}[max(3, num)], + 'wide', + 'narrow', + 'abbreviated', + ] if char == 'a': period = 'pm' if self.value.hour >= 12 else 'am' context = 'format' @@ -1610,8 +1649,12 @@ def format_frac_seconds(self, num: int) -> str: return self.format(round(value, num) * 10**num, num) def format_milliseconds_in_day(self, num): - msecs = self.value.microsecond // 1000 + self.value.second * 1000 + \ - self.value.minute * 60000 + self.value.hour * 3600000 + msecs = ( + self.value.microsecond // 1000 + + self.value.second * 1000 + + self.value.minute * 60000 + + self.value.hour * 3600000 + ) return self.format(msecs, num) def format_timezone(self, char: str, num: int) -> str: @@ -1635,35 +1678,24 @@ def format_timezone(self, char: str, num: int) -> str: return get_timezone_gmt(value, width, locale=self.locale) # TODO: To add support for O:1 elif char == 'v': - return get_timezone_name(value.tzinfo, width, - locale=self.locale) + return get_timezone_name(value.tzinfo, width, locale=self.locale) elif char == 'V': if num == 1: - return get_timezone_name(value.tzinfo, width, - uncommon=True, locale=self.locale) + return get_timezone_name(value.tzinfo, width, locale=self.locale) elif num == 2: return get_timezone_name(value.tzinfo, locale=self.locale, return_zone=True) elif num == 3: - return get_timezone_location(value.tzinfo, locale=self.locale, return_city=True) + return get_timezone_location(value.tzinfo, locale=self.locale, return_city=True) # fmt: skip return get_timezone_location(value.tzinfo, locale=self.locale) - # Included additional elif condition to add support for 'Xx' in timezone format - elif char == 'X': - if num == 1: - return get_timezone_gmt(value, width='iso8601_short', locale=self.locale, - return_z=True) - elif num in (2, 4): - return get_timezone_gmt(value, width='short', locale=self.locale, - return_z=True) - elif num in (3, 5): - return get_timezone_gmt(value, width='iso8601', locale=self.locale, - return_z=True) - elif char == 'x': + elif char in 'Xx': + return_z = char == 'X' if num == 1: - return get_timezone_gmt(value, width='iso8601_short', locale=self.locale) + width = 'iso8601_short' elif num in (2, 4): - return get_timezone_gmt(value, width='short', locale=self.locale) + width = 'short' elif num in (3, 5): - return get_timezone_gmt(value, width='iso8601', locale=self.locale) + width = 'iso8601' + return get_timezone_gmt(value, width=width, locale=self.locale, return_z=return_z) # fmt: skip def format(self, value: SupportsInt, length: int) -> str: return '%0*d' % (length, value) @@ -1679,12 +1711,13 @@ def get_week_of_year(self) -> int: week = self.get_week_number(day_of_year) if week == 0: date = datetime.date(self.value.year - 1, 12, 31) - week = self.get_week_number(self.get_day_of_year(date), - date.weekday()) + week = self.get_week_number(self.get_day_of_year(date), date.weekday()) elif week > 52: weekday = datetime.date(self.value.year + 1, 1, 1).weekday() - if self.get_week_number(1, weekday) == 1 and \ - 32 - (weekday - self.locale.first_week_day) % 7 <= self.value.day: + if ( + self.get_week_number(1, weekday) == 1 + and 32 - (weekday - self.locale.first_week_day) % 7 <= self.value.day + ): week = 1 return week @@ -1713,8 +1746,7 @@ def get_week_number(self, day_of_period: int, day_of_week: int | None = None) -> """ if day_of_week is None: day_of_week = self.value.weekday() - first_day = (day_of_week - self.locale.first_week_day - - day_of_period + 1) % 7 + first_day = (day_of_week - self.locale.first_week_day - day_of_period + 1) % 7 if first_day < 0: first_day += 7 week_number = (day_of_period + first_day - 1) // 7 @@ -1737,7 +1769,7 @@ def get_week_number(self, day_of_period: int, day_of_week: int | None = None) -> 's': [1, 2], 'S': None, 'A': None, # second 'z': [1, 2, 3, 4], 'Z': [1, 2, 3, 4, 5], 'O': [1, 4], 'v': [1, 4], # zone 'V': [1, 2, 3, 4], 'x': [1, 2, 3, 4, 5], 'X': [1, 2, 3, 4, 5], # zone -} +} # fmt: skip #: The pattern characters declared in the Date Field Symbol Table #: (https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table) @@ -1749,20 +1781,20 @@ def parse_pattern(pattern: str | DateTimePattern) -> DateTimePattern: """Parse date, time, and datetime format patterns. >>> parse_pattern("MMMMd").format - u'%(MMMM)s%(d)s' + '%(MMMM)s%(d)s' >>> parse_pattern("MMM d, yyyy").format - u'%(MMM)s %(d)s, %(yyyy)s' + '%(MMM)s %(d)s, %(yyyy)s' Pattern can contain literal strings in single quotes: >>> parse_pattern("H:mm' Uhr 'z").format - u'%(H)s:%(mm)s Uhr %(z)s' + '%(H)s:%(mm)s Uhr %(z)s' An actual single quote can be used by using two adjacent single quote characters: >>> parse_pattern("hh' o''clock'").format - u"%(hh)s o'clock" + "%(hh)s o'clock" :param pattern: the formatting pattern to parse """ @@ -1886,18 +1918,18 @@ def split_interval_pattern(pattern: str) -> list[str]: > The pattern is then designed to be broken up into two pieces by determining the first repeating field. - https://www.unicode.org/reports/tr35/tr35-dates.html#intervalFormats - >>> split_interval_pattern(u'E d.M. \u2013 E d.M.') - [u'E d.M. \u2013 ', 'E d.M.'] + >>> split_interval_pattern('E d.M. – E d.M.') + ['E d.M. – ', 'E d.M.'] >>> split_interval_pattern("Y 'text' Y 'more text'") ["Y 'text '", "Y 'more text'"] - >>> split_interval_pattern(u"E, MMM d \u2013 E") - [u'E, MMM d \u2013 ', u'E'] + >>> split_interval_pattern('E, MMM d – E') + ['E, MMM d – ', 'E'] >>> split_interval_pattern("MMM d") ['MMM d'] >>> split_interval_pattern("y G") ['y G'] - >>> split_interval_pattern(u"MMM d \u2013 d") - [u'MMM d \u2013 ', u'd'] + >>> split_interval_pattern('MMM d – d') + ['MMM d – ', 'd'] :param pattern: Interval pattern string :return: list of "subpatterns" @@ -1917,7 +1949,11 @@ def split_interval_pattern(pattern: str) -> list[str]: return [untokenize_pattern(tokens) for tokens in parts] -def match_skeleton(skeleton: str, options: Iterable[str], allow_different_fields: bool = False) -> str | None: +def match_skeleton( + skeleton: str, + options: Iterable[str], + allow_different_fields: bool = False, +) -> str | None: """ Find the closest match for the given datetime skeleton among the options given. @@ -1965,11 +2001,11 @@ def match_skeleton(skeleton: str, options: Iterable[str], allow_different_fields if 'b' in skeleton and not any('b' in option for option in options): skeleton = skeleton.replace('b', '') - get_input_field_width = dict(t[1] for t in tokenize_pattern(skeleton) if t[0] == "field").get + get_input_field_width = dict(t[1] for t in tokenize_pattern(skeleton) if t[0] == "field").get # fmt: skip best_skeleton = None best_distance = None for option in options: - get_opt_field_width = dict(t[1] for t in tokenize_pattern(option) if t[0] == "field").get + get_opt_field_width = dict(t[1] for t in tokenize_pattern(option) if t[0] == "field").get # fmt: skip distance = 0 for field in PATTERN_CHARS: input_width = get_input_field_width(field, 0) @@ -1980,13 +2016,18 @@ def match_skeleton(skeleton: str, options: Iterable[str], allow_different_fields if not allow_different_fields: # This one is not okay option = None break - distance += 0x1000 # Magic weight constant for "entirely different fields" - elif field == 'M' and ((input_width > 2 and opt_width <= 2) or (input_width <= 2 and opt_width > 2)): - distance += 0x100 # Magic weight for "text turns into a number" + # Magic weight constant for "entirely different fields" + distance += 0x1000 + elif field == 'M' and ( + (input_width > 2 and opt_width <= 2) or (input_width <= 2 and opt_width > 2) + ): + # Magic weight constant for "text turns into a number" + distance += 0x100 else: distance += abs(input_width - opt_width) - if not option: # We lost the option along the way (probably due to "allow_different_fields") + if not option: + # We lost the option along the way (probably due to "allow_different_fields") continue if not best_skeleton or distance < best_distance: diff --git a/addons/source-python/packages/site-packages/babel/global.dat b/addons/source-python/packages/site-packages/babel/global.dat index 4c7f1506d7e9578daeec3671c7f7b296700bc23b..225499456def91c1833a204cf52247ed19920637 100644 GIT binary patch literal 461219 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 LvflaWb|MGn6pl3}M{_Ga1it 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%0AReQ!h>KN#W9 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 diff --git a/addons/source-python/packages/site-packages/babel/languages.py b/addons/source-python/packages/site-packages/babel/languages.py index 564f555d2..5b2396c84 100644 --- a/addons/source-python/packages/site-packages/babel/languages.py +++ b/addons/source-python/packages/site-packages/babel/languages.py @@ -3,7 +3,11 @@ from babel.core import get_global -def get_official_languages(territory: str, regional: bool = False, de_facto: bool = False) -> tuple[str, ...]: +def get_official_languages( + territory: str, + regional: bool = False, + de_facto: bool = False, +) -> tuple[str, ...]: """ Get the official language(s) for the given territory. @@ -43,7 +47,9 @@ def get_official_languages(territory: str, regional: bool = False, de_facto: boo return tuple(lang for _, lang in pairs) -def get_territory_language_info(territory: str) -> dict[str, dict[str, float | str | None]]: +def get_territory_language_info( + territory: str, +) -> dict[str, dict[str, float | str | None]]: """ Get a dictionary of language information for a territory. diff --git a/addons/source-python/packages/site-packages/babel/lists.py b/addons/source-python/packages/site-packages/babel/lists.py index 353171c71..b6c859800 100644 --- a/addons/source-python/packages/site-packages/babel/lists.py +++ b/addons/source-python/packages/site-packages/babel/lists.py @@ -1,18 +1,19 @@ """ - babel.lists - ~~~~~~~~~~~ +babel.lists +~~~~~~~~~~~ - Locale dependent formatting of lists. +Locale dependent formatting of lists. - The default locale for the functions in this module is determined by the - following environment variables, in that order: +The default locale for the functions in this module is determined by the +following environment variables, in that order: - * ``LC_ALL``, and - * ``LANG`` + * ``LC_ALL``, and + * ``LANG`` - :copyright: (c) 2015-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2015-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import warnings @@ -37,18 +38,26 @@ def __getattr__(name): def format_list( lst: Sequence[str], - style: Literal['standard', 'standard-short', 'or', 'or-short', 'unit', 'unit-short', 'unit-narrow'] = 'standard', + style: Literal[ + 'standard', + 'standard-short', + 'or', + 'or-short', + 'unit', + 'unit-short', + 'unit-narrow', + ] = 'standard', locale: Locale | str | None = None, ) -> str: """ Format the items in `lst` as a list. >>> format_list(['apples', 'oranges', 'pears'], locale='en') - u'apples, oranges, and pears' + 'apples, oranges, and pears' >>> format_list(['apples', 'oranges', 'pears'], locale='zh') - u'apples\u3001oranges\u548cpears' + 'apples、oranges和pears' >>> format_list(['omena', 'peruna', 'aplari'], style='or', locale='fi') - u'omena, peruna tai aplari' + 'omena, peruna tai aplari' Not all styles are necessarily available in all locales. The function will attempt to fall back to replacement styles according to the rules diff --git a/addons/source-python/packages/site-packages/babel/locale-data/cop.dat b/addons/source-python/packages/site-packages/babel/locale-data/cop.dat new file mode 100644 index 0000000000000000000000000000000000000000..01dd6959af4fa47109dde19c0f25a89d049e4e49 GIT binary patch literal 693 zcmY+B>2BLF5QLSax$mS&@1|$!Hf?(MCHw;XComLk5G5%Mj|MKVKp(wpIu`7I(lYBX$XUrP;04zw1UOiG9MspmcM_Gnzyk z4p&Oi$OJYs!qKoQ-KI9}n>r>L5{`%KCGMQEf|KD!7JEGSZ|ikEYJ-y;=ag_?>@ZEn z>3S+foDt3ob2`a8_JHtE9B`e_?nZ|?PTWmvBOVbRi{qXfKV~T=?INBKo{B@38m)|z zwx9Wo@LZg*5S7tBnUPVwc0qViOq~vj#a?(xcqNY5q;d$_t4XiCCcF{ni%RxpVYP1w zmnC}d^wRM&-w_7lY|&SE-Ps(Z#e2es<$?1zUlBf*r7zFfBr|gui>^}kVkU!uz%k_043)}Y|FQ6ce#7}49kgMd;-PQ?z>Y`u{)Dd863 ztTJ!1`p?b@x5WY1h2pPGlxga(TbFQ$a914n+=dBDDI1?~k8occveX!Dy>fle2ZV>> zgoUK73E7UV?zKmRi)!jj)GYSGW5N@0#3o&0G(k^$%>0J%wl00O&pX2Vd5+e1ZQ*0A>Q{shb?k~8n>wea oa-QWQ;ZwaBADWM2jcXD<6TXO34(N?aB^p25$6~u*3E#@qKfj9F$N&HU literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/da.dat b/addons/source-python/packages/site-packages/babel/locale-data/da.dat index bb74382c2528d85cd777e28db7c7febd43b73bd7..43df93f978e1a407471b7c518cc2c8b2eb815e20 100644 GIT binary patch delta 80 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 Hi?#m;NpcXr literal 217633 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 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_001.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_001.dat index 47db2cc6fb81649cfa9f8710e8aa49ea034277e2..e799826a20a312f01c79ea2d905437a7be2215d1 100644 GIT binary patch delta 44 scmezOjj`c7_VEQVvHJBD+0rNMPvv8IJ09V`&VgLXD diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_AU.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_AU.dat index 7c92a1a3be4c3e707c4ad16257d28eb22e6fe1ec..a27ea0f677abd98b66d97d572bb6c112745b2b0c 100644 GIT binary patch literal 19022 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 S{P~IddCODaC!|FKvJ|qxy8UYcoz)er*S{$$ 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 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_CA.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_CA.dat index 89cab7ceb9b2a004f5e474b51057f2ada1200726..4bcd2d24a7c4eae6bb6632458350aa43209a5c1a 100644 GIT binary patch delta 59 zcmZ3of@#|drVZYLI>HPL434>}MVZNoc?!Xax%r6-A(=qF10w@NMty_~vh?Ou!Tn7D DDPt0n delta 41 vcmdnCf@#SLrVZYLQd|rS48e)H`H2c4nYpP&4vY*88TApuK+(4OZT0YeQ66NKq>or%Vl4{;>L1koXG0fGsg=kNWa9R@GLwTf1Gxd z+|7K)=lqNPr$;FIVx=gGx+ztyrKvC{7WrR0`TYlaVvWC}_TI$C8yzrDSeO`;8zwbm zv`DximigRI<&APNV2Q9SmY9Uno0h=}VO4A}s7;8nRgoiIz#3sahyBv}QdTM|Y!Ej4 zIn5f!XcVw@KB+h`p3RJ~eO@H7&T+pRr{$pWR&kLX!me0l8jaO*ECuWlZf0h6R99@D za3D7MoJ;mXdl^RdqNxLJ5pIixag!=K+#%fU=OHRx8mnsD6LTz{;(lJx&^M{Y1JPsl z?=K#vAa=S;`UOIJBvzlVe)vCBdzjdsxtOxbD2geTe5YG1P02~P

^~gj2CU?aN%Yb@Dv*E5g}q!Rvj! zCcMd)I$P&0;oYQ<# literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_Dsrt.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_Dsrt.dat index 114accc102c5299d6bbc7abea0eaddaa0fc3bdca..341ac66dd7367c656c96a421b542484953d067bd 100644 GIT binary patch delta 44 scmZoz$JDfrX+s_}lQ+ZULgoZkuZBQIhRIi$tw91pEKq^Xr7Yc(04S>rz5oCK delta 42 ocmZo#$JDTnX+s_}vu{GkK}4i9EH*a41M<`JmTL>UH|ZPB zyh8q)Clo!gS`{I8w-^&9hIoxh{@-o(Zm9k4)HoEVfFCN*TVM7SeX z_}rE9M!6WUOjr@iOhV~R%V3qTCN>$=CPdk)$dN8!ov@L^uC@LnD-{(s30u9KW{qPs z3fR7wR2&%3W=7b#D3aLVxWA3la?p6IxX3PHPpmPG#%ej10`>`aGqXCX8+JfA6kB}G zC3~s83?qBl)B*Ph_r>D4NfjL)5FYmO5S1>CRW%-oITlaxI4@}Eo7Cb-W_>(OLF{&s z#tk_&L~R3}5uS@}mTqFYc3%))iai!WX|#)GV9HK=MR=V}t@b60o$!WmBzD+TChxT? zN1bv^=!wH=B{?&->l4D;Jay-E%JPQZ5l+Ryv@dhn*2(kGXN3N2!P|A66W-@LovrhM z@Nv>dW7{UVO3vz^2%q!V8CNE>wHnDuFJA~>^NZuB!1ro&T?Kq2d>8xNpw%iQukCmr Mx7+%2%}jpP0_PRoAdt>PlvgdMTMG#abrND9~`+|JDEsIJ)_ zVP90-7qb5~!xJS6(%R^MUG*;DkAZA!R#lyUyfp1caM`DiI zzpKA^oPyZyLX8`6Ziw0jJRv+4n=D-ibqya74#f@&p)}e>(>GoQ>%T+VkbN& z9E&YBmC1YU%3-IR5PD*NQc2ECZ2JY_WuCipI%RoBuL!4NZ_<~!Z0qEC?AL^|>4G;4 zdqa4eZ*{uPJHq>MAB}CBe;|C!V`p5M(AH`w$GvFi6OY5e5Qn6R#l?mJBV12*Xb7mr`3^ zO(qf}gi$ffk-Jf-yp1R}lJmz1<08*!qK)!0%3^{r=`f=bxra>=rbQpenJ7%^7Bhrd z(ZkO*xnpsdaKsr!Dr0tFag;FUcoj>FV}#?bVUG41D%MfWVxDlq8De|;hE5U|9O?|U zY@Q;VE;_x9Gzf6UugarvgJb2824js$u1O%S$N6fd|Gujf+*a?g?d)$BH>c8zUU^l zua2d9NzDC6kHs#tn477p>D1tgle z9*I%T3R6>6v1fNoH3}>q6P}2PHm<`>rfi~&#Z$sFF_sllzBV0N%Y^67f%UZt6TPAR zcAXc56_>=@CAJu*9g*B23RG0=q}jm`6FS?jl8?gI^k2(M`RjN8rHmS{xji=Yumv!Z5sh!P1B1Y keBC>w>}IqI_>jI4zKba~Xq2>RtV}kK)^vXmex^%*0j$7nu>b%7 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_HU.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_HU.dat new file mode 100644 index 0000000000000000000000000000000000000000..5c6cf34022f82457257ca118554aa7512e462b47 GIT binary patch literal 713 zcmY+C>2B086ou1iOZT0YeQ672fKvAL36T05$^R@j@rJewI|`@BeEo#TEtPRl{#t>Pj(gk7=9G#abrSPIx9+|11CsIJ&P z;XrKiIhX8(_A-p@MNI-)2cpO9 z-(NgTLF{yy#tk_(L~R2e5gv;zmacNTeh&#pVwZ(b8ttMPn6lH32~V=A)xKo06P^-I z#5SAC*RUrSA?_Kg4g?c zO?Z literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_IT.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_IT.dat new file mode 100644 index 0000000000000000000000000000000000000000..cd577914d14c9f17bd55501cbaa0b354dcf0d7bd GIT binary patch literal 712 zcmY+CS8v-e6or-5?A@e$w~5mxPWSo;MPB>BH-eF9gQ!U9a3pYn3-qV=nob1!P5KVc zxr6*SPbhj~wJ3_ZDOIhdsW2y&_+LBu>o?}bI)6v)y@`!CI$(jYI58+UOlrtziEu}( z@VP7HjdC$ynXn?3nS|1tmcc4vO>8o#O^C8pkt1EeI$p6&5W>fQ6#a!aeo`9<)HCaagklZo>*fVjn#521?&^t&w%=&nmg4pdM zjT>@mh}s4`BRm(|EZxL(?Y6Lf$!Dmx(fJ4_%8OjL910rUfc0L MZnyh`@H6%Q1FWOqzyJUM literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_NO.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_NO.dat new file mode 100644 index 0000000000000000000000000000000000000000..0917f9e98cc73f4fc028a013ba98349f617877ad GIT binary patch literal 1010 zcmY*Y*-{%Z5L|2sU~UNHJ{=O10D;{1eQ#n&@}jpbc`Z9C_G)RB;8dw9dGUAfEqqzV zT5!zUs$0`D)7$z}vhZqb-1EFB4S6I2*~AbVp|ePW`W8xTg1&R1l+05lg+|$8xG3OB z+we9)BNoTl7~T8HmE=jTF={c!MhVfOk{JQx78N!{KqPe@WIQLyL}S8Y(uw^NVkc`nDL8_EvcxOAk6xnVUr~HJ55B;N>$9M$(+SJs}P#YSOh&vW5MFM z!(x&118mV^iA~eJ#KaAu0^NxlX{2$&;v^gH4axHarz}p_+!9R@%9uwu!-j}l#aU-i zTcsw$IaVTUe-G!4W^;W_nY2k(=OWg)U~!Sn5Otu_pZAi*Wj0TQ4y8zP*^*(Ot6E%f zMVU|`k$qy>;%Yr?@P>%ii}`h>?)KO&T&>{R%3sthR*LBl%*J(RYIU_*-Pqq-#tn9i zI%i6>krBA- zm;G`V_Z%u|7wQ_~zCYv-ck#ge|CZum0YCIT-|OO$yDWCI0)1Tne~ygCle%lCdzr;k zzhoMk&C-maQA#9Xr*GFYi|1@Lmu{VYWx`|1%`1!7Y;my8;XxJ|MNxQT z@%CuL!w|i*c<=10Z~6G((y^oPQM>dX?fuEZFJ?>QEHz0pILd#v_~P>6;HK1B#5+MT oU)^HMy-j*F^a7-ani|^{U)cf;9Sg3F5^*m$hcWzS@!hQd16foyApigX literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_PL.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_PL.dat new file mode 100644 index 0000000000000000000000000000000000000000..02e4c0f52d24dbb2f7f28a13c72f252122f7cfe2 GIT binary patch literal 1038 zcmY*Y*K!jv6m^{L^n`>Gx+yjUV|od_!v+)JMQ=OuTJ~tzcBEa1nb8cq_&a#uOY&vh z)y9kSCY_^uZaex_HYnBDY^hZ8Bai#Sl^u++NxF;B-Q7W%&Cxj#O35TrQfQ1DOymJP z?4`U%(4@f>o1u5#xsp6gG^Pz^*fb&9Q!*xC)}X=`2=Jv&+?XdM8EVWK%v-S^LVR;O zJmFX{SgcvKK!ybMHI|$_V^=B)CJ4(;DP{8{_cIEG+l^GfDane#DytBh$UwLmrLksk z#A1O+_yM+Vu)!ATU6=-Kp_Wy3zMsIaA*c82pmFUVnTxWDHp=k$E!;JxMT3V;w zjJ{t)s8yr=Yccsj1Tb8qLRi!HF(%|#+-=( z9$6=K758%Zu~T-+13a;h#a^7FPh0=*eyZ`TWvkMe`|+H7)z)l-8Y%Re#hXW yHIIcmQpY~;yLl}wgHQI~(ubnoA%)-3*fsdf)~LWhaGfdRU`#KecUUl?Jm_slUdtX0+m5sgF*BNh7k@_{_>z1X zceU~2yh-Qip4*OomkmlaHd`u{{K(_JaAgN$Y?AIGbhp2u%;xBv2&H5aDJe9@4JPsc z9`;h+BWTiKip|iwA6!WuCK}TQGi;g=?I{@(Fl$g@3k3L5CvMCWk_M6y_p!moh}^^p zJD{G5(ikUMnXtWGoJuuYE;MD>BUzn@K;yK*8Ma8&zD`l^S%Y(Ig$V6Q5hk)Ly@IP6 zoVP)-P#%#5alzmsTcRK@RZ4_jzhEvI)NHHV^P-gW!XD~go41AE$UD`QmhE^upMM3H z>wj>?U^DM?e=WGmHb}p^S*@7moD)8U@I+F57)+;_&E@c|xKRMJ?e1`k`# zm@_fJLu;k3;$99va>`D5fXDW+*okxWN$daJPc@#lY*jk5Kb|?Iw5{1XHB`(u4dsYs zpBucebr*cd12Wo6gI8>AG|u8~?5B#n^V;Ce!LKpz_>z1X zJ(}1!H}!knt=FxmUuA<*jm?%yr6BfrAYAEVj7?H3B6n{GWj06WR466WSV^HVZZJ_4 z@Ti;dEH%&=)fw5Mc3z^p-qEf5e$ow^B6sb!=wXE1M@{Se}t z>+_Uj!C=us9jPeQ=RGVrCC%ok_-7mmw-c+7Q_E$86;>fMm7#ERN@LYv&0?WQ`5|`9 zV4W>eUX+Dxp?=M65fRU)(}MU={p^oHC;gQ_h`gz|_S5|<1v zvt=ssGNnZ1^@hw9gR6E@?s;)W{h}^vUYoZ?&?pAgm6jcNw^()s_4;pIGq_%idH4p{ zVw=>zx>c<<8_njypM$^Kwb7`K8*GX)5+yov9}Pz55^mZ>)X?nXmZf#p$?4m6qj?wH zv3tvpb=>Xa-sl?)F28SWGq?^9Y-m@V&-2h3cgFj8WKl_LAq^fLJ7dm7AKQgV6!!}F ziBopUeLS_vVm~R+XRZHnkZC+`SyejsI$k)XtgYDw4K&ikF=*LeO5cZmhZKRYv172y)<|F|xXzRab5{*K`qf}BYy1Nc?>t`s literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/en_SK.dat b/addons/source-python/packages/site-packages/babel/locale-data/en_SK.dat new file mode 100644 index 0000000000000000000000000000000000000000..1bda1791f3f876613c009ca2300253b2421db027 GIT binary patch literal 1065 zcmY*Y*K!jv6m^{L^n`>Gx+yjUV|ob?dRs7oz>MB@IGnlW~YJm(1>S`=FdB?U?luQs7okGfHsobw96mC0G0jDNQ2Ft8OXd(mQW|YQ? z!4ZoEBH;(vs=*qYr?@Z;nnJm{8#E(dNZ9@!PFtnKZcJ^%L{j(}8!m7*)of|dO@0gmPTLuM$BLa*!Cfn9cC6xF5BG=H({KL3x}x6>5AD@%A$!lJ zGwO`?@W`T)WT6>6Ja$H$u^ygSleHE1a(K%rI>jEI+F;sQjy`Mrzx%1i^M;*DXCDJE z$Z}21*62Y4ebZ15nfax`D?9gq4|zZqd~NWCtq$i|+>QNIkxkwjygR(Mz8~KkIQG*V z?(@OmV?IX|#I(+qdzfz+e6r@Ta7*gg=Uq3SW!vDhH7flz`Z!YfEsZY*J8Xpp3ZM delta 40 lcmZ3Xx=eLL9y7CVLdfI-<^(W(mDw6h3$cLto6A`Y`2Y=%3`_t3 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/fi.dat b/addons/source-python/packages/site-packages/babel/locale-data/fi.dat index 310cd1c4cca1fa7d2701a8baded74fb3cd1fd047..113e510daa4c3400a7cd141e7f15c6df0990b40d 100644 GIT binary patch delta 371 zcmYL^JyXI!5QZa)STN(?ApeHa!e)`oxsznWyd;ecg@uLxB$W+g;a33VOF{TE*4`dN zuDH2>9mRN4I6naO8Sh@+;X|RNGNB%& zgsQelgo(FNk>`x5w}P34kqb4EVSIX*<4d9G=H|qhE7}uKiiOs0pY)bMSk_Lk()vRC zKqeC=to6lxMGU?bF0D=r7UE$f*Crvci~aaE!A3#DvtE{D*m^g>uYyY#!!co3%fSuy VM_Hg>2;Z0CLm8etmto`a?;lUHUAh1O delta 352 zcmYL^J5s|i6h(!@CxsV~CEy*V#x5Jl|}XWv7@4q*wHC1Kz9XFu|yw<%>T8xAt$%SMzI*(CUiiR;yK%xhzzs`)G?fK7S3E6RZ3Ylyf?iPAiWyg!yr|w8JQe zj5>sciC|G|vY_Ww{qIk4@VVB$Ru)TMEHVBrot8FuEE875A`_oGT`^cCtci67h4vw< zWME6{u};`XW{Eape+$Y61WaJ4Hsd>pzmR=AeJ`uiIPX`D*AT-oqN4=t{XHn$z(Mp}qB zj6U(3i67xs^kTd5({{*~J}BdHNVuJ{@2gxJSv0%cA#}wKYkaQRMh|q})b0}QCDG{& zP2oP_f!JbE9-UJ*ubavd;aKcXSEAKZPxg@TC`HmJtu!3pW5N@$H?2!NtBUAkfv1FL zvxbu_pA%lB$DH+fNq9A$qcl|+`H^SquL*C`+6niyuL@ab<5}Jk-lgdIkK#wys_1*X YCwvgQJfKn1N2d&j)uj88@F^bu2iY$FM*si- literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/ht_HT.dat b/addons/source-python/packages/site-packages/babel/locale-data/ht_HT.dat new file mode 100644 index 0000000000000000000000000000000000000000..48f31169742e79d599b288146c6f994dc3c7dd01 GIT binary patch literal 616 zcmY+C*=`gu5JiVT_B|o{0$G5t1(L7e19{Eayxy+T27-2`?G1#s(9Hof!(6Wz4As ziTh=uH6bU=GZxgmkW@w63Rq+;sZ{~armS0&<;jq+%vdRp{U&q$RJ37d?q!aQa3pKUW91(344BB>yyz=jq-s HZoBJ$Mpnol literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/la.dat b/addons/source-python/packages/site-packages/babel/locale-data/la.dat index 36656dc1b1c3224718d232b827ac5698e976b866..1ccac42fa74d3d488caeabf8668972afd7a08ca3 100644 GIT binary patch literal 33837 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 literal 33982 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

-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 delta 150 zcmbO~jk$js^M(gZy4(y546Y@~`k{H*dHLmeg|@YYb`dNym zlR~ItZJ|?!eS{ED!lg7fKd(d~+0Zphfs{jB1 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/syr.dat b/addons/source-python/packages/site-packages/babel/locale-data/syr.dat index 6cfeef618f6a70346fd6ca8f2b5afd36a75fe09f..3b0a2453a7e5830edcd557388d81f0d39d6e09f5 100644 GIT binary patch delta 24513 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 Glk20 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 Mx6OH|QMI!F0h4dCwEzGB delta 6040 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 diff --git a/addons/source-python/packages/site-packages/babel/locale-data/yue_Hant_CN.dat b/addons/source-python/packages/site-packages/babel/locale-data/yue_Hant_CN.dat index 1ba619717ab3d2d840011e43b75240b76956877f..6ca866c4caa321950a55f330470b3ded8abd8c0c 100644 GIT binary patch literal 1196 zcmaJ=X;aid5M7b`zP(WJK(nZLUw8}ZDvGG6qll^5?7&WuN%mzDEU4-#{pWUOVcq?p z`ypF-ulx1uPWP`iLctR~g+d{W0~sn`S8zyl^80S4{KXZti9UWwRg&m5PPDQ(OlYrX z$Y?8*TMTs&Iz>0f?Z`ySD7EM!bc-%VY>?<013iRZF~C5mZR*!#%94>qAEDog{Zwk( zugFwlfH3HwO`ULPMebr~xnM;CyF^3tI%6)8{ zFyUGq#ZkgB=N*|$*p$U_!U@N#L|RM{PP!Rzv|m$+jw=?Y2-D6G zJN|2EhH%=U&d`C)Gla9A)7#9#5a)ujEUR!n&$PWu{9I%EtM!5OVz&4j=Lr`)H@*Ei z!4pI5w^Uj%X2IH-^*#P=py;})*TI~a=8##hR4UqqS%D?2M; z9BtuJHLrG=Fz;18XS}Jx2Ch`+#MJ*ZbHS@Dn6Hab6`dJebCTByH*(2*B@QHUljX+$ zA%|Nm)4`;z#z~6XPUQ~aZmyE!P6hW^BHy8wF0qi6Gcn9?KGK%a-zPi}qs@%nR-sB` z-n@r|M=nc8{MC14*x0MbgePKq=D;biz%BbW3fnBa-XQ8 z0&SYKo)ca;2R6_uO7*4=8g*V0N-l}FDqylfydu1I)`BcaR21wsm}SBnG07GhOcv>; zb9zfyan>7rBn_X%JHo1%XwGxEUkkHDhImi-&|2`I=Z}OnH}cjxp9r7pK4Mdgv#8>? z@?QwTwe8@FwzZJ2r|#t|;oJT}<+r0%$OpAf_%6oSpi$Chi8A>-4yL<7_>s;30o4_D A%>V!Z delta 291 zcmY+8%SyyB7)A>Xf`}Icr&DLV-*2O%xDb2}$wDZZG=)Hu@k`RhEdGTLAP9L4pG>P=Eckf-DFJFhQ$3c z(VCDG))^aWT}W!8?FDQyw$!cwXH(X_$&xZ8Y%_Lhvfo5Mb!)Q0E@Q8vnT-6Sn z)#1o(n2VG$`Gh-+yJ}ygmKy7g8*AQU+*d~;q{dRnc4nJVd%$>DO+Cd%#8G&}c&rY@ z)RY)0G{dMoVLVl*%Ss7$X+6&v&uiYW+%qL*{V$NEX+dU6~~u1)yF_^ghlK~E-? QNd9skSKIx<_*%~Y0nf6|B>(^b literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/babel/localedata.py b/addons/source-python/packages/site-packages/babel/localedata.py index 59f1db09e..2b225a142 100644 --- a/addons/source-python/packages/site-packages/babel/localedata.py +++ b/addons/source-python/packages/site-packages/babel/localedata.py @@ -1,14 +1,14 @@ """ - babel.localedata - ~~~~~~~~~~~~~~~~ +babel.localedata +~~~~~~~~~~~~~~~~ - Low-level locale data access. +Low-level locale data access. - :note: The `Locale` class, which uses this module under the hood, provides a - more convenient interface for accessing the locale data. +:note: The `Locale` class, which uses this module under the hood, provides a + more convenient interface for accessing the locale data. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ from __future__ import annotations @@ -89,8 +89,9 @@ def locale_identifiers() -> list[str]: """ return [ stem - for stem, extension in - (os.path.splitext(filename) for filename in os.listdir(_dirname)) + for stem, extension in ( + os.path.splitext(filename) for filename in os.listdir(_dirname) + ) if extension == '.dat' and stem != 'root' ] @@ -125,7 +126,7 @@ def load(name: os.PathLike[str] | str, merge_inherited: bool = True) -> dict[str >>> d = load('en_US') >>> d['languages']['sv'] - u'Swedish' + 'Swedish' Note that the results are cached, and subsequent requests for the same locale return the same dictionary: @@ -151,6 +152,7 @@ def load(name: os.PathLike[str] | str, merge_inherited: bool = True) -> dict[str data = {} else: from babel.core import get_global + parent = get_global('parent_exceptions').get(name) if not parent: if _is_non_likely_script(name): @@ -242,7 +244,11 @@ class LocaleDataDict(abc.MutableMapping): values. """ - def __init__(self, data: MutableMapping[str | int | None, Any], base: Mapping[str | int | None, Any] | None = None): + def __init__( + self, + data: MutableMapping[str | int | None, Any], + base: Mapping[str | int | None, Any] | None = None, + ): self._data = data if base is None: base = data diff --git a/addons/source-python/packages/site-packages/babel/localtime/__init__.py b/addons/source-python/packages/site-packages/babel/localtime/__init__.py index 854c07496..9eb95ab2e 100644 --- a/addons/source-python/packages/site-packages/babel/localtime/__init__.py +++ b/addons/source-python/packages/site-packages/babel/localtime/__init__.py @@ -1,12 +1,12 @@ """ - babel.localtime - ~~~~~~~~~~~~~~~ +babel.localtime +~~~~~~~~~~~~~~~ - Babel specific fork of tzlocal to determine the local timezone - of the system. +Babel specific fork of tzlocal to determine the local timezone +of the system. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ import datetime diff --git a/addons/source-python/packages/site-packages/babel/localtime/_fallback.py b/addons/source-python/packages/site-packages/babel/localtime/_fallback.py index fab6867c3..218813905 100644 --- a/addons/source-python/packages/site-packages/babel/localtime/_fallback.py +++ b/addons/source-python/packages/site-packages/babel/localtime/_fallback.py @@ -1,11 +1,11 @@ """ - babel.localtime._fallback - ~~~~~~~~~~~~~~~~~~~~~~~~~ +babel.localtime._fallback +~~~~~~~~~~~~~~~~~~~~~~~~~ - Emulated fallback local timezone when all else fails. +Emulated fallback local timezone when all else fails. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ import datetime @@ -19,7 +19,6 @@ class _FallbackLocalTimezone(datetime.tzinfo): - def utcoffset(self, dt: datetime.datetime) -> datetime.timedelta: if self._isdst(dt): return DSTOFFSET @@ -38,7 +37,7 @@ def tzname(self, dt: datetime.datetime) -> str: def _isdst(self, dt: datetime.datetime) -> bool: tt = (dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second, - dt.weekday(), 0, -1) + dt.weekday(), 0, -1) # fmt: skip stamp = time.mktime(tt) tt = time.localtime(stamp) return tt.tm_isdst > 0 diff --git a/addons/source-python/packages/site-packages/babel/localtime/_unix.py b/addons/source-python/packages/site-packages/babel/localtime/_unix.py index 782a7d246..70dd2322c 100644 --- a/addons/source-python/packages/site-packages/babel/localtime/_unix.py +++ b/addons/source-python/packages/site-packages/babel/localtime/_unix.py @@ -51,7 +51,7 @@ def _get_localzone(_root: str = '/') -> datetime.tzinfo: # `None` (as a fix for #1092). # Instead, let's just "fix" the double slash symlink by stripping # leading slashes before passing the assumed zone name forward. - zone_name = link_dst[pos + 10:].lstrip("/") + zone_name = link_dst[pos + 10 :].lstrip("/") tzinfo = _get_tzinfo(zone_name) if tzinfo is not None: return tzinfo diff --git a/addons/source-python/packages/site-packages/babel/localtime/_win32.py b/addons/source-python/packages/site-packages/babel/localtime/_win32.py index 1a52567bc..0fb625ba9 100644 --- a/addons/source-python/packages/site-packages/babel/localtime/_win32.py +++ b/addons/source-python/packages/site-packages/babel/localtime/_win32.py @@ -92,7 +92,6 @@ def get_localzone_name() -> str: def _get_localzone() -> datetime.tzinfo: if winreg is None: - raise LookupError( - 'Runtime support not available') + raise LookupError('Runtime support not available') return _get_tzinfo_or_raise(get_localzone_name()) diff --git a/addons/source-python/packages/site-packages/babel/messages/__init__.py b/addons/source-python/packages/site-packages/babel/messages/__init__.py index ca83faa97..8dde3f299 100644 --- a/addons/source-python/packages/site-packages/babel/messages/__init__.py +++ b/addons/source-python/packages/site-packages/babel/messages/__init__.py @@ -1,11 +1,11 @@ """ - babel.messages - ~~~~~~~~~~~~~~ +babel.messages +~~~~~~~~~~~~~~ - Support for ``gettext`` message catalogs. +Support for ``gettext`` message catalogs. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ from babel.messages.catalog import ( diff --git a/addons/source-python/packages/site-packages/babel/messages/catalog.py b/addons/source-python/packages/site-packages/babel/messages/catalog.py index f84a5bd1b..9a9739a72 100644 --- a/addons/source-python/packages/site-packages/babel/messages/catalog.py +++ b/addons/source-python/packages/site-packages/babel/messages/catalog.py @@ -1,12 +1,13 @@ """ - babel.messages.catalog - ~~~~~~~~~~~~~~~~~~~~~~ +babel.messages.catalog +~~~~~~~~~~~~~~~~~~~~~~ - Data structures for message catalogs. +Data structures for message catalogs. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import datetime @@ -23,7 +24,7 @@ from babel.core import Locale, UnknownLocaleError from babel.dates import format_datetime from babel.messages.plurals import get_plural -from babel.util import LOCALTZ, FixedOffsetTimezone, _cmp, distinct +from babel.util import LOCALTZ, _cmp if TYPE_CHECKING: from typing_extensions import TypeAlias @@ -54,9 +55,11 @@ def get_close_matches(word, possibilities, n=3, cutoff=0.6): s.set_seq2(word) for x in possibilities: s.set_seq1(x) - if s.real_quick_ratio() >= cutoff and \ - s.quick_ratio() >= cutoff and \ - s.ratio() >= cutoff: + if ( + s.real_quick_ratio() >= cutoff + and s.quick_ratio() >= cutoff + and s.ratio() >= cutoff + ): result.append((s.ratio(), x)) # Move the best scorers to head of list @@ -65,7 +68,8 @@ def get_close_matches(word, possibilities, n=3, cutoff=0.6): return [x for score, x in result] -PYTHON_FORMAT = re.compile(r''' +PYTHON_FORMAT = re.compile( + r''' \% (?:\(([\w]*)\))? ( @@ -74,7 +78,9 @@ def get_close_matches(word, possibilities, n=3, cutoff=0.6): [hlL]? ) ([diouxXeEfFgGcrs%]) -''', re.VERBOSE) +''', + re.VERBOSE, +) def _has_python_brace_format(string: str) -> bool: @@ -118,7 +124,10 @@ def _parse_datetime_header(value: str) -> datetime.datetime: net_mins_offset *= plus_minus # Create an offset object - tzoffset = FixedOffsetTimezone(net_mins_offset) + tzoffset = datetime.timezone( + offset=datetime.timedelta(minutes=net_mins_offset), + name=f'Etc/GMT{net_mins_offset:+d}', + ) # Store the offset in a datetime object dt = dt.replace(tzinfo=tzoffset) @@ -161,7 +170,7 @@ def __init__( if not string and self.pluralizable: string = ('', '') self.string = string - self.locations = list(distinct(locations)) + self.locations = list(dict.fromkeys(locations)) if locations else [] self.flags = set(flags) if id and self.python_format: self.flags.add('python-format') @@ -171,12 +180,15 @@ def __init__( self.flags.add('python-brace-format') else: self.flags.discard('python-brace-format') - self.auto_comments = list(distinct(auto_comments)) - self.user_comments = list(distinct(user_comments)) - if isinstance(previous_id, str): - self.previous_id = [previous_id] + self.auto_comments = list(dict.fromkeys(auto_comments)) if auto_comments else [] + self.user_comments = list(dict.fromkeys(user_comments)) if user_comments else [] + if previous_id: + if isinstance(previous_id, str): + self.previous_id = [previous_id] + else: + self.previous_id = list(previous_id) else: - self.previous_id = list(previous_id) + self.previous_id = [] self.lineno = lineno self.context = context @@ -185,10 +197,12 @@ def __repr__(self) -> str: def __cmp__(self, other: object) -> int: """Compare Messages, taking into account plural ids""" + def values_to_compare(obj): if isinstance(obj, Message) and obj.pluralizable: return obj.id[0], obj.context or '' return obj.id, obj.context or '' + return _cmp(values_to_compare(self), values_to_compare(other)) def __gt__(self, other: object) -> bool: @@ -217,10 +231,17 @@ def is_identical(self, other: Message) -> bool: return self.__dict__ == other.__dict__ def clone(self) -> Message: - return Message(*map(copy, (self.id, self.string, self.locations, - self.flags, self.auto_comments, - self.user_comments, self.previous_id, - self.lineno, self.context))) + return Message( + id=copy(self.id), + string=copy(self.string), + locations=copy(self.locations), + flags=copy(self.flags), + auto_comments=copy(self.auto_comments), + user_comments=copy(self.user_comments), + previous_id=copy(self.previous_id), + lineno=self.lineno, # immutable (str/None) + context=self.context, # immutable (str/None) + ) def check(self, catalog: Catalog | None = None) -> list[TranslationError]: """Run various validation checks on the message. Some validations @@ -233,6 +254,7 @@ def check(self, catalog: Catalog | None = None) -> list[TranslationError]: in a catalog. """ from babel.messages.checkers import checkers + errors: list[TranslationError] = [] for checker in checkers: try: @@ -279,9 +301,12 @@ def python_format(self) -> bool: :type: `bool`""" ids = self.id - if not isinstance(ids, (list, tuple)): - ids = [ids] - return any(PYTHON_FORMAT.search(id) for id in ids) + if isinstance(ids, (list, tuple)): + for id in ids: # Explicit loop for performance reasons. + if PYTHON_FORMAT.search(id): + return True + return False + return bool(PYTHON_FORMAT.search(ids)) @property def python_brace_format(self) -> bool: @@ -294,9 +319,12 @@ def python_brace_format(self) -> bool: :type: `bool`""" ids = self.id - if not isinstance(ids, (list, tuple)): - ids = [ids] - return any(_has_python_brace_format(id) for id in ids) + if isinstance(ids, (list, tuple)): + for id in ids: # Explicit loop for performance reasons. + if _has_python_brace_format(id): + return True + return False + return _has_python_brace_format(ids) class TranslationError(Exception): @@ -315,6 +343,7 @@ class TranslationError(Exception): def parse_separated_header(value: str) -> dict[str, str]: # Adapted from https://peps.python.org/pep-0594/#cgi from email.message import Message + m = Message() m['content-type'] = value return dict(m.get_params()) @@ -420,7 +449,9 @@ def _set_locale(self, locale: Locale | str | None) -> None: self._locale = None return - raise TypeError(f"`locale` must be a Locale, a locale identifier string, or None; got {locale!r}") + raise TypeError( + f"`locale` must be a Locale, a locale identifier string, or None; got {locale!r}", + ) def _get_locale(self) -> Locale | None: return self._locale @@ -436,11 +467,13 @@ def _get_header_comment(self) -> str: year = datetime.datetime.now(LOCALTZ).strftime('%Y') if hasattr(self.revision_date, 'strftime'): year = self.revision_date.strftime('%Y') - comment = comment.replace('PROJECT', self.project) \ - .replace('VERSION', self.version) \ - .replace('YEAR', year) \ - .replace('ORGANIZATION', self.copyright_holder) - locale_name = (self.locale.english_name if self.locale else self.locale_identifier) + comment = ( + comment.replace('PROJECT', self.project) + .replace('VERSION', self.version) + .replace('YEAR', year) + .replace('ORGANIZATION', self.copyright_holder) + ) + locale_name = self.locale.english_name if self.locale else self.locale_identifier if locale_name: comment = comment.replace("Translations template", f"{locale_name} translations") return comment @@ -448,7 +481,10 @@ def _get_header_comment(self) -> str: def _set_header_comment(self, string: str | None) -> None: self._header_comment = string - header_comment = property(_get_header_comment, _set_header_comment, doc="""\ + header_comment = property( + _get_header_comment, + _set_header_comment, + doc="""\ The header comment for the catalog. >>> catalog = Catalog(project='Foobar', version='1.0', @@ -479,11 +515,16 @@ def _set_header_comment(self, string: str | None) -> None: # :type: `unicode` - """) + """, + ) def _get_mime_headers(self) -> list[tuple[str, str]]: if isinstance(self.revision_date, (datetime.datetime, datetime.time, int, float)): - revision_date = format_datetime(self.revision_date, 'yyyy-MM-dd HH:mmZ', locale='en') + revision_date = format_datetime( + self.revision_date, + 'yyyy-MM-dd HH:mmZ', + locale='en', + ) else: revision_date = self.revision_date @@ -497,7 +538,7 @@ def _get_mime_headers(self) -> list[tuple[str, str]]: ('POT-Creation-Date', format_datetime(self.creation_date, 'yyyy-MM-dd HH:mmZ', locale='en')), ('PO-Revision-Date', revision_date), ('Last-Translator', self.last_translator), - ] + ] # fmt: skip if self.locale_identifier: headers.append(('Language', str(self.locale_identifier))) headers.append(('Language-Team', language_team)) @@ -547,7 +588,10 @@ def _set_mime_headers(self, headers: Iterable[tuple[str, str]]) -> None: if 'YEAR' not in value: self.revision_date = _parse_datetime_header(value) - mime_headers = property(_get_mime_headers, _set_mime_headers, doc="""\ + mime_headers = property( + _get_mime_headers, + _set_mime_headers, + doc="""\ The MIME headers of the catalog, used for the special ``msgid ""`` entry. The behavior of this property changes slightly depending on whether a locale @@ -597,7 +641,8 @@ def _set_mime_headers(self, headers: Iterable[tuple[str, str]]) -> None: Generated-By: Babel ... :type: `list` - """) + """, + ) @property def num_plurals(self) -> int: @@ -693,19 +738,19 @@ def __setitem__(self, id: _MessageID, message: Message) -> None: """Add or update the message with the specified ID. >>> catalog = Catalog() - >>> catalog[u'foo'] = Message(u'foo') - >>> catalog[u'foo'] - + >>> catalog['foo'] = Message('foo') + >>> catalog['foo'] + If a message with that ID is already in the catalog, it is updated to include the locations and flags of the new message. >>> catalog = Catalog() - >>> catalog[u'foo'] = Message(u'foo', locations=[('main.py', 1)]) - >>> catalog[u'foo'].locations + >>> catalog['foo'] = Message('foo', locations=[('main.py', 1)]) + >>> catalog['foo'].locations [('main.py', 1)] - >>> catalog[u'foo'] = Message(u'foo', locations=[('utils.py', 5)]) - >>> catalog[u'foo'].locations + >>> catalog['foo'] = Message('foo', locations=[('utils.py', 5)]) + >>> catalog['foo'].locations [('main.py', 1), ('utils.py', 5)] :param id: the message ID @@ -719,22 +764,20 @@ def __setitem__(self, id: _MessageID, message: Message) -> None: # The new message adds pluralization current.id = message.id current.string = message.string - current.locations = list(distinct(current.locations + - message.locations)) - current.auto_comments = list(distinct(current.auto_comments + - message.auto_comments)) - current.user_comments = list(distinct(current.user_comments + - message.user_comments)) + current.locations = list(dict.fromkeys([*current.locations, *message.locations])) + current.auto_comments = list(dict.fromkeys([*current.auto_comments, *message.auto_comments])) # fmt:skip + current.user_comments = list(dict.fromkeys([*current.user_comments, *message.user_comments])) # fmt:skip current.flags |= message.flags elif id == '': # special treatment for the header message self.mime_headers = message_from_string(message.string).items() - self.header_comment = "\n".join([f"# {c}".rstrip() for c in message.user_comments]) + self.header_comment = "\n".join(f"# {c}".rstrip() for c in message.user_comments) self.fuzzy = message.fuzzy else: if isinstance(id, (list, tuple)): - assert isinstance(message.string, (list, tuple)), \ + assert isinstance(message.string, (list, tuple)), ( f"Expected sequence but got {type(message.string)}" + ) self._messages[key] = message def add( @@ -752,10 +795,10 @@ def add( """Add or update the message with the specified ID. >>> catalog = Catalog() - >>> catalog.add(u'foo') + >>> catalog.add('foo') - >>> catalog[u'foo'] - + >>> catalog['foo'] + This method simply constructs a `Message` object with the given arguments and invokes `__setitem__` with that object. @@ -774,9 +817,17 @@ def add( PO file, if any :param context: the message context """ - message = Message(id, string, list(locations), flags, auto_comments, - user_comments, previous_id, lineno=lineno, - context=context) + message = Message( + id, + string, + list(locations), + flags, + auto_comments, + user_comments, + previous_id, + lineno=lineno, + context=context, + ) self[id] = message return message @@ -831,11 +882,11 @@ def update( >>> template.add(('salad', 'salads'), locations=[('util.py', 42)]) >>> catalog = Catalog(locale='de_DE') - >>> catalog.add('blue', u'blau', locations=[('main.py', 98)]) + >>> catalog.add('blue', 'blau', locations=[('main.py', 98)]) - >>> catalog.add('head', u'Kopf', locations=[('util.py', 33)]) + >>> catalog.add('head', 'Kopf', locations=[('util.py', 33)]) - >>> catalog.add(('salad', 'salads'), (u'Salat', u'Salate'), + >>> catalog.add(('salad', 'salads'), ('Salat', 'Salate'), ... locations=[('util.py', 38)]) @@ -850,13 +901,13 @@ def update( >>> msg2 = catalog['blue'] >>> msg2.string - u'blau' + 'blau' >>> msg2.locations [('main.py', 100)] >>> msg3 = catalog['salad'] >>> msg3.string - (u'Salat', u'Salate') + ('Salat', 'Salate') >>> msg3.locations [('util.py', 42)] @@ -889,7 +940,11 @@ def update( fuzzy_candidates[self._to_fuzzy_match_key(key)] = (key, ctxt) fuzzy_matches = set() - def _merge(message: Message, oldkey: tuple[str, str] | str, newkey: tuple[str, str] | str) -> None: + def _merge( + message: Message, + oldkey: tuple[str, str] | str, + newkey: tuple[str, str] | str, + ) -> None: message = message.clone() fuzzy = False if oldkey != newkey: @@ -906,8 +961,8 @@ def _merge(message: Message, oldkey: tuple[str, str] | str, newkey: tuple[str, s assert oldmsg is not None message.string = oldmsg.string - if keep_user_comments: - message.user_comments = list(distinct(oldmsg.user_comments)) + if keep_user_comments and oldmsg.user_comments: + message.user_comments = list(dict.fromkeys(oldmsg.user_comments)) if isinstance(message.id, (list, tuple)): if not isinstance(message.string, (list, tuple)): @@ -917,7 +972,7 @@ def _merge(message: Message, oldkey: tuple[str, str] | str, newkey: tuple[str, s ) elif len(message.string) != self.num_plurals: fuzzy = True - message.string = tuple(message.string[:len(oldmsg.string)]) + message.string = tuple(message.string[: len(oldmsg.string)]) elif isinstance(message.string, (list, tuple)): fuzzy = True message.string = message.string[0] @@ -971,7 +1026,11 @@ def _to_fuzzy_match_key(self, key: tuple[str, str] | str) -> str: matchkey = key return matchkey.lower().strip() - def _key_for(self, id: _MessageID, context: str | None = None) -> tuple[str, str] | str: + def _key_for( + self, + id: _MessageID, + context: str | None = None, + ) -> tuple[str, str] | str: """The key for a message is just the singular ID even for pluralizable messages, but is a ``(msgid, msgctxt)`` tuple for context-specific messages. @@ -991,10 +1050,6 @@ def is_identical(self, other: Catalog) -> bool: for key in self._messages.keys() | other._messages.keys(): message_1 = self.get(key) message_2 = other.get(key) - if ( - message_1 is None - or message_2 is None - or not message_1.is_identical(message_2) - ): + if message_1 is None or message_2 is None or not message_1.is_identical(message_2): return False return dict(self.mime_headers) == dict(other.mime_headers) diff --git a/addons/source-python/packages/site-packages/babel/messages/checkers.py b/addons/source-python/packages/site-packages/babel/messages/checkers.py index df7c3ca73..4026ab1b3 100644 --- a/addons/source-python/packages/site-packages/babel/messages/checkers.py +++ b/addons/source-python/packages/site-packages/babel/messages/checkers.py @@ -1,14 +1,15 @@ """ - babel.messages.checkers - ~~~~~~~~~~~~~~~~~~~~~~~ +babel.messages.checkers +~~~~~~~~~~~~~~~~~~~~~~~ - Various routines that help with validation of translations. +Various routines that help with validation of translations. - :since: version 0.9 +:since: version 0.9 - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations from collections.abc import Callable @@ -27,8 +28,7 @@ def num_plurals(catalog: Catalog | None, message: Message) -> None: """Verify the number of plurals in the translation.""" if not message.pluralizable: if not isinstance(message.string, str): - raise TranslationError("Found plural forms for non-pluralizable " - "message") + raise TranslationError("Found plural forms for non-pluralizable message") return # skip further tests if no catalog is provided. @@ -39,8 +39,9 @@ def num_plurals(catalog: Catalog | None, message: Message) -> None: if not isinstance(msgstrs, (list, tuple)): msgstrs = (msgstrs,) if len(msgstrs) != catalog.num_plurals: - raise TranslationError("Wrong number of plural forms (expected %d)" % - catalog.num_plurals) + raise TranslationError( + f"Wrong number of plural forms (expected {catalog.num_plurals})", + ) def python_format(catalog: Catalog | None, message: Message) -> None: @@ -54,9 +55,12 @@ def python_format(catalog: Catalog | None, message: Message) -> None: if not isinstance(msgstrs, (list, tuple)): msgstrs = (msgstrs,) - for msgid, msgstr in zip(msgids, msgstrs): - if msgstr: - _validate_format(msgid, msgstr) + if msgstrs[0]: + _validate_format(msgids[0], msgstrs[0]) + if message.pluralizable: + for msgstr in msgstrs[1:]: + if msgstr: + _validate_format(msgids[1], msgstr) def _validate_format(format: str, alternative: str) -> None: @@ -112,17 +116,20 @@ def _check_positional(results: list[tuple[str, str]]) -> bool: positional = name is None else: if (name is None) != positional: - raise TranslationError('format string mixes positional ' - 'and named placeholders') + raise TranslationError( + 'format string mixes positional and named placeholders', + ) return bool(positional) - a, b = map(_parse, (format, alternative)) + a = _parse(format) + b = _parse(alternative) if not a: return # now check if both strings are positional or named - a_positional, b_positional = map(_check_positional, (a, b)) + a_positional = _check_positional(a) + b_positional = _check_positional(b) if a_positional and not b_positional and not b: raise TranslationError('placeholders are incompatible') elif a_positional != b_positional: @@ -132,13 +139,13 @@ def _check_positional(results: list[tuple[str, str]]) -> bool: # same number of format chars and those must be compatible if a_positional: if len(a) != len(b): - raise TranslationError('positional format placeholders are ' - 'unbalanced') + raise TranslationError('positional format placeholders are unbalanced') for idx, ((_, first), (_, second)) in enumerate(zip(a, b)): if not _compatible(first, second): - raise TranslationError('incompatible format for placeholder ' - '%d: %r and %r are not compatible' % - (idx + 1, first, second)) + raise TranslationError( + f'incompatible format for placeholder {idx + 1:d}: ' + f'{first!r} and {second!r} are not compatible', + ) # otherwise the second string must not have names the first one # doesn't have and the types of those included must be compatible @@ -156,6 +163,7 @@ def _check_positional(results: list[tuple[str, str]]) -> bool: def _find_checkers() -> list[Callable[[Catalog | None, Message], object]]: from babel.messages._compat import find_entrypoints + checkers: list[Callable[[Catalog | None, Message], object]] = [] checkers.extend(load() for (name, load) in find_entrypoints('babel.checkers')) if len(checkers) == 0: diff --git a/addons/source-python/packages/site-packages/babel/messages/extract.py b/addons/source-python/packages/site-packages/babel/messages/extract.py index 7f4230f61..6fad84304 100644 --- a/addons/source-python/packages/site-packages/babel/messages/extract.py +++ b/addons/source-python/packages/site-packages/babel/messages/extract.py @@ -1,20 +1,21 @@ """ - babel.messages.extract - ~~~~~~~~~~~~~~~~~~~~~~ +babel.messages.extract +~~~~~~~~~~~~~~~~~~~~~~ - Basic infrastructure for extracting localizable messages from source files. +Basic infrastructure for extracting localizable messages from source files. - This module defines an extensible system for collecting localizable message - strings from a variety of sources. A native extractor for Python source - files is builtin, extractors for other sources can be added using very - simple plugins. +This module defines an extensible system for collecting localizable message +strings from a variety of sources. A native extractor for Python source +files is builtin, extractors for other sources can be added using very +simple plugins. - The main entry points into the extraction functionality are the functions - `extract_from_dir` and `extract_from_file`. +The main entry points into the extraction functionality are the functions +`extract_from_dir` and `extract_from_file`. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import ast @@ -22,6 +23,7 @@ import os import sys import tokenize +import warnings from collections.abc import ( Callable, Collection, @@ -62,7 +64,7 @@ def tell(self) -> int: ... _Keyword: TypeAlias = dict[int | None, _SimpleKeyword] | _SimpleKeyword # 5-tuple of (filename, lineno, messages, comments, context) - _FileExtractionResult: TypeAlias = tuple[str, int, str | tuple[str, ...], list[str], str | None] + _FileExtractionResult: TypeAlias = tuple[str, int, str | tuple[str, ...], list[str], str | None] # fmt: skip # 4-tuple of (lineno, message, comments, context) _ExtractionResult: TypeAlias = tuple[int, str | tuple[str, ...], list[str], str | None] @@ -72,7 +74,7 @@ def tell(self) -> int: ... _CallableExtractionMethod: TypeAlias = Callable[ [_FileObj | IO[bytes], Mapping[str, _Keyword], Collection[str], Mapping[str, Any]], Iterable[_ExtractionResult], - ] + ] # fmt: skip _ExtractionMethod: TypeAlias = _CallableExtractionMethod | str @@ -86,9 +88,11 @@ def tell(self) -> int: ... 'ungettext': (1, 2), 'dgettext': (2,), 'dngettext': (2, 3), + 'dpgettext': ((2, 'c'), 3), 'N_': None, 'pgettext': ((1, 'c'), 2), 'npgettext': ((1, 'c'), 2, 3), + 'dnpgettext': ((2, 'c'), 3, 4), } DEFAULT_MAPPING: list[tuple[str, str]] = [('**.py', 'python')] @@ -103,15 +107,45 @@ def _strip_comment_tags(comments: MutableSequence[str], tags: Iterable[str]): """Helper function for `extract` that strips comment tags from strings in a list of comment lines. This functions operates in-place. """ + def _strip(line: str): for tag in tags: if line.startswith(tag): - return line[len(tag):].strip() + return line[len(tag) :].strip() return line - comments[:] = map(_strip, comments) + comments[:] = [_strip(c) for c in comments] + + +def _make_default_directory_filter( + method_map: Iterable[tuple[str, str]], + root_dir: str | os.PathLike[str], +): + method_map = tuple(method_map) + + def directory_filter(dirpath: str | os.PathLike[str]) -> bool: + subdir = os.path.basename(dirpath) + # Legacy default behavior: ignore dot and underscore directories + if subdir.startswith('.') or subdir.startswith('_'): + return False + + dir_rel = os.path.relpath(dirpath, root_dir).replace(os.sep, '/') + + for pattern, method in method_map: + if method == "ignore" and pathmatch(pattern, dir_rel): + return False -def default_directory_filter(dirpath: str | os.PathLike[str]) -> bool: + return True + + return directory_filter + + +def default_directory_filter(dirpath: str | os.PathLike[str]) -> bool: # pragma: no cover + warnings.warn( + "`default_directory_filter` is deprecated and will be removed in a future version of Babel.", + DeprecationWarning, + stacklevel=2, + ) subdir = os.path.basename(dirpath) # Legacy default behavior: ignore dot and underscore directories return not (subdir.startswith('.') or subdir.startswith('_')) @@ -198,16 +232,21 @@ def extract_from_dir( """ if dirname is None: dirname = os.getcwd() + if options_map is None: options_map = {} + + dirname = os.path.abspath(dirname) + if directory_filter is None: - directory_filter = default_directory_filter + directory_filter = _make_default_directory_filter( + method_map=method_map, + root_dir=dirname, + ) - absname = os.path.abspath(dirname) - for root, dirnames, filenames in os.walk(absname): + for root, dirnames, filenames in os.walk(dirname): dirnames[:] = [ - subdir for subdir in dirnames - if directory_filter(os.path.join(root, subdir)) + subdir for subdir in dirnames if directory_filter(os.path.join(root, subdir)) ] dirnames.sort() filenames.sort() @@ -222,7 +261,7 @@ def extract_from_dir( keywords, comment_tags, strip_comment_tags, - dirpath=absname, + dirpath=dirname, ) @@ -277,12 +316,31 @@ def check_and_call_extract_file( if pathmatch(opattern, filename): options = odict break + + # Merge keywords and comment_tags from per-format options if present. + file_keywords = keywords + file_comment_tags = comment_tags + if keywords_opt := options.get("keywords"): + if not isinstance(keywords_opt, dict): # pragma: no cover + raise TypeError( + f"The `keywords` option must be a dict of parsed keywords, not {keywords_opt!r}", + ) + file_keywords = {**keywords, **keywords_opt} + + if comments_opt := options.get("add_comments"): + if not isinstance(comments_opt, (list, tuple, set)): # pragma: no cover + raise TypeError( + f"The `add_comments` option must be a collection of comment tags, not {comments_opt!r}.", + ) + file_comment_tags = tuple(set(comment_tags) | set(comments_opt)) + if callback: callback(filename, method, options) for message_tuple in extract_from_file( - method, filepath, - keywords=keywords, - comment_tags=comment_tags, + method, + filepath, + keywords=file_keywords, + comment_tags=file_comment_tags, options=options, strip_comment_tags=strip_comment_tags, ): @@ -321,8 +379,9 @@ def extract_from_file( return [] with open(filename, 'rb') as fileobj: - return list(extract(method, fileobj, keywords, comment_tags, - options, strip_comment_tags)) + return list( + extract(method, fileobj, keywords, comment_tags, options, strip_comment_tags), + ) def _match_messages_against_spec( @@ -357,7 +416,7 @@ def _match_messages_against_spec( first_msg_index = spec[0] - 1 # An empty string msgid isn't valid, emit a warning if not messages[first_msg_index]: - filename = (getattr(fileobj, "name", None) or "(unknown)") + filename = getattr(fileobj, "name", None) or "(unknown)" sys.stderr.write( f"{filename}:{lineno}: warning: Empty msgid. It is reserved by GNU gettext: gettext(\"\") " f"returns the header entry with meta information, not the empty string.\n", @@ -403,7 +462,7 @@ def extract( >>> from io import BytesIO >>> for message in extract('python', BytesIO(source)): ... print(message) - (3, u'Hello, world!', [], None) + (3, 'Hello, world!', [], None) :param method: an extraction method (a callable), or a string specifying the extraction method (.e.g. "python"); @@ -431,7 +490,7 @@ def extract( elif ':' in method or '.' in method: if ':' not in method: lastdot = method.rfind('.') - module, attrname = method[:lastdot], method[lastdot + 1:] + module, attrname = method[:lastdot], method[lastdot + 1 :] else: module, attrname = method.split(':', 1) func = getattr(__import__(module, {}, {}, [attrname]), attrname) @@ -445,8 +504,7 @@ def extract( if func is None: raise ValueError(f"Unknown extraction method {method!r}") - results = func(fileobj, keywords.keys(), comment_tags, - options=options or {}) + results = func(fileobj, keywords.keys(), comment_tags, options=options or {}) for lineno, funcname, messages, comments in results: if not isinstance(messages, (list, tuple)): @@ -508,7 +566,7 @@ def extract_python( :rtype: ``iterator`` """ funcname = lineno = message_lineno = None - call_stack = -1 + call_stack = [] # line numbers of calls buf = [] messages = [] translator_comments = [] @@ -526,7 +584,7 @@ def extract_python( current_fstring_start = None for tok, value, (lineno, _), _, _ in tokens: - if call_stack == -1 and tok == NAME and value in ('def', 'class'): + if not call_stack and tok == NAME and value in ('def', 'class'): in_def = True elif tok == OP and value == '(': if in_def: @@ -535,16 +593,15 @@ def extract_python( in_def = False continue if funcname: - call_stack += 1 + call_stack.append(lineno) elif in_def and tok == OP and value == ':': # End of a class definition without parens in_def = False continue - elif call_stack == -1 and tok == COMMENT: + elif not call_stack and tok == COMMENT: # Strip the comment token from the line value = value[1:].strip() - if in_translator_comments and \ - translator_comments[-1][0] == lineno - 1: + if in_translator_comments and translator_comments[-1][0] == lineno - 1: # We're already inside a translator comment, continue appending translator_comments.append((lineno, value)) continue @@ -555,8 +612,8 @@ def extract_python( in_translator_comments = True translator_comments.append((lineno, value)) break - elif funcname and call_stack == 0: - nested = (tok == NAME and value in keywords) + elif funcname and len(call_stack) == 1: + nested = tok == NAME and value in keywords if (tok == OP and value == ')') or nested: if buf: messages.append(''.join(buf)) @@ -565,17 +622,24 @@ def extract_python( messages.append(None) messages = tuple(messages) if len(messages) > 1 else messages[0] - # Comments don't apply unless they immediately - # precede the message - if translator_comments and \ - translator_comments[-1][0] < message_lineno - 1: - translator_comments = [] - yield (message_lineno, funcname, messages, - [comment[1] for comment in translator_comments]) + if translator_comments: + last_comment_lineno = translator_comments[-1][0] + if last_comment_lineno < min(message_lineno, call_stack[-1]) - 1: + # Comments don't apply unless they immediately + # precede the message, or the line where the parenthesis token + # to start this message's translation call is. + translator_comments.clear() + + yield ( + message_lineno, + funcname, + messages, + [comment[1] for comment in translator_comments], + ) funcname = lineno = message_lineno = None - call_stack = -1 + call_stack.clear() messages = [] translator_comments = [] in_translator_comments = False @@ -619,9 +683,9 @@ def extract_python( elif tok != NL and not message_lineno: message_lineno = lineno - elif call_stack > 0 and tok == OP and value == ')': - call_stack -= 1 - elif funcname and call_stack == -1: + elif len(call_stack) > 1 and tok == OP and value == ')': + call_stack.pop() + elif funcname and not call_stack: funcname = None elif tok == NAME and value in keywords: funcname = value @@ -679,6 +743,7 @@ def extract_javascript( :param lineno: line number offset (for parsing embedded fragments) """ from babel.messages.jslexer import Token, tokenize, unquote_string + funcname = message_lineno = None messages = [] last_argument = None @@ -696,17 +761,30 @@ def extract_javascript( lineno=lineno, ): if ( # Turn keyword`foo` expressions into keyword("foo") calls: - funcname and # have a keyword... - (last_token and last_token.type == 'name') and # we've seen nothing after the keyword... - token.type == 'template_string' # this is a template string + # have a keyword... + funcname + # and we've seen nothing after the keyword... + and (last_token and last_token.type == 'name') + # and this is a template string + and token.type == 'template_string' ): message_lineno = token.lineno messages = [unquote_string(token.value)] call_stack = 0 token = Token('operator', ')', token.lineno) - if options.get('parse_template_string') and not funcname and token.type == 'template_string': - yield from parse_template_string(token.value, keywords, comment_tags, options, token.lineno) + if ( + options.get('parse_template_string') + and not funcname + and token.type == 'template_string' + ): + yield from parse_template_string( + token.value, + keywords, + comment_tags, + options, + token.lineno, + ) elif token.type == 'operator' and token.value == '(': if funcname: @@ -715,8 +793,7 @@ def extract_javascript( elif call_stack == -1 and token.type == 'linecomment': value = token.value[2:].strip() - if translator_comments and \ - translator_comments[-1][0] == token.lineno - 1: + if translator_comments and translator_comments[-1][0] == token.lineno - 1: translator_comments.append((token.lineno, value)) continue @@ -736,8 +813,7 @@ def extract_javascript( lines[0] = lines[0].strip() lines[1:] = dedent('\n'.join(lines[1:])).splitlines() for offset, line in enumerate(lines): - translator_comments.append((token.lineno + offset, - line)) + translator_comments.append((token.lineno + offset, line)) break elif funcname and call_stack == 0: @@ -753,13 +829,16 @@ def extract_javascript( # Comments don't apply unless they immediately precede the # message - if translator_comments and \ - translator_comments[-1][0] < message_lineno - 1: + if translator_comments and translator_comments[-1][0] < message_lineno - 1: translator_comments = [] if messages is not None: - yield (message_lineno, funcname, messages, - [comment[1] for comment in translator_comments]) + yield ( + message_lineno, + funcname, + messages, + [comment[1] for comment in translator_comments], + ) funcname = message_lineno = last_argument = None concatenate_next = False @@ -786,17 +865,22 @@ def extract_javascript( elif token.value == '+': concatenate_next = True - elif call_stack > 0 and token.type == 'operator' \ - and token.value == ')': + elif call_stack > 0 and token.type == 'operator' and token.value == ')': call_stack -= 1 elif funcname and call_stack == -1: funcname = None - elif call_stack == -1 and token.type == 'name' and \ - token.value in keywords and \ - (last_token is None or last_token.type != 'name' or - last_token.value != 'function'): + elif ( + call_stack == -1 + and token.type == 'name' + and token.value in keywords + and ( + last_token is None + or last_token.type != 'name' + or last_token.value != 'function' + ) + ): funcname = token.value last_token = token @@ -820,6 +904,7 @@ def parse_template_string( :param lineno: starting line number (optional) """ from babel.messages.jslexer import line_re + prev_character = None level = 0 inside_str = False @@ -839,7 +924,13 @@ def parse_template_string( if level == 0 and expression_contents: expression_contents = expression_contents[0:-1] fake_file_obj = io.BytesIO(expression_contents.encode()) - yield from extract_javascript(fake_file_obj, keywords, comment_tags, options, lineno) + yield from extract_javascript( + fake_file_obj, + keywords, + comment_tags, + options, + lineno, + ) lineno += len(line_re.findall(expression_contents)) expression_contents = '' prev_character = character diff --git a/addons/source-python/packages/site-packages/babel/messages/frontend.py b/addons/source-python/packages/site-packages/babel/messages/frontend.py index 29e5a2aa2..f63dd9ded 100644 --- a/addons/source-python/packages/site-packages/babel/messages/frontend.py +++ b/addons/source-python/packages/site-packages/babel/messages/frontend.py @@ -1,11 +1,11 @@ """ - babel.messages.frontend - ~~~~~~~~~~~~~~~~~~~~~~~ +babel.messages.frontend +~~~~~~~~~~~~~~~~~~~~~~~ - Frontends for the message extraction functionality. +Frontends for the message extraction functionality. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ from __future__ import annotations @@ -15,6 +15,7 @@ import logging import optparse import os +import pathlib import re import shutil import sys @@ -22,7 +23,7 @@ import warnings from configparser import RawConfigParser from io import StringIO -from typing import BinaryIO, Iterable, Literal +from typing import Any, BinaryIO, Iterable, Literal from babel import Locale, localedata from babel import __version__ as VERSION @@ -173,7 +174,7 @@ class CompileCatalog(CommandMixin): 'also include fuzzy translations'), ('statistics', None, 'print statistics about translations'), - ] + ] # fmt: skip boolean_options = ['use-fuzzy', 'statistics'] def initialize_options(self): @@ -199,46 +200,38 @@ def run(self): n_errors += len(errors) if n_errors: self.log.error('%d errors encountered.', n_errors) - return (1 if n_errors else 0) - - def _run_domain(self, domain): - po_files = [] - mo_files = [] + return 1 if n_errors else 0 + def _get_po_mo_triples(self, domain: str): if not self.input_file: + dir_path = pathlib.Path(self.directory) if self.locale: - po_files.append((self.locale, - os.path.join(self.directory, self.locale, - 'LC_MESSAGES', - f"{domain}.po"))) - mo_files.append(os.path.join(self.directory, self.locale, - 'LC_MESSAGES', - f"{domain}.mo")) + lc_messages_path = dir_path / self.locale / "LC_MESSAGES" + po_file = lc_messages_path / f"{domain}.po" + yield self.locale, po_file, po_file.with_suffix(".mo") else: - for locale in os.listdir(self.directory): - po_file = os.path.join(self.directory, locale, - 'LC_MESSAGES', f"{domain}.po") - if os.path.exists(po_file): - po_files.append((locale, po_file)) - mo_files.append(os.path.join(self.directory, locale, - 'LC_MESSAGES', - f"{domain}.mo")) + for locale_path in dir_path.iterdir(): + po_file = locale_path / "LC_MESSAGES" / f"{domain}.po" + if po_file.exists(): + yield locale_path.name, po_file, po_file.with_suffix(".mo") else: - po_files.append((self.locale, self.input_file)) + po_file = pathlib.Path(self.input_file) if self.output_file: - mo_files.append(self.output_file) + mo_file = pathlib.Path(self.output_file) else: - mo_files.append(os.path.join(self.directory, self.locale, - 'LC_MESSAGES', - f"{domain}.mo")) + mo_file = ( + pathlib.Path(self.directory) / self.locale / "LC_MESSAGES" / f"{domain}.mo" + ) + yield self.locale, po_file, mo_file - if not po_files: - raise OptionError('no message catalogs found') + def _run_domain(self, domain): + locale_po_mo_triples = list(self._get_po_mo_triples(domain)) + if not locale_po_mo_triples: + raise OptionError(f'no message catalogs found for domain {domain!r}') catalogs_and_errors = {} - for idx, (locale, po_file) in enumerate(po_files): - mo_file = mo_files[idx] + for locale, po_file, mo_file in locale_po_mo_triples: with open(po_file, 'rb') as infile: catalog = read_po(infile, locale) @@ -252,7 +245,10 @@ def _run_domain(self, domain): percentage = translated * 100 // len(catalog) self.log.info( '%d of %d messages (%d%%) translated in %s', - translated, len(catalog), percentage, po_file, + translated, + len(catalog), + percentage, + po_file, ) if catalog.fuzzy and not self.use_fuzzy: @@ -262,9 +258,7 @@ def _run_domain(self, domain): catalogs_and_errors[catalog] = catalog_errors = list(catalog.check()) for message, errors in catalog_errors: for error in errors: - self.log.error( - 'error: %s:%d: %s', po_file, message.lineno, error, - ) + self.log.error('error: %s:%d: %s', po_file, message.lineno, error) self.log.info('compiling catalog %s to %s', po_file, mo_file) @@ -282,9 +276,7 @@ def _make_directory_filter(ignore_patterns): def cli_directory_filter(dirname): basename = os.path.basename(dirname) return not any( - fnmatch.fnmatch(basename, ignore_pattern) - for ignore_pattern - in ignore_patterns + fnmatch.fnmatch(basename, ignore_pattern) for ignore_pattern in ignore_patterns ) return cli_directory_filter @@ -347,10 +339,15 @@ class ExtractMessages(CommandMixin): 'header comment for the catalog'), ('last-translator=', None, 'set the name and email of the last translator in output'), - ] + ] # fmt: skip boolean_options = [ - 'no-default-keywords', 'no-location', 'omit-header', 'no-wrap', - 'sort-output', 'sort-by-file', 'strip-comments', + 'no-default-keywords', + 'no-location', + 'omit-header', + 'no-wrap', + 'sort-output', + 'sort-by-file', + 'strip-comments', ] as_args = 'input-paths' multiple_value_options = ( @@ -435,10 +432,9 @@ def finalize_options(self): if isinstance(self.input_paths, str): self.input_paths = re.split(r',\s*', self.input_paths) elif self.distribution is not None: - self.input_paths = dict.fromkeys([ - k.split('.', 1)[0] - for k in (self.distribution.packages or ()) - ]).keys() + self.input_paths = list( + {k.split('.', 1)[0] for k in (self.distribution.packages or ())}, + ) else: self.input_paths = [] @@ -493,31 +489,40 @@ def callback(filename: str, method: str, options: dict): def run(self): mappings = self._get_mappings() with open(self.output_file, 'wb') as outfile: - catalog = Catalog(project=self.project, - version=self.version, - msgid_bugs_address=self.msgid_bugs_address, - copyright_holder=self.copyright_holder, - charset=self.charset, - header_comment=(self.header_comment or DEFAULT_HEADER), - last_translator=self.last_translator) + catalog = Catalog( + project=self.project, + version=self.version, + msgid_bugs_address=self.msgid_bugs_address, + copyright_holder=self.copyright_holder, + charset=self.charset, + header_comment=(self.header_comment or DEFAULT_HEADER), + last_translator=self.last_translator, + ) for path, method_map, options_map in mappings: callback = self._build_callback(path) if os.path.isfile(path): current_dir = os.getcwd() extracted = check_and_call_extract_file( - path, method_map, options_map, - callback, self.keywords, self.add_comments, - self.strip_comments, current_dir, + path, + method_map, + options_map, + callback=callback, + comment_tags=self.add_comments, + dirpath=current_dir, + keywords=self.keywords, + strip_comment_tags=self.strip_comments, ) else: extracted = extract_from_dir( - path, method_map, options_map, - keywords=self.keywords, - comment_tags=self.add_comments, + path, + method_map, + options_map, callback=callback, - strip_comment_tags=self.strip_comments, + comment_tags=self.add_comments, directory_filter=self.directory_filter, + keywords=self.keywords, + strip_comment_tags=self.strip_comments, ) for filename, lineno, message, comments, context in extracted: if os.path.isfile(path): @@ -525,16 +530,25 @@ def run(self): else: filepath = os.path.normpath(os.path.join(path, filename)) - catalog.add(message, None, [(filepath, lineno)], - auto_comments=comments, context=context) + catalog.add( + message, + None, + [(filepath, lineno)], + auto_comments=comments, + context=context, + ) self.log.info('writing PO template file to %s', self.output_file) - write_po(outfile, catalog, width=self.width, - no_location=self.no_location, - omit_header=self.omit_header, - sort_output=self.sort_output, - sort_by_file=self.sort_by_file, - include_lineno=self.include_lineno) + write_po( + outfile, + catalog, + include_lineno=self.include_lineno, + no_location=self.no_location, + omit_header=self.omit_header, + sort_by_file=self.sort_by_file, + sort_output=self.sort_output, + width=self.width, + ) def _get_mappings(self): mappings = [] @@ -554,7 +568,10 @@ def _get_mappings(self): ) else: with open(self.mapping_file) as fileobj: - method_map, options_map = parse_mapping_cfg(fileobj, filename=self.mapping_file) + method_map, options_map = parse_mapping_cfg( + fileobj, + filename=self.mapping_file, + ) for path in self.input_paths: mappings.append((path, method_map, options_map)) @@ -567,7 +584,7 @@ def _get_mappings(self): method_map, options_map = [], {} for pattern, method, options in mapping: method_map.append((pattern, method)) - options_map[pattern] = options or {} + options_map[pattern] = _parse_string_options(options or {}) mappings.append((path, method_map, options_map)) else: @@ -577,6 +594,23 @@ def _get_mappings(self): return mappings +def _init_catalog(*, input_file, output_file, locale: Locale, width: int) -> None: + with open(input_file, 'rb') as infile: + # Although reading from the catalog template, read_po must be fed + # the locale in order to correctly calculate plurals + catalog = read_po(infile, locale=locale) + + catalog.locale = locale + catalog.revision_date = datetime.datetime.now(LOCALTZ) + catalog.fuzzy = False + + if dirname := os.path.dirname(output_file): + os.makedirs(dirname, exist_ok=True) + + with open(output_file, 'wb') as outfile: + write_po(outfile, catalog, width=width) + + class InitCatalog(CommandMixin): description = 'create a new catalog based on a POT file' user_options = [ @@ -596,7 +630,7 @@ class InitCatalog(CommandMixin): ('no-wrap', None, 'do not break long message lines, longer than the output line width, ' 'into several lines'), - ] + ] # fmt: skip boolean_options = ['no-wrap'] def initialize_options(self): @@ -622,11 +656,9 @@ def finalize_options(self): if not self.output_file and not self.output_dir: raise OptionError('you must specify the output directory') if not self.output_file: - self.output_file = os.path.join(self.output_dir, self.locale, - 'LC_MESSAGES', f"{self.domain}.po") + lc_messages_path = pathlib.Path(self.output_dir) / self.locale / "LC_MESSAGES" + self.output_file = str(lc_messages_path / f"{self.domain}.po") - if not os.path.exists(os.path.dirname(self.output_file)): - os.makedirs(os.path.dirname(self.output_file)) if self.no_wrap and self.width: raise OptionError("'--no-wrap' and '--width' are mutually exclusive") if not self.no_wrap and not self.width: @@ -636,20 +668,16 @@ def finalize_options(self): def run(self): self.log.info( - 'creating catalog %s based on %s', self.output_file, self.input_file, + 'creating catalog %s based on %s', + self.output_file, + self.input_file, + ) + _init_catalog( + input_file=self.input_file, + output_file=self.output_file, + locale=self._locale, + width=self.width, ) - - with open(self.input_file, 'rb') as infile: - # Although reading from the catalog template, read_po must be fed - # the locale in order to correctly calculate plurals - catalog = read_po(infile, locale=self.locale) - - catalog.locale = self._locale - catalog.revision_date = datetime.datetime.now(LOCALTZ) - catalog.fuzzy = False - - with open(self.output_file, 'wb') as outfile: - write_po(outfile, catalog, width=self.width) class UpdateCatalog(CommandMixin): @@ -689,11 +717,17 @@ class UpdateCatalog(CommandMixin): 'would be updated'), ('ignore-pot-creation-date=', None, 'ignore changes to POT-Creation-Date when updating or checking'), - ] + ] # fmt: skip boolean_options = [ - 'omit-header', 'no-wrap', 'ignore-obsolete', 'init-missing', - 'no-fuzzy-matching', 'previous', 'update-header-comment', - 'check', 'ignore-pot-creation-date', + 'omit-header', + 'no-wrap', + 'ignore-obsolete', + 'init-missing', + 'no-fuzzy-matching', + 'previous', + 'update-header-comment', + 'check', + 'ignore-pot-creation-date', ] def initialize_options(self): @@ -724,8 +758,7 @@ def finalize_options(self): if self.init_missing: if not self.locale: raise OptionError( - 'you must specify the locale for ' - 'the init-missing option to work', + 'you must specify the locale for the init-missing option to work', ) try: @@ -744,75 +777,77 @@ def finalize_options(self): if self.no_fuzzy_matching and self.previous: self.previous = False - def run(self): - check_status = {} - po_files = [] + def _get_locale_po_file_tuples(self): if not self.output_file: + output_path = pathlib.Path(self.output_dir) if self.locale: - po_files.append((self.locale, - os.path.join(self.output_dir, self.locale, - 'LC_MESSAGES', - f"{self.domain}.po"))) + lc_messages_path = output_path / self.locale / "LC_MESSAGES" + yield self.locale, str(lc_messages_path / f"{self.domain}.po") else: - for locale in os.listdir(self.output_dir): - po_file = os.path.join(self.output_dir, locale, - 'LC_MESSAGES', - f"{self.domain}.po") - if os.path.exists(po_file): - po_files.append((locale, po_file)) + for locale_path in output_path.iterdir(): + po_file = locale_path / "LC_MESSAGES" / f"{self.domain}.po" + if po_file.exists(): + yield locale_path.stem, po_file else: - po_files.append((self.locale, self.output_file)) - - if not po_files: - raise OptionError('no message catalogs found') + yield self.locale, self.output_file + def run(self): domain = self.domain if not domain: domain = os.path.splitext(os.path.basename(self.input_file))[0] + check_status = {} + locale_po_file_tuples = list(self._get_locale_po_file_tuples()) + + if not locale_po_file_tuples: + raise OptionError(f'no message catalogs found for domain {domain!r}') + with open(self.input_file, 'rb') as infile: template = read_po(infile) - for locale, filename in po_files: + for locale, filename in locale_po_file_tuples: if self.init_missing and not os.path.exists(filename): if self.check: check_status[filename] = False continue self.log.info( - 'creating catalog %s based on %s', filename, self.input_file, + 'creating catalog %s based on %s', + filename, + self.input_file, ) - with open(self.input_file, 'rb') as infile: - # Although reading from the catalog template, read_po must - # be fed the locale in order to correctly calculate plurals - catalog = read_po(infile, locale=self.locale) - - catalog.locale = self._locale - catalog.revision_date = datetime.datetime.now(LOCALTZ) - catalog.fuzzy = False - - with open(filename, 'wb') as outfile: - write_po(outfile, catalog) + _init_catalog( + input_file=self.input_file, + output_file=filename, + locale=self._locale, + width=self.width, + ) self.log.info('updating catalog %s based on %s', filename, self.input_file) with open(filename, 'rb') as infile: catalog = read_po(infile, locale=locale, domain=domain) catalog.update( - template, self.no_fuzzy_matching, + template, + no_fuzzy_matching=self.no_fuzzy_matching, update_header_comment=self.update_header_comment, update_creation_date=not self.ignore_pot_creation_date, ) - tmpname = os.path.join(os.path.dirname(filename), - tempfile.gettempprefix() + - os.path.basename(filename)) + tmpname = os.path.join( + os.path.dirname(filename), + tempfile.gettempprefix() + os.path.basename(filename), + ) try: with open(tmpname, 'wb') as tmpfile: - write_po(tmpfile, catalog, - omit_header=self.omit_header, - ignore_obsolete=self.ignore_obsolete, - include_previous=self.previous, width=self.width) + write_po( + tmpfile, + catalog, + ignore_obsolete=self.ignore_obsolete, + include_previous=self.previous, + omit_header=self.omit_header, + width=self.width, + ) except Exception: os.remove(tmpname) raise @@ -886,19 +921,34 @@ def run(self, argv=None): if argv is None: argv = sys.argv - self.parser = optparse.OptionParser(usage=self.usage % ('command', '[args]'), - version=self.version) + self.parser = optparse.OptionParser( + usage=self.usage % ('command', '[args]'), + version=self.version, + ) self.parser.disable_interspersed_args() self.parser.print_help = self._help - self.parser.add_option('--list-locales', dest='list_locales', - action='store_true', - help="print all known locales and exit") - self.parser.add_option('-v', '--verbose', action='store_const', - dest='loglevel', const=logging.DEBUG, - help='print as much as possible') - self.parser.add_option('-q', '--quiet', action='store_const', - dest='loglevel', const=logging.ERROR, - help='print as little as possible') + self.parser.add_option( + "--list-locales", + dest="list_locales", + action="store_true", + help="print all known locales and exit", + ) + self.parser.add_option( + "-v", + "--verbose", + action="store_const", + dest="loglevel", + const=logging.DEBUG, + help="print as much as possible", + ) + self.parser.add_option( + "-q", + "--quiet", + action="store_const", + dest="loglevel", + const=logging.ERROR, + help="print as little as possible", + ) self.parser.set_defaults(list_locales=False, loglevel=logging.INFO) options, args = self.parser.parse_args(argv[1:]) @@ -913,8 +963,10 @@ def run(self, argv=None): return 0 if not args: - self.parser.error('no valid command or option passed. ' - 'Try the -h/--help option for more information.') + self.parser.error( + "no valid command or option passed. " + "Try the -h/--help option for more information.", + ) cmdname = args[0] if cmdname not in self.commands: @@ -1027,7 +1079,7 @@ def parse_mapping_cfg(fileobj, filename=None): else: method, pattern = (part.strip() for part in section.split(':', 1)) method_map.append((pattern, method)) - options_map[pattern] = dict(parser.items(section)) + options_map[pattern] = _parse_string_options(dict(parser.items(section))) if extractors: for idx, (pattern, method) in enumerate(method_map): @@ -1038,6 +1090,25 @@ def parse_mapping_cfg(fileobj, filename=None): return method_map, options_map +def _parse_string_options(options: dict[str, str]) -> dict[str, Any]: + """ + Parse string-formatted options from a mapping configuration. + + The `keywords` and `add_comments` options are parsed into a canonical + internal format, so they can be merged with global keywords/comment tags + during extraction. + """ + options: dict[str, Any] = options.copy() + + if keywords_val := options.pop("keywords", None): + options['keywords'] = parse_keywords(listify_value(keywords_val)) + + if comments_val := options.pop("add_comments", None): + options['add_comments'] = listify_value(comments_val) + + return options + + def _parse_config_object(config: dict, *, filename="(unknown)"): extractors = {} method_map = [] @@ -1045,40 +1116,78 @@ def _parse_config_object(config: dict, *, filename="(unknown)"): extractors_read = config.get("extractors", {}) if not isinstance(extractors_read, dict): - raise ConfigurationError(f"{filename}: extractors: Expected a dictionary, got {type(extractors_read)!r}") + raise ConfigurationError( + f"{filename}: extractors: Expected a dictionary, got {type(extractors_read)!r}", + ) for method, callable_spec in extractors_read.items(): if not isinstance(method, str): # Impossible via TOML, but could happen with a custom object. - raise ConfigurationError(f"{filename}: extractors: Extraction method must be a string, got {method!r}") + raise ConfigurationError( + f"{filename}: extractors: Extraction method must be a string, got {method!r}", + ) if not isinstance(callable_spec, str): - raise ConfigurationError(f"{filename}: extractors: Callable specification must be a string, got {callable_spec!r}") + raise ConfigurationError( + f"{filename}: extractors: Callable specification must be a string, got {callable_spec!r}", + ) extractors[method] = callable_spec if "mapping" in config: - raise ConfigurationError(f"{filename}: 'mapping' is not a valid key, did you mean 'mappings'?") + raise ConfigurationError( + f"{filename}: 'mapping' is not a valid key, did you mean 'mappings'?", + ) mappings_read = config.get("mappings", []) if not isinstance(mappings_read, list): - raise ConfigurationError(f"{filename}: mappings: Expected a list, got {type(mappings_read)!r}") + raise ConfigurationError( + f"{filename}: mappings: Expected a list, got {type(mappings_read)!r}", + ) for idx, entry in enumerate(mappings_read): if not isinstance(entry, dict): - raise ConfigurationError(f"{filename}: mappings[{idx}]: Expected a dictionary, got {type(entry)!r}") + raise ConfigurationError( + f"{filename}: mappings[{idx}]: Expected a dictionary, got {type(entry)!r}", + ) entry = entry.copy() method = entry.pop("method", None) if not isinstance(method, str): - raise ConfigurationError(f"{filename}: mappings[{idx}]: 'method' must be a string, got {method!r}") + raise ConfigurationError( + f"{filename}: mappings[{idx}]: 'method' must be a string, got {method!r}", + ) method = extractors.get(method, method) # Map the extractor name to the callable now pattern = entry.pop("pattern", None) if not isinstance(pattern, (list, str)): - raise ConfigurationError(f"{filename}: mappings[{idx}]: 'pattern' must be a list or a string, got {pattern!r}") + raise ConfigurationError( + f"{filename}: mappings[{idx}]: 'pattern' must be a list or a string, got {pattern!r}", + ) if not isinstance(pattern, list): pattern = [pattern] + if keywords_val := entry.pop("keywords", None): + if isinstance(keywords_val, str): + entry["keywords"] = parse_keywords(listify_value(keywords_val)) + elif isinstance(keywords_val, list): + entry["keywords"] = parse_keywords(keywords_val) + else: + raise ConfigurationError( + f"{filename}: mappings[{idx}]: 'keywords' must be a string or list, got {keywords_val!r}", + ) + + if comments_val := entry.pop("add_comments", None): + if isinstance(comments_val, str): + entry["add_comments"] = [comments_val] + elif isinstance(comments_val, list): + entry["add_comments"] = comments_val + else: + raise ConfigurationError( + f"{filename}: mappings[{idx}]: 'add_comments' must be a string or list, got {comments_val!r}", + ) + for pat in pattern: if not isinstance(pat, str): - raise ConfigurationError(f"{filename}: mappings[{idx}]: 'pattern' elements must be strings, got {pat!r}") + raise ConfigurationError( + f"{filename}: mappings[{idx}]: 'pattern' elements must be strings, got {pat!r}", + ) method_map.append((pat, method)) options_map[pat] = entry @@ -1115,11 +1224,15 @@ def _parse_mapping_toml( try: babel_data = parsed_data["tool"]["babel"] except (TypeError, KeyError) as e: - raise ConfigurationError(f"{filename}: No 'tool.babel' section found in file") from e + raise ConfigurationError( + f"{filename}: No 'tool.babel' section found in file", + ) from e elif style == "standalone": babel_data = parsed_data if "babel" in babel_data: - raise ConfigurationError(f"{filename}: 'babel' should not be present in a stand-alone configuration file") + raise ConfigurationError( + f"{filename}: 'babel' should not be present in a stand-alone configuration file", + ) else: # pragma: no cover raise ValueError(f"Unknown TOML style {style!r}") @@ -1190,7 +1303,13 @@ def parse_keywords(strings: Iterable[str] = ()): def __getattr__(name: str): # Re-exports for backwards compatibility; # `setuptools_frontend` is the canonical import location. - if name in {'check_message_extractors', 'compile_catalog', 'extract_messages', 'init_catalog', 'update_catalog'}: + if name in { + 'check_message_extractors', + 'compile_catalog', + 'extract_messages', + 'init_catalog', + 'update_catalog', + }: from babel.messages import setuptools_frontend return getattr(setuptools_frontend, name) diff --git a/addons/source-python/packages/site-packages/babel/messages/jslexer.py b/addons/source-python/packages/site-packages/babel/messages/jslexer.py index 5fc4956fd..d751b58f7 100644 --- a/addons/source-python/packages/site-packages/babel/messages/jslexer.py +++ b/addons/source-python/packages/site-packages/babel/messages/jslexer.py @@ -1,13 +1,14 @@ """ - babel.messages.jslexer - ~~~~~~~~~~~~~~~~~~~~~~ +babel.messages.jslexer +~~~~~~~~~~~~~~~~~~~~~~ - A simple JavaScript 1.5 lexer which is used for the JavaScript - extractor. +A simple JavaScript 1.5 lexer which is used for the JavaScript +extractor. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import re @@ -19,7 +20,7 @@ '+=', '-=', '*=', '%=', '<<', '>>', '>>>', '<<=', '>>=', '>>>=', '&', '&=', '|', '|=', '&&', '||', '^', '^=', '(', ')', '[', ']', '{', '}', '!', '--', '++', '~', ',', ';', '.', ':', -], key=len, reverse=True) +], key=len, reverse=True) # fmt: skip escapes: dict[str, str] = {'b': '\b', 'f': '\f', 'n': '\n', 'r': '\r', 't': '\t'} @@ -53,16 +54,20 @@ class Token(NamedTuple): (0x[a-fA-F0-9]+) )''', re.VERBOSE)), ('jsx_tag', re.compile(r'(?:\s]+|/>)', re.I)), # May be mangled in `get_rules` - ('operator', re.compile(r'(%s)' % '|'.join(map(re.escape, operators)))), + ('operator', re.compile(r'(%s)' % '|'.join(re.escape(op) for op in operators))), ('template_string', re.compile(r'''`(?:[^`\\]*(?:\\.[^`\\]*)*)`''', re.UNICODE)), ('string', re.compile(r'''( '(?:[^'\\]*(?:\\.[^'\\]*)*)' | "(?:[^"\\]*(?:\\.[^"\\]*)*)" )''', re.VERBOSE | re.DOTALL)), -] +] # fmt: skip -def get_rules(jsx: bool, dotted: bool, template_string: bool) -> list[tuple[str | None, re.Pattern[str]]]: +def get_rules( + jsx: bool, + dotted: bool, + template_string: bool, +) -> list[tuple[str | None, re.Pattern[str]]]: """ Get a tokenization rule list given the passed syntax options. @@ -95,8 +100,9 @@ def unquote_string(string: str) -> str: """Unquote a string with JavaScript rules. The string has to start with string delimiters (``'``, ``"`` or the back-tick/grave accent (for template strings).) """ - assert string and string[0] == string[-1] and string[0] in '"\'`', \ + assert string and string[0] == string[-1] and string[0] in '"\'`', ( 'string provided is not properly delimited' + ) string = line_join_re.sub('\\1', string[1:-1]) result: list[str] = [] add = result.append @@ -158,7 +164,13 @@ def unquote_string(string: str) -> str: return ''.join(result) -def tokenize(source: str, jsx: bool = True, dotted: bool = True, template_string: bool = True, lineno: int = 1) -> Generator[Token, None, None]: +def tokenize( + source: str, + jsx: bool = True, + dotted: bool = True, + template_string: bool = True, + lineno: int = 1, +) -> Generator[Token, None, None]: """ Tokenize JavaScript/JSX source. Returns a generator of tokens. diff --git a/addons/source-python/packages/site-packages/babel/messages/mofile.py b/addons/source-python/packages/site-packages/babel/messages/mofile.py index 3c9fefc4a..1a6fedfcb 100644 --- a/addons/source-python/packages/site-packages/babel/messages/mofile.py +++ b/addons/source-python/packages/site-packages/babel/messages/mofile.py @@ -1,12 +1,13 @@ """ - babel.messages.mofile - ~~~~~~~~~~~~~~~~~~~~~ +babel.messages.mofile +~~~~~~~~~~~~~~~~~~~~~ - Writing of files in the ``gettext`` MO (machine object) format. +Writing of files in the ``gettext`` MO (machine object) format. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import array @@ -18,8 +19,8 @@ if TYPE_CHECKING: from _typeshed import SupportsRead, SupportsWrite -LE_MAGIC: int = 0x950412de -BE_MAGIC: int = 0xde120495 +LE_MAGIC: int = 0x950412DE +BE_MAGIC: int = 0xDE120495 def read_mo(fileobj: SupportsRead[bytes]) -> Catalog: @@ -56,9 +57,9 @@ def read_mo(fileobj: SupportsRead[bytes]) -> Catalog: # Now put all messages from the .mo file buffer into the catalog # dictionary for _i in range(msgcount): - mlen, moff = unpack(ii, buf[origidx:origidx + 8]) + mlen, moff = unpack(ii, buf[origidx : origidx + 8]) mend = moff + mlen - tlen, toff = unpack(ii, buf[transidx:transidx + 8]) + tlen, toff = unpack(ii, buf[transidx : transidx + 8]) tend = toff + tlen if mend < buflen and tend < buflen: msg = buf[moff:mend] @@ -116,7 +117,7 @@ def write_mo(fileobj: SupportsWrite[bytes], catalog: Catalog, use_fuzzy: bool = >>> catalog = Catalog(locale='en_US') >>> catalog.add('foo', 'Voh') - >>> catalog.add((u'bar', u'baz'), (u'Bahr', u'Batz')) + >>> catalog.add(('bar', 'baz'), ('Bahr', 'Batz')) >>> catalog.add('fuz', 'Futz', flags=['fuzzy']) @@ -133,19 +134,19 @@ def write_mo(fileobj: SupportsWrite[bytes], catalog: Catalog, use_fuzzy: bool = ... translations.ugettext = translations.gettext ... translations.ungettext = translations.ngettext >>> translations.ugettext('foo') - u'Voh' + 'Voh' >>> translations.ungettext('bar', 'baz', 1) - u'Bahr' + 'Bahr' >>> translations.ungettext('bar', 'baz', 2) - u'Batz' + 'Batz' >>> translations.ugettext('fuz') - u'fuz' + 'fuz' >>> translations.ugettext('Fizz') - u'Fizz' + 'Fizz' >>> translations.ugettext('Fuzz') - u'Fuzz' + 'Fuzz' >>> translations.ugettext('Fuzzes') - u'Fuzzes' + 'Fuzzes' :param fileobj: the file-like object to write to :param catalog: the `Catalog` instance @@ -153,8 +154,7 @@ def write_mo(fileobj: SupportsWrite[bytes], catalog: Catalog, use_fuzzy: bool = in the output """ messages = list(catalog) - messages[1:] = [m for m in messages[1:] - if m.string and (use_fuzzy or not m.fuzzy)] + messages[1:] = [m for m in messages[1:] if m.string and (use_fuzzy or not m.fuzzy)] messages.sort() ids = strs = b'' @@ -164,24 +164,19 @@ def write_mo(fileobj: SupportsWrite[bytes], catalog: Catalog, use_fuzzy: bool = # For each string, we need size and file offset. Each string is NUL # terminated; the NUL does not count into the size. if message.pluralizable: - msgid = b'\x00'.join([ - msgid.encode(catalog.charset) for msgid in message.id - ]) + msgid = b'\x00'.join(msgid.encode(catalog.charset) for msgid in message.id) msgstrs = [] for idx, string in enumerate(message.string): if not string: msgstrs.append(message.id[min(int(idx), 1)]) else: msgstrs.append(string) - msgstr = b'\x00'.join([ - msgstr.encode(catalog.charset) for msgstr in msgstrs - ]) + msgstr = b'\x00'.join(msgstr.encode(catalog.charset) for msgstr in msgstrs) else: msgid = message.id.encode(catalog.charset) msgstr = message.string.encode(catalog.charset) if message.context: - msgid = b'\x04'.join([message.context.encode(catalog.charset), - msgid]) + msgid = b'\x04'.join([message.context.encode(catalog.charset), msgid]) offsets.append((len(ids), len(msgid), len(strs), len(msgstr))) ids += msgid + b'\x00' strs += msgstr + b'\x00' @@ -200,11 +195,15 @@ def write_mo(fileobj: SupportsWrite[bytes], catalog: Catalog, use_fuzzy: bool = voffsets += [l2, o2 + valuestart] offsets = koffsets + voffsets - fileobj.write(struct.pack('Iiiiiii', - LE_MAGIC, # magic - 0, # version - len(messages), # number of entries - 7 * 4, # start of key index - 7 * 4 + len(messages) * 8, # start of value index - 0, 0, # size and offset of hash table - ) + array.array.tobytes(array.array("i", offsets)) + ids + strs) + header = struct.pack( + 'Iiiiiii', + LE_MAGIC, # magic + 0, # version + len(messages), # number of entries + 7 * 4, # start of key index + 7 * 4 + len(messages) * 8, # start of value index + 0, + 0, # size and offset of hash table + ) + + fileobj.write(header + array.array.tobytes(array.array("i", offsets)) + ids + strs) diff --git a/addons/source-python/packages/site-packages/babel/messages/plurals.py b/addons/source-python/packages/site-packages/babel/messages/plurals.py index da336a7ba..a66fdfe41 100644 --- a/addons/source-python/packages/site-packages/babel/messages/plurals.py +++ b/addons/source-python/packages/site-packages/babel/messages/plurals.py @@ -1,12 +1,13 @@ """ - babel.messages.plurals - ~~~~~~~~~~~~~~~~~~~~~~ +babel.messages.plurals +~~~~~~~~~~~~~~~~~~~~~~ - Plural form definitions. +Plural form definitions. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations from babel.core import Locale, default_locale @@ -197,7 +198,7 @@ 'xh': (2, '(n != 1)'), # Chinese - From Pootle's PO's (modified) 'zh': (1, '0'), -} +} # fmt: skip DEFAULT_PLURAL: tuple[int, str] = (2, '(n != 1)') diff --git a/addons/source-python/packages/site-packages/babel/messages/pofile.py b/addons/source-python/packages/site-packages/babel/messages/pofile.py index 2bb0c7741..b9678a924 100644 --- a/addons/source-python/packages/site-packages/babel/messages/pofile.py +++ b/addons/source-python/packages/site-packages/babel/messages/pofile.py @@ -1,13 +1,14 @@ """ - babel.messages.pofile - ~~~~~~~~~~~~~~~~~~~~~ +babel.messages.pofile +~~~~~~~~~~~~~~~~~~~~~ - Reading and writing of files in the ``gettext`` PO (portable object) - format. +Reading and writing of files in the ``gettext`` PO (portable object) +format. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import os @@ -17,7 +18,7 @@ from babel.core import Locale from babel.messages.catalog import Catalog, Message -from babel.util import TextWrapper, _cmp +from babel.util import TextWrapper if TYPE_CHECKING: from typing import IO, AnyStr @@ -25,6 +26,9 @@ from _typeshed import SupportsWrite +_unescape_re = re.compile(r'\\([\\trn"])') + + def unescape(string: str) -> str: r"""Reverse `escape` the given string. @@ -35,6 +39,7 @@ def unescape(string: str) -> str: :param string: the string to unescape """ + def replace_escapes(match): m = match.group(1) if m == 'n': @@ -45,7 +50,10 @@ def replace_escapes(match): return '\r' # m is \ or " return m - return re.compile(r'\\([\\trn"])').sub(replace_escapes, string[1:-1]) + + if "\\" not in string: # Fast path: there's nothing to unescape + return string[1:-1] + return _unescape_re.sub(replace_escapes, string[1:-1]) def denormalize(string: str) -> str: @@ -73,8 +81,7 @@ def denormalize(string: str) -> str: escaped_lines = string.splitlines() if string.startswith('""'): escaped_lines = escaped_lines[1:] - lines = map(unescape, escaped_lines) - return ''.join(lines) + return ''.join(map(unescape, escaped_lines)) else: return unescape(string) @@ -95,14 +102,18 @@ def _extract_locations(line: str) -> list[str]: for c in line: if c == "\u2068": if in_filename: - raise ValueError("location comment contains more First Strong Isolate " - "characters, than Pop Directional Isolate characters") + raise ValueError( + "location comment contains more First Strong Isolate " + "characters, than Pop Directional Isolate characters", + ) in_filename = True continue elif c == "\u2069": if not in_filename: - raise ValueError("location comment contains more Pop Directional Isolate " - "characters, than First Strong Isolate characters") + raise ValueError( + "location comment contains more Pop Directional Isolate " + "characters, than First Strong Isolate characters", + ) in_filename = False continue elif c == " ": @@ -116,8 +127,10 @@ def _extract_locations(line: str) -> list[str]: else: if location: if in_filename: - raise ValueError("location comment contains more First Strong Isolate " - "characters, than Pop Directional Isolate characters") + raise ValueError( + "location comment contains more First Strong Isolate " + "characters, than Pop Directional Isolate characters", + ) locations.append(location) return locations @@ -133,48 +146,14 @@ def __init__(self, message: str, catalog: Catalog, line: str, lineno: int) -> No self.lineno = lineno -class _NormalizedString: - +class _NormalizedString(list): def __init__(self, *args: str) -> None: - self._strs: list[str] = [] - for arg in args: - self.append(arg) - - def append(self, s: str) -> None: - self._strs.append(s.strip()) + super().__init__(map(str.strip, args)) def denormalize(self) -> str: - return ''.join(map(unescape, self._strs)) - - def __bool__(self) -> bool: - return bool(self._strs) - - def __repr__(self) -> str: - return os.linesep.join(self._strs) - - def __cmp__(self, other: object) -> int: - if not other: - return 1 - - return _cmp(str(self), str(other)) - - def __gt__(self, other: object) -> bool: - return self.__cmp__(other) > 0 - - def __lt__(self, other: object) -> bool: - return self.__cmp__(other) < 0 - - def __ge__(self, other: object) -> bool: - return self.__cmp__(other) >= 0 - - def __le__(self, other: object) -> bool: - return self.__cmp__(other) <= 0 - - def __eq__(self, other: object) -> bool: - return self.__cmp__(other) == 0 - - def __ne__(self, other: object) -> bool: - return self.__cmp__(other) != 0 + if not self: + return "" + return ''.join(map(unescape, self)) class PoFileParser: @@ -184,14 +163,12 @@ class PoFileParser: See `read_po` for simple cases. """ - _keywords = [ - 'msgid', - 'msgstr', - 'msgctxt', - 'msgid_plural', - ] - - def __init__(self, catalog: Catalog, ignore_obsolete: bool = False, abort_invalid: bool = False) -> None: + def __init__( + self, + catalog: Catalog, + ignore_obsolete: bool = False, + abort_invalid: bool = False, + ) -> None: self.catalog = catalog self.ignore_obsolete = ignore_obsolete self.counter = 0 @@ -217,25 +194,33 @@ def _add_message(self) -> None: Add a message to the catalog based on the current parser state and clear the state ready to process the next message. """ - self.translations.sort() if len(self.messages) > 1: msgid = tuple(m.denormalize() for m in self.messages) - else: - msgid = self.messages[0].denormalize() - if isinstance(msgid, (list, tuple)): string = ['' for _ in range(self.catalog.num_plurals)] - for idx, translation in self.translations: + for idx, translation in sorted(self.translations): if idx >= self.catalog.num_plurals: - self._invalid_pofile("", self.offset, "msg has more translations than num_plurals of catalog") + self._invalid_pofile( + "", + self.offset, + "msg has more translations than num_plurals of catalog", + ) continue string[idx] = translation.denormalize() string = tuple(string) else: + msgid = self.messages[0].denormalize() string = self.translations[0][1].denormalize() msgctxt = self.context.denormalize() if self.context else None - message = Message(msgid, string, list(self.locations), set(self.flags), - self.auto_comments, self.user_comments, lineno=self.offset + 1, - context=msgctxt) + message = Message( + msgid, + string, + self.locations, + self.flags, + self.auto_comments, + self.user_comments, + lineno=self.offset + 1, + context=msgctxt, + ) if self.obsolete: if not self.ignore_obsolete: self.catalog.obsolete[self.catalog._key_for(msgid, msgctxt)] = message @@ -247,28 +232,24 @@ def _add_message(self) -> None: def _finish_current_message(self) -> None: if self.messages: if not self.translations: - self._invalid_pofile("", self.offset, f"missing msgstr for msgid '{self.messages[0].denormalize()}'") - self.translations.append([0, _NormalizedString("")]) + self._invalid_pofile( + "", + self.offset, + f"missing msgstr for msgid '{self.messages[0].denormalize()}'", + ) + self.translations.append([0, _NormalizedString()]) self._add_message() def _process_message_line(self, lineno, line, obsolete=False) -> None: - if line.startswith('"'): + if not line: + return + if line[0] == '"': self._process_string_continuation_line(line, lineno) else: self._process_keyword_line(lineno, line, obsolete) def _process_keyword_line(self, lineno, line, obsolete=False) -> None: - - for keyword in self._keywords: - try: - if line.startswith(keyword) and line[len(keyword)] in [' ', '[']: - arg = line[len(keyword):] - break - except IndexError: - self._invalid_pofile(line, lineno, "Keyword must be followed by a string") - else: - self._invalid_pofile(line, lineno, "Start of line didn't match any expected keyword.") - return + keyword, _, arg = line.partition(' ') if keyword in ['msgid', 'msgctxt']: self._finish_current_message() @@ -284,19 +265,23 @@ def _process_keyword_line(self, lineno, line, obsolete=False) -> None: self.in_msgctxt = False self.in_msgid = True self.messages.append(_NormalizedString(arg)) + return + + if keyword == 'msgctxt': + self.in_msgctxt = True + self.context = _NormalizedString(arg) + return - elif keyword == 'msgstr': + if keyword == 'msgstr' or keyword.startswith('msgstr['): self.in_msgid = False self.in_msgstr = True - if arg.startswith('['): - idx, msg = arg[1:].split(']', 1) - self.translations.append([int(idx), _NormalizedString(msg)]) - else: - self.translations.append([0, _NormalizedString(arg)]) + kwarg, has_bracket, idxarg = keyword.partition('[') + idx = int(idxarg[:-1]) if has_bracket else 0 + s = _NormalizedString(arg) if arg != '""' else _NormalizedString() + self.translations.append([idx, s]) + return - elif keyword == 'msgctxt': - self.in_msgctxt = True - self.context = _NormalizedString(arg) + self._invalid_pofile(line, lineno, "Unknown or misformatted keyword") def _process_string_continuation_line(self, line, lineno) -> None: if self.in_msgid: @@ -306,51 +291,68 @@ def _process_string_continuation_line(self, line, lineno) -> None: elif self.in_msgctxt: s = self.context else: - self._invalid_pofile(line, lineno, "Got line starting with \" but not in msgid, msgstr or msgctxt") + self._invalid_pofile( + line, + lineno, + "Got line starting with \" but not in msgid, msgstr or msgctxt", + ) return - s.append(line) + # For performance reasons, `NormalizedString` doesn't strip internally + s.append(line.strip()) def _process_comment(self, line) -> None: - self._finish_current_message() - if line[1:].startswith(':'): + prefix = line[:2] + if prefix == '#:': for location in _extract_locations(line[2:]): - pos = location.rfind(':') - if pos >= 0: + a, colon, b = location.rpartition(':') + if colon: try: - lineno = int(location[pos + 1:]) + self.locations.append((a, int(b))) except ValueError: continue - self.locations.append((location[:pos], lineno)) - else: + else: # No line number specified self.locations.append((location, None)) - elif line[1:].startswith(','): - for flag in line[2:].lstrip().split(','): - self.flags.append(flag.strip()) - elif line[1:].startswith('.'): + return + + if prefix == '#,': + self.flags.extend(flag.strip() for flag in line[2:].lstrip().split(',')) + return + + if prefix == '#.': # These are called auto-comments comment = line[2:].strip() if comment: # Just check that we're not adding empty comments self.auto_comments.append(comment) - else: - # These are called user comments - self.user_comments.append(line[1:].strip()) + return + + # These are called user comments + self.user_comments.append(line[1:].strip()) def parse(self, fileobj: IO[AnyStr] | Iterable[AnyStr]) -> None: """ - Reads from the file-like object `fileobj` and adds any po file - units found in it to the `Catalog` supplied to the constructor. + Reads from the file-like object (or iterable of string-likes) `fileobj` + and adds any po file units found in it to the `Catalog` + supplied to the constructor. + + All of the items in the iterable must be the same type; either `str` + or `bytes` (decoded with the catalog charset), but not a mixture. """ + needs_decode = None for lineno, line in enumerate(fileobj): line = line.strip() - if not isinstance(line, str): - line = line.decode(self.catalog.charset) + if needs_decode is None: + # If we don't yet know whether we need to decode, + # let's find out now. + needs_decode = not isinstance(line, str) if not line: continue - if line.startswith('#'): - if line[1:].startswith('~'): + if needs_decode: + line = line.decode(self.catalog.charset) + if line[0] == '#': + if line[:2] == '#~': self._process_message_line(lineno, line[2:].lstrip(), obsolete=True) else: try: @@ -365,8 +367,8 @@ def parse(self, fileobj: IO[AnyStr] | Iterable[AnyStr]) -> None: # No actual messages found, but there was some info in comments, from which # we'll construct an empty header message if not self.counter and (self.flags or self.user_comments or self.auto_comments): - self.messages.append(_NormalizedString('""')) - self.translations.append([0, _NormalizedString('""')]) + self.messages.append(_NormalizedString()) + self.translations.append([0, _NormalizedString()]) self._add_message() def _invalid_pofile(self, line, lineno, msg) -> None: @@ -412,12 +414,12 @@ def read_po( ... print((message.id, message.string)) ... print(' ', (message.locations, sorted(list(message.flags)))) ... print(' ', (message.user_comments, message.auto_comments)) - (u'foo %(name)s', u'quux %(name)s') - ([(u'main.py', 1)], [u'fuzzy', u'python-format']) + ('foo %(name)s', 'quux %(name)s') + ([('main.py', 1)], ['fuzzy', 'python-format']) ([], []) - ((u'bar', u'baz'), (u'bar', u'baaz')) - ([(u'main.py', 3)], []) - ([u'A user comment'], [u'An auto comment']) + (('bar', 'baz'), ('bar', 'baaz')) + ([('main.py', 3)], []) + (['A user comment'], ['An auto comment']) .. versionadded:: 1.0 Added support for explicit charset argument. @@ -437,11 +439,13 @@ def read_po( return catalog -WORD_SEP = re.compile('(' - r'\s+|' # any whitespace - r'[^\s\w]*\w+[a-zA-Z]-(?=\w+[a-zA-Z])|' # hyphenated words - r'(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w)' # em-dash - ')') +WORD_SEP = re.compile( + '(' + r'\s+|' # any whitespace + r'[^\s\w]*\w+[a-zA-Z]-(?=\w+[a-zA-Z])|' # hyphenated words + r'(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w)' # em-dash + ')', +) def escape(string: str) -> str: @@ -455,11 +459,10 @@ def escape(string: str) -> str: :param string: the string to escape """ - return '"%s"' % string.replace('\\', '\\\\') \ - .replace('\t', '\\t') \ - .replace('\r', '\\r') \ - .replace('\n', '\\n') \ - .replace('\"', '\\"') + return '"%s"' % string.replace('\\', '\\\\').replace('\t', '\\t').replace( + '\r', + '\\r', + ).replace('\n', '\\n').replace('"', '\\"') def normalize(string: str, prefix: str = '', width: int = 76) -> str: @@ -556,10 +559,10 @@ def write_po( message catalog to the provided file-like object. >>> catalog = Catalog() - >>> catalog.add(u'foo %(name)s', locations=[('main.py', 1)], + >>> catalog.add('foo %(name)s', locations=[('main.py', 1)], ... flags=('fuzzy',)) - >>> catalog.add((u'bar', u'baz'), locations=[('main.py', 3)]) + >>> catalog.add(('bar', 'baz'), locations=[('main.py', 3)]) >>> from io import BytesIO >>> buf = BytesIO() @@ -687,8 +690,10 @@ def _format_message(message, prefix=''): # if no sorting possible, leave unsorted. # (see issue #606) try: - locations = sorted(message.locations, - key=lambda x: (x[0], isinstance(x[1], int) and x[1] or -1)) + locations = sorted( + message.locations, + key=lambda x: (x[0], isinstance(x[1], int) and x[1] or -1), + ) except TypeError: # e.g. "TypeError: unorderable types: NoneType() < int()" locations = message.locations @@ -726,7 +731,10 @@ def _format_message(message, prefix=''): yield '\n' -def _sort_messages(messages: Iterable[Message], sort_by: Literal["message", "location"] | None) -> list[Message]: +def _sort_messages( + messages: Iterable[Message], + sort_by: Literal["message", "location"] | None, +) -> list[Message]: """ Sort the given message iterable by the given criteria. diff --git a/addons/source-python/packages/site-packages/babel/numbers.py b/addons/source-python/packages/site-packages/babel/numbers.py index 2737a7076..2ef9031aa 100644 --- a/addons/source-python/packages/site-packages/babel/numbers.py +++ b/addons/source-python/packages/site-packages/babel/numbers.py @@ -1,20 +1,21 @@ """ - babel.numbers - ~~~~~~~~~~~~~ +babel.numbers +~~~~~~~~~~~~~ - Locale dependent formatting and parsing of numeric data. +Locale dependent formatting and parsing of numeric data. - The default locale for the functions in this module is determined by the - following environment variables, in that order: +The default locale for the functions in this module is determined by the +following environment variables, in that order: - * ``LC_MONETARY`` for currency related functions, - * ``LC_NUMERIC``, and - * ``LC_ALL``, and - * ``LANG`` + * ``LC_MONETARY`` for currency related functions, + * ``LC_NUMERIC``, and + * ``LC_ALL``, and + * ``LANG`` - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + # TODO: # Padding and rounding increments in pattern: # - https://www.unicode.org/reports/tr35/ (Appendix G.6) @@ -34,8 +35,7 @@ class UnknownCurrencyError(Exception): - """Exception thrown when a currency is requested for which no data is available. - """ + """Exception thrown when a currency is requested for which no data is available.""" def __init__(self, identifier: str) -> None: """Create the exception. @@ -48,7 +48,7 @@ def __init__(self, identifier: str) -> None: def list_currencies(locale: Locale | str | None = None) -> set[str]: - """ Return a `set` of normalized currency codes. + """Return a `set` of normalized currency codes. .. versionadded:: 2.5.0 @@ -64,7 +64,7 @@ def list_currencies(locale: Locale | str | None = None) -> set[str]: def validate_currency(currency: str, locale: Locale | str | None = None) -> None: - """ Check the currency code is recognized by Babel. + """Check the currency code is recognized by Babel. Accepts a ``locale`` parameter for fined-grained validation, working as the one defined above in ``list_currencies()`` method. @@ -76,7 +76,7 @@ def validate_currency(currency: str, locale: Locale | str | None = None) -> None def is_currency(currency: str, locale: Locale | str | None = None) -> bool: - """ Returns `True` only if a currency is recognized by Babel. + """Returns `True` only if a currency is recognized by Babel. This method always return a Boolean and never raise. """ @@ -112,7 +112,7 @@ def get_currency_name( """Return the name used by the locale for the specified currency. >>> get_currency_name('USD', locale='en_US') - u'US Dollar' + 'US Dollar' .. versionadded:: 0.9.4 @@ -142,7 +142,7 @@ def get_currency_symbol(currency: str, locale: Locale | str | None = None) -> st """Return the symbol used by the locale for the specified currency. >>> get_currency_symbol('USD', locale='en_US') - u'$' + '$' :param currency: the currency code. :param locale: the `Locale` object or locale identifier. @@ -178,7 +178,7 @@ def get_currency_unit_pattern( name should be substituted. >>> get_currency_unit_pattern('USD', locale='en_US', count=10) - u'{0} {1}' + '{0} {1}' .. versionadded:: 2.7.0 @@ -208,8 +208,7 @@ def get_territory_currencies( tender: bool = ..., non_tender: bool = ..., include_details: Literal[False] = ..., -) -> list[str]: - ... # pragma: no cover +) -> list[str]: ... # pragma: no cover @overload @@ -220,8 +219,7 @@ def get_territory_currencies( tender: bool = ..., non_tender: bool = ..., include_details: Literal[True] = ..., -) -> list[dict[str, Any]]: - ... # pragma: no cover +) -> list[dict[str, Any]]: ... # pragma: no cover def get_territory_currencies( @@ -295,8 +293,7 @@ def get_territory_currencies( # TODO: validate that the territory exists def _is_active(start, end): - return (start is None or start <= end_date) and \ - (end is None or end >= start_date) + return (start is None or start <= end_date) and (end is None or end >= start_date) result = [] for currency_code, start, end, is_tender in curs: @@ -304,22 +301,29 @@ def _is_active(start, end): start = datetime.date(*start) if end: end = datetime.date(*end) - if ((is_tender and tender) or - (not is_tender and non_tender)) and _is_active(start, end): + if ((is_tender and tender) or (not is_tender and non_tender)) and _is_active( + start, + end, + ): if include_details: - result.append({ - 'currency': currency_code, - 'from': start, - 'to': end, - 'tender': is_tender, - }) + result.append( + { + 'currency': currency_code, + 'from': start, + 'to': end, + 'tender': is_tender, + }, + ) else: result.append(currency_code) return result -def _get_numbering_system(locale: Locale, numbering_system: Literal["default"] | str = "latn") -> str: +def _get_numbering_system( + locale: Locale, + numbering_system: Literal["default"] | str = "latn", +) -> str: if numbering_system == "default": return locale.default_numbering_system else: @@ -335,11 +339,14 @@ def _get_number_symbols( try: return locale.number_symbols[numbering_system] except KeyError as error: - raise UnsupportedNumberingSystemError(f"Unknown numbering system {numbering_system} for Locale {locale}.") from error + raise UnsupportedNumberingSystemError( + f"Unknown numbering system {numbering_system} for Locale {locale}.", + ) from error class UnsupportedNumberingSystemError(Exception): """Exception thrown when an unsupported numbering system is requested for the given Locale.""" + pass @@ -351,11 +358,11 @@ def get_decimal_symbol( """Return the symbol used by the locale to separate decimal fractions. >>> get_decimal_symbol('en_US') - u'.' + '.' >>> get_decimal_symbol('ar_EG', numbering_system='default') - u'٫' + '٫' >>> get_decimal_symbol('ar_EG', numbering_system='latn') - u'.' + '.' :param locale: the `Locale` object or locale identifier. Defaults to the system numeric locale. :param numbering_system: The numbering system used for fetching the symbol. Defaults to "latn". @@ -374,11 +381,11 @@ def get_plus_sign_symbol( """Return the plus sign symbol used by the current locale. >>> get_plus_sign_symbol('en_US') - u'+' + '+' >>> get_plus_sign_symbol('ar_EG', numbering_system='default') - u'\u061c+' + '\\u061c+' >>> get_plus_sign_symbol('ar_EG', numbering_system='latn') - u'\u200e+' + '\\u200e+' :param locale: the `Locale` object or locale identifier. Defaults to the system numeric locale. :param numbering_system: The numbering system used for fetching the symbol. Defaults to "latn". @@ -397,11 +404,11 @@ def get_minus_sign_symbol( """Return the plus sign symbol used by the current locale. >>> get_minus_sign_symbol('en_US') - u'-' + '-' >>> get_minus_sign_symbol('ar_EG', numbering_system='default') - u'\u061c-' + '\\u061c-' >>> get_minus_sign_symbol('ar_EG', numbering_system='latn') - u'\u200e-' + '\\u200e-' :param locale: the `Locale` object or locale identifier. Defaults to the system numeric locale. :param numbering_system: The numbering system used for fetching the symbol. Defaults to "latn". @@ -420,11 +427,11 @@ def get_exponential_symbol( """Return the symbol used by the locale to separate mantissa and exponent. >>> get_exponential_symbol('en_US') - u'E' + 'E' >>> get_exponential_symbol('ar_EG', numbering_system='default') - u'أس' + 'أس' >>> get_exponential_symbol('ar_EG', numbering_system='latn') - u'E' + 'E' :param locale: the `Locale` object or locale identifier. Defaults to the system numeric locale. :param numbering_system: The numbering system used for fetching the symbol. Defaults to "latn". @@ -432,7 +439,7 @@ def get_exponential_symbol( :raise `UnsupportedNumberingSystemError`: if the numbering system is not supported by the locale. """ locale = Locale.parse(locale or LC_NUMERIC) - return _get_number_symbols(locale, numbering_system=numbering_system).get('exponential', 'E') + return _get_number_symbols(locale, numbering_system=numbering_system).get('exponential', 'E') # fmt: skip def get_group_symbol( @@ -443,11 +450,11 @@ def get_group_symbol( """Return the symbol used by the locale to separate groups of thousands. >>> get_group_symbol('en_US') - u',' + ',' >>> get_group_symbol('ar_EG', numbering_system='default') - u'٬' + '٬' >>> get_group_symbol('ar_EG', numbering_system='latn') - u',' + ',' :param locale: the `Locale` object or locale identifier. Defaults to the system numeric locale. :param numbering_system: The numbering system used for fetching the symbol. Defaults to "latn". @@ -466,11 +473,11 @@ def get_infinity_symbol( """Return the symbol used by the locale to represent infinity. >>> get_infinity_symbol('en_US') - u'∞' + '∞' >>> get_infinity_symbol('ar_EG', numbering_system='default') - u'∞' + '∞' >>> get_infinity_symbol('ar_EG', numbering_system='latn') - u'∞' + '∞' :param locale: the `Locale` object or locale identifier. Defaults to the system numeric locale. :param numbering_system: The numbering system used for fetching the symbol. Defaults to "latn". @@ -481,13 +488,16 @@ def get_infinity_symbol( return _get_number_symbols(locale, numbering_system=numbering_system).get('infinity', '∞') -def format_number(number: float | decimal.Decimal | str, locale: Locale | str | None = None) -> str: +def format_number( + number: float | decimal.Decimal | str, + locale: Locale | str | None = None, +) -> str: """Return the given number formatted for a specific locale. >>> format_number(1099, locale='en_US') # doctest: +SKIP - u'1,099' + '1,099' >>> format_number(1099, locale='de_DE') # doctest: +SKIP - u'1.099' + '1.099' .. deprecated:: 2.6.0 @@ -498,7 +508,11 @@ def format_number(number: float | decimal.Decimal | str, locale: Locale | str | """ - warnings.warn('Use babel.numbers.format_decimal() instead.', DeprecationWarning, stacklevel=2) + warnings.warn( + 'Use babel.numbers.format_decimal() instead.', + DeprecationWarning, + stacklevel=2, + ) return format_decimal(number, locale=locale) @@ -534,38 +548,38 @@ def format_decimal( """Return the given decimal number formatted for a specific locale. >>> format_decimal(1.2345, locale='en_US') - u'1.234' + '1.234' >>> format_decimal(1.2346, locale='en_US') - u'1.235' + '1.235' >>> format_decimal(-1.2346, locale='en_US') - u'-1.235' + '-1.235' >>> format_decimal(1.2345, locale='sv_SE') - u'1,234' + '1,234' >>> format_decimal(1.2345, locale='de') - u'1,234' + '1,234' >>> format_decimal(1.2345, locale='ar_EG', numbering_system='default') - u'1٫234' + '1٫234' >>> format_decimal(1.2345, locale='ar_EG', numbering_system='latn') - u'1.234' + '1.234' The appropriate thousands grouping and the decimal separator are used for each locale: >>> format_decimal(12345.5, locale='en_US') - u'12,345.5' + '12,345.5' By default the locale is allowed to truncate and round a high-precision number by forcing its format pattern onto the decimal part. You can bypass this behavior with the `decimal_quantization` parameter: >>> format_decimal(1.2346, locale='en_US') - u'1.235' + '1.235' >>> format_decimal(1.2346, locale='en_US', decimal_quantization=False) - u'1.2346' + '1.2346' >>> format_decimal(12345.67, locale='fr_CA', group_separator=False) - u'12345,67' + '12345,67' >>> format_decimal(12345.67, locale='en_US', group_separator=True) - u'12,345.67' + '12,345.67' :param number: the number to format :param format: @@ -583,7 +597,12 @@ def format_decimal( format = locale.decimal_formats[format] pattern = parse_pattern(format) return pattern.apply( - number, locale, decimal_quantization=decimal_quantization, group_separator=group_separator, numbering_system=numbering_system) + number, + locale, + decimal_quantization=decimal_quantization, + group_separator=group_separator, + numbering_system=numbering_system, + ) def format_compact_decimal( @@ -597,19 +616,19 @@ def format_compact_decimal( """Return the given decimal number formatted for a specific locale in compact form. >>> format_compact_decimal(12345, format_type="short", locale='en_US') - u'12K' + '12K' >>> format_compact_decimal(12345, format_type="long", locale='en_US') - u'12 thousand' + '12 thousand' >>> format_compact_decimal(12345, format_type="short", locale='en_US', fraction_digits=2) - u'12.34K' + '12.34K' >>> format_compact_decimal(1234567, format_type="short", locale="ja_JP") - u'123万' + '123万' >>> format_compact_decimal(2345678, format_type="long", locale="mk") - u'2 милиони' + '2 милиони' >>> format_compact_decimal(21000000, format_type="long", locale="mk") - u'21 милион' + '21 милион' >>> format_compact_decimal(12345, format_type="short", locale='ar_EG', fraction_digits=2, numbering_system='default') - u'12٫34\xa0ألف' + '12٫34\\xa0ألف' :param number: the number to format :param format_type: Compact format to use ("short" or "long") @@ -626,7 +645,12 @@ def format_compact_decimal( if format is None: format = locale.decimal_formats[None] pattern = parse_pattern(format) - return pattern.apply(number, locale, decimal_quantization=False, numbering_system=numbering_system) + return pattern.apply( + number, + locale, + decimal_quantization=False, + numbering_system=numbering_system, + ) def _get_compact_format( @@ -654,7 +678,10 @@ def _get_compact_format( break # otherwise, we need to divide the number by the magnitude but remove zeros # equal to the number of 0's in the pattern minus 1 - number = cast(decimal.Decimal, number / (magnitude // (10 ** (pattern.count("0") - 1)))) + number = cast( + decimal.Decimal, + number / (magnitude // (10 ** (pattern.count("0") - 1))), + ) # round to the number of fraction digits requested rounded = round(number, fraction_digits) # if the remaining number is singular, use the singular format @@ -663,6 +690,8 @@ def _get_compact_format( plural_form = "other" if number == 1 and "1" in compact_format: plural_form = "1" + if str(magnitude) not in compact_format[plural_form]: + plural_form = "other" # fall back to other as the implicit default format = compact_format[plural_form][str(magnitude)] number = rounded break @@ -690,43 +719,43 @@ def format_currency( >>> format_currency(1099.98, 'USD', locale='en_US') '$1,099.98' >>> format_currency(1099.98, 'USD', locale='es_CO') - u'US$1.099,98' + 'US$1.099,98' >>> format_currency(1099.98, 'EUR', locale='de_DE') - u'1.099,98\\xa0\\u20ac' + '1.099,98\\xa0\\u20ac' >>> format_currency(1099.98, 'EGP', locale='ar_EG', numbering_system='default') - u'\u200f1٬099٫98\xa0ج.م.\u200f' + '\\u200f1٬099٫98\\xa0ج.م.\\u200f' The format can also be specified explicitly. The currency is placed with the '¤' sign. As the sign gets repeated the format expands (¤ being the symbol, ¤¤ is the currency abbreviation and ¤¤¤ is the full name of the currency): - >>> format_currency(1099.98, 'EUR', u'\xa4\xa4 #,##0.00', locale='en_US') - u'EUR 1,099.98' - >>> format_currency(1099.98, 'EUR', u'#,##0.00 \xa4\xa4\xa4', locale='en_US') - u'1,099.98 euros' + >>> format_currency(1099.98, 'EUR', '\\xa4\\xa4 #,##0.00', locale='en_US') + 'EUR 1,099.98' + >>> format_currency(1099.98, 'EUR', '#,##0.00 \\xa4\\xa4\\xa4', locale='en_US') + '1,099.98 euros' Currencies usually have a specific number of decimal digits. This function favours that information over the given format: >>> format_currency(1099.98, 'JPY', locale='en_US') - u'\\xa51,100' - >>> format_currency(1099.98, 'COP', u'#,##0.00', locale='es_ES') - u'1.099,98' + '\\xa51,100' + >>> format_currency(1099.98, 'COP', '#,##0.00', locale='es_ES') + '1.099,98' However, the number of decimal digits can be overridden from the currency information, by setting the last parameter to ``False``: >>> format_currency(1099.98, 'JPY', locale='en_US', currency_digits=False) - u'\\xa51,099.98' - >>> format_currency(1099.98, 'COP', u'#,##0.00', locale='es_ES', currency_digits=False) - u'1.099,98' + '\\xa51,099.98' + >>> format_currency(1099.98, 'COP', '#,##0.00', locale='es_ES', currency_digits=False) + '1.099,98' If a format is not specified the type of currency format to use from the locale can be specified: >>> format_currency(1099.98, 'EUR', locale='en_US', format_type='standard') - u'\\u20ac1,099.98' + '\\u20ac1,099.98' When the given currency format type is not available, an exception is raised: @@ -737,30 +766,30 @@ def format_currency( UnknownCurrencyFormatError: "'unknown' is not a known currency format type" >>> format_currency(101299.98, 'USD', locale='en_US', group_separator=False) - u'$101299.98' + '$101299.98' >>> format_currency(101299.98, 'USD', locale='en_US', group_separator=True) - u'$101,299.98' + '$101,299.98' You can also pass format_type='name' to use long display names. The order of the number and currency name, along with the correct localized plural form of the currency name, is chosen according to locale: >>> format_currency(1, 'USD', locale='en_US', format_type='name') - u'1.00 US dollar' + '1.00 US dollar' >>> format_currency(1099.98, 'USD', locale='en_US', format_type='name') - u'1,099.98 US dollars' + '1,099.98 US dollars' >>> format_currency(1099.98, 'USD', locale='ee', format_type='name') - u'us ga dollar 1,099.98' + 'us ga dollar 1,099.98' By default the locale is allowed to truncate and round a high-precision number by forcing its format pattern onto the decimal part. You can bypass this behavior with the `decimal_quantization` parameter: >>> format_currency(1099.9876, 'USD', locale='en_US') - u'$1,099.99' + '$1,099.99' >>> format_currency(1099.9876, 'USD', locale='en_US', decimal_quantization=False) - u'$1,099.9876' + '$1,099.9876' :param number: the number to format :param currency: the currency code @@ -797,11 +826,19 @@ def format_currency( try: pattern = locale.currency_formats[format_type] except KeyError: - raise UnknownCurrencyFormatError(f"{format_type!r} is not a known currency format type") from None + raise UnknownCurrencyFormatError( + f"{format_type!r} is not a known currency format type", + ) from None return pattern.apply( - number, locale, currency=currency, currency_digits=currency_digits, - decimal_quantization=decimal_quantization, group_separator=group_separator, numbering_system=numbering_system) + number, + locale, + currency=currency, + currency_digits=currency_digits, + decimal_quantization=decimal_quantization, + group_separator=group_separator, + numbering_system=numbering_system, + ) def _format_currency_long_name( @@ -839,8 +876,14 @@ def _format_currency_long_name( pattern = parse_pattern(format) number_part = pattern.apply( - number, locale, currency=currency, currency_digits=currency_digits, - decimal_quantization=decimal_quantization, group_separator=group_separator, numbering_system=numbering_system) + number, + locale, + currency=currency, + currency_digits=currency_digits, + decimal_quantization=decimal_quantization, + group_separator=group_separator, + numbering_system=numbering_system, + ) return unit_pattern.format(number_part, display_name) @@ -857,11 +900,11 @@ def format_compact_currency( """Format a number as a currency value in compact form. >>> format_compact_currency(12345, 'USD', locale='en_US') - u'$12K' + '$12K' >>> format_compact_currency(123456789, 'USD', locale='en_US', fraction_digits=2) - u'$123.46M' + '$123.46M' >>> format_compact_currency(123456789, 'EUR', locale='de_DE', fraction_digits=1) - '123,5\xa0Mio.\xa0€' + '123,5\\xa0Mio.\\xa0€' :param number: the number to format :param currency: the currency code @@ -877,7 +920,9 @@ def format_compact_currency( try: compact_format = locale.compact_currency_formats[format_type] except KeyError as error: - raise UnknownCurrencyFormatError(f"{format_type!r} is not a known compact currency format type") from error + raise UnknownCurrencyFormatError( + f"{format_type!r} is not a known compact currency format type", + ) from error number, format = _get_compact_format(number, compact_format, locale, fraction_digits) # Did not find a format, fall back. if format is None or "¤" not in str(format): @@ -894,8 +939,14 @@ def format_compact_currency( if format is None: raise ValueError('No compact currency format found for the given number and locale.') pattern = parse_pattern(format) - return pattern.apply(number, locale, currency=currency, currency_digits=False, decimal_quantization=False, - numbering_system=numbering_system) + return pattern.apply( + number, + locale, + currency=currency, + currency_digits=False, + decimal_quantization=False, + numbering_system=numbering_system, + ) def format_percent( @@ -910,33 +961,33 @@ def format_percent( """Return formatted percent value for a specific locale. >>> format_percent(0.34, locale='en_US') - u'34%' + '34%' >>> format_percent(25.1234, locale='en_US') - u'2,512%' + '2,512%' >>> format_percent(25.1234, locale='sv_SE') - u'2\\xa0512\\xa0%' + '2\\xa0512\\xa0%' >>> format_percent(25.1234, locale='ar_EG', numbering_system='default') - u'2٬512%' + '2٬512%' The format pattern can also be specified explicitly: - >>> format_percent(25.1234, u'#,##0\u2030', locale='en_US') - u'25,123\u2030' + >>> format_percent(25.1234, '#,##0\\u2030', locale='en_US') + '25,123‰' By default the locale is allowed to truncate and round a high-precision number by forcing its format pattern onto the decimal part. You can bypass this behavior with the `decimal_quantization` parameter: >>> format_percent(23.9876, locale='en_US') - u'2,399%' + '2,399%' >>> format_percent(23.9876, locale='en_US', decimal_quantization=False) - u'2,398.76%' + '2,398.76%' >>> format_percent(229291.1234, locale='pt_BR', group_separator=False) - u'22929112%' + '22929112%' >>> format_percent(229291.1234, locale='pt_BR', group_separator=True) - u'22.929.112%' + '22.929.112%' :param number: the percent number to format :param format: @@ -954,7 +1005,10 @@ def format_percent( format = locale.percent_formats[None] pattern = parse_pattern(format) return pattern.apply( - number, locale, decimal_quantization=decimal_quantization, group_separator=group_separator, + number, + locale, + decimal_quantization=decimal_quantization, + group_separator=group_separator, numbering_system=numbering_system, ) @@ -970,23 +1024,23 @@ def format_scientific( """Return value formatted in scientific notation for a specific locale. >>> format_scientific(10000, locale='en_US') - u'1E4' + '1E4' >>> format_scientific(10000, locale='ar_EG', numbering_system='default') - u'1أس4' + '1أس4' The format pattern can also be specified explicitly: - >>> format_scientific(1234567, u'##0.##E00', locale='en_US') - u'1.23E06' + >>> format_scientific(1234567, '##0.##E00', locale='en_US') + '1.23E06' By default the locale is allowed to truncate and round a high-precision number by forcing its format pattern onto the decimal part. You can bypass this behavior with the `decimal_quantization` parameter: - >>> format_scientific(1234.9876, u'#.##E0', locale='en_US') - u'1.23E3' - >>> format_scientific(1234.9876, u'#.##E0', locale='en_US', decimal_quantization=False) - u'1.2349876E3' + >>> format_scientific(1234.9876, '#.##E0', locale='en_US') + '1.23E3' + >>> format_scientific(1234.9876, '#.##E0', locale='en_US', decimal_quantization=False) + '1.2349876E3' :param number: the number to format :param format: @@ -1002,7 +1056,11 @@ def format_scientific( format = locale.scientific_formats[None] pattern = parse_pattern(format) return pattern.apply( - number, locale, decimal_quantization=decimal_quantization, numbering_system=numbering_system) + number, + locale, + decimal_quantization=decimal_quantization, + numbering_system=numbering_system, + ) class NumberFormatError(ValueError): @@ -1054,9 +1112,12 @@ def parse_number( group_symbol = get_group_symbol(locale, numbering_system=numbering_system) if ( - group_symbol in SPACE_CHARS and # if the grouping symbol is a kind of space, - group_symbol not in string and # and the string to be parsed does not contain it, - SPACE_CHARS_RE.search(string) # but it does contain any other kind of space instead, + # if the grouping symbol is a kind of space, + group_symbol in SPACE_CHARS + # and the string to be parsed does not contain it, + and group_symbol not in string + # but it does contain any other kind of space instead, + and SPACE_CHARS_RE.search(string) ): # ... it's reasonable to assume it is taking the place of the grouping symbol. string = SPACE_CHARS_RE.sub(group_symbol, string) @@ -1120,24 +1181,30 @@ def parse_decimal( decimal_symbol = get_decimal_symbol(locale, numbering_system=numbering_system) if not strict and ( - group_symbol in SPACE_CHARS and # if the grouping symbol is a kind of space, - group_symbol not in string and # and the string to be parsed does not contain it, - SPACE_CHARS_RE.search(string) # but it does contain any other kind of space instead, + group_symbol in SPACE_CHARS # if the grouping symbol is a kind of space, + and group_symbol not in string # and the string to be parsed does not contain it, + # but it does contain any other kind of space instead, + and SPACE_CHARS_RE.search(string) ): # ... it's reasonable to assume it is taking the place of the grouping symbol. string = SPACE_CHARS_RE.sub(group_symbol, string) try: - parsed = decimal.Decimal(string.replace(group_symbol, '') - .replace(decimal_symbol, '.')) + parsed = decimal.Decimal(string.replace(group_symbol, '').replace(decimal_symbol, '.')) except decimal.InvalidOperation as exc: raise NumberFormatError(f"{string!r} is not a valid decimal number") from exc if strict and group_symbol in string: - proper = format_decimal(parsed, locale=locale, decimal_quantization=False, numbering_system=numbering_system) - if string != proper and proper != _remove_trailing_zeros_after_decimal(string, decimal_symbol): + proper = format_decimal( + parsed, + locale=locale, + decimal_quantization=False, + numbering_system=numbering_system, + ) + if string != proper and proper != _remove_trailing_zeros_after_decimal(string, decimal_symbol): # fmt: skip try: - parsed_alt = decimal.Decimal(string.replace(decimal_symbol, '') - .replace(group_symbol, '.')) + parsed_alt = decimal.Decimal( + string.replace(decimal_symbol, '').replace(group_symbol, '.'), + ) except decimal.InvalidOperation as exc: raise NumberFormatError( f"{string!r} is not a properly formatted decimal number. " @@ -1201,14 +1268,11 @@ def _remove_trailing_zeros_after_decimal(string: str, decimal_symbol: str) -> st return string -PREFIX_END = r'[^0-9@#.,]' -NUMBER_TOKEN = r'[0-9@#.,E+]' - -PREFIX_PATTERN = r"(?P(?:'[^']*'|%s)*)" % PREFIX_END -NUMBER_PATTERN = r"(?P%s*)" % NUMBER_TOKEN -SUFFIX_PATTERN = r"(?P.*)" - -number_re = re.compile(f"{PREFIX_PATTERN}{NUMBER_PATTERN}{SUFFIX_PATTERN}") +_number_pattern_re = re.compile( + r"(?P(?:[^'0-9@#.,]|'[^']*')*)" + r"(?P[0-9@#.,E+]*)" + r"(?P.*)", +) def parse_grouping(p: str) -> tuple[int, int]: @@ -1226,7 +1290,7 @@ def parse_grouping(p: str) -> tuple[int, int]: if g1 == -1: return 1000, 1000 g1 = width - g1 - 1 - g2 = p[:-g1 - 1].rfind(',') + g2 = p[: -g1 - 1].rfind(',') if g2 == -1: return g1, g1 g2 = width - g1 - g2 - 2 @@ -1239,7 +1303,7 @@ def parse_pattern(pattern: NumberPattern | str) -> NumberPattern: return pattern def _match_number(pattern): - rv = number_re.search(pattern) + rv = _number_pattern_re.search(pattern) if rv is None: raise ValueError(f"Invalid number pattern {pattern!r}") return rv.groups() @@ -1292,14 +1356,20 @@ def parse_precision(p): exp_plus = None exp_prec = None grouping = parse_grouping(integer) - return NumberPattern(pattern, (pos_prefix, neg_prefix), - (pos_suffix, neg_suffix), grouping, - int_prec, frac_prec, - exp_prec, exp_plus, number) + return NumberPattern( + pattern, + (pos_prefix, neg_prefix), + (pos_suffix, neg_suffix), + grouping, + int_prec, + frac_prec, + exp_prec, + exp_plus, + number, + ) class NumberPattern: - def __init__( self, pattern: str, @@ -1348,8 +1418,7 @@ def scientific_notation_elements( *, numbering_system: Literal["default"] | str = "latn", ) -> tuple[decimal.Decimal, int, str]: - """ Returns normalized scientific notation components of a value. - """ + """Returns normalized scientific notation components of a value.""" # Normalize value to only have one lead digit. exp = value.adjusted() value = value * get_decimal_quantum(exp) @@ -1426,7 +1495,11 @@ def apply( # Prepare scientific notation metadata. if self.exp_prec: - value, exp, exp_sign = self.scientific_notation_elements(value, locale, numbering_system=numbering_system) + value, exp, exp_sign = self.scientific_notation_elements( + value, + locale, + numbering_system=numbering_system, + ) # Adjust the precision of the fractional part and force it to the # currency's if necessary. @@ -1439,7 +1512,7 @@ def apply( ) frac_prec = force_frac elif currency and currency_digits: - frac_prec = (get_currency_precision(currency), ) * 2 + frac_prec = (get_currency_precision(currency),) * 2 else: frac_prec = self.frac_prec @@ -1459,13 +1532,11 @@ def apply( get_exponential_symbol(locale, numbering_system=numbering_system), exp_sign, # type: ignore # exp_sign is always defined here self._format_int(str(exp), self.exp_prec[0], self.exp_prec[1], locale, numbering_system=numbering_system), # type: ignore # exp is always defined here - ]) + ]) # fmt: skip # Is it a significant digits pattern? elif '@' in self.pattern: - text = self._format_significant(value, - self.int_prec[0], - self.int_prec[1]) + text = self._format_significant(value, self.int_prec[0], self.int_prec[1]) a, sep, b = text.partition(".") number = self._format_int(a, 0, 1000, locale, numbering_system=numbering_system) if sep: @@ -1473,12 +1544,21 @@ def apply( # A normal number pattern. else: - number = self._quantize_value(value, locale, frac_prec, group_separator, numbering_system=numbering_system) + number = self._quantize_value( + value, + locale, + frac_prec, + group_separator, + numbering_system=numbering_system, + ) - retval = ''.join([ - self.prefix[is_negative], - number if self.number_pattern != '' else '', - self.suffix[is_negative]]) + retval = ''.join( + ( + self.prefix[is_negative], + number if self.number_pattern != '' else '', + self.suffix[is_negative], + ), + ) if '¤' in retval and currency is not None: retval = retval.replace('¤¤¤', get_currency_name(currency, value, locale)) @@ -1568,8 +1648,19 @@ def _quantize_value( a, sep, b = f"{rounded:f}".partition(".") integer_part = a if group_separator: - integer_part = self._format_int(a, self.int_prec[0], self.int_prec[1], locale, numbering_system=numbering_system) - number = integer_part + self._format_frac(b or '0', locale=locale, force_frac=frac_prec, numbering_system=numbering_system) + integer_part = self._format_int( + a, + self.int_prec[0], + self.int_prec[1], + locale, + numbering_system=numbering_system, + ) + number = integer_part + self._format_frac( + b or '0', + locale=locale, + force_frac=frac_prec, + numbering_system=numbering_system, + ) return number def _format_frac( @@ -1582,7 +1673,7 @@ def _format_frac( ) -> str: min, max = force_frac or self.frac_prec if len(value) < min: - value += ('0' * (min - len(value))) + value += '0' * (min - len(value)) if max == 0 or (min == 0 and int(value) == 0): return '' while len(value) > min and value[-1] == '0': diff --git a/addons/source-python/packages/site-packages/babel/plural.py b/addons/source-python/packages/site-packages/babel/plural.py index 085209e9d..90aa4952d 100644 --- a/addons/source-python/packages/site-packages/babel/plural.py +++ b/addons/source-python/packages/site-packages/babel/plural.py @@ -1,12 +1,13 @@ """ - babel.numbers - ~~~~~~~~~~~~~ +babel.numbers +~~~~~~~~~~~~~ - CLDR Plural support. See UTS #35. +CLDR Plural support. See UTS #35. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import decimal @@ -18,7 +19,9 @@ _fallback_tag = 'other' -def extract_operands(source: float | decimal.Decimal) -> tuple[decimal.Decimal | int, int, int, int, int, int, Literal[0], Literal[0]]: +def extract_operands( + source: float | decimal.Decimal, +) -> tuple[decimal.Decimal | int, int, int, int, int, int, Literal[0], Literal[0]]: """Extract operands from a decimal, a float or an int, according to `CLDR rules`_. The result is an 8-tuple (n, i, v, w, f, t, c, e), where those symbols are as follows: @@ -124,11 +127,14 @@ def __init__(self, rules: Mapping[str, str] | Iterable[tuple[str, str]]) -> None def __repr__(self) -> str: rules = self.rules - args = ", ".join([f"{tag}: {rules[tag]}" for tag in _plural_tags if tag in rules]) + args = ", ".join(f"{tag}: {rules[tag]}" for tag in _plural_tags if tag in rules) return f"<{type(self).__name__} {args!r}>" @classmethod - def parse(cls, rules: Mapping[str, str] | Iterable[tuple[str, str]] | PluralRule) -> PluralRule: + def parse( + cls, + rules: Mapping[str, str] | Iterable[tuple[str, str]] | PluralRule, + ) -> PluralRule: """Create a `PluralRule` instance for the given rules. If the rules are a `PluralRule` object, that object is returned. @@ -193,7 +199,9 @@ def to_javascript(rule: Mapping[str, str] | Iterable[tuple[str, str]] | PluralRu return ''.join(result) -def to_python(rule: Mapping[str, str] | Iterable[tuple[str, str]] | PluralRule) -> Callable[[float | decimal.Decimal], str]: +def to_python( + rule: Mapping[str, str] | Iterable[tuple[str, str]] | PluralRule, +) -> Callable[[float | decimal.Decimal], str]: """Convert a list/dict of rules or a `PluralRule` object into a regular Python function. This is useful in situations where you need a real function and don't are about the actual rule object: @@ -256,7 +264,10 @@ def to_gettext(rule: Mapping[str, str] | Iterable[tuple[str, str]] | PluralRule) return ''.join(result) -def in_range_list(num: float | decimal.Decimal, range_list: Iterable[Iterable[float | decimal.Decimal]]) -> bool: +def in_range_list( + num: float | decimal.Decimal, + range_list: Iterable[Iterable[float | decimal.Decimal]], +) -> bool: """Integer range list test. This is the callback for the "in" operator of the UTS #35 pluralization rule language: @@ -276,7 +287,10 @@ def in_range_list(num: float | decimal.Decimal, range_list: Iterable[Iterable[fl return num == int(num) and within_range_list(num, range_list) -def within_range_list(num: float | decimal.Decimal, range_list: Iterable[Iterable[float | decimal.Decimal]]) -> bool: +def within_range_list( + num: float | decimal.Decimal, + range_list: Iterable[Iterable[float | decimal.Decimal]], +) -> bool: """Float range test. This is the callback for the "within" operator of the UTS #35 pluralization rule language: @@ -336,7 +350,7 @@ class RuleError(Exception): _RULES: list[tuple[str | None, re.Pattern[str]]] = [ (None, re.compile(r'\s+', re.UNICODE)), - ('word', re.compile(fr'\b(and|or|is|(?:with)?in|not|mod|[{"".join(_VARS)}])\b')), + ('word', re.compile(rf'\b(and|or|is|(?:with)?in|not|mod|[{"".join(_VARS)}])\b')), ('value', re.compile(r'\d+')), ('symbol', re.compile(r'%|,|!=|=')), ('ellipsis', re.compile(r'\.{2,3}|\u2026', re.UNICODE)), # U+2026: ELLIPSIS @@ -366,8 +380,7 @@ def test_next_token( type_: str, value: str | None = None, ) -> list[tuple[str, str]] | bool: - return tokens and tokens[-1][0] == type_ and \ - (value is None or tokens[-1][1] == value) + return tokens and tokens[-1][0] == type_ and (value is None or tokens[-1][1] == value) def skip_token(tokens: list[tuple[str, str]], type_: str, value: str | None = None): @@ -376,7 +389,7 @@ def skip_token(tokens: list[tuple[str, str]], type_: str, value: str | None = No def value_node(value: int) -> tuple[Literal['value'], tuple[int]]: - return 'value', (value, ) + return 'value', (value,) def ident_node(name: str) -> tuple[str, tuple[()]]: @@ -463,8 +476,8 @@ def and_condition(self): def relation(self): left = self.expr() if skip_token(self.tokens, 'word', 'is'): - return skip_token(self.tokens, 'word', 'not') and 'isnot' or 'is', \ - (left, self.value()) + op = 'isnot' if skip_token(self.tokens, 'word', 'not') else 'is' + return op, (left, self.value()) negated = skip_token(self.tokens, 'word', 'not') method = 'in' if skip_token(self.tokens, 'word', 'within'): @@ -566,7 +579,9 @@ class _PythonCompiler(_Compiler): compile_mod = _binary_compiler('MOD(%s, %s)') def compile_relation(self, method, expr, range_list): - ranges = ",".join([f"({self.compile(a)}, {self.compile(b)})" for (a, b) in range_list[1]]) + ranges = ",".join( + f"({self.compile(a)}, {self.compile(b)})" for (a, b) in range_list[1] + ) return f"{method.upper()}({self.compile(expr)}, [{ranges}])" @@ -586,7 +601,8 @@ def compile_relation(self, method, expr, range_list): if item[0] == item[1]: rv.append(f"({expr} == {self.compile(item[0])})") else: - min, max = map(self.compile, item) + min = self.compile(item[0]) + max = self.compile(item[1]) rv.append(f"({expr} >= {min} && {expr} <= {max})") return f"({' || '.join(rv)})" @@ -603,8 +619,7 @@ class _JavaScriptCompiler(_GettextCompiler): compile_t = compile_zero def compile_relation(self, method, expr, range_list): - code = _GettextCompiler.compile_relation( - self, method, expr, range_list) + code = _GettextCompiler.compile_relation(self, method, expr, range_list) if method == 'in': expr = self.compile(expr) code = f"(parseInt({expr}, 10) == {expr} && {code})" diff --git a/addons/source-python/packages/site-packages/babel/support.py b/addons/source-python/packages/site-packages/babel/support.py index b600bfe27..8cc2492e8 100644 --- a/addons/source-python/packages/site-packages/babel/support.py +++ b/addons/source-python/packages/site-packages/babel/support.py @@ -1,15 +1,16 @@ """ - babel.support - ~~~~~~~~~~~~~ +babel.support +~~~~~~~~~~~~~ - Several classes and functions that help with integrating and using Babel - in applications. +Several classes and functions that help with integrating and using Babel +in applications. - .. note: the code in this module is not used by Babel itself +.. note: the code in this module is not used by Babel itself - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import gettext @@ -44,9 +45,9 @@ class Format: >>> from datetime import date >>> fmt = Format('en_US', UTC) >>> fmt.date(date(2007, 4, 1)) - u'Apr 1, 2007' + 'Apr 1, 2007' >>> fmt.decimal(1.2345) - u'1.234' + '1.234' """ def __init__( @@ -77,7 +78,7 @@ def date( >>> from datetime import date >>> fmt = Format('en_US') >>> fmt.date(date(2007, 4, 1)) - u'Apr 1, 2007' + 'Apr 1, 2007' """ return format_date(date, format, locale=self.locale) @@ -92,7 +93,7 @@ def datetime( >>> from babel.dates import get_timezone >>> fmt = Format('en_US', tzinfo=get_timezone('US/Eastern')) >>> fmt.datetime(datetime(2007, 4, 1, 15, 30)) - u'Apr 1, 2007, 11:30:00\u202fAM' + 'Apr 1, 2007, 11:30:00\\u202fAM' """ return format_datetime(datetime, format, tzinfo=self.tzinfo, locale=self.locale) @@ -107,14 +108,22 @@ def time( >>> from babel.dates import get_timezone >>> fmt = Format('en_US', tzinfo=get_timezone('US/Eastern')) >>> fmt.time(datetime(2007, 4, 1, 15, 30)) - u'11:30:00\u202fAM' + '11:30:00\\u202fAM' """ return format_time(time, format, tzinfo=self.tzinfo, locale=self.locale) def timedelta( self, delta: _datetime.timedelta | int, - granularity: Literal["year", "month", "week", "day", "hour", "minute", "second"] = "second", + granularity: Literal[ + "year", + "month", + "week", + "day", + "hour", + "minute", + "second", + ] = "second", threshold: float = 0.85, format: Literal["narrow", "short", "medium", "long"] = "long", add_direction: bool = False, @@ -124,30 +133,43 @@ def timedelta( >>> from datetime import timedelta >>> fmt = Format('en_US') >>> fmt.timedelta(timedelta(weeks=11)) - u'3 months' - """ - return format_timedelta(delta, granularity=granularity, - threshold=threshold, - format=format, add_direction=add_direction, - locale=self.locale) + '3 months' + """ + return format_timedelta( + delta, + granularity=granularity, + threshold=threshold, + format=format, + add_direction=add_direction, + locale=self.locale, + ) def number(self, number: float | Decimal | str) -> str: """Return an integer number formatted for the locale. >>> fmt = Format('en_US') >>> fmt.number(1099) - u'1,099' + '1,099' """ - return format_decimal(number, locale=self.locale, numbering_system=self.numbering_system) + return format_decimal( + number, + locale=self.locale, + numbering_system=self.numbering_system, + ) def decimal(self, number: float | Decimal | str, format: str | None = None) -> str: """Return a decimal number formatted for the locale. >>> fmt = Format('en_US') >>> fmt.decimal(1.2345) - u'1.234' + '1.234' """ - return format_decimal(number, format, locale=self.locale, numbering_system=self.numbering_system) + return format_decimal( + number, + format, + locale=self.locale, + numbering_system=self.numbering_system, + ) def compact_decimal( self, @@ -159,7 +181,7 @@ def compact_decimal( >>> fmt = Format('en_US') >>> fmt.compact_decimal(123456789) - u'123M' + '123M' >>> fmt.compact_decimal(1234567, format_type='long', fraction_digits=2) '1.23 million' """ @@ -172,9 +194,13 @@ def compact_decimal( ) def currency(self, number: float | Decimal | str, currency: str) -> str: - """Return a number in the given currency formatted for the locale. - """ - return format_currency(number, currency, locale=self.locale, numbering_system=self.numbering_system) + """Return a number in the given currency formatted for the locale.""" + return format_currency( + number, + currency, + locale=self.locale, + numbering_system=self.numbering_system, + ) def compact_currency( self, @@ -189,22 +215,36 @@ def compact_currency( >>> Format('en_US').compact_currency(1234567, "USD", format_type='short', fraction_digits=2) '$1.23M' """ - return format_compact_currency(number, currency, format_type=format_type, fraction_digits=fraction_digits, - locale=self.locale, numbering_system=self.numbering_system) + return format_compact_currency( + number, + currency, + format_type=format_type, + fraction_digits=fraction_digits, + locale=self.locale, + numbering_system=self.numbering_system, + ) def percent(self, number: float | Decimal | str, format: str | None = None) -> str: """Return a number formatted as percentage for the locale. >>> fmt = Format('en_US') >>> fmt.percent(0.34) - u'34%' + '34%' """ - return format_percent(number, format, locale=self.locale, numbering_system=self.numbering_system) + return format_percent( + number, + format, + locale=self.locale, + numbering_system=self.numbering_system, + ) def scientific(self, number: float | Decimal | str) -> str: - """Return a number formatted using scientific notation for the locale. - """ - return format_scientific(number, locale=self.locale, numbering_system=self.numbering_system) + """Return a number formatted using scientific notation for the locale.""" + return format_scientific( + number, + locale=self.locale, + numbering_system=self.numbering_system, + ) class LazyProxy: @@ -216,10 +256,10 @@ class LazyProxy: >>> lazy_greeting = LazyProxy(greeting, name='Joe') >>> print(lazy_greeting) Hello, Joe! - >>> u' ' + lazy_greeting - u' Hello, Joe!' - >>> u'(%s)' % lazy_greeting - u'(Hello, Joe!)' + >>> ' ' + lazy_greeting + ' Hello, Joe!' + >>> '(%s)' % lazy_greeting + '(Hello, Joe!)' This can be used, for example, to implement lazy translation functions that delay the actual translation until the string is actually used. The @@ -242,7 +282,15 @@ class LazyProxy: Hello, universe! Hello, world! """ - __slots__ = ['_func', '_args', '_kwargs', '_value', '_is_cache_enabled', '_attribute_error'] + + __slots__ = [ + '_func', + '_args', + '_kwargs', + '_value', + '_is_cache_enabled', + '_attribute_error', + ] if TYPE_CHECKING: _func: Callable[..., Any] @@ -252,7 +300,13 @@ class LazyProxy: _value: Any _attribute_error: AttributeError | None - def __init__(self, func: Callable[..., Any], *args: Any, enable_cache: bool = True, **kwargs: Any) -> None: + def __init__( + self, + func: Callable[..., Any], + *args: Any, + enable_cache: bool = True, + **kwargs: Any, + ) -> None: # Avoid triggering our own __setattr__ implementation object.__setattr__(self, '_func', func) object.__setattr__(self, '_args', args) @@ -362,6 +416,7 @@ def __copy__(self) -> LazyProxy: def __deepcopy__(self, memo: Any) -> LazyProxy: from copy import deepcopy + return LazyProxy( deepcopy(self._func, memo), enable_cache=deepcopy(self._is_cache_enabled, memo), @@ -371,7 +426,6 @@ def __deepcopy__(self, memo: Any) -> LazyProxy: class NullTranslations(gettext.NullTranslations): - if TYPE_CHECKING: _info: dict[str, str] _fallback: NullTranslations | None @@ -406,6 +460,7 @@ def ldgettext(self, domain: str, message: str) -> str: domain. """ import warnings + warnings.warn( 'ldgettext() is deprecated, use dgettext() instead', DeprecationWarning, @@ -418,6 +473,7 @@ def udgettext(self, domain: str, message: str) -> str: domain. """ return self._domains.get(domain, self).ugettext(message) + # backward compatibility with 0.9 dugettext = udgettext @@ -432,6 +488,7 @@ def ldngettext(self, domain: str, singular: str, plural: str, num: int) -> str: domain. """ import warnings + warnings.warn( 'ldngettext() is deprecated, use dngettext() instead', DeprecationWarning, @@ -444,6 +501,7 @@ def udngettext(self, domain: str, singular: str, plural: str, num: int) -> str: domain. """ return self._domains.get(domain, self).ungettext(singular, plural, num) + # backward compatibility with 0.9 dungettext = udngettext @@ -479,6 +537,7 @@ def lpgettext(self, context: str, message: str) -> str | bytes | object: ``bind_textdomain_codeset()``. """ import warnings + warnings.warn( 'lpgettext() is deprecated, use pgettext() instead', DeprecationWarning, @@ -517,6 +576,7 @@ def lnpgettext(self, context: str, singular: str, plural: str, num: int) -> str ``bind_textdomain_codeset()``. """ import warnings + warnings.warn( 'lnpgettext() is deprecated, use npgettext() instead', DeprecationWarning, @@ -583,6 +643,7 @@ def udpgettext(self, domain: str, context: str, message: str) -> str: `domain`. """ return self._domains.get(domain, self).upgettext(context, message) + # backward compatibility with 0.9 dupgettext = udpgettext @@ -593,29 +654,34 @@ def ldpgettext(self, domain: str, context: str, message: str) -> str | bytes | o """ return self._domains.get(domain, self).lpgettext(context, message) - def dnpgettext(self, domain: str, context: str, singular: str, plural: str, num: int) -> str: + def dnpgettext(self, domain: str, context: str, singular: str, plural: str, num: int) -> str: # fmt: skip """Like ``npgettext``, but look the message up in the specified `domain`. """ - return self._domains.get(domain, self).npgettext(context, singular, - plural, num) + return self._domains.get(domain, self).npgettext(context, singular, plural, num) - def udnpgettext(self, domain: str, context: str, singular: str, plural: str, num: int) -> str: + def udnpgettext(self, domain: str, context: str, singular: str, plural: str, num: int) -> str: # fmt: skip """Like ``unpgettext``, but look the message up in the specified `domain`. """ - return self._domains.get(domain, self).unpgettext(context, singular, - plural, num) + return self._domains.get(domain, self).unpgettext(context, singular, plural, num) + # backward compatibility with 0.9 dunpgettext = udnpgettext - def ldnpgettext(self, domain: str, context: str, singular: str, plural: str, num: int) -> str | bytes: + def ldnpgettext( + self, + domain: str, + context: str, + singular: str, + plural: str, + num: int, + ) -> str | bytes: """Equivalent to ``dnpgettext()``, but the translation is returned in the preferred system encoding, if no other encoding was explicitly set with ``bind_textdomain_codeset()``. """ - return self._domains.get(domain, self).lnpgettext(context, singular, - plural, num) + return self._domains.get(domain, self).lnpgettext(context, singular, plural, num) ugettext = gettext.NullTranslations.gettext ungettext = gettext.NullTranslations.ngettext @@ -626,7 +692,11 @@ class Translations(NullTranslations, gettext.GNUTranslations): DEFAULT_DOMAIN = 'messages' - def __init__(self, fp: gettext._TranslationsReader | None = None, domain: str | None = None): + def __init__( + self, + fp: gettext._TranslationsReader | None = None, + domain: str | None = None, + ): """Initialize the translations catalog. :param fp: the file-like object the translation should be read from diff --git a/addons/source-python/packages/site-packages/babel/units.py b/addons/source-python/packages/site-packages/babel/units.py index 86ac2abc9..88ebb909c 100644 --- a/addons/source-python/packages/site-packages/babel/units.py +++ b/addons/source-python/packages/site-packages/babel/units.py @@ -87,32 +87,32 @@ def format_unit( and number formats. >>> format_unit(12, 'length-meter', locale='ro_RO') - u'12 metri' + '12 metri' >>> format_unit(15.5, 'length-mile', locale='fi_FI') - u'15,5 mailia' + '15,5 mailia' >>> format_unit(1200, 'pressure-millimeter-ofhg', locale='nb') - u'1\\xa0200 millimeter kvikks\\xf8lv' + '1\\xa0200 millimeter kvikks\\xf8lv' >>> format_unit(270, 'ton', locale='en') - u'270 tons' + '270 tons' >>> format_unit(1234.5, 'kilogram', locale='ar_EG', numbering_system='default') - u'1٬234٫5 كيلوغرام' + '1٬234٫5 كيلوغرام' Number formats may be overridden with the ``format`` parameter. >>> import decimal >>> format_unit(decimal.Decimal("-42.774"), 'temperature-celsius', 'short', format='#.0', locale='fr') - u'-42,8\\u202f\\xb0C' + '-42,8\\u202f\\xb0C' The locale's usual pluralization rules are respected. >>> format_unit(1, 'length-meter', locale='ro_RO') - u'1 metru' + '1 metru' >>> format_unit(0, 'length-mile', locale='cy') - u'0 mi' + '0 mi' >>> format_unit(1, 'length-mile', locale='cy') - u'1 filltir' + '1 filltir' >>> format_unit(3, 'length-mile', locale='cy') - u'3 milltir' + '3 milltir' >>> format_unit(15, 'length-horse', locale='fi') Traceback (most recent call last): @@ -143,7 +143,12 @@ def format_unit( formatted_value = value plural_form = "one" else: - formatted_value = format_decimal(value, format, locale, numbering_system=numbering_system) + formatted_value = format_decimal( + value, + format, + locale, + numbering_system=numbering_system, + ) plural_form = locale.plural_form(value) if plural_form in unit_patterns: @@ -151,7 +156,11 @@ def format_unit( # Fall back to a somewhat bad representation. # nb: This is marked as no-cover, as the current CLDR seemingly has no way for this to happen. - fallback_name = get_unit_name(measurement_unit, length=length, locale=locale) # pragma: no cover + fallback_name = get_unit_name( # pragma: no cover + measurement_unit, + length=length, + locale=locale, + ) return f"{formatted_value} {fallback_name or measurement_unit}" # pragma: no cover @@ -204,7 +213,10 @@ def _find_compound_unit( # Now we can try and rebuild a compound unit specifier, then qualify it: - return _find_unit_pattern(f"{bare_numerator_unit}-per-{bare_denominator_unit}", locale=locale) + return _find_unit_pattern( + f"{bare_numerator_unit}-per-{bare_denominator_unit}", + locale=locale, + ) def format_compound_unit( @@ -310,7 +322,12 @@ def format_compound_unit( elif denominator_unit: # Denominator has unit if denominator_value == 1: # support perUnitPatterns when the denominator is 1 denominator_unit = _find_unit_pattern(denominator_unit, locale=locale) - per_pattern = locale._data["unit_patterns"].get(denominator_unit, {}).get(length, {}).get("per") + per_pattern = ( + locale._data["unit_patterns"] + .get(denominator_unit, {}) + .get(length, {}) + .get("per") + ) if per_pattern: return per_pattern.format(formatted_numerator) # See TR-35's per-unit pattern algorithm, point 3.2. @@ -335,6 +352,11 @@ def format_compound_unit( ) # TODO: this doesn't support "compound_variations" (or "prefix"), and will fall back to the "x/y" representation - per_pattern = locale._data["compound_unit_patterns"].get("per", {}).get(length, {}).get("compound", "{0}/{1}") + per_pattern = ( + locale._data["compound_unit_patterns"] + .get("per", {}) + .get(length, {}) + .get("compound", "{0}/{1}") + ) return per_pattern.format(formatted_numerator, formatted_denominator) diff --git a/addons/source-python/packages/site-packages/babel/util.py b/addons/source-python/packages/site-packages/babel/util.py index d113982ee..a2bf728cc 100644 --- a/addons/source-python/packages/site-packages/babel/util.py +++ b/addons/source-python/packages/site-packages/babel/util.py @@ -1,12 +1,13 @@ """ - babel.util - ~~~~~~~~~~ +babel.util +~~~~~~~~~~ - Various utility classes and functions. +Various utility classes and functions. - :copyright: (c) 2013-2025 by the Babel Team. - :license: BSD, see LICENSE for more details. +:copyright: (c) 2013-2026 by the Babel Team. +:license: BSD, see LICENSE for more details. """ + from __future__ import annotations import codecs @@ -47,7 +48,9 @@ def distinct(iterable: Iterable[_T]) -> Generator[_T, None, None]: # Regexp to match python magic encoding line PYTHON_MAGIC_COMMENT_re = re.compile( - br'[ \t\f]* \# .* coding[=:][ \t]*([-\w.]+)', re.VERBOSE) + rb'[ \t\f]* \# .* coding[=:][ \t]*([-\w.]+)', + flags=re.VERBOSE, +) def parse_encoding(fp: IO[bytes]) -> str | None: @@ -67,12 +70,13 @@ def parse_encoding(fp: IO[bytes]) -> str | None: line1 = fp.readline() has_bom = line1.startswith(codecs.BOM_UTF8) if has_bom: - line1 = line1[len(codecs.BOM_UTF8):] + line1 = line1[len(codecs.BOM_UTF8) :] m = PYTHON_MAGIC_COMMENT_re.match(line1) if not m: try: import ast + ast.parse(line1.decode('latin-1')) except (ImportError, SyntaxError, UnicodeEncodeError): # Either it's a real syntax error, in which case the source is @@ -98,8 +102,7 @@ def parse_encoding(fp: IO[bytes]) -> str | None: fp.seek(pos) -PYTHON_FUTURE_IMPORT_re = re.compile( - r'from\s+__future__\s+import\s+\(*(.+)\)*') +PYTHON_FUTURE_IMPORT_re = re.compile(r'from\s+__future__\s+import\s+\(*(.+)\)*') def parse_future_flags(fp: IO[bytes], encoding: str = 'latin-1') -> int: @@ -107,6 +110,7 @@ def parse_future_flags(fp: IO[bytes], encoding: str = 'latin-1') -> int: code. """ import __future__ + pos = fp.tell() fp.seek(0) flags = 0 @@ -201,8 +205,8 @@ def pathmatch(pattern: str, filename: str) -> bool: class TextWrapper(textwrap.TextWrapper): wordsep_re = re.compile( - r'(\s+|' # any whitespace - r'(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w))', # em-dash + r'(\s+|' # any whitespace + r'(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w))', # em-dash ) # e.g. '\u2068foo bar.py\u2069:42' @@ -226,7 +230,12 @@ def _split(self, text): return [c for c in chunks if c] -def wraptext(text: str, width: int = 70, initial_indent: str = '', subsequent_indent: str = '') -> list[str]: +def wraptext( + text: str, + width: int = 70, + initial_indent: str = '', + subsequent_indent: str = '', +) -> list[str]: """Simple wrapper around the ``textwrap.wrap`` function in the standard library. This version does not wrap lines on hyphens in words. It also does not wrap PO file locations containing spaces. @@ -244,10 +253,12 @@ def wraptext(text: str, width: int = 70, initial_indent: str = '', subsequent_in DeprecationWarning, stacklevel=2, ) - wrapper = TextWrapper(width=width, initial_indent=initial_indent, - subsequent_indent=subsequent_indent, - break_long_words=False) - return wrapper.wrap(text) + return TextWrapper( + width=width, + initial_indent=initial_indent, + subsequent_indent=subsequent_indent, + break_long_words=False, + ).wrap(text) # TODO (Babel 3.x): Remove this re-export @@ -255,10 +266,21 @@ def wraptext(text: str, width: int = 70, initial_indent: str = '', subsequent_in class FixedOffsetTimezone(datetime.tzinfo): - """Fixed offset in minutes east from UTC.""" + """ + Fixed offset in minutes east from UTC. - def __init__(self, offset: float, name: str | None = None) -> None: + DEPRECATED: Use the standard library `datetime.timezone` instead. + """ + # TODO (Babel 3.x): Remove this class + + def __init__(self, offset: float, name: str | None = None) -> None: + warnings.warn( + "`FixedOffsetTimezone` is deprecated and will be removed in a future version of Babel. " + "Use the standard library `datetime.timezone` class.", + DeprecationWarning, + stacklevel=2, + ) self._offset = datetime.timedelta(minutes=offset) if name is None: name = 'Etc/GMT%+d' % offset diff --git a/addons/source-python/packages/site-packages/certifi/__init__.py b/addons/source-python/packages/site-packages/certifi/__init__.py index 177082e0f..16c0c7c26 100644 --- a/addons/source-python/packages/site-packages/certifi/__init__.py +++ b/addons/source-python/packages/site-packages/certifi/__init__.py @@ -1,4 +1,4 @@ from .core import contents, where __all__ = ["contents", "where"] -__version__ = "2025.01.31" +__version__ = "2026.02.25" diff --git a/addons/source-python/packages/site-packages/certifi/cacert.pem b/addons/source-python/packages/site-packages/certifi/cacert.pem index 860f259bd..5ec1afe02 100644 --- a/addons/source-python/packages/site-packages/certifi/cacert.pem +++ b/addons/source-python/packages/site-packages/certifi/cacert.pem @@ -1,163 +1,4 @@ -# Issuer: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA -# Subject: CN=GlobalSign Root CA O=GlobalSign nv-sa OU=Root CA -# Label: "GlobalSign Root CA" -# Serial: 4835703278459707669005204 -# MD5 Fingerprint: 3e:45:52:15:09:51:92:e1:b7:5d:37:9f:b1:87:29:8a -# SHA1 Fingerprint: b1:bc:96:8b:d4:f4:9d:62:2a:a8:9a:81:f2:15:01:52:a4:1d:82:9c -# SHA256 Fingerprint: eb:d4:10:40:e4:bb:3e:c7:42:c9:e3:81:d3:1e:f2:a4:1a:48:b6:68:5c:96:e7:ce:f3:c1:df:6c:d4:33:1c:99 ------BEGIN CERTIFICATE----- -MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG -A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv -b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw -MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i -YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT -aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ -jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp -xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp -1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG -snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ -U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8 -9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E -BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B -AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz -yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE -38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP -AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad -DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME -HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== ------END CERTIFICATE----- - -# Issuer: CN=Entrust.net Certification Authority (2048) O=Entrust.net OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Subject: CN=Entrust.net Certification Authority (2048) O=Entrust.net OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)/(c) 1999 Entrust.net Limited -# Label: "Entrust.net Premium 2048 Secure Server CA" -# Serial: 946069240 -# MD5 Fingerprint: ee:29:31:bc:32:7e:9a:e6:e8:b5:f7:51:b4:34:71:90 -# SHA1 Fingerprint: 50:30:06:09:1d:97:d4:f5:ae:39:f7:cb:e7:92:7d:7d:65:2d:34:31 -# SHA256 Fingerprint: 6d:c4:71:72:e0:1c:bc:b0:bf:62:58:0d:89:5f:e2:b8:ac:9a:d4:f8:73:80:1e:0c:10:b9:c8:37:d2:1e:b1:77 ------BEGIN CERTIFICATE----- -MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML -RW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp -bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5 -IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRp -ZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQxNzUwNTFaFw0yOTA3 -MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3 -LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxp -YWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEG -A1UEAxMqRW50cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgp -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQq -K0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOLGp18EzoOH1u3Hs/lJBQe -sYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSrhRSGlVuX -MlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVT -XTzWnLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/ -HoZdenoVve8AjhUiVBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH -4QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV -HQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJKoZIhvcNAQEFBQADggEBADub -j1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPyT/4xmf3IDExo -U8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf -zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5b -u/8j72gZyxKTJ1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+ -bYQLCIt+jerXmCHG8+c8eS9enNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/Er -fF6adulZkMV8gzURZVE= ------END CERTIFICATE----- - -# Issuer: CN=Baltimore CyberTrust Root O=Baltimore OU=CyberTrust -# Subject: CN=Baltimore CyberTrust Root O=Baltimore OU=CyberTrust -# Label: "Baltimore CyberTrust Root" -# Serial: 33554617 -# MD5 Fingerprint: ac:b6:94:a5:9c:17:e0:d7:91:52:9b:b1:97:06:a6:e4 -# SHA1 Fingerprint: d4:de:20:d0:5e:66:fc:53:fe:1a:50:88:2c:78:db:28:52:ca:e4:74 -# SHA256 Fingerprint: 16:af:57:a9:f6:76:b0:ab:12:60:95:aa:5e:ba:de:f2:2a:b3:11:19:d6:44:ac:95:cd:4b:93:db:f3:f2:6a:eb ------BEGIN CERTIFICATE----- -MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ -RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD -VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX -DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y -ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy -VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr -mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr -IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK -mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu -XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy -dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye -jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1 -BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3 -DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92 -9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx -jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0 -Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz -ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS -R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp ------END CERTIFICATE----- - -# Issuer: CN=Entrust Root Certification Authority O=Entrust, Inc. OU=www.entrust.net/CPS is incorporated by reference/(c) 2006 Entrust, Inc. -# Subject: CN=Entrust Root Certification Authority O=Entrust, Inc. OU=www.entrust.net/CPS is incorporated by reference/(c) 2006 Entrust, Inc. -# Label: "Entrust Root Certification Authority" -# Serial: 1164660820 -# MD5 Fingerprint: d6:a5:c3:ed:5d:dd:3e:00:c1:3d:87:92:1f:1d:3f:e4 -# SHA1 Fingerprint: b3:1e:b1:b7:40:e3:6c:84:02:da:dc:37:d4:4d:f5:d4:67:49:52:f9 -# SHA256 Fingerprint: 73:c1:76:43:4f:1b:c6:d5:ad:f4:5b:0e:76:e7:27:28:7c:8d:e5:76:16:c1:e6:e6:14:1a:2b:2c:bc:7d:8e:4c ------BEGIN CERTIFICATE----- -MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMC -VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0 -Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW -KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl -cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0MloXDTI2MTEyNzIw -NTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkw -NwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSBy -ZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNV -BAMTJEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJ -KoZIhvcNAQEBBQADggEPADCCAQoCggEBALaVtkNC+sZtKm9I35RMOVcF7sN5EUFo -Nu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYszA9u3g3s+IIRe7bJWKKf4 -4LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOwwCj0Yzfv9 -KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGI -rb68j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi -94DkZfs0Nw4pgHBNrziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOB -sDCBrTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAi -gA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1MzQyWjAfBgNVHSMEGDAWgBRo -kORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DHhmak8fdLQ/uE -vW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA -A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9t -O1KzKtvn1ISMY/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6Zua -AGAT/3B+XxFNSRuzFVJ7yVTav52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP -9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTSW3iDVuycNsMm4hH2Z0kdkquM++v/ -eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0tHuu2guQOHXvgR1m -0vdXcDazv/wor3ElhVsT/h5/WrQ8 ------END CERTIFICATE----- - -# Issuer: CN=AAA Certificate Services O=Comodo CA Limited -# Subject: CN=AAA Certificate Services O=Comodo CA Limited -# Label: "Comodo AAA Services root" -# Serial: 1 -# MD5 Fingerprint: 49:79:04:b0:eb:87:19:ac:47:b0:bc:11:51:9b:74:d0 -# SHA1 Fingerprint: d1:eb:23:a4:6d:17:d6:8f:d9:25:64:c2:f1:f1:60:17:64:d8:e3:49 -# SHA256 Fingerprint: d7:a7:a0:fb:5d:7e:27:31:d7:71:e9:48:4e:bc:de:f7:1d:5f:0c:3e:0a:29:48:78:2b:c8:3e:e0:ea:69:9e:f4 ------BEGIN CERTIFICATE----- -MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb -MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow -GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj -YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL -MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE -BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM -GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP -ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua -BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe -3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4 -YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR -rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm -ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU -oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF -MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v -QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t -b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF -AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q -GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz -Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2 -G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi -l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3 -smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== ------END CERTIFICATE----- - # Issuer: CN=QuoVadis Root CA 2 O=QuoVadis Limited # Subject: CN=QuoVadis Root CA 2 O=QuoVadis Limited # Label: "QuoVadis Root CA 2" @@ -245,103 +86,6 @@ mJlglFwjz1onl14LBQaTNx47aTbrqZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK 4SVhM7JZG+Ju1zdXtg2pEto= -----END CERTIFICATE----- -# Issuer: CN=XRamp Global Certification Authority O=XRamp Security Services Inc OU=www.xrampsecurity.com -# Subject: CN=XRamp Global Certification Authority O=XRamp Security Services Inc OU=www.xrampsecurity.com -# Label: "XRamp Global CA Root" -# Serial: 107108908803651509692980124233745014957 -# MD5 Fingerprint: a1:0b:44:b3:ca:10:d8:00:6e:9d:0f:d8:0f:92:0a:d1 -# SHA1 Fingerprint: b8:01:86:d1:eb:9c:86:a5:41:04:cf:30:54:f3:4c:52:b7:e5:58:c6 -# SHA256 Fingerprint: ce:cd:dc:90:50:99:d8:da:df:c5:b1:d2:09:b7:37:cb:e2:c1:8c:fb:2c:10:c0:ff:0b:cf:0d:32:86:fc:1a:a2 ------BEGIN CERTIFICATE----- -MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCB -gjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk -MCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY -UmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQxMTAxMTcx -NDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3 -dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2Vy -dmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB -dXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS6 -38eMpSe2OAtp87ZOqCwuIR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCP -KZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMxfoArtYzAQDsRhtDLooY2YKTVMIJt2W7Q -DxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FEzG+gSqmUsE3a56k0enI4 -qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqsAxcZZPRa -JSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNVi -PvryxS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P -BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASs -jVy16bYbMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0 -eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQEwDQYJKoZIhvcNAQEFBQAD -ggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc/Kh4ZzXxHfAR -vbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt -qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLa -IR9NmXmd4c8nnxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSy -i6mx5O+aGtA9aZnuqCij4Tyz8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ -O+7ETPTsJ3xCwnR8gooJybQDJbw= ------END CERTIFICATE----- - -# Issuer: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority -# Subject: O=The Go Daddy Group, Inc. OU=Go Daddy Class 2 Certification Authority -# Label: "Go Daddy Class 2 CA" -# Serial: 0 -# MD5 Fingerprint: 91:de:06:25:ab:da:fd:32:17:0c:bb:25:17:2a:84:67 -# SHA1 Fingerprint: 27:96:ba:e6:3f:18:01:e2:77:26:1b:a0:d7:77:70:02:8f:20:ee:e4 -# SHA256 Fingerprint: c3:84:6b:f2:4b:9e:93:ca:64:27:4c:0e:c6:7c:1e:cc:5e:02:4f:fc:ac:d2:d7:40:19:35:0e:81:fe:54:6a:e4 ------BEGIN CERTIFICATE----- -MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh -MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE -YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3 -MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo -ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg -MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN -ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA -PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w -wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi -EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY -avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+ -YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE -sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h -/t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5 -IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj -YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD -ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy -OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P -TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ -HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER -dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf -ReYNnyicsbkqWletNw+vHX/bvZ8= ------END CERTIFICATE----- - -# Issuer: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority -# Subject: O=Starfield Technologies, Inc. OU=Starfield Class 2 Certification Authority -# Label: "Starfield Class 2 CA" -# Serial: 0 -# MD5 Fingerprint: 32:4a:4b:bb:c8:63:69:9b:be:74:9a:c6:dd:1d:46:24 -# SHA1 Fingerprint: ad:7e:1c:28:b0:64:ef:8f:60:03:40:20:14:c3:d0:e3:37:0e:b5:8a -# SHA256 Fingerprint: 14:65:fa:20:53:97:b8:76:fa:a6:f0:a9:95:8e:55:90:e4:0f:cc:7f:aa:4f:b7:c2:c8:67:75:21:fb:5f:b6:58 ------BEGIN CERTIFICATE----- -MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl -MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp -U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw -NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE -ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp -ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3 -DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf -8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN -+lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0 -X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa -K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA -1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G -A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR -zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0 -YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD -bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w -DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3 -L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D -eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl -xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp -VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY -WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q= ------END CERTIFICATE----- - # Issuer: CN=DigiCert Assured ID Root CA O=DigiCert Inc OU=www.digicert.com # Subject: CN=DigiCert Assured ID Root CA O=DigiCert Inc OU=www.digicert.com # Label: "DigiCert Assured ID Root CA" @@ -919,122 +663,6 @@ iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn sSi6 -----END CERTIFICATE----- -# Issuer: CN=AffirmTrust Commercial O=AffirmTrust -# Subject: CN=AffirmTrust Commercial O=AffirmTrust -# Label: "AffirmTrust Commercial" -# Serial: 8608355977964138876 -# MD5 Fingerprint: 82:92:ba:5b:ef:cd:8a:6f:a6:3d:55:f9:84:f6:d6:b7 -# SHA1 Fingerprint: f9:b5:b6:32:45:5f:9c:be:ec:57:5f:80:dc:e9:6e:2c:c7:b2:78:b7 -# SHA256 Fingerprint: 03:76:ab:1d:54:c5:f9:80:3c:e4:b2:e2:01:a0:ee:7e:ef:7b:57:b6:36:e8:a9:3c:9b:8d:48:60:c9:6f:5f:a7 ------BEGIN CERTIFICATE----- -MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UE -BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz -dCBDb21tZXJjaWFsMB4XDTEwMDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDEL -MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp -cm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6EqdbDuKP -Hx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yr -ba0F8PrVC8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL -MeIrJmqbTFeurCA+ukV6BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1 -yHp52UKqK39c/s4mT6NmgTWvRLpUHhwwMmWd5jyTXlBOeuM61G7MGvv50jeuJCqr -VwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNVHQ4EFgQUnZPGU4teyq8/ -nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ -KoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYG -XUPGhi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNj -vbz4YYCanrHOQnDiqX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivt -Z8SOyUOyXGsViQK8YvxO8rUzqrJv0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9g -N53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0khsUlHRUe072o0EclNmsxZt9YC -nlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Networking O=AffirmTrust -# Subject: CN=AffirmTrust Networking O=AffirmTrust -# Label: "AffirmTrust Networking" -# Serial: 8957382827206547757 -# MD5 Fingerprint: 42:65:ca:be:01:9a:9a:4c:a9:8c:41:49:cd:c0:d5:7f -# SHA1 Fingerprint: 29:36:21:02:8b:20:ed:02:f5:66:c5:32:d1:d6:ed:90:9f:45:00:2f -# SHA256 Fingerprint: 0a:81:ec:5a:92:97:77:f1:45:90:4a:f3:8d:5d:50:9f:66:b5:e2:c5:8f:cd:b5:31:05:8b:0e:17:f3:f0:b4:1b ------BEGIN CERTIFICATE----- -MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UE -BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz -dCBOZXR3b3JraW5nMB4XDTEwMDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDEL -MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp -cm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC -AQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SEHi3y -YJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbua -kCNrmreIdIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRL -QESxG9fhwoXA3hA/Pe24/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp -6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gbh+0t+nvujArjqWaJGctB+d1ENmHP4ndG -yH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNVHQ4EFgQUBx/S55zawm6i -QLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ -KoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfO -tDIuUFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzu -QY0x2+c06lkh1QF612S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZ -Lgo/bNjR9eUJtGxUAArgFU2HdW23WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4u -olu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9/ZFvgrG+CJPbFEfxojfHRZ48 -x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Premium O=AffirmTrust -# Subject: CN=AffirmTrust Premium O=AffirmTrust -# Label: "AffirmTrust Premium" -# Serial: 7893706540734352110 -# MD5 Fingerprint: c4:5d:0e:48:b6:ac:28:30:4e:0a:bc:f9:38:16:87:57 -# SHA1 Fingerprint: d8:a6:33:2c:e0:03:6f:b1:85:f6:63:4f:7d:6a:06:65:26:32:28:27 -# SHA256 Fingerprint: 70:a7:3f:7f:37:6b:60:07:42:48:90:45:34:b1:14:82:d5:bf:0e:69:8e:cc:49:8d:f5:25:77:eb:f2:e9:3b:9a ------BEGIN CERTIFICATE----- -MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UE -BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVz -dCBQcmVtaXVtMB4XDTEwMDEyOTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkG -A1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1U -cnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxBLf -qV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtnBKAQ -JG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ -+jjeRFcV5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrS -s8PhaJyJ+HoAVt70VZVs+7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5 -HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmdGPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d7 -70O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5Rp9EixAqnOEhss/n/fauG -V+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NIS+LI+H+S -qHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S -5u046uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4Ia -C1nEWTJ3s7xgaVY5/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX -OwF0lkLgAOIua+rF7nKsu7/+6qqo+Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYE -FJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ -BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByvMiPIs0laUZx2 -KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg -Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B -8OWycvpEgjNC6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQ -MKSOyARiqcTtNd56l+0OOF6SL5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc -0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK+4w1IX2COPKpVJEZNZOUbWo6xbLQ -u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmVBtWVyuEklut89pMF -u+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFgIxpH -YoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8 -GKa1qF60g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaO -RtGdFNrHF+QFlozEJLUbzxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6e -KeC2uAloGRwYQw== ------END CERTIFICATE----- - -# Issuer: CN=AffirmTrust Premium ECC O=AffirmTrust -# Subject: CN=AffirmTrust Premium ECC O=AffirmTrust -# Label: "AffirmTrust Premium ECC" -# Serial: 8401224907861490260 -# MD5 Fingerprint: 64:b0:09:55:cf:b1:d5:99:e2:be:13:ab:a6:5d:ea:4d -# SHA1 Fingerprint: b8:23:6b:00:2f:1d:16:86:53:01:55:6c:11:a4:37:ca:eb:ff:c3:bb -# SHA256 Fingerprint: bd:71:fd:f6:da:97:e4:cf:62:d1:64:7a:dd:25:81:b0:7d:79:ad:f8:39:7e:b4:ec:ba:9c:5e:84:88:82:14:23 ------BEGIN CERTIFICATE----- -MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC -VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ -cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ -BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt -VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D -0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9 -ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G -A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G -A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs -aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I -flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ== ------END CERTIFICATE----- - # Issuer: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority # Subject: CN=Certum Trusted Network CA O=Unizeto Technologies S.A. OU=Certum Certification Authority # Label: "Certum Trusted Network CA" @@ -2038,65 +1666,6 @@ GaQdp/lLQzfcaFpPz+vCZHTetBXZ9FRUGi8c15dxVJCO2SCdUyt/q4/i6jC8UDfv 8Ue1fXwsBOxonbRJRBD0ckscZOf85muQ3Wl9af0AVqW3rLatt8o+Ae+c -----END CERTIFICATE----- -# Issuer: CN=Entrust Root Certification Authority - G2 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2009 Entrust, Inc. - for authorized use only -# Subject: CN=Entrust Root Certification Authority - G2 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2009 Entrust, Inc. - for authorized use only -# Label: "Entrust Root Certification Authority - G2" -# Serial: 1246989352 -# MD5 Fingerprint: 4b:e2:c9:91:96:65:0c:f4:0e:5a:93:92:a0:0a:fe:b2 -# SHA1 Fingerprint: 8c:f4:27:fd:79:0c:3a:d1:66:06:8d:e8:1e:57:ef:bb:93:22:72:d4 -# SHA256 Fingerprint: 43:df:57:74:b0:3e:7f:ef:5f:e4:0d:93:1a:7b:ed:f1:bb:2e:6b:42:73:8c:4e:6d:38:41:10:3d:3a:a7:f3:39 ------BEGIN CERTIFICATE----- -MIIEPjCCAyagAwIBAgIESlOMKDANBgkqhkiG9w0BAQsFADCBvjELMAkGA1UEBhMC -VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50 -cnVzdC5uZXQvbGVnYWwtdGVybXMxOTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1c3Qs -IEluYy4gLSBmb3IgYXV0aG9yaXplZCB1c2Ugb25seTEyMDAGA1UEAxMpRW50cnVz -dCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzIwHhcNMDkwNzA3MTcy -NTU0WhcNMzAxMjA3MTc1NTU0WjCBvjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUVu -dHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3d3cuZW50cnVzdC5uZXQvbGVnYWwt -dGVybXMxOTA3BgNVBAsTMChjKSAyMDA5IEVudHJ1c3QsIEluYy4gLSBmb3IgYXV0 -aG9yaXplZCB1c2Ugb25seTEyMDAGA1UEAxMpRW50cnVzdCBSb290IENlcnRpZmlj -YXRpb24gQXV0aG9yaXR5IC0gRzIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQC6hLZy254Ma+KZ6TABp3bqMriVQRrJ2mFOWHLP/vaCeb9zYQYKpSfYs1/T -RU4cctZOMvJyig/3gxnQaoCAAEUesMfnmr8SVycco2gvCoe9amsOXmXzHHfV1IWN -cCG0szLni6LVhjkCsbjSR87kyUnEO6fe+1R9V77w6G7CebI6C1XiUJgWMhNcL3hW -wcKUs/Ja5CeanyTXxuzQmyWC48zCxEXFjJd6BmsqEZ+pCm5IO2/b1BEZQvePB7/1 -U1+cPvQXLOZprE4yTGJ36rfo5bs0vBmLrpxR57d+tVOxMyLlbc9wPBr64ptntoP0 -jaWvYkxN4FisZDQSA/i2jZRjJKRxAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAP -BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqciZ60B7vfec7aVHUbI2fkBJmqzAN -BgkqhkiG9w0BAQsFAAOCAQEAeZ8dlsa2eT8ijYfThwMEYGprmi5ZiXMRrEPR9RP/ -jTkrwPK9T3CMqS/qF8QLVJ7UG5aYMzyorWKiAHarWWluBh1+xLlEjZivEtRh2woZ -Rkfz6/djwUAFQKXSt/S1mja/qYh2iARVBCuch38aNzx+LaUa2NSJXsq9rD1s2G2v -1fN2D807iDginWyTmsQ9v4IbZT+mD12q/OWyFcq1rca8PdCE6OoGcrBNOTJ4vz4R -nAuknZoh8/CbCzB428Hch0P+vGOaysXCHMnHjf87ElgI5rY97HosTvuDls4MPGmH -VHOkc8KT/1EQrBVUAdj8BbGJoX90g5pJ19xOe4pIb4tF9g== ------END CERTIFICATE----- - -# Issuer: CN=Entrust Root Certification Authority - EC1 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2012 Entrust, Inc. - for authorized use only -# Subject: CN=Entrust Root Certification Authority - EC1 O=Entrust, Inc. OU=See www.entrust.net/legal-terms/(c) 2012 Entrust, Inc. - for authorized use only -# Label: "Entrust Root Certification Authority - EC1" -# Serial: 51543124481930649114116133369 -# MD5 Fingerprint: b6:7e:1d:f0:58:c5:49:6c:24:3b:3d:ed:98:18:ed:bc -# SHA1 Fingerprint: 20:d8:06:40:df:9b:25:f5:12:25:3a:11:ea:f7:59:8a:eb:14:b5:47 -# SHA256 Fingerprint: 02:ed:0e:b2:8c:14:da:45:16:5c:56:67:91:70:0d:64:51:d7:fb:56:f0:b2:ab:1d:3b:8e:b0:70:e5:6e:df:f5 ------BEGIN CERTIFICATE----- -MIIC+TCCAoCgAwIBAgINAKaLeSkAAAAAUNCR+TAKBggqhkjOPQQDAzCBvzELMAkG -A1UEBhMCVVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xKDAmBgNVBAsTH1NlZSB3 -d3cuZW50cnVzdC5uZXQvbGVnYWwtdGVybXMxOTA3BgNVBAsTMChjKSAyMDEyIEVu -dHJ1c3QsIEluYy4gLSBmb3IgYXV0aG9yaXplZCB1c2Ugb25seTEzMDEGA1UEAxMq -RW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRUMxMB4XDTEy -MTIxODE1MjUzNloXDTM3MTIxODE1NTUzNlowgb8xCzAJBgNVBAYTAlVTMRYwFAYD -VQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0 -L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxMiBFbnRydXN0LCBJbmMuIC0g -Zm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxMzAxBgNVBAMTKkVudHJ1c3QgUm9vdCBD -ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEVDMTB2MBAGByqGSM49AgEGBSuBBAAi -A2IABIQTydC6bUF74mzQ61VfZgIaJPRbiWlH47jCffHyAsWfoPZb1YsGGYZPUxBt -ByQnoaD41UcZYUx9ypMn6nQM72+WCf5j7HBdNq1nd67JnXxVRDqiY1Ef9eNi1KlH -Bz7MIKNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O -BBYEFLdj5xrdjekIplWDpOBqUEFlEUJJMAoGCCqGSM49BAMDA2cAMGQCMGF52OVC -R98crlOZF7ZvHH3hvxGU0QOIdeSNiaSKd0bebWHvAvX7td/M/k7//qnmpwIwW5nX -hTcGtXsI/esni0qU+eH6p44mCOh8kmhtc9hvJqwhAriZtyZBWyVgrtBIGu4G ------END CERTIFICATE----- - # Issuer: CN=CFCA EV ROOT O=China Financial Certification Authority # Subject: CN=CFCA EV ROOT O=China Financial Certification Authority # Label: "CFCA EV ROOT" @@ -3371,46 +2940,6 @@ DgQWBBQxCpCPtsad0kRLgLWi5h+xEk8blTAKBggqhkjOPQQDAwNoADBlAjEA31SQ +RHUjE7AwWHCFUyqqx0LMV87HOIAl0Qx5v5zli/altP+CAezNIm8BZ/3Hobui3A= -----END CERTIFICATE----- -# Issuer: CN=GLOBALTRUST 2020 O=e-commerce monitoring GmbH -# Subject: CN=GLOBALTRUST 2020 O=e-commerce monitoring GmbH -# Label: "GLOBALTRUST 2020" -# Serial: 109160994242082918454945253 -# MD5 Fingerprint: 8a:c7:6f:cb:6d:e3:cc:a2:f1:7c:83:fa:0e:78:d7:e8 -# SHA1 Fingerprint: d0:67:c1:13:51:01:0c:aa:d0:c7:6a:65:37:31:16:26:4f:53:71:a2 -# SHA256 Fingerprint: 9a:29:6a:51:82:d1:d4:51:a2:e3:7f:43:9b:74:da:af:a2:67:52:33:29:f9:0f:9a:0d:20:07:c3:34:e2:3c:9a ------BEGIN CERTIFICATE----- -MIIFgjCCA2qgAwIBAgILWku9WvtPilv6ZeUwDQYJKoZIhvcNAQELBQAwTTELMAkG -A1UEBhMCQVQxIzAhBgNVBAoTGmUtY29tbWVyY2UgbW9uaXRvcmluZyBHbWJIMRkw -FwYDVQQDExBHTE9CQUxUUlVTVCAyMDIwMB4XDTIwMDIxMDAwMDAwMFoXDTQwMDYx -MDAwMDAwMFowTTELMAkGA1UEBhMCQVQxIzAhBgNVBAoTGmUtY29tbWVyY2UgbW9u -aXRvcmluZyBHbWJIMRkwFwYDVQQDExBHTE9CQUxUUlVTVCAyMDIwMIICIjANBgkq -hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAri5WrRsc7/aVj6B3GyvTY4+ETUWiD59b -RatZe1E0+eyLinjF3WuvvcTfk0Uev5E4C64OFudBc/jbu9G4UeDLgztzOG53ig9Z -YybNpyrOVPu44sB8R85gfD+yc/LAGbaKkoc1DZAoouQVBGM+uq/ufF7MpotQsjj3 -QWPKzv9pj2gOlTblzLmMCcpL3TGQlsjMH/1WljTbjhzqLL6FLmPdqqmV0/0plRPw -yJiT2S0WR5ARg6I6IqIoV6Lr/sCMKKCmfecqQjuCgGOlYx8ZzHyyZqjC0203b+J+ -BlHZRYQfEs4kUmSFC0iAToexIiIwquuuvuAC4EDosEKAA1GqtH6qRNdDYfOiaxaJ -SaSjpCuKAsR49GiKweR6NrFvG5Ybd0mN1MkGco/PU+PcF4UgStyYJ9ORJitHHmkH -r96i5OTUawuzXnzUJIBHKWk7buis/UDr2O1xcSvy6Fgd60GXIsUf1DnQJ4+H4xj0 -4KlGDfV0OoIu0G4skaMxXDtG6nsEEFZegB31pWXogvziB4xiRfUg3kZwhqG8k9Me -dKZssCz3AwyIDMvUclOGvGBG85hqwvG/Q/lwIHfKN0F5VVJjjVsSn8VoxIidrPIw -q7ejMZdnrY8XD2zHc+0klGvIg5rQmjdJBKuxFshsSUktq6HQjJLyQUp5ISXbY9e2 -nKd+Qmn7OmMCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC -AQYwHQYDVR0OBBYEFNwuH9FhN3nkq9XVsxJxaD1qaJwiMB8GA1UdIwQYMBaAFNwu -H9FhN3nkq9XVsxJxaD1qaJwiMA0GCSqGSIb3DQEBCwUAA4ICAQCR8EICaEDuw2jA -VC/f7GLDw56KoDEoqoOOpFaWEhCGVrqXctJUMHytGdUdaG/7FELYjQ7ztdGl4wJC -XtzoRlgHNQIw4Lx0SsFDKv/bGtCwr2zD/cuz9X9tAy5ZVp0tLTWMstZDFyySCstd -6IwPS3BD0IL/qMy/pJTAvoe9iuOTe8aPmxadJ2W8esVCgmxcB9CpwYhgROmYhRZf -+I/KARDOJcP5YBugxZfD0yyIMaK9MOzQ0MAS8cE54+X1+NZK3TTN+2/BT+MAi1bi -kvcoskJ3ciNnxz8RFbLEAwW+uxF7Cr+obuf/WEPPm2eggAe2HcqtbepBEX4tdJP7 -wry+UUTF72glJ4DjyKDUEuzZpTcdN3y0kcra1LGWge9oXHYQSa9+pTeAsRxSvTOB -TI/53WXZFM2KJVj04sWDpQmQ1GwUY7VA3+vA/MRYfg0UFodUJ25W5HCEuGwyEn6C -MUO+1918oa2u1qsgEu8KwxCMSZY13At1XrFP1U80DhEgB3VDRemjEdqso5nCtnkn -4rnvyOL2NSl6dPrFf4IFYqYK6miyeUcGbvJXqBUzxvd4Sj1Ce2t+/vdG6tHrju+I -aFvowdlxfv1k7/9nR4hYJS8+hge9+6jlgqispdNpQ80xiEmEU5LAsTkbOYMBMMTy -qfrQA71yN2BWHzZ8vTmR9W0Nv3vXkg== ------END CERTIFICATE----- - # Issuer: CN=ANF Secure Server Root CA O=ANF Autoridad de Certificacion OU=ANF CA Raiz # Subject: CN=ANF Secure Server Root CA O=ANF Autoridad de Certificacion OU=ANF CA Raiz # Label: "ANF Secure Server Root CA" @@ -4473,128 +4002,6 @@ UKNbwMp1JvK/kF0LgoxgKJ/GcJpo5PECMFxYDlZ2z1jD1xCMuo6u47xkdUfFVZDj /bpV6wfEU6s3qe4hsiFbYI89MvHVI5TWWA== -----END CERTIFICATE----- -# Issuer: CN=CommScope Public Trust ECC Root-01 O=CommScope -# Subject: CN=CommScope Public Trust ECC Root-01 O=CommScope -# Label: "CommScope Public Trust ECC Root-01" -# Serial: 385011430473757362783587124273108818652468453534 -# MD5 Fingerprint: 3a:40:a7:fc:03:8c:9c:38:79:2f:3a:a2:6c:b6:0a:16 -# SHA1 Fingerprint: 07:86:c0:d8:dd:8e:c0:80:98:06:98:d0:58:7a:ef:de:a6:cc:a2:5d -# SHA256 Fingerprint: 11:43:7c:da:7b:b4:5e:41:36:5f:45:b3:9a:38:98:6b:0d:e0:0d:ef:34:8e:0c:7b:b0:87:36:33:80:0b:c3:8b ------BEGIN CERTIFICATE----- -MIICHTCCAaOgAwIBAgIUQ3CCd89NXTTxyq4yLzf39H91oJ4wCgYIKoZIzj0EAwMw -TjELMAkGA1UEBhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwiQ29t -bVNjb3BlIFB1YmxpYyBUcnVzdCBFQ0MgUm9vdC0wMTAeFw0yMTA0MjgxNzM1NDNa -Fw00NjA0MjgxNzM1NDJaME4xCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlDb21tU2Nv -cGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1c3QgRUNDIFJvb3QtMDEw -djAQBgcqhkjOPQIBBgUrgQQAIgNiAARLNumuV16ocNfQj3Rid8NeeqrltqLxeP0C -flfdkXmcbLlSiFS8LwS+uM32ENEp7LXQoMPwiXAZu1FlxUOcw5tjnSCDPgYLpkJE -hRGnSjot6dZoL0hOUysHP029uax3OVejQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYD -VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSOB2LAUN3GGQYARnQE9/OufXVNMDAKBggq -hkjOPQQDAwNoADBlAjEAnDPfQeMjqEI2Jpc1XHvr20v4qotzVRVcrHgpD7oh2MSg -2NED3W3ROT3Ek2DS43KyAjB8xX6I01D1HiXo+k515liWpDVfG2XqYZpwI7UNo5uS -Um9poIyNStDuiw7LR47QjRE= ------END CERTIFICATE----- - -# Issuer: CN=CommScope Public Trust ECC Root-02 O=CommScope -# Subject: CN=CommScope Public Trust ECC Root-02 O=CommScope -# Label: "CommScope Public Trust ECC Root-02" -# Serial: 234015080301808452132356021271193974922492992893 -# MD5 Fingerprint: 59:b0:44:d5:65:4d:b8:5c:55:19:92:02:b6:d1:94:b2 -# SHA1 Fingerprint: 3c:3f:ef:57:0f:fe:65:93:86:9e:a0:fe:b0:f6:ed:8e:d1:13:c7:e5 -# SHA256 Fingerprint: 2f:fb:7f:81:3b:bb:b3:c8:9a:b4:e8:16:2d:0f:16:d7:15:09:a8:30:cc:9d:73:c2:62:e5:14:08:75:d1:ad:4a ------BEGIN CERTIFICATE----- -MIICHDCCAaOgAwIBAgIUKP2ZYEFHpgE6yhR7H+/5aAiDXX0wCgYIKoZIzj0EAwMw -TjELMAkGA1UEBhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwiQ29t -bVNjb3BlIFB1YmxpYyBUcnVzdCBFQ0MgUm9vdC0wMjAeFw0yMTA0MjgxNzQ0NTRa -Fw00NjA0MjgxNzQ0NTNaME4xCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlDb21tU2Nv -cGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1c3QgRUNDIFJvb3QtMDIw -djAQBgcqhkjOPQIBBgUrgQQAIgNiAAR4MIHoYx7l63FRD/cHB8o5mXxO1Q/MMDAL -j2aTPs+9xYa9+bG3tD60B8jzljHz7aRP+KNOjSkVWLjVb3/ubCK1sK9IRQq9qEmU -v4RDsNuESgMjGWdqb8FuvAY5N9GIIvejQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYD -VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTmGHX/72DehKT1RsfeSlXjMjZ59TAKBggq -hkjOPQQDAwNnADBkAjAmc0l6tqvmSfR9Uj/UQQSugEODZXW5hYA4O9Zv5JOGq4/n -ich/m35rChJVYaoR4HkCMHfoMXGsPHED1oQmHhS48zs73u1Z/GtMMH9ZzkXpc2AV -mkzw5l4lIhVtwodZ0LKOag== ------END CERTIFICATE----- - -# Issuer: CN=CommScope Public Trust RSA Root-01 O=CommScope -# Subject: CN=CommScope Public Trust RSA Root-01 O=CommScope -# Label: "CommScope Public Trust RSA Root-01" -# Serial: 354030733275608256394402989253558293562031411421 -# MD5 Fingerprint: 0e:b4:15:bc:87:63:5d:5d:02:73:d4:26:38:68:73:d8 -# SHA1 Fingerprint: 6d:0a:5f:f7:b4:23:06:b4:85:b3:b7:97:64:fc:ac:75:f5:33:f2:93 -# SHA256 Fingerprint: 02:bd:f9:6e:2a:45:dd:9b:f1:8f:c7:e1:db:df:21:a0:37:9b:a3:c9:c2:61:03:44:cf:d8:d6:06:fe:c1:ed:81 ------BEGIN CERTIFICATE----- -MIIFbDCCA1SgAwIBAgIUPgNJgXUWdDGOTKvVxZAplsU5EN0wDQYJKoZIhvcNAQEL -BQAwTjELMAkGA1UEBhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwi -Q29tbVNjb3BlIFB1YmxpYyBUcnVzdCBSU0EgUm9vdC0wMTAeFw0yMTA0MjgxNjQ1 -NTRaFw00NjA0MjgxNjQ1NTNaME4xCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlDb21t -U2NvcGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1c3QgUlNBIFJvb3Qt -MDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCwSGWjDR1C45FtnYSk -YZYSwu3D2iM0GXb26v1VWvZVAVMP8syMl0+5UMuzAURWlv2bKOx7dAvnQmtVzslh -suitQDy6uUEKBU8bJoWPQ7VAtYXR1HHcg0Hz9kXHgKKEUJdGzqAMxGBWBB0HW0al -DrJLpA6lfO741GIDuZNqihS4cPgugkY4Iw50x2tBt9Apo52AsH53k2NC+zSDO3Oj -WiE260f6GBfZumbCk6SP/F2krfxQapWsvCQz0b2If4b19bJzKo98rwjyGpg/qYFl -P8GMicWWMJoKz/TUyDTtnS+8jTiGU+6Xn6myY5QXjQ/cZip8UlF1y5mO6D1cv547 -KI2DAg+pn3LiLCuz3GaXAEDQpFSOm117RTYm1nJD68/A6g3czhLmfTifBSeolz7p -UcZsBSjBAg/pGG3svZwG1KdJ9FQFa2ww8esD1eo9anbCyxooSU1/ZOD6K9pzg4H/ -kQO9lLvkuI6cMmPNn7togbGEW682v3fuHX/3SZtS7NJ3Wn2RnU3COS3kuoL4b/JO -Hg9O5j9ZpSPcPYeoKFgo0fEbNttPxP/hjFtyjMcmAyejOQoBqsCyMWCDIqFPEgkB -Ea801M/XrmLTBQe0MXXgDW1XT2mH+VepuhX2yFJtocucH+X8eKg1mp9BFM6ltM6U -CBwJrVbl2rZJmkrqYxhTnCwuwwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G -A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUN12mmnQywsL5x6YVEFm45P3luG0wDQYJ -KoZIhvcNAQELBQADggIBAK+nz97/4L1CjU3lIpbfaOp9TSp90K09FlxD533Ahuh6 -NWPxzIHIxgvoLlI1pKZJkGNRrDSsBTtXAOnTYtPZKdVUvhwQkZyybf5Z/Xn36lbQ -nmhUQo8mUuJM3y+Xpi/SB5io82BdS5pYV4jvguX6r2yBS5KPQJqTRlnLX3gWsWc+ -QgvfKNmwrZggvkN80V4aCRckjXtdlemrwWCrWxhkgPut4AZ9HcpZuPN4KWfGVh2v -trV0KnahP/t1MJ+UXjulYPPLXAziDslg+MkfFoom3ecnf+slpoq9uC02EJqxWE2a -aE9gVOX2RhOOiKy8IUISrcZKiX2bwdgt6ZYD9KJ0DLwAHb/WNyVntHKLr4W96ioD -j8z7PEQkguIBpQtZtjSNMgsSDesnwv1B10A8ckYpwIzqug/xBpMu95yo9GA+o/E4 -Xo4TwbM6l4c/ksp4qRyv0LAbJh6+cOx69TOY6lz/KwsETkPdY34Op054A5U+1C0w -lREQKC6/oAI+/15Z0wUOlV9TRe9rh9VIzRamloPh37MG88EU26fsHItdkJANclHn -YfkUyq+Dj7+vsQpZXdxc1+SWrVtgHdqul7I52Qb1dgAT+GhMIbA1xNxVssnBQVoc -icCMb3SgazNNtQEo/a2tiRc7ppqEvOuM6sRxJKi6KfkIsidWNTJf6jn7MZrVGczw ------END CERTIFICATE----- - -# Issuer: CN=CommScope Public Trust RSA Root-02 O=CommScope -# Subject: CN=CommScope Public Trust RSA Root-02 O=CommScope -# Label: "CommScope Public Trust RSA Root-02" -# Serial: 480062499834624527752716769107743131258796508494 -# MD5 Fingerprint: e1:29:f9:62:7b:76:e2:96:6d:f3:d4:d7:0f:ae:1f:aa -# SHA1 Fingerprint: ea:b0:e2:52:1b:89:93:4c:11:68:f2:d8:9a:ac:22:4c:a3:8a:57:ae -# SHA256 Fingerprint: ff:e9:43:d7:93:42:4b:4f:7c:44:0c:1c:3d:64:8d:53:63:f3:4b:82:dc:87:aa:7a:9f:11:8f:c5:de:e1:01:f1 ------BEGIN CERTIFICATE----- -MIIFbDCCA1SgAwIBAgIUVBa/O345lXGN0aoApYYNK496BU4wDQYJKoZIhvcNAQEL -BQAwTjELMAkGA1UEBhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwi -Q29tbVNjb3BlIFB1YmxpYyBUcnVzdCBSU0EgUm9vdC0wMjAeFw0yMTA0MjgxNzE2 -NDNaFw00NjA0MjgxNzE2NDJaME4xCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlDb21t -U2NvcGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1c3QgUlNBIFJvb3Qt -MDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDh+g77aAASyE3VrCLE -NQE7xVTlWXZjpX/rwcRqmL0yjReA61260WI9JSMZNRTpf4mnG2I81lDnNJUDMrG0 -kyI9p+Kx7eZ7Ti6Hmw0zdQreqjXnfuU2mKKuJZ6VszKWpCtYHu8//mI0SFHRtI1C -rWDaSWqVcN3SAOLMV2MCe5bdSZdbkk6V0/nLKR8YSvgBKtJjCW4k6YnS5cciTNxz -hkcAqg2Ijq6FfUrpuzNPDlJwnZXjfG2WWy09X6GDRl224yW4fKcZgBzqZUPckXk2 -LHR88mcGyYnJ27/aaL8j7dxrrSiDeS/sOKUNNwFnJ5rpM9kzXzehxfCrPfp4sOcs -n/Y+n2Dg70jpkEUeBVF4GiwSLFworA2iI540jwXmojPOEXcT1A6kHkIfhs1w/tku -FT0du7jyU1fbzMZ0KZwYszZ1OC4PVKH4kh+Jlk+71O6d6Ts2QrUKOyrUZHk2EOH5 -kQMreyBUzQ0ZGshBMjTRsJnhkB4BQDa1t/qp5Xd1pCKBXbCL5CcSD1SIxtuFdOa3 -wNemKfrb3vOTlycEVS8KbzfFPROvCgCpLIscgSjX74Yxqa7ybrjKaixUR9gqiC6v -wQcQeKwRoi9C8DfF8rhW3Q5iLc4tVn5V8qdE9isy9COoR+jUKgF4z2rDN6ieZdIs -5fq6M8EGRPbmz6UNp2YINIos8wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G -A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUR9DnsSL/nSz12Vdgs7GxcJXvYXowDQYJ -KoZIhvcNAQELBQADggIBAIZpsU0v6Z9PIpNojuQhmaPORVMbc0RTAIFhzTHjCLqB -KCh6krm2qMhDnscTJk3C2OVVnJJdUNjCK9v+5qiXz1I6JMNlZFxHMaNlNRPDk7n3 -+VGXu6TwYofF1gbTl4MgqX67tiHCpQ2EAOHyJxCDut0DgdXdaMNmEMjRdrSzbyme -APnCKfWxkxlSaRosTKCL4BWaMS/TiJVZbuXEs1DIFAhKm4sTg7GkcrI7djNB3Nyq -pgdvHSQSn8h2vS/ZjvQs7rfSOBAkNlEv41xdgSGn2rtO/+YHqP65DSdsu3BaVXoT -6fEqSWnHX4dXTEN5bTpl6TBcQe7rd6VzEojov32u5cSoHw2OHG1QAk8mGEPej1WF -sQs3BWDJVTkSBKEqz3EWnzZRSb9wO55nnPt7eck5HHisd5FUmrh1CoFSl+NmYWvt -PjgelmFV4ZFUjO2MJB+ByRCac5krFk5yAD9UG/iNuovnFNa2RU9g7Jauwy8CTl2d -lklyALKrdVwPaFsdZcJfMw8eD/A7hvWwTruc9+olBdytoptLFwG+Qt81IR2tq670 -v64fG9PiO/yzcnMcmyiQiRM9HcEARwmWmjgb3bHPDcK0RPOWlc4yOo80nOAXx17O -rg3bhzjlP1v9mxnhMUF6cKojawHhRUzNlM47ni3niAIi9G7oyOzWPPO5std3eqx7 ------END CERTIFICATE----- - # Issuer: CN=Telekom Security TLS ECC Root 2020 O=Deutsche Telekom Security GmbH # Subject: CN=Telekom Security TLS ECC Root 2020 O=Deutsche Telekom Security GmbH # Label: "Telekom Security TLS ECC Root 2020" @@ -4855,6 +4262,68 @@ knCDgKs4qllo3UCkGJCy89UDyibK79XH4I9TjvAA46jtn/mtd+ArY0+ew+43u3gJ hJ65bvspmZDogNOfJA== -----END CERTIFICATE----- +# Issuer: CN=TrustAsia TLS ECC Root CA O=TrustAsia Technologies, Inc. +# Subject: CN=TrustAsia TLS ECC Root CA O=TrustAsia Technologies, Inc. +# Label: "TrustAsia TLS ECC Root CA" +# Serial: 310892014698942880364840003424242768478804666567 +# MD5 Fingerprint: 09:48:04:77:d2:fc:65:93:71:66:b1:11:95:4f:06:8c +# SHA1 Fingerprint: b5:ec:39:f3:a1:66:37:ae:c3:05:94:57:e2:be:11:be:b7:a1:7f:36 +# SHA256 Fingerprint: c0:07:6b:9e:f0:53:1f:b1:a6:56:d6:7c:4e:be:97:cd:5d:ba:a4:1e:f4:45:98:ac:c2:48:98:78:c9:2d:87:11 +-----BEGIN CERTIFICATE----- +MIICMTCCAbegAwIBAgIUNnThTXxlE8msg1UloD5Sfi9QaMcwCgYIKoZIzj0EAwMw +WDELMAkGA1UEBhMCQ04xJTAjBgNVBAoTHFRydXN0QXNpYSBUZWNobm9sb2dpZXMs +IEluYy4xIjAgBgNVBAMTGVRydXN0QXNpYSBUTFMgRUNDIFJvb3QgQ0EwHhcNMjQw +NTE1MDU0MTU2WhcNNDQwNTE1MDU0MTU1WjBYMQswCQYDVQQGEwJDTjElMCMGA1UE +ChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAxMZVHJ1c3RB +c2lhIFRMUyBFQ0MgUm9vdCBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABLh/pVs/ +AT598IhtrimY4ZtcU5nb9wj/1WrgjstEpvDBjL1P1M7UiFPoXlfXTr4sP/MSpwDp +guMqWzJ8S5sUKZ74LYO1644xST0mYekdcouJtgq7nDM1D9rs3qlKH8kzsaNCMEAw +DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQULIVTu7FDzTLqnqOH/qKYqKaT6RAw +DgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2gAMGUCMFRH18MtYYZI9HlaVQ01 +L18N9mdsd0AaRuf4aFtOJx24mH1/k78ITcTaRTChD15KeAIxAKORh/IRM4PDwYqR +OkwrULG9IpRdNYlzg8WbGf60oenUoWa2AaU2+dhoYSi3dOGiMQ== +-----END CERTIFICATE----- + +# Issuer: CN=TrustAsia TLS RSA Root CA O=TrustAsia Technologies, Inc. +# Subject: CN=TrustAsia TLS RSA Root CA O=TrustAsia Technologies, Inc. +# Label: "TrustAsia TLS RSA Root CA" +# Serial: 160405846464868906657516898462547310235378010780 +# MD5 Fingerprint: 3b:9e:c3:86:0f:34:3c:6b:c5:46:c4:8e:1d:e7:19:12 +# SHA1 Fingerprint: a5:46:50:c5:62:ea:95:9a:1a:a7:04:6f:17:58:c7:29:53:3d:03:fa +# SHA256 Fingerprint: 06:c0:8d:7d:af:d8:76:97:1e:b1:12:4f:e6:7f:84:7e:c0:c7:a1:58:d3:ea:53:cb:e9:40:e2:ea:97:91:f4:c3 +-----BEGIN CERTIFICATE----- +MIIFgDCCA2igAwIBAgIUHBjYz+VTPyI1RlNUJDxsR9FcSpwwDQYJKoZIhvcNAQEM +BQAwWDELMAkGA1UEBhMCQ04xJTAjBgNVBAoTHFRydXN0QXNpYSBUZWNobm9sb2dp +ZXMsIEluYy4xIjAgBgNVBAMTGVRydXN0QXNpYSBUTFMgUlNBIFJvb3QgQ0EwHhcN +MjQwNTE1MDU0MTU3WhcNNDQwNTE1MDU0MTU2WjBYMQswCQYDVQQGEwJDTjElMCMG +A1UEChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAxMZVHJ1 +c3RBc2lhIFRMUyBSU0EgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC +AgoCggIBAMMWuBtqpERz5dZO9LnPWwvB0ZqB9WOwj0PBuwhaGnrhB3YmH49pVr7+ +NmDQDIPNlOrnxS1cLwUWAp4KqC/lYCZUlviYQB2srp10Zy9U+5RjmOMmSoPGlbYJ +Q1DNDX3eRA5gEk9bNb2/mThtfWza4mhzH/kxpRkQcwUqwzIZheo0qt1CHjCNP561 +HmHVb70AcnKtEj+qpklz8oYVlQwQX1Fkzv93uMltrOXVmPGZLmzjyUT5tUMnCE32 +ft5EebuyjBza00tsLtbDeLdM1aTk2tyKjg7/D8OmYCYozza/+lcK7Fs/6TAWe8Tb +xNRkoDD75f0dcZLdKY9BWN4ArTr9PXwaqLEX8E40eFgl1oUh63kd0Nyrz2I8sMeX +i9bQn9P+PN7F4/w6g3CEIR0JwqH8uyghZVNgepBtljhb//HXeltt08lwSUq6HTrQ +UNoyIBnkiz/r1RYmNzz7dZ6wB3C4FGB33PYPXFIKvF1tjVEK2sUYyJtt3LCDs3+j +TnhMmCWr8n4uIF6CFabW2I+s5c0yhsj55NqJ4js+k8UTav/H9xj8Z7XvGCxUq0DT +bE3txci3OE9kxJRMT6DNrqXGJyV1J23G2pyOsAWZ1SgRxSHUuPzHlqtKZFlhaxP8 +S8ySpg+kUb8OWJDZgoM5pl+z+m6Ss80zDoWo8SnTq1mt1tve1CuBAgMBAAGjQjBA +MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFLgHkXlcBvRG/XtZylomkadFK/hT +MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQwFAAOCAgEAIZtqBSBdGBanEqT3 +Rz/NyjuujsCCztxIJXgXbODgcMTWltnZ9r96nBO7U5WS/8+S4PPFJzVXqDuiGev4 +iqME3mmL5Dw8veWv0BIb5Ylrc5tvJQJLkIKvQMKtuppgJFqBTQUYo+IzeXoLH5Pt +7DlK9RME7I10nYEKqG/odv6LTytpEoYKNDbdgptvT+Bz3Ul/KD7JO6NXBNiT2Twp +2xIQaOHEibgGIOcberyxk2GaGUARtWqFVwHxtlotJnMnlvm5P1vQiJ3koP26TpUJ +g3933FEFlJ0gcXax7PqJtZwuhfG5WyRasQmr2soaB82G39tp27RIGAAtvKLEiUUj +pQ7hRGU+isFqMB3iYPg6qocJQrmBktwliJiJ8Xw18WLK7nn4GS/+X/jbh87qqA8M +pugLoDzga5SYnH+tBuYc6kIQX+ImFTw3OffXvO645e8D7r0i+yiGNFjEWn9hongP +XvPKnbwbPKfILfanIhHKA9jnZwqKDss1jjQ52MjqjZ9k4DewbNfFj8GQYSbbJIwe +SsCI3zWQzj8C9GRh3sfIB5XeMhg6j6JCQCTl1jNdfK7vsU1P1FeQNWrcrgSXSYk0 +ly4wBOeY99sLAZDBHwo/+ML+TvrbmnNzFrwFuHnYWa8G5z9nODmxfKuU4CkUpijy +323imttUQ/hHWKNddBWcwauwxzQ= +-----END CERTIFICATE----- + # Issuer: CN=D-TRUST EV Root CA 2 2023 O=D-Trust GmbH # Subject: CN=D-TRUST EV Root CA 2 2023 O=D-Trust GmbH # Label: "D-TRUST EV Root CA 2 2023" @@ -4895,3 +4364,131 @@ gofXNJhuS5N5YHVpD/Aa1VP6IQzCP+k/HxiMkl14p3ZnGbuy6n/pcAlWVqOwDAst Nl7F6cTVg8uGF5csbBNvh1qvSaYd2804BC5f4ko1Di1L+KIkBI3Y4WNeApI02phh XBxvWHZks/wCuPWdCg== -----END CERTIFICATE----- + +# Issuer: CN=SwissSign RSA TLS Root CA 2022 - 1 O=SwissSign AG +# Subject: CN=SwissSign RSA TLS Root CA 2022 - 1 O=SwissSign AG +# Label: "SwissSign RSA TLS Root CA 2022 - 1" +# Serial: 388078645722908516278762308316089881486363258315 +# MD5 Fingerprint: 16:2e:e4:19:76:81:85:ba:8e:91:58:f1:15:ef:72:39 +# SHA1 Fingerprint: 81:34:0a:be:4c:cd:ce:cc:e7:7d:cc:8a:d4:57:e2:45:a0:77:5d:ce +# SHA256 Fingerprint: 19:31:44:f4:31:e0:fd:db:74:07:17:d4:de:92:6a:57:11:33:88:4b:43:60:d3:0e:27:29:13:cb:e6:60:ce:41 +-----BEGIN CERTIFICATE----- +MIIFkzCCA3ugAwIBAgIUQ/oMX04bgBhE79G0TzUfRPSA7cswDQYJKoZIhvcNAQEL +BQAwUTELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzErMCkGA1UE +AxMiU3dpc3NTaWduIFJTQSBUTFMgUm9vdCBDQSAyMDIyIC0gMTAeFw0yMjA2MDgx +MTA4MjJaFw00NzA2MDgxMTA4MjJaMFExCzAJBgNVBAYTAkNIMRUwEwYDVQQKEwxT +d2lzc1NpZ24gQUcxKzApBgNVBAMTIlN3aXNzU2lnbiBSU0EgVExTIFJvb3QgQ0Eg +MjAyMiAtIDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDLKmjiC8NX +vDVjvHClO/OMPE5Xlm7DTjak9gLKHqquuN6orx122ro10JFwB9+zBvKK8i5VUXu7 +LCTLf5ImgKO0lPaCoaTo+nUdWfMHamFk4saMla+ju45vVs9xzF6BYQ1t8qsCLqSX +5XH8irCRIFucdFJtrhUnWXjyCcplDn/L9Ovn3KlMd/YrFgSVrpxxpT8q2kFC5zyE +EPThPYxr4iuRR1VPuFa+Rd4iUU1OKNlfGUEGjw5NBuBwQCMBauTLE5tzrE0USJIt +/m2n+IdreXXhvhCxqohAWVTXz8TQm0SzOGlkjIHRI36qOTw7D59Ke4LKa2/KIj4x +0LDQKhySio/YGZxH5D4MucLNvkEM+KRHBdvBFzA4OmnczcNpI/2aDwLOEGrOyvi5 +KaM2iYauC8BPY7kGWUleDsFpswrzd34unYyzJ5jSmY0lpx+Gs6ZUcDj8fV3oT4MM +0ZPlEuRU2j7yrTrePjxF8CgPBrnh25d7mUWe3f6VWQQvdT/TromZhqwUtKiE+shd +OxtYk8EXlFXIC+OCeYSf8wCENO7cMdWP8vpPlkwGqnj73mSiI80fPsWMvDdUDrta +clXvyFu1cvh43zcgTFeRc5JzrBh3Q4IgaezprClG5QtO+DdziZaKHG29777YtvTK +wP1H8K4LWCDFyB02rpeNUIMmJCn3nTsPBQIDAQABo2MwYTAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBRvjmKLk0Ow4UD2p8P98Q+4 +DxU4pTAdBgNVHQ4EFgQUb45ii5NDsOFA9qfD/fEPuA8VOKUwDQYJKoZIhvcNAQEL +BQADggIBAKwsKUF9+lz1GpUYvyypiqkkVHX1uECry6gkUSsYP2OprphWKwVDIqO3 +10aewCoSPY6WlkDfDDOLazeROpW7OSltwAJsipQLBwJNGD77+3v1dj2b9l4wBlgz +Hqp41eZUBDqyggmNzhYzWUUo8aWjlw5DI/0LIICQ/+Mmz7hkkeUFjxOgdg3XNwwQ +iJb0Pr6VvfHDffCjw3lHC1ySFWPtUnWK50Zpy1FVCypM9fJkT6lc/2cyjlUtMoIc +gC9qkfjLvH4YoiaoLqNTKIftV+Vlek4ASltOU8liNr3CjlvrzG4ngRhZi0Rjn9UM +ZfQpZX+RLOV/fuiJz48gy20HQhFRJjKKLjpHE7iNvUcNCfAWpO2Whi4Z2L6MOuhF +LhG6rlrnub+xzI/goP+4s9GFe3lmozm1O2bYQL7Pt2eLSMkZJVX8vY3PXtpOpvJp +zv1/THfQwUY1mFwjmwJFQ5Ra3bxHrSL+ul4vkSkphnsh3m5kt8sNjzdbowhq6/Td +Ao9QAwKxuDdollDruF/UKIqlIgyKhPBZLtU30WHlQnNYKoH3dtvi4k0NX/a3vgW0 +rk4N3hY9A4GzJl5LuEsAz/+MF7psYC0nhzck5npgL7XTgwSqT0N1osGDsieYK7EO +gLrAhV5Cud+xYJHT6xh+cHiudoO+cVrQkOPKwRYlZ0rwtnu64ZzZ +-----END CERTIFICATE----- + +# Issuer: CN=OISTE Server Root ECC G1 O=OISTE Foundation +# Subject: CN=OISTE Server Root ECC G1 O=OISTE Foundation +# Label: "OISTE Server Root ECC G1" +# Serial: 47819833811561661340092227008453318557 +# MD5 Fingerprint: 42:a7:d2:35:ae:02:92:db:19:76:08:de:2f:05:b4:d4 +# SHA1 Fingerprint: 3b:f6:8b:09:ae:2a:92:7b:ba:e3:8d:3f:11:95:d9:e6:44:0c:45:e2 +# SHA256 Fingerprint: ee:c9:97:c0:c3:0f:21:6f:7e:3b:8b:30:7d:2b:ae:42:41:2d:75:3f:c8:21:9d:af:d1:52:0b:25:72:85:0f:49 +-----BEGIN CERTIFICATE----- +MIICNTCCAbqgAwIBAgIQI/nD1jWvjyhLH/BU6n6XnTAKBggqhkjOPQQDAzBLMQsw +CQYDVQQGEwJDSDEZMBcGA1UECgwQT0lTVEUgRm91bmRhdGlvbjEhMB8GA1UEAwwY +T0lTVEUgU2VydmVyIFJvb3QgRUNDIEcxMB4XDTIzMDUzMTE0NDIyOFoXDTQ4MDUy +NDE0NDIyN1owSzELMAkGA1UEBhMCQ0gxGTAXBgNVBAoMEE9JU1RFIEZvdW5kYXRp +b24xITAfBgNVBAMMGE9JU1RFIFNlcnZlciBSb290IEVDQyBHMTB2MBAGByqGSM49 +AgEGBSuBBAAiA2IABBcv+hK8rBjzCvRE1nZCnrPoH7d5qVi2+GXROiFPqOujvqQy +cvO2Ackr/XeFblPdreqqLiWStukhEaivtUwL85Zgmjvn6hp4LrQ95SjeHIC6XG4N +2xml4z+cKrhAS93mT6NjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBQ3 +TYhlz/w9itWj8UnATgwQb0K0nDAdBgNVHQ4EFgQUN02IZc/8PYrVo/FJwE4MEG9C +tJwwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2kAMGYCMQCpKjAd0MKfkFFR +QD6VVCHNFmb3U2wIFjnQEnx/Yxvf4zgAOdktUyBFCxxgZzFDJe0CMQCSia7pXGKD +YmH5LVerVrkR3SW+ak5KGoJr3M/TvEqzPNcum9v4KGm8ay3sMaE641c= +-----END CERTIFICATE----- + +# Issuer: CN=OISTE Server Root RSA G1 O=OISTE Foundation +# Subject: CN=OISTE Server Root RSA G1 O=OISTE Foundation +# Label: "OISTE Server Root RSA G1" +# Serial: 113845518112613905024960613408179309848 +# MD5 Fingerprint: 23:a7:9e:d4:70:b8:b9:14:57:41:8a:7e:44:59:e2:68 +# SHA1 Fingerprint: f7:00:34:25:94:88:68:31:e4:34:87:3f:70:fe:86:b3:86:9f:f0:6e +# SHA256 Fingerprint: 9a:e3:62:32:a5:18:9f:fd:db:35:3d:fd:26:52:0c:01:53:95:d2:27:77:da:c5:9d:b5:7b:98:c0:89:a6:51:e6 +-----BEGIN CERTIFICATE----- +MIIFgzCCA2ugAwIBAgIQVaXZZ5Qoxu0M+ifdWwFNGDANBgkqhkiG9w0BAQwFADBL +MQswCQYDVQQGEwJDSDEZMBcGA1UECgwQT0lTVEUgRm91bmRhdGlvbjEhMB8GA1UE +AwwYT0lTVEUgU2VydmVyIFJvb3QgUlNBIEcxMB4XDTIzMDUzMTE0MzcxNloXDTQ4 +MDUyNDE0MzcxNVowSzELMAkGA1UEBhMCQ0gxGTAXBgNVBAoMEE9JU1RFIEZvdW5k +YXRpb24xITAfBgNVBAMMGE9JU1RFIFNlcnZlciBSb290IFJTQSBHMTCCAiIwDQYJ +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAKqu9KuCz/vlNwvn1ZatkOhLKdxVYOPM +vLO8LZK55KN68YG0nnJyQ98/qwsmtO57Gmn7KNByXEptaZnwYx4M0rH/1ow00O7b +rEi56rAUjtgHqSSY3ekJvqgiG1k50SeH3BzN+Puz6+mTeO0Pzjd8JnduodgsIUzk +ik/HEzxux9UTl7Ko2yRpg1bTacuCErudG/L4NPKYKyqOBGf244ehHa1uzjZ0Dl4z +O8vbUZeUapU8zhhabkvG/AePLhq5SvdkNCncpo1Q4Y2LS+VIG24ugBA/5J8bZT8R +tOpXaZ+0AOuFJJkk9SGdl6r7NH8CaxWQrbueWhl/pIzY+m0o/DjH40ytas7ZTpOS +jswMZ78LS5bOZmdTaMsXEY5Z96ycG7mOaES3GK/m5Q9l3JUJsJMStR8+lKXHiHUh +sd4JJCpM4rzsTGdHwimIuQq6+cF0zowYJmXa92/GjHtoXAvuY8BeS/FOzJ8vD+Ho +mnqT8eDI278n5mUpezbgMxVz8p1rhAhoKzYHKyfMeNhqhw5HdPSqoBNdZH702xSu ++zrkL8Fl47l6QGzwBrd7KJvX4V84c5Ss2XCTLdyEr0YconosP4EmQufU2MVshGYR +i3drVByjtdgQ8K4p92cIiBdcuJd5z+orKu5YM+Vt6SmqZQENghPsJQtdLEByFSnT +kCz3GkPVavBpAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU +8snBDw1jALvsRQ5KH7WxszbNDo0wHQYDVR0OBBYEFPLJwQ8NYwC77EUOSh+1sbM2 +zQ6NMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQwFAAOCAgEANGd5sjrG5T33 +I3K5Ce+SrScfoE4KsvXaFwyihdJ+klH9FWXXXGtkFu6KRcoMQzZENdl//nk6HOjG +5D1rd9QhEOP28yBOqb6J8xycqd+8MDoX0TJD0KqKchxRKEzdNsjkLWd9kYccnbz8 +qyiWXmFcuCIzGEgWUOrKL+mlSdx/PKQZvDatkuK59EvV6wit53j+F8Bdh3foZ3dP +AGav9LEDOr4SfEE15fSmG0eLy3n31r8Xbk5l8PjaV8GUgeV6Vg27Rn9vkf195hfk +gSe7BYhW3SCl95gtkRlpMV+bMPKZrXJAlszYd2abtNUOshD+FKrDgHGdPY3ofRRs +YWSGRqbXVMW215AWRqWFyp464+YTFrYVI8ypKVL9AMb2kI5Wj4kI3Zaq5tNqqYY1 +9tVFeEJKRvwDyF7YZvZFZSS0vod7VSCd9521Kvy5YhnLbDuv0204bKt7ph6N/Ome +/msVuduCmsuY33OhkKCgxeDoAaijFJzIwZqsFVAzje18KotzlUBDJvyBpCpfOZC3 +J8tRd/iWkx7P8nd9H0aTolkelUTFLXVksNb54Dxp6gS1HAviRkRNQzuXSXERvSS2 +wq1yVAb+axj5d9spLFKebXd7Yv0PTY6YMjAwcRLWJTXjn/hvnLXrahut6hDTlhZy +BiElxky8j3C7DOReIoMt0r7+hVu05L0= +-----END CERTIFICATE----- + +# Issuer: CN=e-Szigno TLS Root CA 2023 O=Microsec Ltd. +# Subject: CN=e-Szigno TLS Root CA 2023 O=Microsec Ltd. +# Label: "e-Szigno TLS Root CA 2023" +# Serial: 71934828665710877219916191754 +# MD5 Fingerprint: 6a:e9:99:74:a5:da:5e:f1:d9:2e:f2:c8:d1:86:8b:71 +# SHA1 Fingerprint: 6f:9a:d5:d5:df:e8:2c:eb:be:37:07:ee:4f:4f:52:58:29:41:d1:fe +# SHA256 Fingerprint: b4:91:41:50:2d:00:66:3d:74:0f:2e:7e:c3:40:c5:28:00:96:26:66:12:1a:36:d0:9c:f7:dd:2b:90:38:4f:b4 +-----BEGIN CERTIFICATE----- +MIICzzCCAjGgAwIBAgINAOhvGHvWOWuYSkmYCjAKBggqhkjOPQQDBDB1MQswCQYD +VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 +ZC4xFzAVBgNVBGEMDlZBVEhVLTIzNTg0NDk3MSIwIAYDVQQDDBllLVN6aWdubyBU +TFMgUm9vdCBDQSAyMDIzMB4XDTIzMDcxNzE0MDAwMFoXDTM4MDcxNzE0MDAwMFow +dTELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRYwFAYDVQQKDA1NaWNy +b3NlYyBMdGQuMRcwFQYDVQRhDA5WQVRIVS0yMzU4NDQ5NzEiMCAGA1UEAwwZZS1T +emlnbm8gVExTIFJvb3QgQ0EgMjAyMzCBmzAQBgcqhkjOPQIBBgUrgQQAIwOBhgAE +AGgP36J8PKp0iGEKjcJMpQEiFNT3YHdCnAo4YKGMZz6zY+n6kbCLS+Y53wLCMAFS +AL/fjO1ZrTJlqwlZULUZwmgcAOAFX9pQJhzDrAQixTpN7+lXWDajwRlTEArRzT/v +SzUaQ49CE0y5LBqcvjC2xN7cS53kpDzLLtmt3999Cd8ukv+ho2MwYTAPBgNVHRMB +Af8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUWYQCYlpGePVd3I8K +ECgj3NXW+0UwHwYDVR0jBBgwFoAUWYQCYlpGePVd3I8KECgj3NXW+0UwCgYIKoZI +zj0EAwQDgYsAMIGHAkIBLdqu9S54tma4n7Zwf2Z0z+yOfP7AAXmazlIC58PRDHpt +y7Ve7hekm9sEdu4pKeiv+62sUvTXK9Z3hBC9xdIoaDQCQTV2WnXzkoYI9bIeCvZl +C9p2x1L/Cx6AcCIwwzPbGO2E14vs7dOoY4G1VnxHx1YwlGhza9IuqbnZLBwpvQy6 +uWWL +-----END CERTIFICATE----- diff --git a/addons/source-python/packages/site-packages/certifi/core.py b/addons/source-python/packages/site-packages/certifi/core.py index 91f538bb1..1c9661cc7 100644 --- a/addons/source-python/packages/site-packages/certifi/core.py +++ b/addons/source-python/packages/site-packages/certifi/core.py @@ -46,7 +46,7 @@ def where() -> str: def contents() -> str: return files("certifi").joinpath("cacert.pem").read_text(encoding="ascii") -elif sys.version_info >= (3, 7): +else: from importlib.resources import path as get_path, read_text @@ -81,34 +81,3 @@ def where() -> str: def contents() -> str: return read_text("certifi", "cacert.pem", encoding="ascii") - -else: - import os - import types - from typing import Union - - Package = Union[types.ModuleType, str] - Resource = Union[str, "os.PathLike"] - - # This fallback will work for Python versions prior to 3.7 that lack the - # importlib.resources module but relies on the existing `where` function - # so won't address issues with environments like PyOxidizer that don't set - # __file__ on modules. - def read_text( - package: Package, - resource: Resource, - encoding: str = 'utf-8', - errors: str = 'strict' - ) -> str: - with open(where(), encoding=encoding) as data: - return data.read() - - # If we don't have importlib.resources, then we will just do the old logic - # of assuming we're on the filesystem and munge the path directly. - def where() -> str: - f = os.path.dirname(__file__) - - return os.path.join(f, "cacert.pem") - - def contents() -> str: - return read_text("certifi", "cacert.pem", encoding="ascii") diff --git a/addons/source-python/packages/site-packages/charset_normalizer/api.py b/addons/source-python/packages/site-packages/charset_normalizer/api.py index 2c8c0618c..1f32091f2 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/api.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/api.py @@ -10,7 +10,13 @@ mb_encoding_languages, merge_coherence_ratios, ) -from .constant import IANA_SUPPORTED, TOO_BIG_SEQUENCE, TOO_SMALL_SEQUENCE, TRACE +from .constant import ( + IANA_SUPPORTED, + IANA_SUPPORTED_SIMILAR, + TOO_BIG_SEQUENCE, + TOO_SMALL_SEQUENCE, + TRACE, +) from .md import mess_ratio from .models import CharsetMatch, CharsetMatches from .utils import ( @@ -18,7 +24,6 @@ cut_sequence_chunks, iana_name, identify_sig_or_bom, - is_cp_similar, is_multi_byte_encoding, should_strip_sig_or_bom, ) @@ -29,6 +34,25 @@ logging.Formatter("%(asctime)s | %(levelname)s | %(message)s") ) +# Pre-compute a reordered encoding list: multibyte first, then single-byte. +# This allows the mb_definitive_match optimization to fire earlier, skipping +# all single-byte encodings for genuine CJK content. Multibyte codecs +# hard-fail (UnicodeDecodeError) on single-byte data almost instantly, so +# testing them first costs negligible time for non-CJK files. +_mb_supported: list[str] = [] +_sb_supported: list[str] = [] + +for _supported_enc in IANA_SUPPORTED: + try: + if is_multi_byte_encoding(_supported_enc): + _mb_supported.append(_supported_enc) + else: + _sb_supported.append(_supported_enc) + except ImportError: + _sb_supported.append(_supported_enc) + +IANA_SUPPORTED_MB_FIRST: list[str] = _mb_supported + _sb_supported + def from_bytes( sequences: bytes | bytearray, @@ -78,7 +102,7 @@ def from_bytes( logger.debug("Encoding detection on empty bytes, assuming utf_8 intention.") if explain: # Defensive: ensure exit path clean handler logger.removeHandler(explain_handler) - logger.setLevel(previous_logger_level or logging.WARNING) + logger.setLevel(previous_logger_level) return CharsetMatches([CharsetMatch(sequences, "utf_8", 0.0, False, [], "")]) if cp_isolation is not None: @@ -152,6 +176,40 @@ def from_bytes( tested: set[str] = set() tested_but_hard_failure: list[str] = [] tested_but_soft_failure: list[str] = [] + soft_failure_skip: set[str] = set() + success_fast_tracked: set[str] = set() + + # Cache for decoded payload deduplication: hash(decoded_payload) -> (mean_mess_ratio, cd_ratios_merged, passed) + # When multiple encodings decode to the exact same string, we can skip the expensive + # mess_ratio and coherence_ratio analysis and reuse the results from the first encoding. + payload_result_cache: dict[int, tuple[float, list[tuple[str, float]], bool]] = {} + + # When a definitive result (chaos=0.0 and good coherence) is found after testing + # the prioritized encodings (ascii, utf_8), we can significantly reduce the remaining + # work. Encodings that target completely different language families (e.g., Cyrillic + # when the definitive match is Latin) are skipped entirely. + # Additionally, for same-family encodings that pass chaos probing, we reuse the + # definitive match's coherence ratios instead of recomputing them — a major savings + # since coherence_ratio accounts for ~30% of total time on slow Latin files. + definitive_match_found: bool = False + definitive_target_languages: set[str] = set() + # After the definitive match fires, we cap the number of additional same-family + # single-byte encodings that pass chaos probing. Once we've accumulated enough + # good candidates (N), further same-family SB encodings are unlikely to produce + # a better best() result and just waste mess_ratio + coherence_ratio time. + # The first encoding to trigger the definitive match is NOT counted (it's already in). + post_definitive_sb_success_count: int = 0 + POST_DEFINITIVE_SB_CAP: int = 7 + + # When a non-UTF multibyte encoding passes chaos probing with significant multibyte + # content (decoded length < 98% of raw length), skip all remaining single-byte encodings. + # Rationale: multi-byte decoders (CJK) have strict byte-sequence validation — if they + # decode without error AND pass chaos probing with substantial multibyte content, the + # data is genuinely multibyte encoded. Single-byte encodings will always decode (every + # byte maps to something) but waste time on mess_ratio before failing. + # The 98% threshold prevents false triggers on files that happen to have a few valid + # multibyte pairs (e.g., cp424/_ude_1.txt where big5 decodes with 99% ratio). + mb_definitive_match_found: bool = False fallback_ascii: CharsetMatch | None = None fallback_u8: CharsetMatch | None = None @@ -177,7 +235,7 @@ def from_bytes( if "utf_8" not in prioritized_encodings: prioritized_encodings.append("utf_8") - for encoding_iana in prioritized_encodings + IANA_SUPPORTED: + for encoding_iana in prioritized_encodings + IANA_SUPPORTED_MB_FIRST: if cp_isolation and encoding_iana not in cp_isolation: continue @@ -210,9 +268,28 @@ def from_bytes( ) continue + # Skip encodings similar to ones that already soft-failed (high mess ratio). + # Checked BEFORE the expensive decode attempt. + if encoding_iana in soft_failure_skip: + logger.log( + TRACE, + "%s is deemed too similar to a code page that was already considered unsuited. Continuing!", + encoding_iana, + ) + continue + + # Skip encodings that were already fast-tracked from a similar successful encoding. + if encoding_iana in success_fast_tracked: + logger.log( + TRACE, + "Skipping %s: already fast-tracked from a similar successful encoding.", + encoding_iana, + ) + continue + try: is_multi_byte_decoder: bool = is_multi_byte_encoding(encoding_iana) - except (ModuleNotFoundError, ImportError): + except (ModuleNotFoundError, ImportError): # Defensive: logger.log( TRACE, "Encoding %s does not provide an IncrementalDecoder", @@ -220,6 +297,55 @@ def from_bytes( ) continue + # When we've already found a definitive match (chaos=0.0 with good coherence) + # after testing the prioritized encodings, skip encodings that target + # completely different language families. This avoids running expensive + # mess_ratio + coherence_ratio on clearly unrelated candidates (e.g., Cyrillic + # when the definitive match is Latin-based). + if definitive_match_found: + if not is_multi_byte_decoder: + enc_languages = set(encoding_languages(encoding_iana)) + else: + enc_languages = set(mb_encoding_languages(encoding_iana)) + if not enc_languages.intersection(definitive_target_languages): + logger.log( + TRACE, + "Skipping %s: definitive match already found, this encoding targets different languages (%s vs %s).", + encoding_iana, + enc_languages, + definitive_target_languages, + ) + continue + + # After the definitive match, cap the number of additional same-family + # single-byte encodings that pass chaos probing. This avoids testing the + # tail of rare, low-value same-family encodings (mac_iceland, cp860, etc.) + # that almost never change best() but each cost ~1-2ms of mess_ratio + coherence. + if ( + definitive_match_found + and not is_multi_byte_decoder + and post_definitive_sb_success_count >= POST_DEFINITIVE_SB_CAP + ): + logger.log( + TRACE, + "Skipping %s: already accumulated %d same-family results after definitive match (cap=%d).", + encoding_iana, + post_definitive_sb_success_count, + POST_DEFINITIVE_SB_CAP, + ) + continue + + # When a multibyte encoding with significant multibyte content has already + # passed chaos probing, skip all single-byte encodings. They will either fail + # chaos probing (wasting mess_ratio time) or produce inferior results. + if mb_definitive_match_found and not is_multi_byte_decoder: + logger.log( + TRACE, + "Skipping single-byte %s: multi-byte definitive match already found.", + encoding_iana, + ) + continue + try: if is_too_large_sequence and is_multi_byte_decoder is False: str( @@ -250,22 +376,6 @@ def from_bytes( tested_but_hard_failure.append(encoding_iana) continue - similar_soft_failure_test: bool = False - - for encoding_soft_failed in tested_but_soft_failure: - if is_cp_similar(encoding_iana, encoding_soft_failed): - similar_soft_failure_test = True - break - - if similar_soft_failure_test: - logger.log( - TRACE, - "%s is deemed too similar to code page %s and was consider unsuited already. Continuing!", - encoding_iana, - encoding_soft_failed, - ) - continue - r_ = range( 0 if not bom_or_sig_available else len(sig_payload), length, @@ -286,6 +396,108 @@ def from_bytes( encoding_iana, ) + # Payload-hash deduplication: if another encoding already decoded to the + # exact same string, reuse its mess_ratio and coherence results entirely. + # This is strictly more general than the old IANA_SUPPORTED_SIMILAR approach + # because it catches ALL identical decoding, not just pre-mapped ones. + if decoded_payload is not None and not is_multi_byte_decoder: + payload_hash: int = hash(decoded_payload) + cached = payload_result_cache.get(payload_hash) + if cached is not None: + cached_mess, cached_cd, cached_passed = cached + if cached_passed: + # The previous encoding with identical output passed chaos probing. + fast_match = CharsetMatch( + sequences, + encoding_iana, + cached_mess, + bom_or_sig_available, + cached_cd, + ( + decoded_payload + if ( + is_too_large_sequence is False + or encoding_iana + in [specified_encoding, "ascii", "utf_8"] + ) + else None + ), + preemptive_declaration=specified_encoding, + ) + results.append(fast_match) + success_fast_tracked.add(encoding_iana) + logger.log( + TRACE, + "%s fast-tracked (identical decoded payload to a prior encoding, chaos=%f %%).", + encoding_iana, + round(cached_mess * 100, ndigits=3), + ) + + if ( + encoding_iana in [specified_encoding, "ascii", "utf_8"] + and cached_mess < 0.1 + ): + if cached_mess == 0.0: + logger.debug( + "Encoding detection: %s is most likely the one.", + fast_match.encoding, + ) + if explain: + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([fast_match]) + early_stop_results.append(fast_match) + + if ( + len(early_stop_results) + and (specified_encoding is None or specified_encoding in tested) + and "ascii" in tested + and "utf_8" in tested + ): + probable_result: CharsetMatch = early_stop_results.best() # type: ignore[assignment] + logger.debug( + "Encoding detection: %s is most likely the one.", + probable_result.encoding, + ) + if explain: + logger.removeHandler(explain_handler) + logger.setLevel(previous_logger_level) + return CharsetMatches([probable_result]) + + continue + else: + # The previous encoding with identical output failed chaos probing. + tested_but_soft_failure.append(encoding_iana) + logger.log( + TRACE, + "%s fast-skipped (identical decoded payload to a prior encoding that failed chaos probing).", + encoding_iana, + ) + # Prepare fallbacks for special encodings even when skipped. + if enable_fallback and encoding_iana in [ + "ascii", + "utf_8", + specified_encoding, + "utf_16", + "utf_32", + ]: + fallback_entry = CharsetMatch( + sequences, + encoding_iana, + threshold, + bom_or_sig_available, + [], + decoded_payload, + preemptive_declaration=specified_encoding, + ) + if encoding_iana == specified_encoding: + fallback_specified = fallback_entry + elif encoding_iana == "ascii": + fallback_ascii = fallback_entry + else: + fallback_u8 = fallback_entry + continue + max_chunk_gave_up: int = int(len(r_) / 4) max_chunk_gave_up = max(max_chunk_gave_up, 2) @@ -358,6 +570,14 @@ def from_bytes( mean_mess_ratio: float = sum(md_ratios) / len(md_ratios) if md_ratios else 0.0 if mean_mess_ratio >= threshold or early_stop_count >= max_chunk_gave_up: tested_but_soft_failure.append(encoding_iana) + if encoding_iana in IANA_SUPPORTED_SIMILAR: + soft_failure_skip.update(IANA_SUPPORTED_SIMILAR[encoding_iana]) + # Cache this soft-failure so identical decoding from other encodings + # can be skipped immediately. + if decoded_payload is not None and not is_multi_byte_decoder: + payload_result_cache.setdefault( + hash(decoded_payload), (mean_mess_ratio, [], False) + ) logger.log( TRACE, "%s was excluded because of initial chaos probing. Gave up %i time(s). " @@ -369,14 +589,15 @@ def from_bytes( # Preparing those fallbacks in case we got nothing. if ( enable_fallback - and encoding_iana in ["ascii", "utf_8", specified_encoding] + and encoding_iana + in ["ascii", "utf_8", specified_encoding, "utf_16", "utf_32"] and not lazy_str_hard_failure ): fallback_entry = CharsetMatch( sequences, encoding_iana, threshold, - False, + bom_or_sig_available, [], decoded_payload, preemptive_declaration=specified_encoding, @@ -411,9 +632,14 @@ def from_bytes( cd_ratios = [] - # We shall skip the CD when its about ASCII - # Most of the time its not relevant to run "language-detection" on it. + # Run coherence detection on all chunks. We previously tried limiting to + # 1-2 chunks for post-definitive encodings to save time, but this caused + # coverage regressions by producing unrepresentative coherence scores. + # The SB cap and language-family skip optimizations provide sufficient + # speedup without sacrificing coherence accuracy. if encoding_iana != "ascii": + # We shall skip the CD when its about ASCII + # Most of the time its not relevant to run "language-detection" on it. for chunk in md_chunks: chunk_languages = coherence_ratio( chunk, @@ -422,8 +648,9 @@ def from_bytes( ) cd_ratios.append(chunk_languages) - - cd_ratios_merged = merge_coherence_ratios(cd_ratios) + cd_ratios_merged = merge_coherence_ratios(cd_ratios) + else: + cd_ratios_merged = merge_coherence_ratios(cd_ratios) if cd_ratios_merged: logger.log( @@ -452,6 +679,25 @@ def from_bytes( results.append(current_match) + # Cache the successful result for payload-hash deduplication. + if decoded_payload is not None and not is_multi_byte_decoder: + payload_result_cache.setdefault( + hash(decoded_payload), + (mean_mess_ratio, cd_ratios_merged, True), + ) + + # Count post-definitive same-family SB successes for the early termination cap. + # Only count low-mess encodings (< 2%) toward the cap. High-mess encodings are + # marginal results that shouldn't prevent better-quality candidates from being + # tested. For example, iso8859_4 (mess=0%) should not be skipped just because + # 7 high-mess Latin encodings (cp1252 at 8%, etc.) were tried first. + if ( + definitive_match_found + and not is_multi_byte_decoder + and mean_mess_ratio < 0.02 + ): + post_definitive_sb_success_count += 1 + if ( encoding_iana in [specified_encoding, "ascii", "utf_8"] and mean_mess_ratio < 0.1 @@ -475,10 +721,10 @@ def from_bytes( and "ascii" in tested and "utf_8" in tested ): - probable_result: CharsetMatch = early_stop_results.best() # type: ignore[assignment] + probable_result = early_stop_results.best() # type: ignore[assignment] logger.debug( "Encoding detection: %s is most likely the one.", - probable_result.encoding, + probable_result.encoding, # type: ignore[union-attr] ) if explain: # Defensive: ensure exit path clean handler logger.removeHandler(explain_handler) @@ -486,6 +732,66 @@ def from_bytes( return CharsetMatches([probable_result]) + # Once we find a result with good coherence (>= 0.5) after testing the + # prioritized encodings (ascii, utf_8), activate "definitive mode": skip + # encodings that target completely different language families. This avoids + # running expensive mess_ratio + coherence_ratio on clearly unrelated + # candidates (e.g., Cyrillic encodings when the match is Latin-based). + # We require coherence >= 0.5 to avoid false positives (e.g., cp1251 decoding + # Hebrew text with 0.0 chaos but wrong language detection at coherence 0.33). + if not definitive_match_found and not is_multi_byte_decoder: + best_coherence = ( + max((v for _, v in cd_ratios_merged), default=0.0) + if cd_ratios_merged + else 0.0 + ) + if best_coherence >= 0.5 and "ascii" in tested and "utf_8" in tested: + definitive_match_found = True + definitive_target_languages.update(target_languages) + logger.log( + TRACE, + "Definitive match found: %s (chaos=%.3f, coherence=%.2f). Encodings targeting different language families will be skipped.", + encoding_iana, + mean_mess_ratio, + best_coherence, + ) + + # When a non-UTF multibyte encoding passes chaos probing with significant + # multibyte content (decoded < 98% of raw), activate mb_definitive_match. + # This skips all remaining single-byte encodings which would either soft-fail + # (running expensive mess_ratio for nothing) or produce inferior results. + if ( + not mb_definitive_match_found + and is_multi_byte_decoder + and multi_byte_bonus + and decoded_payload is not None + and len(decoded_payload) < length * 0.98 + and encoding_iana + not in { + "utf_8", + "utf_8_sig", + "utf_16", + "utf_16_be", + "utf_16_le", + "utf_32", + "utf_32_be", + "utf_32_le", + "utf_7", + } + and "ascii" in tested + and "utf_8" in tested + ): + mb_definitive_match_found = True + logger.log( + TRACE, + "Multi-byte definitive match: %s (chaos=%.3f, decoded=%d/%d=%.1f%%). Single-byte encodings will be skipped.", + encoding_iana, + mean_mess_ratio, + len(decoded_payload), + length, + len(decoded_payload) / length * 100, + ) + if encoding_iana == sig_encoding: logger.debug( "Encoding detection: %s is most likely the one as we detected a BOM or SIG within " diff --git a/addons/source-python/packages/site-packages/charset_normalizer/cd.cp313-win_amd64.pyd b/addons/source-python/packages/site-packages/charset_normalizer/cd.cp313-win_amd64.pyd new file mode 100644 index 0000000000000000000000000000000000000000..cdb777a3285e68e9e466c193761ca6f84978fb6f GIT binary patch literal 10752 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 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/charset_normalizer/cd.py b/addons/source-python/packages/site-packages/charset_normalizer/cd.py index 71a3ed519..9545d35d1 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/cd.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/cd.py @@ -12,6 +12,8 @@ LANGUAGE_SUPPORTED_COUNT, TOO_SMALL_SEQUENCE, ZH_NAMES, + _FREQUENCIES_SET, + _FREQUENCIES_RANK, ) from .md import is_suspiciously_successive_range from .models import CoherenceMatches @@ -29,7 +31,9 @@ def encoding_unicode_range(iana_name: str) -> list[str]: Return associated unicode ranges in a single byte code page. """ if is_multi_byte_encoding(iana_name): - raise OSError("Function not supported on multi-byte code page") + raise OSError( # Defensive: + "Function not supported on multi-byte code page" + ) decoder = importlib.import_module(f"encodings.{iana_name}").IncrementalDecoder @@ -142,6 +146,7 @@ def alphabet_languages( """ languages: list[tuple[str, float]] = [] + characters_set: frozenset[str] = frozenset(characters) source_have_accents = any(is_accentuated(character) for character in characters) for language, language_characters in FREQUENCIES.items(): @@ -155,9 +160,7 @@ def alphabet_languages( character_count: int = len(language_characters) - character_match_count: int = len( - [c for c in language_characters if c in characters] - ) + character_match_count: int = len(_FREQUENCIES_SET[language] & characters_set) ratio: float = character_match_count / character_count @@ -178,26 +181,46 @@ def characters_popularity_compare( Beware that is function is not strict on the match in order to ease the detection. (Meaning close match is 1.) """ if language not in FREQUENCIES: - raise ValueError(f"{language} not available") + raise ValueError(f"{language} not available") # Defensive: character_approved_count: int = 0 - FREQUENCIES_language_set = set(FREQUENCIES[language]) + frequencies_language_set: frozenset[str] = _FREQUENCIES_SET[language] + lang_rank: dict[str, int] = _FREQUENCIES_RANK[language] ordered_characters_count: int = len(ordered_characters) target_language_characters_count: int = len(FREQUENCIES[language]) large_alphabet: bool = target_language_characters_count > 26 + expected_projection_ratio: float = ( + target_language_characters_count / ordered_characters_count + ) + + # Pre-built rank dict for ordered_characters (avoids repeated list slicing). + ordered_rank: dict[str, int] = { + char: rank for rank, char in enumerate(ordered_characters) + } + + # Pre-compute characters common to both orderings. + # Avoids repeated `c in ordered_rank` dict lookups in the inner counts. + common_chars: list[tuple[int, int]] = [ + (lr, ordered_rank[c]) for c, lr in lang_rank.items() if c in ordered_rank + ] + + # Pre-extract lr and orr arrays for faster iteration in the inner loop. + # Plain integer loops with local arrays are much faster under mypyc than + # generator expression sums over a list of tuples. + common_count: int = len(common_chars) + common_lr: list[int] = [p[0] for p in common_chars] + common_orr: list[int] = [p[1] for p in common_chars] + for character, character_rank in zip( ordered_characters, range(0, ordered_characters_count) ): - if character not in FREQUENCIES_language_set: + if character not in frequencies_language_set: continue - character_rank_in_language: int = FREQUENCIES[language].index(character) - expected_projection_ratio: float = ( - target_language_characters_count / ordered_characters_count - ) + character_rank_in_language: int = lang_rank[character] character_rank_projection: int = int(character_rank * expected_projection_ratio) if ( @@ -214,35 +237,36 @@ def characters_popularity_compare( character_approved_count += 1 continue - characters_before_source: list[str] = FREQUENCIES[language][ - 0:character_rank_in_language - ] - characters_after_source: list[str] = FREQUENCIES[language][ - character_rank_in_language: - ] - characters_before: list[str] = ordered_characters[0:character_rank] - characters_after: list[str] = ordered_characters[character_rank:] - - before_match_count: int = len( - set(characters_before) & set(characters_before_source) - ) - - after_match_count: int = len( - set(characters_after) & set(characters_after_source) - ) - - if len(characters_before_source) == 0 and before_match_count <= 4: + # Count how many characters appear "before" in both orderings, + # and how many appear "at or after" in both orderings. + # Single pass over pre-extracted arrays — much faster under mypyc + # than two generator expression sums. + before_match_count: int = 0 + after_match_count: int = 0 + for i in range(common_count): + lr_i: int = common_lr[i] + orr_i: int = common_orr[i] + if lr_i < character_rank_in_language: + if orr_i < character_rank: + before_match_count += 1 + else: + if orr_i >= character_rank: + after_match_count += 1 + + after_len: int = target_language_characters_count - character_rank_in_language + + if character_rank_in_language == 0 and before_match_count <= 4: character_approved_count += 1 continue - if len(characters_after_source) == 0 and after_match_count <= 4: + if after_len == 0 and after_match_count <= 4: character_approved_count += 1 continue if ( - before_match_count / len(characters_before_source) >= 0.4 - or after_match_count / len(characters_after_source) >= 0.4 - ): + character_rank_in_language > 0 + and before_match_count / character_rank_in_language >= 0.4 + ) or (after_len > 0 and after_match_count / after_len >= 0.4): character_approved_count += 1 continue @@ -255,37 +279,72 @@ def alpha_unicode_split(decoded_sequence: str) -> list[str]: Ex. a text containing English/Latin with a bit a Hebrew will return two items in the resulting list; One containing the latin letters and the other hebrew. """ - layers: dict[str, str] = {} + layers: dict[str, list[str]] = {} + + # Fast path: track single-layer key to skip dict iteration for single-script text. + single_layer_key: str | None = None + multi_layer: bool = False + + # Cache the last character_range and its resolved layer to avoid repeated + # is_suspiciously_successive_range calls for consecutive same-range chars. + prev_character_range: str | None = None + prev_layer_target: str | None = None for character in decoded_sequence: if character.isalpha() is False: continue - character_range: str | None = unicode_range(character) + # ASCII fast-path: a-z and A-Z are always "Basic Latin". + # Avoids unicode_range() function call overhead for the most common case. + character_ord: int = ord(character) + if character_ord < 128: + character_range: str | None = "Basic Latin" + else: + character_range = unicode_range(character) if character_range is None: continue + # Fast path: same range as previous character → reuse cached layer target. + if character_range == prev_character_range: + if prev_layer_target is not None: + layers[prev_layer_target].append(character) + continue + layer_target_range: str | None = None - for discovered_range in layers: + if multi_layer: + for discovered_range in layers: + if ( + is_suspiciously_successive_range(discovered_range, character_range) + is False + ): + layer_target_range = discovered_range + break + elif single_layer_key is not None: if ( - is_suspiciously_successive_range(discovered_range, character_range) + is_suspiciously_successive_range(single_layer_key, character_range) is False ): - layer_target_range = discovered_range - break + layer_target_range = single_layer_key if layer_target_range is None: layer_target_range = character_range if layer_target_range not in layers: - layers[layer_target_range] = character.lower() - continue + layers[layer_target_range] = [] + if single_layer_key is None: + single_layer_key = layer_target_range + else: + multi_layer = True + + layers[layer_target_range].append(character) - layers[layer_target_range] += character.lower() + # Cache for next iteration + prev_character_range = character_range + prev_layer_target = layer_target_range - return list(layers.values()) + return ["".join(chars).lower() for chars in layers.values()] def merge_coherence_ratios(results: list[CoherenceMatches]) -> CoherenceMatches: @@ -366,7 +425,7 @@ def coherence_ratio( sequence_frequencies: TypeCounter[str] = Counter(layer) most_common = sequence_frequencies.most_common() - character_count: int = sum(o for c, o in most_common) + character_count: int = len(layer) if character_count <= TOO_SMALL_SEQUENCE: continue diff --git a/addons/source-python/packages/site-packages/charset_normalizer/cli/__main__.py b/addons/source-python/packages/site-packages/charset_normalizer/cli/__main__.py index 64a290f2f..ad843c1d0 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/cli/__main__.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/cli/__main__.py @@ -2,6 +2,7 @@ import argparse import sys +import typing from json import dumps from os.path import abspath, basename, dirname, join, realpath from platform import python_version @@ -13,37 +14,78 @@ from charset_normalizer.version import __version__ -def query_yes_no(question: str, default: str = "yes") -> bool: - """Ask a yes/no question via input() and return their answer. +def query_yes_no(question: str, default: str = "yes") -> bool: # Defensive: + """Ask a yes/no question via input() and return the answer as a bool.""" + prompt = " [Y/n] " if default == "yes" else " [y/N] " - "question" is a string that is presented to the user. - "default" is the presumed answer if the user just hits . - It must be "yes" (the default), "no" or None (meaning - an answer is required of the user). + while True: + choice = input(question + prompt).strip().lower() + if not choice: + return default == "yes" + if choice in ("y", "yes"): + return True + if choice in ("n", "no"): + return False + print("Please respond with 'y' or 'n'.") + + +class FileType: + """Factory for creating file object types - The "answer" return value is True for "yes" or False for "no". + Instances of FileType are typically passed as type= arguments to the + ArgumentParser add_argument() method. - Credit goes to (c) https://stackoverflow.com/questions/3041986/apt-command-line-interface-like-yes-no-input + Keyword Arguments: + - mode -- A string indicating how the file is to be opened. Accepts the + same values as the builtin open() function. + - bufsize -- The file's desired buffer size. Accepts the same values as + the builtin open() function. + - encoding -- The file's encoding. Accepts the same values as the + builtin open() function. + - errors -- A string indicating how encoding and decoding errors are to + be handled. Accepts the same value as the builtin open() function. + + Backported from CPython 3.12 """ - valid = {"yes": True, "y": True, "ye": True, "no": False, "n": False} - if default is None: - prompt = " [y/n] " - elif default == "yes": - prompt = " [Y/n] " - elif default == "no": - prompt = " [y/N] " - else: - raise ValueError("invalid default answer: '%s'" % default) - while True: - sys.stdout.write(question + prompt) - choice = input().lower() - if default is not None and choice == "": - return valid[default] - elif choice in valid: - return valid[choice] - else: - sys.stdout.write("Please respond with 'yes' or 'no' " "(or 'y' or 'n').\n") + def __init__( + self, + mode: str = "r", + bufsize: int = -1, + encoding: str | None = None, + errors: str | None = None, + ): + self._mode = mode + self._bufsize = bufsize + self._encoding = encoding + self._errors = errors + + def __call__(self, string: str) -> typing.IO: # type: ignore[type-arg] + # the special argument "-" means sys.std{in,out} + if string == "-": + if "r" in self._mode: + return sys.stdin.buffer if "b" in self._mode else sys.stdin + elif any(c in self._mode for c in "wax"): + return sys.stdout.buffer if "b" in self._mode else sys.stdout + else: + msg = f'argument "-" with mode {self._mode}' + raise ValueError(msg) + + # all other arguments are used as file names + try: + return open(string, self._mode, self._bufsize, self._encoding, self._errors) + except OSError as e: + message = f"can't open '{string}': {e}" + raise argparse.ArgumentTypeError(message) + + def __repr__(self) -> str: + args = self._mode, self._bufsize + kwargs = [("encoding", self._encoding), ("errors", self._errors)] + args_str = ", ".join( + [repr(arg) for arg in args if arg != -1] + + [f"{kw}={arg!r}" for kw, arg in kwargs if arg is not None] + ) + return f"{type(self).__name__}({args_str})" def cli_detect(argv: list[str] | None = None) -> int: @@ -59,7 +101,7 @@ def cli_detect(argv: list[str] | None = None) -> int: ) parser.add_argument( - "files", type=argparse.FileType("rb"), nargs="+", help="File(s) to be analysed" + "files", type=FileType("rb"), nargs="+", help="File(s) to be analysed" ) parser.add_argument( "-v", @@ -202,25 +244,24 @@ def cli_detect(argv: list[str] | None = None) -> int: ) ) else: - x_.append( - CliDetectionResult( - abspath(my_file.name), - best_guess.encoding, - best_guess.encoding_aliases, - [ - cp - for cp in best_guess.could_be_from_charset - if cp != best_guess.encoding - ], - best_guess.language, - best_guess.alphabets, - best_guess.bom, - best_guess.percent_chaos, - best_guess.percent_coherence, - None, - True, - ) + cli_result = CliDetectionResult( + abspath(my_file.name), + best_guess.encoding, + best_guess.encoding_aliases, + [ + cp + for cp in best_guess.could_be_from_charset + if cp != best_guess.encoding + ], + best_guess.language, + best_guess.alphabets, + best_guess.bom, + best_guess.percent_chaos, + best_guess.percent_coherence, + None, + True, ) + x_.append(cli_result) if len(matches) > 1 and args.alternatives: for el in matches: @@ -281,11 +322,11 @@ def cli_detect(argv: list[str] | None = None) -> int: continue try: - x_[0].unicode_path = join(dir_path, ".".join(o_)) + cli_result.unicode_path = join(dir_path, ".".join(o_)) - with open(x_[0].unicode_path, "wb") as fp: + with open(cli_result.unicode_path, "wb") as fp: fp.write(best_guess.output()) - except OSError as e: + except OSError as e: # Defensive: print(str(e), file=sys.stderr) if my_file.closed is False: my_file.close() @@ -317,5 +358,5 @@ def cli_detect(argv: list[str] | None = None) -> int: return 0 -if __name__ == "__main__": +if __name__ == "__main__": # Defensive: cli_detect() diff --git a/addons/source-python/packages/site-packages/charset_normalizer/constant.py b/addons/source-python/packages/site-packages/charset_normalizer/constant.py index 1fb9508d2..6ed779567 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/constant.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/constant.py @@ -25,7 +25,7 @@ UTF8_MAXIMAL_ALLOCATION: int = 1_112_064 -# Up-to-date Unicode ucd/15.0.0 +# Up-to-date Unicode ucd/17.0.0 UNICODE_RANGES_COMBINED: dict[str, range] = { "Control character": range(32), "Basic Latin": range(32, 128), @@ -213,6 +213,7 @@ "Elbasan": range(66816, 66864), "Caucasian Albanian": range(66864, 66928), "Vithkuqi": range(66928, 67008), + "Todhri": range(67008, 67072), "Linear A": range(67072, 67456), "Latin Extended-F": range(67456, 67520), "Cypriot Syllabary": range(67584, 67648), @@ -222,6 +223,7 @@ "Hatran": range(67808, 67840), "Phoenician": range(67840, 67872), "Lydian": range(67872, 67904), + "Sidetic": range(67904, 67936), "Meroitic Hieroglyphs": range(67968, 68000), "Meroitic Cursive": range(68000, 68096), "Kharoshthi": range(68096, 68192), @@ -235,6 +237,7 @@ "Old Turkic": range(68608, 68688), "Old Hungarian": range(68736, 68864), "Hanifi Rohingya": range(68864, 68928), + "Garay": range(68928, 69008), "Rumi Numeral Symbols": range(69216, 69248), "Yezidi": range(69248, 69312), "Arabic Extended-C": range(69312, 69376), @@ -254,12 +257,14 @@ "Multani": range(70272, 70320), "Khudawadi": range(70320, 70400), "Grantha": range(70400, 70528), + "Tulu-Tigalari": range(70528, 70656), "Newa": range(70656, 70784), "Tirhuta": range(70784, 70880), "Siddham": range(71040, 71168), "Modi": range(71168, 71264), "Mongolian Supplement": range(71264, 71296), "Takri": range(71296, 71376), + "Myanmar Extended-C": range(71376, 71424), "Ahom": range(71424, 71504), "Dogra": range(71680, 71760), "Warang Citi": range(71840, 71936), @@ -270,10 +275,13 @@ "Unified Canadian Aboriginal Syllabics Extended-A": range(72368, 72384), "Pau Cin Hau": range(72384, 72448), "Devanagari Extended-A": range(72448, 72544), + "Sharada Supplement": range(72544, 72576), + "Sunuwar": range(72640, 72704), "Bhaiksuki": range(72704, 72816), "Marchen": range(72816, 72896), "Masaram Gondi": range(72960, 73056), "Gunjala Gondi": range(73056, 73136), + "Tolong Siki": range(73136, 73200), "Makasar": range(73440, 73472), "Kawi": range(73472, 73568), "Lisu Supplement": range(73648, 73664), @@ -284,19 +292,24 @@ "Cypro-Minoan": range(77712, 77824), "Egyptian Hieroglyphs": range(77824, 78896), "Egyptian Hieroglyph Format Controls": range(78896, 78944), + "Egyptian Hieroglyphs Extended-A": range(78944, 82944), "Anatolian Hieroglyphs": range(82944, 83584), + "Gurung Khema": range(90368, 90432), "Bamum Supplement": range(92160, 92736), "Mro": range(92736, 92784), "Tangsa": range(92784, 92880), "Bassa Vah": range(92880, 92928), "Pahawh Hmong": range(92928, 93072), + "Kirat Rai": range(93504, 93568), "Medefaidrin": range(93760, 93856), + "Beria Erfe": range(93856, 93920), "Miao": range(93952, 94112), "Ideographic Symbols and Punctuation": range(94176, 94208), "Tangut": range(94208, 100352), "Tangut Components": range(100352, 101120), "Khitan Small Script": range(101120, 101632), "Tangut Supplement": range(101632, 101760), + "Tangut Components Supplement": range(101760, 101888), "Kana Extended-B": range(110576, 110592), "Kana Supplement": range(110592, 110848), "Kana Extended-A": range(110848, 110896), @@ -304,6 +317,8 @@ "Nushu": range(110960, 111360), "Duployan": range(113664, 113824), "Shorthand Format Controls": range(113824, 113840), + "Symbols for Legacy Computing Supplement": range(117760, 118464), + "Miscellaneous Symbols Supplement": range(118464, 118528), "Znamenny Musical Notation": range(118528, 118736), "Byzantine Musical Symbols": range(118784, 119040), "Musical Symbols": range(119040, 119296), @@ -321,6 +336,8 @@ "Toto": range(123536, 123584), "Wancho": range(123584, 123648), "Nag Mundari": range(124112, 124160), + "Ol Onal": range(124368, 124416), + "Tai Yo": range(124608, 124672), "Ethiopic Extended-B": range(124896, 124928), "Mende Kikakui": range(124928, 125152), "Adlam": range(125184, 125280), @@ -333,7 +350,7 @@ "Enclosed Alphanumeric Supplement": range(127232, 127488), "Enclosed Ideographic Supplement": range(127488, 127744), "Miscellaneous Symbols and Pictographs": range(127744, 128512), - "Emoticons range(Emoji)": range(128512, 128592), + "Emoticons": range(128512, 128592), "Ornamental Dingbats": range(128592, 128640), "Transport and Map Symbols": range(128640, 128768), "Alchemical Symbols": range(128768, 128896), @@ -348,9 +365,11 @@ "CJK Unified Ideographs Extension D": range(177984, 178208), "CJK Unified Ideographs Extension E": range(178208, 183984), "CJK Unified Ideographs Extension F": range(183984, 191472), + "CJK Unified Ideographs Extension I": range(191472, 192096), "CJK Compatibility Ideographs Supplement": range(194560, 195104), "CJK Unified Ideographs Extension G": range(196608, 201552), "CJK Unified Ideographs Extension H": range(201552, 205744), + "CJK Unified Ideographs Extension J": range(205744, 210048), "Tags": range(917504, 917632), "Variation Selectors Supplement": range(917760, 918000), "Supplementary Private Use Area-A": range(983040, 1048576), @@ -529,29 +548,48 @@ } -COMMON_SAFE_ASCII_CHARACTERS: set[str] = { - "<", - ">", - "=", - ":", - "/", - "&", - ";", - "{", - "}", - "[", - "]", - ",", - "|", - '"', - "-", - "(", - ")", -} +COMMON_SAFE_ASCII_CHARACTERS: frozenset[str] = frozenset( + { + "<", + ">", + "=", + ":", + "/", + "&", + ";", + "{", + "}", + "[", + "]", + ",", + "|", + '"', + "-", + "(", + ")", + } +) + +# Sample character sets — replace with full lists if needed +COMMON_CHINESE_CHARACTERS = "的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严龙飞" +COMMON_JAPANESE_CHARACTERS = "日一国年大十二本中長出三時行見月分後前生五間上東四今金九入学高円子外八六下来気小七山話女北午百書先名川千水半男西電校語土木聞食車何南万毎白天母火右読友左休父雨" -KO_NAMES: set[str] = {"johab", "cp949", "euc_kr"} -ZH_NAMES: set[str] = {"big5", "cp950", "big5hkscs", "hz"} +COMMON_KOREAN_CHARACTERS = "一二三四五六七八九十百千萬上下左右中人女子大小山川日月火水木金土父母天地國名年時文校學生" + +# Combine all into a frozenset +COMMON_CJK_CHARACTERS = frozenset( + "".join( + [ + COMMON_CHINESE_CHARACTERS, + COMMON_JAPANESE_CHARACTERS, + COMMON_KOREAN_CHARACTERS, + ] + ) +) + +KO_NAMES: frozenset[str] = frozenset({"johab", "cp949", "euc_kr"}) +ZH_NAMES: frozenset[str] = frozenset({"big5", "cp950", "big5hkscs", "hz"}) # Logging LEVEL below DEBUG TRACE: int = 5 @@ -786,12 +824,12 @@ ], "Russian": [ "о", - "а", "е", + "а", "и", "н", - "с", "т", + "с", "р", "в", "л", @@ -814,106 +852,85 @@ ], # Jap-Kanji "Japanese": [ - "人", + "日", "一", + "人", + "年", "大", - "亅", - "丁", - "丨", - "竹", - "笑", - "口", - "日", - "今", - "二", - "彳", - "行", "十", - "土", - "丶", - "寸", - "寺", + "二", + "本", + "中", + "長", + "出", + "三", "時", - "乙", - "丿", - "乂", - "气", - "気", - "冂", - "巾", - "亠", - "市", - "目", - "儿", + "行", "見", - "八", - "小", - "凵", - "県", "月", - "彐", - "門", - "間", - "木", - "東", - "山", - "出", - "本", - "中", - "刀", "分", - "耳", - "又", - "取", - "最", - "言", - "田", - "心", - "思", - "刂", + "後", "前", - "京", - "尹", - "事", "生", - "厶", - "云", - "会", - "未", - "来", - "白", - "冫", - "楽", - "灬", - "馬", - "尸", - "尺", - "駅", - "明", - "耂", - "者", - "了", - "阝", - "都", - "高", - "卜", - "占", - "厂", - "广", - "店", - "子", - "申", - "奄", - "亻", - "俺", + "五", + "間", "上", - "方", - "冖", + "東", + "四", + "今", + "金", + "九", + "入", "学", - "衣", - "艮", + "高", + "円", + "子", + "外", + "八", + "六", + "下", + "来", + "気", + "小", + "七", + "山", + "話", + "女", + "北", + "午", + "百", + "書", + "先", + "名", + "川", + "千", + "水", + "半", + "男", + "西", + "電", + "校", + "語", + "土", + "木", + "聞", "食", - "自", + "車", + "何", + "南", + "万", + "毎", + "白", + "天", + "母", + "火", + "右", + "読", + "友", + "左", + "休", + "父", + "雨", ], # Jap-Katakana "Japanese—": [ @@ -1996,3 +2013,38 @@ } LANGUAGE_SUPPORTED_COUNT: int = len(FREQUENCIES) + +# Bit flags for unified character classification. +# A single unicodedata.name() call sets all relevant flags at once. +_LATIN: int = 1 +_ACCENTUATED: int = 1 << 1 +_CJK: int = 1 << 2 +_HANGUL: int = 1 << 3 +_KATAKANA: int = 1 << 4 +_HIRAGANA: int = 1 << 5 +_THAI: int = 1 << 6 +_ARABIC: int = 1 << 7 +_ARABIC_ISOLATED_FORM: int = 1 << 8 + +_ACCENT_KEYWORDS: tuple[str, ...] = ( + "WITH GRAVE", + "WITH ACUTE", + "WITH CEDILLA", + "WITH DIAERESIS", + "WITH CIRCUMFLEX", + "WITH TILDE", + "WITH MACRON", + "WITH RING ABOVE", +) + +# Pre-built lookup structures for FREQUENCIES (computed once at import time). +# character -> rank mapping per language (replaces list .index() calls). +_FREQUENCIES_RANK: dict[str, dict[str, int]] = { + lang: {char: rank for rank, char in enumerate(chars)} + for lang, chars in FREQUENCIES.items() +} + +# frozenset per language (avoids rebuilding set() per call). +_FREQUENCIES_SET: dict[str, frozenset[str]] = { + lang: frozenset(chars) for lang, chars in FREQUENCIES.items() +} diff --git a/addons/source-python/packages/site-packages/charset_normalizer/legacy.py b/addons/source-python/packages/site-packages/charset_normalizer/legacy.py index a2f534514..293c1efaf 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/legacy.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/legacy.py @@ -4,11 +4,10 @@ from warnings import warn from .api import from_bytes -from .constant import CHARDET_CORRESPONDENCE +from .constant import CHARDET_CORRESPONDENCE, TOO_SMALL_SEQUENCE -# TODO: remove this check when dropping Python 3.7 support if TYPE_CHECKING: - from typing_extensions import TypedDict + from typing import TypedDict class ResultDict(TypedDict): encoding: str | None @@ -37,9 +36,7 @@ def detect( if not isinstance(byte_str, (bytearray, bytes)): raise TypeError( # pragma: nocover - "Expected object of type bytes or bytearray, got: " "{}".format( - type(byte_str) - ) + f"Expected object of type bytes or bytearray, got: {type(byte_str)}" ) if isinstance(byte_str, bytearray): @@ -51,6 +48,22 @@ def detect( language = r.language if r is not None and r.language != "Unknown" else "" confidence = 1.0 - r.chaos if r is not None else None + # automatically lower confidence + # on small bytes samples. + # https://github.com/jawah/charset_normalizer/issues/391 + if ( + confidence is not None + and confidence >= 0.9 + and encoding + not in { + "utf_8", + "ascii", + } + and r.bom is False # type: ignore[union-attr] + and len(byte_str) < TOO_SMALL_SEQUENCE + ): + confidence -= 0.2 + # Note: CharsetNormalizer does not return 'UTF-8-SIG' as the sig get stripped in the detection/normalization process # but chardet does return 'utf-8-sig' and it is a valid codec name. if r is not None and encoding == "utf_8" and r.bom: diff --git a/addons/source-python/packages/site-packages/charset_normalizer/md.cp313-win_amd64.pyd b/addons/source-python/packages/site-packages/charset_normalizer/md.cp313-win_amd64.pyd new file mode 100644 index 0000000000000000000000000000000000000000..feee0f3c51e5ae229067d67919ad44b6a04d536c GIT binary patch literal 10752 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 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/charset_normalizer/md.py b/addons/source-python/packages/site-packages/charset_normalizer/md.py index 9ed59a868..b41d9cfc5 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/md.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/md.py @@ -1,33 +1,207 @@ from __future__ import annotations +import sys from functools import lru_cache from logging import getLogger +if sys.version_info >= (3, 8): + from typing import final +else: + try: + from typing_extensions import final + except ImportError: + + def final(cls): # type: ignore[misc,no-untyped-def] + return cls + + from .constant import ( + COMMON_CJK_CHARACTERS, COMMON_SAFE_ASCII_CHARACTERS, TRACE, UNICODE_SECONDARY_RANGE_KEYWORD, + _ACCENTUATED, + _ARABIC, + _ARABIC_ISOLATED_FORM, + _CJK, + _HANGUL, + _HIRAGANA, + _KATAKANA, + _LATIN, + _THAI, ) from .utils import ( - is_accentuated, - is_arabic, - is_arabic_isolated_form, - is_case_variable, - is_cjk, + _character_flags, is_emoticon, - is_hangul, - is_hiragana, - is_katakana, - is_latin, is_punctuation, is_separator, is_symbol, - is_thai, - is_unprintable, remove_accent, unicode_range, ) +# Combined bitmask for CJK/Hangul/Katakana/Hiragana/Thai glyph detection. +_GLYPH_MASK: int = _CJK | _HANGUL | _KATAKANA | _HIRAGANA | _THAI + + +@final +class CharInfo: + """Pre-computed character properties shared across all detectors. + + Instantiated once and reused via :meth:`update` on every character + in the hot loop so that redundant calls to str methods + (``isalpha``, ``isupper``, …) and cached utility functions + (``_character_flags``, ``is_punctuation``, …) are avoided when + several plugins need the same information. + """ + + __slots__ = ( + "character", + "printable", + "alpha", + "upper", + "lower", + "space", + "digit", + "is_ascii", + "case_variable", + "flags", + "accentuated", + "latin", + "is_cjk", + "is_arabic", + "is_glyph", + "punct", + "sym", + ) + + def __init__(self) -> None: + self.character: str = "" + self.printable: bool = False + self.alpha: bool = False + self.upper: bool = False + self.lower: bool = False + self.space: bool = False + self.digit: bool = False + self.is_ascii: bool = False + self.case_variable: bool = False + self.flags: int = 0 + self.accentuated: bool = False + self.latin: bool = False + self.is_cjk: bool = False + self.is_arabic: bool = False + self.is_glyph: bool = False + self.punct: bool = False + self.sym: bool = False + + def update(self, character: str) -> None: + """Update all properties for *character* (called once per character).""" + self.character = character + + # ASCII fast-path: for characters with ord < 128, we can skip + # _character_flags() entirely and derive most properties from ord. + o: int = ord(character) + if o < 128: + self.is_ascii = True + self.accentuated = False + self.is_cjk = False + self.is_arabic = False + self.is_glyph = False + # ASCII alpha: a-z (97-122) or A-Z (65-90) + if 65 <= o <= 90: + # Uppercase ASCII letter + self.alpha = True + self.upper = True + self.lower = False + self.space = False + self.digit = False + self.printable = True + self.case_variable = True + self.flags = _LATIN + self.latin = True + self.punct = False + self.sym = False + elif 97 <= o <= 122: + # Lowercase ASCII letter + self.alpha = True + self.upper = False + self.lower = True + self.space = False + self.digit = False + self.printable = True + self.case_variable = True + self.flags = _LATIN + self.latin = True + self.punct = False + self.sym = False + elif 48 <= o <= 57: + # ASCII digit 0-9 + self.alpha = False + self.upper = False + self.lower = False + self.space = False + self.digit = True + self.printable = True + self.case_variable = False + self.flags = 0 + self.latin = False + self.punct = False + self.sym = False + elif o == 32 or (9 <= o <= 13): + # Space, tab, newline, etc. + self.alpha = False + self.upper = False + self.lower = False + self.space = True + self.digit = False + self.printable = o == 32 + self.case_variable = False + self.flags = 0 + self.latin = False + self.punct = False + self.sym = False + else: + # Other ASCII (punctuation, symbols, control chars) + self.printable = character.isprintable() + self.alpha = False + self.upper = False + self.lower = False + self.space = False + self.digit = False + self.case_variable = False + self.flags = 0 + self.latin = False + self.punct = is_punctuation(character) if self.printable else False + self.sym = is_symbol(character) if self.printable else False + else: + # Non-ASCII path + self.is_ascii = False + self.printable = character.isprintable() + self.alpha = character.isalpha() + self.upper = character.isupper() + self.lower = character.islower() + self.space = character.isspace() + self.digit = character.isdigit() + self.case_variable = self.lower != self.upper + + # Flag-based classification (single unicodedata.name() call, lru-cached) + flags: int + if self.alpha: + flags = _character_flags(character) + else: + flags = 0 + self.flags = flags + self.accentuated = bool(flags & _ACCENTUATED) + self.latin = bool(flags & _LATIN) + self.is_cjk = bool(flags & _CJK) + self.is_arabic = bool(flags & _ARABIC) + self.is_glyph = bool(flags & _GLYPH_MASK) + + # Eagerly compute punct and sym (avoids property dispatch overhead + # on 300K+ accesses in the hot loop). + self.punct = is_punctuation(character) if self.printable else False + self.sym = is_symbol(character) if self.printable else False + class MessDetectorPlugin: """ @@ -35,20 +209,16 @@ class MessDetectorPlugin: All detectors MUST extend and implement given methods. """ - def eligible(self, character: str) -> bool: - """ - Determine if given character should be fed in. - """ - raise NotImplementedError # pragma: nocover + __slots__ = () - def feed(self, character: str) -> None: + def feed_info(self, character: str, info: CharInfo) -> None: """ The main routine to be executed upon character. Insert the logic in witch the text would be considered chaotic. """ - raise NotImplementedError # pragma: nocover + raise NotImplementedError # Defensive: - def reset(self) -> None: # pragma: no cover + def reset(self) -> None: # Defensive: """ Permit to reset the plugin to the initial state. """ @@ -60,10 +230,19 @@ def ratio(self) -> float: Compute the chaos ratio based on what your feed() has seen. Must NOT be lower than 0.; No restriction gt 0. """ - raise NotImplementedError # pragma: nocover + raise NotImplementedError # Defensive: +@final class TooManySymbolOrPunctuationPlugin(MessDetectorPlugin): + __slots__ = ( + "_punctuation_count", + "_symbol_count", + "_character_count", + "_last_printable_char", + "_frenzy_symbol_in_word", + ) + def __init__(self) -> None: self._punctuation_count: int = 0 self._symbol_count: int = 0 @@ -72,23 +251,17 @@ def __init__(self) -> None: self._last_printable_char: str | None = None self._frenzy_symbol_in_word: bool = False - def eligible(self, character: str) -> bool: - return character.isprintable() - - def feed(self, character: str) -> None: + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" self._character_count += 1 if ( character != self._last_printable_char and character not in COMMON_SAFE_ASCII_CHARACTERS ): - if is_punctuation(character): + if info.punct: self._punctuation_count += 1 - elif ( - character.isdigit() is False - and is_symbol(character) - and is_emoticon(character) is False - ): + elif not info.digit and info.sym and not is_emoticon(character): self._symbol_count += 2 self._last_printable_char = character @@ -110,18 +283,19 @@ def ratio(self) -> float: return ratio_of_punctuation if ratio_of_punctuation >= 0.3 else 0.0 +@final class TooManyAccentuatedPlugin(MessDetectorPlugin): + __slots__ = ("_character_count", "_accentuated_count") + def __init__(self) -> None: self._character_count: int = 0 self._accentuated_count: int = 0 - def eligible(self, character: str) -> bool: - return character.isalpha() - - def feed(self, character: str) -> None: + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" self._character_count += 1 - if is_accentuated(character): + if info.accentuated: self._accentuated_count += 1 def reset(self) -> None: # Abstract @@ -137,16 +311,22 @@ def ratio(self) -> float: return ratio_of_accentuation if ratio_of_accentuation >= 0.35 else 0.0 +@final class UnprintablePlugin(MessDetectorPlugin): + __slots__ = ("_unprintable_count", "_character_count") + def __init__(self) -> None: self._unprintable_count: int = 0 self._character_count: int = 0 - def eligible(self, character: str) -> bool: - return True - - def feed(self, character: str) -> None: - if is_unprintable(character): + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + if ( + not info.space + and not info.printable + and character != "\x1a" + and character != "\ufeff" + ): self._unprintable_count += 1 self._character_count += 1 @@ -155,40 +335,48 @@ def reset(self) -> None: # Abstract @property def ratio(self) -> float: - if self._character_count == 0: + if self._character_count == 0: # Defensive: return 0.0 return (self._unprintable_count * 8) / self._character_count +@final class SuspiciousDuplicateAccentPlugin(MessDetectorPlugin): + __slots__ = ( + "_successive_count", + "_character_count", + "_last_latin_character", + "_last_was_accentuated", + ) + def __init__(self) -> None: self._successive_count: int = 0 self._character_count: int = 0 self._last_latin_character: str | None = None + self._last_was_accentuated: bool = False - def eligible(self, character: str) -> bool: - return character.isalpha() and is_latin(character) - - def feed(self, character: str) -> None: + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" self._character_count += 1 if ( self._last_latin_character is not None - and is_accentuated(character) - and is_accentuated(self._last_latin_character) + and info.accentuated + and self._last_was_accentuated ): - if character.isupper() and self._last_latin_character.isupper(): + if info.upper and self._last_latin_character.isupper(): self._successive_count += 1 - # Worse if its the same char duplicated with different accent. if remove_accent(character) == remove_accent(self._last_latin_character): self._successive_count += 1 self._last_latin_character = character + self._last_was_accentuated = info.accentuated def reset(self) -> None: # Abstract self._successive_count = 0 self._character_count = 0 self._last_latin_character = None + self._last_was_accentuated = False @property def ratio(self) -> float: @@ -198,42 +386,49 @@ def ratio(self) -> float: return (self._successive_count * 2) / self._character_count +@final class SuspiciousRange(MessDetectorPlugin): + __slots__ = ( + "_suspicious_successive_range_count", + "_character_count", + "_last_printable_seen", + "_last_printable_range", + ) + def __init__(self) -> None: self._suspicious_successive_range_count: int = 0 self._character_count: int = 0 self._last_printable_seen: str | None = None + self._last_printable_range: str | None = None - def eligible(self, character: str) -> bool: - return character.isprintable() - - def feed(self, character: str) -> None: + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" self._character_count += 1 - if ( - character.isspace() - or is_punctuation(character) - or character in COMMON_SAFE_ASCII_CHARACTERS - ): + if info.space or info.punct or character in COMMON_SAFE_ASCII_CHARACTERS: self._last_printable_seen = None + self._last_printable_range = None return if self._last_printable_seen is None: self._last_printable_seen = character + self._last_printable_range = unicode_range(character) return - unicode_range_a: str | None = unicode_range(self._last_printable_seen) + unicode_range_a: str | None = self._last_printable_range unicode_range_b: str | None = unicode_range(character) if is_suspiciously_successive_range(unicode_range_a, unicode_range_b): self._suspicious_successive_range_count += 1 self._last_printable_seen = character + self._last_printable_range = unicode_range_b def reset(self) -> None: # Abstract self._character_count = 0 self._suspicious_successive_range_count = 0 self._last_printable_seen = None + self._last_printable_range = None @property def ratio(self) -> float: @@ -247,7 +442,24 @@ def ratio(self) -> float: return ratio_of_suspicious_range_usage +@final class SuperWeirdWordPlugin(MessDetectorPlugin): + __slots__ = ( + "_word_count", + "_bad_word_count", + "_foreign_long_count", + "_is_current_word_bad", + "_foreign_long_watch", + "_character_count", + "_bad_character_count", + "_buffer_length", + "_buffer_last_char", + "_buffer_last_char_accentuated", + "_buffer_accent_count", + "_buffer_glyph_count", + "_buffer_upper_count", + ) + def __init__(self) -> None: self._word_count: int = 0 self._bad_word_count: int = 0 @@ -259,56 +471,50 @@ def __init__(self) -> None: self._character_count: int = 0 self._bad_character_count: int = 0 - self._buffer: str = "" + self._buffer_length: int = 0 + self._buffer_last_char: str | None = None + self._buffer_last_char_accentuated: bool = False self._buffer_accent_count: int = 0 self._buffer_glyph_count: int = 0 + self._buffer_upper_count: int = 0 - def eligible(self, character: str) -> bool: - return True + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + if info.alpha: + self._buffer_length += 1 + self._buffer_last_char = character + + if info.upper: + self._buffer_upper_count += 1 - def feed(self, character: str) -> None: - if character.isalpha(): - self._buffer += character - if is_accentuated(character): + self._buffer_last_char_accentuated = info.accentuated + + if info.accentuated: self._buffer_accent_count += 1 if ( - self._foreign_long_watch is False - and (is_latin(character) is False or is_accentuated(character)) - and is_cjk(character) is False - and is_hangul(character) is False - and is_katakana(character) is False - and is_hiragana(character) is False - and is_thai(character) is False + not self._foreign_long_watch + and (not info.latin or info.accentuated) + and not info.is_glyph ): self._foreign_long_watch = True - if ( - is_cjk(character) - or is_hangul(character) - or is_katakana(character) - or is_hiragana(character) - or is_thai(character) - ): + if info.is_glyph: self._buffer_glyph_count += 1 return - if not self._buffer: + if not self._buffer_length: return - if ( - character.isspace() or is_punctuation(character) or is_separator(character) - ) and self._buffer: + if info.space or info.punct or is_separator(character): self._word_count += 1 - buffer_length: int = len(self._buffer) + buffer_length: int = self._buffer_length self._character_count += buffer_length if buffer_length >= 4: if self._buffer_accent_count / buffer_length >= 0.5: self._is_current_word_bad = True - # Word/Buffer ending with an upper case accentuated letter are so rare, - # that we will consider them all as suspicious. Same weight as foreign_long suspicious. elif ( - is_accentuated(self._buffer[-1]) - and self._buffer[-1].isupper() - and all(_.isupper() for _ in self._buffer) is False + self._buffer_last_char_accentuated + and self._buffer_last_char.isupper() # type: ignore[union-attr] + and self._buffer_upper_count != buffer_length ): self._foreign_long_count += 1 self._is_current_word_bad = True @@ -316,15 +522,10 @@ def feed(self, character: str) -> None: self._is_current_word_bad = True self._foreign_long_count += 1 if buffer_length >= 24 and self._foreign_long_watch: - camel_case_dst = [ - i - for c, i in zip(self._buffer, range(0, buffer_length)) - if c.isupper() - ] - probable_camel_cased: bool = False - - if camel_case_dst and (len(camel_case_dst) / buffer_length <= 0.3): - probable_camel_cased = True + probable_camel_cased: bool = ( + self._buffer_upper_count > 0 + and self._buffer_upper_count / buffer_length <= 0.3 + ) if not probable_camel_cased: self._foreign_long_count += 1 @@ -332,23 +533,30 @@ def feed(self, character: str) -> None: if self._is_current_word_bad: self._bad_word_count += 1 - self._bad_character_count += len(self._buffer) + self._bad_character_count += buffer_length self._is_current_word_bad = False self._foreign_long_watch = False - self._buffer = "" + self._buffer_length = 0 + self._buffer_last_char = None + self._buffer_last_char_accentuated = False self._buffer_accent_count = 0 self._buffer_glyph_count = 0 + self._buffer_upper_count = 0 elif ( character not in {"<", ">", "-", "=", "~", "|", "_"} - and character.isdigit() is False - and is_symbol(character) + and not info.digit + and info.sym ): self._is_current_word_bad = True - self._buffer += character + self._buffer_length += 1 + self._buffer_last_char = character + self._buffer_last_char_accentuated = False def reset(self) -> None: # Abstract - self._buffer = "" + self._buffer_length = 0 + self._buffer_last_char = None + self._buffer_last_char_accentuated = False self._is_current_word_bad = False self._foreign_long_watch = False self._bad_word_count = 0 @@ -356,6 +564,9 @@ def reset(self) -> None: # Abstract self._character_count = 0 self._bad_character_count = 0 self._foreign_long_count = 0 + self._buffer_accent_count = 0 + self._buffer_glyph_count = 0 + self._buffer_upper_count = 0 @property def ratio(self) -> float: @@ -365,38 +576,55 @@ def ratio(self) -> float: return self._bad_character_count / self._character_count -class CjkInvalidStopPlugin(MessDetectorPlugin): +@final +class CjkUncommonPlugin(MessDetectorPlugin): """ - GB(Chinese) based encoding often render the stop incorrectly when the content does not fit and - can be easily detected. Searching for the overuse of '丅' and '丄'. + Detect messy CJK text that probably means nothing. """ + __slots__ = ("_character_count", "_uncommon_count") + def __init__(self) -> None: - self._wrong_stop_count: int = 0 - self._cjk_character_count: int = 0 + self._character_count: int = 0 + self._uncommon_count: int = 0 - def eligible(self, character: str) -> bool: - return True + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + self._character_count += 1 - def feed(self, character: str) -> None: - if character in {"丅", "丄"}: - self._wrong_stop_count += 1 - return - if is_cjk(character): - self._cjk_character_count += 1 + if character not in COMMON_CJK_CHARACTERS: + self._uncommon_count += 1 def reset(self) -> None: # Abstract - self._wrong_stop_count = 0 - self._cjk_character_count = 0 + self._character_count = 0 + self._uncommon_count = 0 @property def ratio(self) -> float: - if self._cjk_character_count < 16: + if self._character_count < 8: return 0.0 - return self._wrong_stop_count / self._cjk_character_count + uncommon_form_usage: float = self._uncommon_count / self._character_count + # we can be pretty sure it's garbage when uncommon characters are widely + # used. otherwise it could just be traditional chinese for example. + return uncommon_form_usage / 10 if uncommon_form_usage > 0.5 else 0.0 + + +@final class ArchaicUpperLowerPlugin(MessDetectorPlugin): + __slots__ = ( + "_buf", + "_character_count_since_last_sep", + "_successive_upper_lower_count", + "_successive_upper_lower_count_final", + "_character_count", + "_last_alpha_seen", + "_last_alpha_seen_upper", + "_last_alpha_seen_lower", + "_current_ascii_only", + ) + def __init__(self) -> None: self._buf: bool = False @@ -408,20 +636,20 @@ def __init__(self) -> None: self._character_count: int = 0 self._last_alpha_seen: str | None = None + self._last_alpha_seen_upper: bool = False + self._last_alpha_seen_lower: bool = False self._current_ascii_only: bool = True - def eligible(self, character: str) -> bool: - return True - - def feed(self, character: str) -> None: - is_concerned = character.isalpha() and is_case_variable(character) - chunk_sep = is_concerned is False + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" + is_concerned: bool = info.alpha and info.case_variable + chunk_sep: bool = not is_concerned if chunk_sep and self._character_count_since_last_sep > 0: if ( self._character_count_since_last_sep <= 64 - and character.isdigit() is False - and self._current_ascii_only is False + and not info.digit + and not self._current_ascii_only ): self._successive_upper_lower_count_final += ( self._successive_upper_lower_count @@ -436,14 +664,14 @@ def feed(self, character: str) -> None: return - if self._current_ascii_only is True and character.isascii() is False: + if self._current_ascii_only and not info.is_ascii: self._current_ascii_only = False if self._last_alpha_seen is not None: - if (character.isupper() and self._last_alpha_seen.islower()) or ( - character.islower() and self._last_alpha_seen.isupper() + if (info.upper and self._last_alpha_seen_lower) or ( + info.lower and self._last_alpha_seen_upper ): - if self._buf is True: + if self._buf: self._successive_upper_lower_count += 2 self._buf = False else: @@ -454,6 +682,8 @@ def feed(self, character: str) -> None: self._character_count += 1 self._character_count_since_last_sep += 1 self._last_alpha_seen = character + self._last_alpha_seen_upper = info.upper + self._last_alpha_seen_lower = info.lower def reset(self) -> None: # Abstract self._character_count = 0 @@ -461,18 +691,23 @@ def reset(self) -> None: # Abstract self._successive_upper_lower_count = 0 self._successive_upper_lower_count_final = 0 self._last_alpha_seen = None + self._last_alpha_seen_upper = False + self._last_alpha_seen_lower = False self._buf = False self._current_ascii_only = True @property def ratio(self) -> float: - if self._character_count == 0: + if self._character_count == 0: # Defensive: return 0.0 return self._successive_upper_lower_count_final / self._character_count +@final class ArabicIsolatedFormPlugin(MessDetectorPlugin): + __slots__ = ("_character_count", "_isolated_form_count") + def __init__(self) -> None: self._character_count: int = 0 self._isolated_form_count: int = 0 @@ -481,13 +716,11 @@ def reset(self) -> None: # Abstract self._character_count = 0 self._isolated_form_count = 0 - def eligible(self, character: str) -> bool: - return is_arabic(character) - - def feed(self, character: str) -> None: + def feed_info(self, character: str, info: CharInfo) -> None: + """Optimized feed using pre-computed character info.""" self._character_count += 1 - if is_arabic_isolated_form(character): + if info.flags & _ARABIC_ISOLATED_FORM: self._isolated_form_count += 1 @property @@ -582,49 +815,122 @@ def mess_ratio( Compute a mess ratio given a decoded bytes sequence. The maximum threshold does stop the computation earlier. """ - detectors: list[MessDetectorPlugin] = [ - md_class() for md_class in MessDetectorPlugin.__subclasses__() - ] + seq_len: int = len(decoded_sequence) - length: int = len(decoded_sequence) + 1 - - mean_mess_ratio: float = 0.0 - - if length < 512: - intermediary_mean_mess_ratio_calc: int = 32 - elif length <= 1024: - intermediary_mean_mess_ratio_calc = 64 + if seq_len < 511: + step: int = 32 + elif seq_len < 1024: + step = 64 else: - intermediary_mean_mess_ratio_calc = 128 - - for character, index in zip(decoded_sequence + "\n", range(length)): - for detector in detectors: - if detector.eligible(character): - detector.feed(character) - - if ( - index > 0 and index % intermediary_mean_mess_ratio_calc == 0 - ) or index == length - 1: - mean_mess_ratio = sum(dt.ratio for dt in detectors) + step = 128 + + # Create each detector as a named local variable (unrolled from the generic loop). + # This eliminates per-character iteration over the detector list and + # per-character eligible() virtual dispatch, while keeping every plugin class + # intact and fully readable. + d_sp: TooManySymbolOrPunctuationPlugin = TooManySymbolOrPunctuationPlugin() + d_ta: TooManyAccentuatedPlugin = TooManyAccentuatedPlugin() + d_up: UnprintablePlugin = UnprintablePlugin() + d_sda: SuspiciousDuplicateAccentPlugin = SuspiciousDuplicateAccentPlugin() + d_sr: SuspiciousRange = SuspiciousRange() + d_sw: SuperWeirdWordPlugin = SuperWeirdWordPlugin() + d_cu: CjkUncommonPlugin = CjkUncommonPlugin() + d_au: ArchaicUpperLowerPlugin = ArchaicUpperLowerPlugin() + d_ai: ArabicIsolatedFormPlugin = ArabicIsolatedFormPlugin() + + # Local references for feed_info methods called in the hot loop. + d_sp_feed = d_sp.feed_info + d_ta_feed = d_ta.feed_info + d_up_feed = d_up.feed_info + d_sda_feed = d_sda.feed_info + d_sr_feed = d_sr.feed_info + d_sw_feed = d_sw.feed_info + d_cu_feed = d_cu.feed_info + d_au_feed = d_au.feed_info + d_ai_feed = d_ai.feed_info + + # Single reusable CharInfo object (avoids per-character allocation). + info: CharInfo = CharInfo() + info_update = info.update + + mean_mess_ratio: float + + for block_start in range(0, seq_len, step): + for character in decoded_sequence[block_start : block_start + step]: + # Pre-compute all character properties once (shared across all plugins). + info_update(character) + + # Detectors with eligible() == always True + d_up_feed(character, info) + d_sw_feed(character, info) + d_au_feed(character, info) + + # Detectors with eligible() == isprintable + if info.printable: + d_sp_feed(character, info) + d_sr_feed(character, info) + + # Detectors with eligible() == isalpha + if info.alpha: + d_ta_feed(character, info) + # SuspiciousDuplicateAccent: isalpha() and is_latin() + if info.latin: + d_sda_feed(character, info) + # CjkUncommon: is_cjk() + if info.is_cjk: + d_cu_feed(character, info) + # ArabicIsolatedForm: is_arabic() + if info.is_arabic: + d_ai_feed(character, info) + + mean_mess_ratio = ( + d_sp.ratio + + d_ta.ratio + + d_up.ratio + + d_sda.ratio + + d_sr.ratio + + d_sw.ratio + + d_cu.ratio + + d_au.ratio + + d_ai.ratio + ) - if mean_mess_ratio >= maximum_threshold: - break + if mean_mess_ratio >= maximum_threshold: + break + else: + # Flush last word buffer in SuperWeirdWordPlugin via trailing newline. + info_update("\n") + d_sw_feed("\n", info) + d_au_feed("\n", info) + d_up_feed("\n", info) + + mean_mess_ratio = ( + d_sp.ratio + + d_ta.ratio + + d_up.ratio + + d_sda.ratio + + d_sr.ratio + + d_sw.ratio + + d_cu.ratio + + d_au.ratio + + d_ai.ratio + ) - if debug: + if debug: # Defensive: logger = getLogger("charset_normalizer") logger.log( TRACE, "Mess-detector extended-analysis start. " - f"intermediary_mean_mess_ratio_calc={intermediary_mean_mess_ratio_calc} mean_mess_ratio={mean_mess_ratio} " + f"intermediary_mean_mess_ratio_calc={step} mean_mess_ratio={mean_mess_ratio} " f"maximum_threshold={maximum_threshold}", ) - if len(decoded_sequence) > 16: + if seq_len > 16: logger.log(TRACE, f"Starting with: {decoded_sequence[:16]}") logger.log(TRACE, f"Ending with: {decoded_sequence[-16::]}") - for dt in detectors: + for dt in [d_sp, d_ta, d_up, d_sda, d_sr, d_sw, d_cu, d_au, d_ai]: logger.log(TRACE, f"{dt.__class__}: {dt.ratio}") return round(mean_mess_ratio, 3) diff --git a/addons/source-python/packages/site-packages/charset_normalizer/models.py b/addons/source-python/packages/site-packages/charset_normalizer/models.py index 1042758f8..30e8a163e 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/models.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/models.py @@ -1,7 +1,6 @@ from __future__ import annotations from encodings.aliases import aliases -from hashlib import sha256 from json import dumps from re import sub from typing import Any, Iterator, List, Tuple @@ -13,7 +12,7 @@ class CharsetMatch: def __init__( self, - payload: bytes, + payload: bytes | bytearray, guessed_encoding: str, mean_mess_ratio: float, has_sig_or_bom: bool, @@ -21,7 +20,7 @@ def __init__( decoded_payload: str | None = None, preemptive_declaration: str | None = None, ): - self._payload: bytes = payload + self._payload: bytes | bytearray = payload self._encoding: str = guessed_encoding self._mean_mess_ratio: float = mean_mess_ratio @@ -56,10 +55,10 @@ def __lt__(self, other: object) -> bool: chaos_difference: float = abs(self.chaos - other.chaos) coherence_difference: float = abs(self.coherence - other.coherence) - # Below 1% difference --> Use Coherence - if chaos_difference < 0.01 and coherence_difference > 0.02: + # Below 0.5% difference --> Use Coherence + if chaos_difference < 0.005 and coherence_difference > 0.02: return self.coherence > other.coherence - elif chaos_difference < 0.01 and coherence_difference <= 0.02: + elif chaos_difference < 0.005 and coherence_difference <= 0.02: # When having a difficult decision, use the result that decoded as many multi-byte as possible. # preserve RAM usage! if len(self._payload) >= TOO_BIG_SEQUENCE: @@ -79,7 +78,7 @@ def __str__(self) -> str: return self._string def __repr__(self) -> str: - return f"" + return f"" def add_submatch(self, other: CharsetMatch) -> None: if not isinstance(other, CharsetMatch) or other == self: @@ -172,7 +171,7 @@ def percent_coherence(self) -> float: return round(self.coherence * 100, ndigits=3) @property - def raw(self) -> bytes: + def raw(self) -> bytes | bytearray: """ Original untouched bytes. """ @@ -235,11 +234,11 @@ def output(self, encoding: str = "utf_8") -> bytes: return self._output_payload # type: ignore @property - def fingerprint(self) -> str: + def fingerprint(self) -> int: """ - Retrieve the unique SHA256 computed using the transformed (re-encoded) payload. Not the original one. + Retrieve a hash fingerprint of the decoded payload, used for deduplication. """ - return sha256(self.output()).hexdigest() + return hash(str(self)) class CharsetMatches: diff --git a/addons/source-python/packages/site-packages/charset_normalizer/utils.py b/addons/source-python/packages/site-packages/charset_normalizer/utils.py index 0175e0a96..0f529b59c 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/utils.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/utils.py @@ -3,6 +3,7 @@ import importlib import logging import unicodedata +from bisect import bisect_right from codecs import IncrementalDecoder from encodings.aliases import aliases from functools import lru_cache @@ -20,25 +21,58 @@ UNICODE_RANGES_COMBINED, UNICODE_SECONDARY_RANGE_KEYWORD, UTF8_MAXIMAL_ALLOCATION, + COMMON_CJK_CHARACTERS, + _LATIN, + _CJK, + _HANGUL, + _KATAKANA, + _HIRAGANA, + _THAI, + _ARABIC, + _ARABIC_ISOLATED_FORM, + _ACCENT_KEYWORDS, + _ACCENTUATED, ) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) -def is_accentuated(character: str) -> bool: +def _character_flags(character: str) -> int: + """Compute all name-based classification flags with a single unicodedata.name() call.""" try: - description: str = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - return ( - "WITH GRAVE" in description - or "WITH ACUTE" in description - or "WITH CEDILLA" in description - or "WITH DIAERESIS" in description - or "WITH CIRCUMFLEX" in description - or "WITH TILDE" in description - or "WITH MACRON" in description - or "WITH RING ABOVE" in description - ) + desc: str = unicodedata.name(character) + except ValueError: + return 0 + + flags: int = 0 + + if "LATIN" in desc: + flags |= _LATIN + if "CJK" in desc: + flags |= _CJK + if "HANGUL" in desc: + flags |= _HANGUL + if "KATAKANA" in desc: + flags |= _KATAKANA + if "HIRAGANA" in desc: + flags |= _HIRAGANA + if "THAI" in desc: + flags |= _THAI + if "ARABIC" in desc: + flags |= _ARABIC + if "ISOLATED FORM" in desc: + flags |= _ARABIC_ISOLATED_FORM + + for kw in _ACCENT_KEYWORDS: + if kw in desc: + flags |= _ACCENTUATED + break + + return flags + + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_accentuated(character: str) -> bool: + return bool(_character_flags(character) & _ACCENTUATED) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) @@ -52,6 +86,15 @@ def remove_accent(character: str) -> str: return chr(int(codes[0], 16)) +# Pre-built sorted lookup table for O(log n) binary search in unicode_range(). +# Each entry is (range_start, range_end_exclusive, range_name). +_UNICODE_RANGES_SORTED: list[tuple[int, int, str]] = sorted( + (ord_range.start, ord_range.stop, name) + for name, ord_range in UNICODE_RANGES_COMBINED.items() +) +_UNICODE_RANGE_STARTS: list[int] = [e[0] for e in _UNICODE_RANGES_SORTED] + + @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def unicode_range(character: str) -> str | None: """ @@ -59,20 +102,19 @@ def unicode_range(character: str) -> str | None: """ character_ord: int = ord(character) - for range_name, ord_range in UNICODE_RANGES_COMBINED.items(): - if character_ord in ord_range: - return range_name + # Binary search: find the rightmost range whose start <= character_ord + idx = bisect_right(_UNICODE_RANGE_STARTS, character_ord) - 1 + if idx >= 0: + start, stop, name = _UNICODE_RANGES_SORTED[idx] + if character_ord < stop: + return name return None @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_latin(character: str) -> bool: - try: - description: str = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - return "LATIN" in description + return bool(_character_flags(character) & _LATIN) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) @@ -132,72 +174,42 @@ def is_case_variable(character: str) -> bool: @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_cjk(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - - return "CJK" in character_name + return bool(_character_flags(character) & _CJK) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_hiragana(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - - return "HIRAGANA" in character_name + return bool(_character_flags(character) & _HIRAGANA) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_katakana(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - - return "KATAKANA" in character_name + return bool(_character_flags(character) & _KATAKANA) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_hangul(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - - return "HANGUL" in character_name + return bool(_character_flags(character) & _HANGUL) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_thai(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - - return "THAI" in character_name + return bool(_character_flags(character) & _THAI) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_arabic(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False - - return "ARABIC" in character_name + return bool(_character_flags(character) & _ARABIC) @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) def is_arabic_isolated_form(character: str) -> bool: - try: - character_name = unicodedata.name(character) - except ValueError: # Defensive: unicode database outdated? - return False + return bool(_character_flags(character) & _ARABIC_ISOLATED_FORM) - return "ARABIC" in character_name and "ISOLATED FORM" in character_name + +@lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION) +def is_cjk_uncommon(character: str) -> bool: + return character not in COMMON_CJK_CHARACTERS @lru_cache(maxsize=len(UNICODE_RANGES_COMBINED)) @@ -216,11 +228,13 @@ def is_unprintable(character: str) -> bool: ) -def any_specified_encoding(sequence: bytes, search_zone: int = 8192) -> str | None: +def any_specified_encoding( + sequence: bytes | bytearray, search_zone: int = 8192 +) -> str | None: """ Extract using ASCII-only decoder any specified encoding in the first n-bytes. """ - if not isinstance(sequence, bytes): + if not isinstance(sequence, (bytes, bytearray)): raise TypeError seq_len: int = len(sequence) @@ -269,7 +283,7 @@ def is_multi_byte_encoding(name: str) -> bool: ) -def identify_sig_or_bom(sequence: bytes) -> tuple[str | None, bytes]: +def identify_sig_or_bom(sequence: bytes | bytearray) -> tuple[str | None, bytes]: """ Identify and extract SIG/BOM in given sequence. """ @@ -320,12 +334,12 @@ def cp_similarity(iana_name_a: str, iana_name_b: str) -> float: character_match_count: int = 0 - for i in range(255): + for i in range(256): to_be_decoded: bytes = bytes([i]) if id_a.decode(to_be_decoded) == id_b.decode(to_be_decoded): character_match_count += 1 - return character_match_count / 254 + return character_match_count / 256 def is_cp_similar(iana_name_a: str, iana_name_b: str) -> bool: @@ -353,7 +367,7 @@ def set_logging_handler( def cut_sequence_chunks( - sequences: bytes, + sequences: bytes | bytearray, encoding_iana: str, offsets: range, chunk_size: int, diff --git a/addons/source-python/packages/site-packages/charset_normalizer/version.py b/addons/source-python/packages/site-packages/charset_normalizer/version.py index f85e8929e..a80346fc7 100644 --- a/addons/source-python/packages/site-packages/charset_normalizer/version.py +++ b/addons/source-python/packages/site-packages/charset_normalizer/version.py @@ -4,5 +4,5 @@ from __future__ import annotations -__version__ = "3.4.1" +__version__ = "3.4.6" VERSION = __version__.split(".") diff --git a/addons/source-python/packages/site-packages/docutils/__init__.py b/addons/source-python/packages/site-packages/docutils/__init__.py index 16af4108e..e27f1266d 100644 --- a/addons/source-python/packages/site-packages/docutils/__init__.py +++ b/addons/source-python/packages/site-packages/docutils/__init__.py @@ -1,4 +1,4 @@ -# $Id: __init__.py 9649 2024-04-23 18:54:26Z grubert $ +# $Id: __init__.py 10275 2025-12-18 18:44:54Z grubert $ # Author: David Goodger # Copyright: This module has been placed in the public domain. @@ -50,11 +50,42 @@ - writers: Format-specific output translators. """ +from __future__ import annotations + from collections import namedtuple +TYPE_CHECKING = False +if TYPE_CHECKING: + from collections.abc import Sequence + from typing import Any, ClassVar, Literal, Protocol, Union + + from docutils.nodes import Element + from docutils.transforms import Transform + + _Components = Literal['reader', 'parser', 'writer', 'input', 'output'] + _OptionTuple = tuple[str, list[str], dict[str, Any]] + _ReleaseLevels = Literal['alpha', 'beta', 'candidate', 'final'] + _SettingsSpecTuple = Union[ + tuple[str|None, str|None, Sequence[_OptionTuple]], + tuple[str|None, str|None, Sequence[_OptionTuple], + str|None, str|None, Sequence[_OptionTuple]], + tuple[str|None, str|None, Sequence[_OptionTuple], + str|None, str|None, Sequence[_OptionTuple], + str|None, str|None, Sequence[_OptionTuple]], + ] + + class _UnknownReferenceResolver(Protocol): + """Deprecated. Will be removed in Docutils 1.0.""" + # See `TransformSpec.unknown_reference_resolvers`. + + priority: int + + def __call__(self, node: Element, /) -> bool: + ... + __docformat__ = 'reStructuredText' -__version__ = '0.21.2' +__version__ = '0.22.4' """Docutils version identifier (complies with PEP 440):: major.minor[.micro][releaselevel[serial]][.dev] @@ -74,9 +105,20 @@ class VersionInfo(namedtuple('VersionInfo', 'major minor micro releaselevel serial release')): - - def __new__(cls, major=0, minor=0, micro=0, - releaselevel='final', serial=0, release=True): + __slots__ = () + + major: int + minor: int + micro: int + releaselevel: _ReleaseLevels + serial: int + release: bool + + def __new__(cls, + major: int = 0, minor: int = 0, micro: int = 0, + releaselevel: _ReleaseLevels = 'final', + serial: int = 0, release: bool = True, + ) -> VersionInfo: releaselevels = ('alpha', 'beta', 'candidate', 'final') if releaselevel not in releaselevels: raise ValueError('releaselevel must be one of %r.' @@ -86,29 +128,29 @@ def __new__(cls, major=0, minor=0, micro=0, raise ValueError('releaselevel "final" must not be used ' 'with development versions (leads to wrong ' 'version ordering of the related __version__') - # cf. https://peps.python.org/pep-0440/#summary-of-permitted-suffixes-and-relative-ordering # noqa + # cf. https://peps.python.org/pep-0440/#summary-of-permitted-suffixes-and-relative-ordering # NoQA: E501 if serial != 0: raise ValueError('"serial" must be 0 for final releases') return super().__new__(cls, major, minor, micro, releaselevel, serial, release) - def __lt__(self, other): + def __lt__(self, other: object) -> bool: if isinstance(other, tuple): other = VersionInfo(*other) return tuple.__lt__(self, other) - def __gt__(self, other): + def __gt__(self, other: object) -> bool: if isinstance(other, tuple): other = VersionInfo(*other) return tuple.__gt__(self, other) - def __le__(self, other): + def __le__(self, other: object) -> bool: if isinstance(other, tuple): other = VersionInfo(*other) return tuple.__le__(self, other) - def __ge__(self, other): + def __ge__(self, other: object) -> bool: if isinstance(other, tuple): other = VersionInfo(*other) return tuple.__ge__(self, other) @@ -116,8 +158,8 @@ def __ge__(self, other): __version_info__ = VersionInfo( major=0, - minor=21, - micro=2, + minor=22, + micro=4, releaselevel='final', # one of 'alpha', 'beta', 'candidate', 'final' serial=0, # pre-release number (0 for final releases and snapshots) release=True # True for official releases and pre-releases @@ -151,7 +193,7 @@ class SettingsSpec: # https://github.com/sphinx-doc/sphinx/blob/4.x/sphinx/writers/html.py # This should be changed (before retiring the old format) # to use `settings_default_overrides` instead. - settings_spec = () + settings_spec: ClassVar[_SettingsSpecTuple] = () """Runtime settings specification. Override in subclasses. Defines runtime settings and associated command-line options, as used by @@ -190,25 +232,25 @@ class SettingsSpec: needed. Thus, `settings_spec` tuples can be simply concatenated. """ - settings_defaults = None + settings_defaults: ClassVar[dict[str, Any] | None] = None """A dictionary of defaults for settings not in `settings_spec` (internal settings, intended to be inaccessible by command-line and config file). Override in subclasses.""" - settings_default_overrides = None + settings_default_overrides: ClassVar[dict[str, Any] | None] = None """A dictionary of auxiliary defaults, to override defaults for settings defined in other components' `setting_specs`. Override in subclasses.""" - relative_path_settings = () + relative_path_settings: ClassVar[tuple[str, ...]] = () """Settings containing filesystem paths. Override in subclasses. Settings listed here are to be interpreted relative to the current working directory.""" - config_section = None + config_section: ClassVar[str | None] = None """The name of the config file section specific to this component (lowercase, no brackets). Override in subclasses.""" - config_section_dependencies = None + config_section_dependencies: ClassVar[tuple[str, ...] | None] = None """A list of names of config file sections that are to be applied before `config_section`, in order (from general to specific). In other words, the settings in `config_section` are to be overlaid on top of the settings @@ -226,7 +268,7 @@ class TransformSpec: https://docutils.sourceforge.io/docs/ref/transforms.html """ - def get_transforms(self): + def get_transforms(self) -> list[type[Transform]]: """Transforms required by this class. Override in subclasses.""" if self.default_transforms != (): import warnings @@ -238,50 +280,58 @@ def get_transforms(self): return [] # Deprecated; for compatibility. - default_transforms = () - - unknown_reference_resolvers = () - """List of functions to try to resolve unknown references. - - Unknown references have a 'refname' attribute which doesn't correspond - to any target in the document. Called when the transforms in - `docutils.transforms.references` are unable to find a correct target. - - The list should contain functions which will try to resolve unknown - references, with the following signature:: - - def reference_resolver(node): - '''Returns boolean: true if resolved, false if not.''' - - If the function is able to resolve the reference, it should also remove - the 'refname' attribute and mark the node as resolved:: + default_transforms: ClassVar[tuple[()]] = () - del node['refname'] - node.resolved = 1 + unknown_reference_resolvers: Sequence[_UnknownReferenceResolver] = () + """List of hook functions which assist in resolving references. - Each function must have a "priority" attribute which will affect the order - the unknown_reference_resolvers are run:: - - reference_resolver.priority = 100 - - This hook is provided for 3rd party extensions. - Example use case: the `MoinMoin - ReStructured Text Parser` - in ``sandbox/mmgilbe/rst.py``. + Deprecated. Will be removed in Docutils 1.0 """ + # Override in subclasses to implement component-specific resolving of + # unknown references. + # + # Unknown references have a 'refname' attribute which doesn't correspond + # to any target in the document. Called when the transforms in + # `docutils.transforms.references` are unable to find a correct target. + # + # The list should contain functions which will try to resolve unknown + # references, with the following signature:: + # + # def reference_resolver(node: nodes.Element) -> bool: + # '''Returns boolean: true if resolved, false if not.''' + # + # If the function is able to resolve the reference, it should also remove + # the 'refname' attribute and mark the node as resolved:: + # + # del node['refname'] + # node.resolved = True + # + # Each function must have a "priority" attribute which will affect the + # order the unknown_reference_resolvers are run + # cf. ../docs/api/transforms.html#transform-priority-range-categories :: + # + # reference_resolver.priority = 500 + # + # Examples: + # The `MoinMoin ReStructured Text Parser`__ provided a resolver for + # "WikiWiki links" in the 1.9 version. + # + # __ https://github.com/moinwiki/moin-1.9/blob/1.9.11/MoinMoin/parser/ + # text_rst.py class Component(SettingsSpec, TransformSpec): """Base class for Docutils components.""" - component_type = None - """Name of the component type ('reader', 'parser', 'writer'). Override in - subclasses.""" + component_type: ClassVar[_Components | None] = None + """Name of the component type ('reader', 'parser', 'writer'). + Override in subclasses.""" - supported = () + supported: ClassVar[tuple[str, ...]] = () """Name and aliases for this component. Override in subclasses.""" - def supports(self, format): + def supports(self, format: str) -> bool: """ Is `format` supported by this component? diff --git a/addons/source-python/packages/site-packages/docutils/__main__.py b/addons/source-python/packages/site-packages/docutils/__main__.py index ce614891f..6c4ce42d7 100644 --- a/addons/source-python/packages/site-packages/docutils/__main__.py +++ b/addons/source-python/packages/site-packages/docutils/__main__.py @@ -9,8 +9,8 @@ # # .. _2-Clause BSD license: https://opensource.org/licenses/BSD-2-Clause # -# Revision: $Revision: 9107 $ -# Date: $Date: 2022-07-06 15:59:57 +0200 (Mi, 06. Jul 2022) $ +# Revision: $Revision: 10136 $ +# Date: $Date: 2025-05-20 17:48:27 +0200 (Di, 20. Mai 2025) $ """Generic command line interface for the `docutils` package. @@ -18,6 +18,10 @@ https://docs.python.org/3/library/__main__.html#main-py-in-python-packages """ +from __future__ import annotations + +__docformat__ = 'reStructuredText' + import argparse import locale import sys @@ -53,10 +57,13 @@ class CliSettingsSpec(docutils.SettingsSpec): 'applications') -def main(): +def main() -> None: """Generic command line interface for the Docutils Publisher. """ - locale.setlocale(locale.LC_ALL, '') + try: + locale.setlocale(locale.LC_ALL, '') + except locale.Error as e: + sys.stderr.write(f'WARNING: Cannot set the default locale: {e}.\n') description = ('Convert documents into useful formats. ' + default_description) @@ -75,9 +82,9 @@ def main(): CliSettingsSpec.settings_default_overrides = args.__dict__ try: - publish_cmdline(reader_name=args.reader, - parser_name=args.parser, - writer_name=args.writer, + publish_cmdline(reader=args.reader, + parser=args.parser, + writer=args.writer, settings_spec=CliSettingsSpec, description=description, argv=remainder) diff --git a/addons/source-python/packages/site-packages/docutils/core.py b/addons/source-python/packages/site-packages/docutils/core.py index adf807592..54ecbe397 100644 --- a/addons/source-python/packages/site-packages/docutils/core.py +++ b/addons/source-python/packages/site-packages/docutils/core.py @@ -1,4 +1,4 @@ -# $Id: core.py 9369 2023-05-02 23:04:27Z milde $ +# $Id: core.py 10267 2025-12-01 22:43:32Z milde $ # Author: David Goodger # Copyright: This module has been placed in the public domain. @@ -13,6 +13,8 @@ https://docutils.sourceforge.io/docs/api/publisher.html """ +from __future__ import annotations + __docformat__ = 'reStructuredText' import locale @@ -22,10 +24,15 @@ import warnings from docutils import (__version__, __version_details__, SettingsSpec, - io, utils, readers, writers) + io, utils, readers, parsers, writers) from docutils.frontend import OptionParser from docutils.readers import doctree +TYPE_CHECKING = False +if TYPE_CHECKING: + from typing import TextIO + from docutils.nodes import StrPath + class Publisher: @@ -36,13 +43,25 @@ class Publisher: def __init__(self, reader=None, parser=None, writer=None, source=None, source_class=io.FileInput, destination=None, destination_class=io.FileOutput, - settings=None): + settings=None) -> None: """ - Initial setup. If any of `reader`, `parser`, or `writer` are not - specified, ``set_components()`` or the corresponding ``set_...()`` - method should be called with component names - (`set_reader` sets the parser as well). + Initial setup. + + The components `reader`, `parser`, or `writer` should all be + specified, either as instances or via their names. """ + # get component instances from their names: + if isinstance(reader, str): + reader = readers.get_reader_class(reader)(parser) + if isinstance(parser, str): + if isinstance(reader, readers.Reader): + if reader.parser is None: + reader.set_parser(parser) + parser = reader.parser + else: + parser = parsers.get_parser_class(parser)() + if isinstance(writer, str): + writer = writers.get_writer_class(writer)() self.document = None """The document tree (`docutils.nodes` objects).""" @@ -56,13 +75,6 @@ def __init__(self, reader=None, parser=None, writer=None, self.writer = writer """A `docutils.writers.Writer` instance.""" - for component in 'reader', 'parser', 'writer': - assert not isinstance(getattr(self, component), str), ( - 'passed string "%s" as "%s" parameter; pass an instance, ' - 'or use the "%s_name" parameter instead (in ' - 'docutils.core.publish_* convenience functions).' - % (getattr(self, component), component, component)) - self.source = source """The source of input data, a `docutils.io.Input` instance.""" @@ -82,18 +94,29 @@ def __init__(self, reader=None, parser=None, writer=None, self._stderr = io.ErrorOutput() - def set_reader(self, reader_name, parser, parser_name): - """Set `self.reader` by name.""" - reader_class = readers.get_reader_class(reader_name) + def set_reader(self, reader, parser=None, parser_name=None) -> None: + """Set `self.reader` by name. + + The "paser_name" argument is deprecated, + use "parser" with parser name or instance. + """ + reader_class = readers.get_reader_class(reader) self.reader = reader_class(parser, parser_name) - self.parser = self.reader.parser + if self.reader.parser is not None: + self.parser = self.reader.parser + elif self.parser is not None: + self.reader.parser = self.parser - def set_writer(self, writer_name): + def set_writer(self, writer_name) -> None: """Set `self.writer` by name.""" writer_class = writers.get_writer_class(writer_name) self.writer = writer_class() - def set_components(self, reader_name, parser_name, writer_name): + def set_components(self, reader_name, parser_name, writer_name) -> None: + warnings.warn('`Publisher.set_components()` will be removed in ' + 'Docutils 2.0. Specify component names ' + 'at instantiation.', + PendingDeprecationWarning, stacklevel=2) if self.reader is None: self.set_reader(reader_name, self.parser, parser_name) if self.parser is None: @@ -103,32 +126,27 @@ def set_components(self, reader_name, parser_name, writer_name): if self.writer is None: self.set_writer(writer_name) - def setup_option_parser(self, usage=None, description=None, - settings_spec=None, config_section=None, - **defaults): - warnings.warn('Publisher.setup_option_parser is deprecated, ' - 'and will be removed in Docutils 0.21.', - DeprecationWarning, stacklevel=2) - if config_section: - if not settings_spec: - settings_spec = SettingsSpec() - settings_spec.config_section = config_section - parts = config_section.split() - if len(parts) > 1 and parts[-1] == 'application': - settings_spec.config_section_dependencies = ['applications'] - # @@@ Add self.source & self.destination to components in future? - return OptionParser( - components=(self.parser, self.reader, self.writer, settings_spec), - defaults=defaults, read_config_files=True, - usage=usage, description=description) - - def _setup_settings_parser(self, *args, **kwargs): + def _setup_settings_parser(self, usage=None, description=None, + settings_spec=None, config_section=None, + **defaults): # Provisional: will change (docutils.frontend.OptionParser will # be replaced by a parser based on arparse.ArgumentParser) # and may be removed later. with warnings.catch_warnings(): warnings.filterwarnings('ignore', category=DeprecationWarning) - return self.setup_option_parser(*args, **kwargs) + if config_section: + if not settings_spec: + settings_spec = SettingsSpec() + settings_spec.config_section = config_section + parts = config_section.split() + if len(parts) > 1 and parts[-1] == 'application': + settings_spec.config_section_dependencies = ['applications'] # noqa: E501 + # @@@ Add self.source & self.destination to components in future? + return OptionParser( + components=(self.parser, self.reader, self.writer, + settings_spec), + defaults=defaults, read_config_files=True, + usage=usage, description=description) def get_settings(self, usage=None, description=None, settings_spec=None, config_section=None, **defaults): @@ -149,7 +167,7 @@ def get_settings(self, usage=None, description=None, def process_programmatic_settings(self, settings_spec, settings_overrides, - config_section): + config_section) -> None: if self.settings is None: defaults = settings_overrides.copy() if settings_overrides else {} # Propagate exceptions by default when used programmatically: @@ -160,7 +178,7 @@ def process_programmatic_settings(self, settings_spec, def process_command_line(self, argv=None, usage=None, description=None, settings_spec=None, config_section=None, - **defaults): + **defaults) -> None: """ Parse command line arguments and set ``self.settings``. @@ -175,41 +193,58 @@ def process_command_line(self, argv=None, usage=None, description=None, argv = sys.argv[1:] self.settings = option_parser.parse_args(argv) - def set_io(self, source_path=None, destination_path=None): + def set_io(self, source_path=None, destination_path=None) -> None: if self.source is None: self.set_source(source_path=source_path) if self.destination is None: self.set_destination(destination_path=destination_path) - def set_source(self, source=None, source_path=None): + def set_source(self, + source: str | None = None, + source_path: StrPath | None = None, + ) -> None: if source_path is None: source_path = self.settings._source else: + source_path = os.fspath(source_path) self.settings._source = source_path self.source = self.source_class( source=source, source_path=source_path, encoding=self.settings.input_encoding, error_handler=self.settings.input_encoding_error_handler) - def set_destination(self, destination=None, destination_path=None): - if destination_path is None: - if (self.settings.output and self.settings._destination - and self.settings.output != self.settings._destination): - raise SystemExit('The positional argument is ' - 'obsoleted by the --output option. ' + def set_destination(self, + destination: TextIO | None = None, + destination_path: StrPath | None = None, + ) -> None: + # Provisional: the "_destination" and "output" settings + # are deprecated and will be ignored in Docutils 2.0. + if destination_path is not None: + self.settings.output_path = os.fspath(destination_path) + else: + # check 'output_path' and legacy settings + if getattr(self.settings, 'output', None + ) and not self.settings.output_path: + self.settings.output_path = self.settings.output + if (self.settings.output_path and self.settings._destination + and self.settings.output_path != self.settings._destination): + raise SystemExit('The --output-path option obsoletes the ' + 'second positional argument (DESTINATION). ' 'You cannot use them together.') - if self.settings.output == '-': # means stdout - self.settings.output = None - destination_path = (self.settings.output - or self.settings._destination) - self.settings._destination = destination_path + if self.settings.output_path is None: + self.settings.output_path = self.settings._destination + if self.settings.output_path == '-': # use stdout + self.settings.output_path = None + self.settings._destination = self.settings.output \ + = self.settings.output_path + self.destination = self.destination_class( destination=destination, - destination_path=destination_path, + destination_path=self.settings.output_path, encoding=self.settings.output_encoding, error_handler=self.settings.output_encoding_error_handler) - def apply_transforms(self): + def apply_transforms(self) -> None: self.document.transformer.populate_from_components( (self.source, self.reader, self.reader.parser, self.writer, self.destination)) @@ -223,7 +258,7 @@ def publish(self, argv=None, usage=None, description=None, already set), run `self.reader` and then `self.writer`. Return `self.writer`'s output. """ - exit = None + exit_ = None try: if self.settings is None: self.process_command_line( @@ -237,7 +272,7 @@ def publish(self, argv=None, usage=None, description=None, output = self.writer.write(self.document, self.destination) self.writer.assemble_parts() except SystemExit as error: - exit = True + exit_ = True exit_status = error.code except Exception as error: if not self.settings: # exception too early to report nicely @@ -246,18 +281,18 @@ def publish(self, argv=None, usage=None, description=None, self.debugging_dumps() raise self.report_Exception(error) - exit = True + exit_ = True exit_status = 1 self.debugging_dumps() if (enable_exit_status and self.document and (self.document.reporter.max_level >= self.settings.exit_status_level)): sys.exit(self.document.reporter.max_level + 10) - elif exit: + elif exit_: sys.exit(exit_status) return output - def debugging_dumps(self): + def debugging_dumps(self) -> None: if not self.document: return if self.settings.dump_settings: @@ -280,7 +315,7 @@ def debugging_dumps(self): print(self.document.pformat().encode( 'raw_unicode_escape'), file=self._stderr) - def prompt(self): + def prompt(self) -> None: """Print info and prompt when waiting for input from a terminal.""" try: if not (self.source.isatty() and self._stderr.isatty()): @@ -302,7 +337,7 @@ def prompt(self): 'on an empty line):', file=self._stderr) - def report_Exception(self, error): + def report_Exception(self, error) -> None: if isinstance(error, utils.SystemMessage): self.report_SystemMessage(error) elif isinstance(error, UnicodeEncodeError): @@ -324,12 +359,12 @@ def report_Exception(self, error): Python version ({sys.version.split()[0]}), your OS type & version, \ and the command line used.""", file=self._stderr) - def report_SystemMessage(self, error): + def report_SystemMessage(self, error) -> None: print('Exiting due to level-%s (%s) system message.' % ( error.level, utils.Reporter.levels[error.level]), file=self._stderr) - def report_UnicodeError(self, error): + def report_UnicodeError(self, error) -> None: data = error.object[error.start:error.end] self._stderr.write( '%s\n' @@ -376,9 +411,9 @@ def report_UnicodeError(self, error): # Chain several args as input and use --output or redirection for output: # argparser.add_argument('source', nargs='+') # -def publish_cmdline(reader=None, reader_name='standalone', - parser=None, parser_name='restructuredtext', - writer=None, writer_name='pseudoxml', +def publish_cmdline(reader=None, reader_name=None, + parser=None, parser_name=None, + writer=None, writer_name=None, settings=None, settings_spec=None, settings_overrides=None, config_section=None, enable_exit_status=True, argv=None, @@ -397,8 +432,13 @@ def publish_cmdline(reader=None, reader_name='standalone', - `description`: Program description, output for the "--help" option (along with command-line option descriptions). """ + # The "*_name" arguments are deprecated. + _name_arg_warning(reader_name, parser_name, writer_name) + # The default is only used if both arguments are empty + reader = reader or reader_name or 'standalone' + parser = parser or parser_name or 'restructuredtext' + writer = writer or writer_name or 'pseudoxml' publisher = Publisher(reader, parser, writer, settings=settings) - publisher.set_components(reader_name, parser_name, writer_name) output = publisher.publish( argv, usage, description, settings_spec, settings_overrides, config_section=config_section, enable_exit_status=enable_exit_status) @@ -407,9 +447,9 @@ def publish_cmdline(reader=None, reader_name='standalone', def publish_file(source=None, source_path=None, destination=None, destination_path=None, - reader=None, reader_name='standalone', - parser=None, parser_name='restructuredtext', - writer=None, writer_name='pseudoxml', + reader=None, reader_name=None, + parser=None, parser_name=None, + writer=None, writer_name=None, settings=None, settings_spec=None, settings_overrides=None, config_section=None, enable_exit_status=False): """ @@ -419,7 +459,10 @@ def publish_file(source=None, source_path=None, Parameters: see `publish_programmatically()`. """ - output, publisher = publish_programmatically( + # The "*_name" arguments are deprecated. + _name_arg_warning(reader_name, parser_name, writer_name) + # The default is set in publish_programmatically(). + output, _publisher = publish_programmatically( source_class=io.FileInput, source=source, source_path=source_path, destination_class=io.FileOutput, destination=destination, destination_path=destination_path, @@ -434,9 +477,9 @@ def publish_file(source=None, source_path=None, def publish_string(source, source_path=None, destination_path=None, - reader=None, reader_name='standalone', - parser=None, parser_name='restructuredtext', - writer=None, writer_name='pseudoxml', + reader=None, reader_name=None, + parser=None, parser_name=None, + writer=None, writer_name=None, settings=None, settings_spec=None, settings_overrides=None, config_section=None, enable_exit_status=False): @@ -449,7 +492,8 @@ def publish_string(source, source_path=None, destination_path=None, the return value is a `bytes` instance (unless `output_encoding`_ is "unicode", cf. `docutils.io.StringOutput.write()`). - Parameters: see `publish_programmatically()`. + Parameters: see `publish_programmatically()` or + https://docutils.sourceforge.io/docs/api/publisher.html#publish-string This function is provisional because in Python 3 name and behaviour no longer match. @@ -457,7 +501,10 @@ def publish_string(source, source_path=None, destination_path=None, .. _output_encoding: https://docutils.sourceforge.io/docs/user/config.html#output-encoding """ - output, publisher = publish_programmatically( + # The "*_name" arguments are deprecated. + _name_arg_warning(reader_name, parser_name, writer_name) + # The default is set in publish_programmatically(). + output, _publisher = publish_programmatically( source_class=io.StringInput, source=source, source_path=source_path, destination_class=io.StringOutput, destination=None, destination_path=destination_path, @@ -473,9 +520,9 @@ def publish_string(source, source_path=None, destination_path=None, def publish_parts(source, source_path=None, source_class=io.StringInput, destination_path=None, - reader=None, reader_name='standalone', - parser=None, parser_name='restructuredtext', - writer=None, writer_name='pseudoxml', + reader=None, reader_name=None, + parser=None, parser_name=None, + writer=None, writer_name=None, settings=None, settings_spec=None, settings_overrides=None, config_section=None, enable_exit_status=False): @@ -495,7 +542,10 @@ def publish_parts(source, source_path=None, source_class=io.StringInput, __ https://docutils.sourceforge.io/docs/api/publisher.html#publish-parts """ - output, publisher = publish_programmatically( + # The "*_name" arguments are deprecated. + _name_arg_warning(reader_name, parser_name, writer_name) + # The default is set in publish_programmatically(). + _output, publisher = publish_programmatically( source=source, source_path=source_path, source_class=source_class, destination_class=io.StringOutput, destination=None, destination_path=destination_path, @@ -511,8 +561,8 @@ def publish_parts(source, source_path=None, source_class=io.StringInput, def publish_doctree(source, source_path=None, source_class=io.StringInput, - reader=None, reader_name='standalone', - parser=None, parser_name='restructuredtext', + reader=None, reader_name=None, + parser=None, parser_name=None, settings=None, settings_spec=None, settings_overrides=None, config_section=None, enable_exit_status=False): @@ -521,6 +571,9 @@ def publish_doctree(source, source_path=None, Parameters: see `publish_programmatically()`. """ + # The "*_name" arguments are deprecated. + _name_arg_warning(reader_name, parser_name, None) + # The default is set in publish_programmatically(). _output, publisher = publish_programmatically( source=source, source_path=source_path, source_class=source_class, @@ -528,7 +581,7 @@ def publish_doctree(source, source_path=None, destination_class=io.NullOutput, reader=reader, reader_name=reader_name, parser=parser, parser_name=parser_name, - writer=None, writer_name='null', + writer='null', writer_name=None, settings=settings, settings_spec=settings_spec, settings_overrides=settings_overrides, config_section=config_section, enable_exit_status=enable_exit_status) @@ -536,7 +589,7 @@ def publish_doctree(source, source_path=None, def publish_from_doctree(document, destination_path=None, - writer=None, writer_name='pseudoxml', + writer=None, writer_name=None, settings=None, settings_spec=None, settings_overrides=None, config_section=None, enable_exit_status=False): @@ -559,13 +612,13 @@ def publish_from_doctree(document, destination_path=None, This function is provisional because in Python 3 name and behaviour of the `io.StringOutput` class no longer match. """ - reader = doctree.Reader(parser_name='null') - publisher = Publisher(reader, None, writer, + # The "writer_name" argument is deprecated. + _name_arg_warning(None, None, writer_name) + publisher = Publisher(reader=doctree.Reader(), + writer=writer or writer_name or 'pseudoxml', source=io.DocTreeInput(document), destination_class=io.StringOutput, settings=settings) - if not writer and writer_name: - publisher.set_writer(writer_name) publisher.process_programmatic_settings( settings_spec, settings_overrides, config_section) publisher.set_destination(None, destination_path) @@ -600,7 +653,13 @@ def publish_cmdline_to_binary(reader=None, reader_name='standalone', line. - `description`: Program description, output for the "--help" option (along with command-line option descriptions). + + Deprecated. Use `publish_cmdline()` (works with `bytes` since + Docutils 0.20). Will be removed in Docutils 0.24. """ + warnings.warn('"publish_cmdline_to_binary()" is obsoleted' + ' by "publish_cmdline()" and will be removed' + ' in Docutils 0.24.', DeprecationWarning, stacklevel=2) publisher = Publisher(reader, parser, writer, settings=settings, destination_class=destination_class) publisher.set_components(reader_name, parser_name, writer_name) @@ -610,6 +669,15 @@ def publish_cmdline_to_binary(reader=None, reader_name='standalone', return output +def _name_arg_warning(*name_args) -> None: + for component, name_arg in zip(('reader', 'parser', 'writer'), name_args): + if name_arg is not None: + warnings.warn(f'Argument "{component}_name" will be removed in ' + f'Docutils 2.0. Specify {component} name ' + f'in the "{component}" argument.', + PendingDeprecationWarning, stacklevel=3) + + def publish_programmatically(source_class, source, source_path, destination_class, destination, destination_path, reader, reader_name, @@ -624,7 +692,8 @@ def publish_programmatically(source_class, source, source_path, Return the output (as `str` or `bytes`, depending on `destination_class`, writer, and the "output_encoding" setting) and the Publisher object. - Applications should not need to call this function directly. If it does + Internal: + Applications should not call this function directly. If it does seem to be necessary to call this function directly, please write to the Docutils-develop mailing list . @@ -650,7 +719,7 @@ def publish_programmatically(source_class, source, source_path, - `io.FileInput`: Path to the input file, opened if no `source` supplied. - - `io.StringInput`: Optional. Path to the file or name of the + - `io.StringInput`: Optional. Path to the file or description of the object that produced `source`. Only used for diagnostic output. * `destination_class` **required**: The class for dynamically created @@ -674,20 +743,20 @@ def publish_programmatically(source_class, source, source_path, output; optional. Used for determining relative paths (stylesheets, source links, etc.). - * `reader`: A `docutils.readers.Reader` object. + * `reader`: A `docutils.readers.Reader` instance, name, or alias. + Default: "standalone". - * `reader_name`: Name or alias of the Reader class to be instantiated if - no `reader` supplied. + * `reader_name`: Deprecated. Use `reader`. - * `parser`: A `docutils.parsers.Parser` object. + * `parser`: A `docutils.parsers.Parser` instance, name, or alias. + Default: "restructuredtext". - * `parser_name`: Name or alias of the Parser class to be instantiated if - no `parser` supplied. + * `parser_name`: Deprecated. Use `parser`. - * `writer`: A `docutils.writers.Writer` object. + * `writer`: A `docutils.writers.Writer` instance, name, or alias. + Default: "pseudoxml". - * `writer_name`: Name or alias of the Writer class to be instantiated if - no `writer` supplied. + * `writer_name`: Deprecated. Use `writer`. * `settings`: A runtime settings (`docutils.frontend.Values`) object, for dotted-attribute access to runtime settings. It's the end result of the @@ -711,10 +780,13 @@ def publish_programmatically(source_class, source, source_path, * `enable_exit_status`: Boolean; enable exit status at end of processing? """ + reader = reader or reader_name or 'standalone' + parser = parser or parser_name or 'restructuredtext' + writer = writer or writer_name or 'pseudoxml' + publisher = Publisher(reader, parser, writer, settings=settings, source_class=source_class, destination_class=destination_class) - publisher.set_components(reader_name, parser_name, writer_name) publisher.process_programmatic_settings( settings_spec, settings_overrides, config_section) publisher.set_source(source, source_path) @@ -726,8 +798,8 @@ def publish_programmatically(source_class, source, source_path, # "Entry points" with functionality of the "tools/rst2*.py" scripts # cf. https://packaging.python.org/en/latest/specifications/entry-points/ -def rst2something(writer, documenttype, doc_path=''): - # Helper function for the common parts of rst2... +def rst2something(writer, documenttype, doc_path='') -> None: + # Helper function for the common parts of `rst2*()` # writer: writer name # documenttype: output document type # doc_path: documentation path (relative to the documentation root) @@ -736,45 +808,48 @@ def rst2something(writer, documenttype, doc_path=''): 'from standalone reStructuredText sources ' f'. ' + default_description) - locale.setlocale(locale.LC_ALL, '') - publish_cmdline(writer_name=writer, description=description) + try: + locale.setlocale(locale.LC_ALL, '') + except locale.Error as e: + sys.stderr.write(f'WARNING: Cannot set the default locale: {e}.\n') + publish_cmdline(writer=writer, description=description) -def rst2html(): +def rst2html() -> None: rst2something('html', 'HTML', 'user/html.html#html') -def rst2html4(): +def rst2html4() -> None: rst2something('html4', 'XHTML 1.1', 'user/html.html#html4css1') -def rst2html5(): +def rst2html5() -> None: rst2something('html5', 'HTML5', 'user/html.html#html5-polyglot') -def rst2latex(): +def rst2latex() -> None: rst2something('latex', 'LaTeX', 'user/latex.html') -def rst2man(): +def rst2man() -> None: rst2something('manpage', 'Unix manual (troff)', 'user/manpage.html') -def rst2odt(): +def rst2odt() -> None: rst2something('odt', 'OpenDocument text (ODT)', 'user/odt.html') -def rst2pseudoxml(): +def rst2pseudoxml() -> None: rst2something('pseudoxml', 'pseudo-XML (test)', 'ref/doctree.html') -def rst2s5(): +def rst2s5() -> None: rst2something('s5', 'S5 HTML slideshow', 'user/slide-shows.html') -def rst2xetex(): +def rst2xetex() -> None: rst2something('xetex', 'LaTeX (XeLaTeX/LuaLaTeX)', 'user/latex.html') -def rst2xml(): +def rst2xml() -> None: rst2something('xml', 'Docutils-native XML', 'ref/doctree.html') diff --git a/addons/source-python/packages/site-packages/docutils/examples.py b/addons/source-python/packages/site-packages/docutils/examples.py index c27ab70d9..7a2480aa7 100644 --- a/addons/source-python/packages/site-packages/docutils/examples.py +++ b/addons/source-python/packages/site-packages/docutils/examples.py @@ -1,4 +1,4 @@ -# $Id: examples.py 9026 2022-03-04 15:57:13Z milde $ +# $Id: examples.py 10045 2025-03-09 01:02:23Z aa-turner $ # Author: David Goodger # Copyright: This module has been placed in the public domain. @@ -11,12 +11,27 @@ necessary. """ +from __future__ import annotations + + from docutils import core, io +TYPE_CHECKING = False +if TYPE_CHECKING: + from typing import Any, Literal + + from docutils import nodes + from docutils.nodes import StrPath + from docutils.core import Publisher -def html_parts(input_string, source_path=None, destination_path=None, - input_encoding='unicode', doctitle=True, - initial_header_level=1): + +def html_parts(input_string: str | bytes, + source_path: StrPath | None = None, + destination_path: StrPath | None = None, + input_encoding: Literal['unicode'] | str = 'unicode', + doctitle: bool = True, + initial_header_level: int = 1, + ) -> dict[str, str]: """ Given an input string, returns a dictionary of HTML document parts. @@ -46,13 +61,18 @@ def html_parts(input_string, source_path=None, destination_path=None, parts = core.publish_parts( source=input_string, source_path=source_path, destination_path=destination_path, - writer_name='html', settings_overrides=overrides) + writer='html', settings_overrides=overrides) return parts -def html_body(input_string, source_path=None, destination_path=None, - input_encoding='unicode', output_encoding='unicode', - doctitle=True, initial_header_level=1): +def html_body(input_string: str | bytes, + source_path: StrPath | None = None, + destination_path: StrPath | None = None, + input_encoding: Literal['unicode'] | str = 'unicode', + output_encoding: Literal['unicode'] | str = 'unicode', + doctitle: bool = True, + initial_header_level: int = 1, + ) -> str | bytes: """ Given an input string, returns an HTML fragment as a string. @@ -74,26 +94,30 @@ def html_body(input_string, source_path=None, destination_path=None, return fragment -def internals(input_string, source_path=None, destination_path=None, - input_encoding='unicode', settings_overrides=None): +def internals(source: str, + source_path: StrPath | None = None, + input_encoding: Literal['unicode'] | str = 'unicode', + settings_overrides: dict[str, Any] | None = None, + ) -> tuple[nodes.document, Publisher]: """ Return the document tree and publisher, for exploring Docutils internals. Parameters: see `html_parts()`. """ - if settings_overrides: - overrides = settings_overrides.copy() - else: - overrides = {} - overrides['input_encoding'] = input_encoding - output, pub = core.publish_programmatically( - source_class=io.StringInput, source=input_string, - source_path=source_path, - destination_class=io.NullOutput, destination=None, - destination_path=destination_path, - reader=None, reader_name='standalone', - parser=None, parser_name='restructuredtext', - writer=None, writer_name='null', - settings=None, settings_spec=None, settings_overrides=overrides, - config_section=None, enable_exit_status=None) - return pub.writer.document, pub + if settings_overrides is None: + settings_overrides = {} + overrides = settings_overrides | {'input_encoding': input_encoding} + + publisher = core.Publisher('standalone', 'rst', 'null', + source_class=io.StringInput, + destination_class=io.NullOutput) + publisher.process_programmatic_settings(settings_spec=None, + settings_overrides=overrides, + config_section=None) + publisher.set_source(source, source_path) + publisher.publish() + return publisher.document, publisher + + +if __name__ == '__main__': + print(internals('test')[0]) diff --git a/addons/source-python/packages/site-packages/docutils/frontend.py b/addons/source-python/packages/site-packages/docutils/frontend.py index 2499c628c..d5415f4fd 100644 --- a/addons/source-python/packages/site-packages/docutils/frontend.py +++ b/addons/source-python/packages/site-packages/docutils/frontend.py @@ -1,4 +1,4 @@ -# $Id: frontend.py 9540 2024-02-17 10:36:59Z milde $ +# $Id: frontend.py 10196 2025-08-07 06:35:37Z milde $ # Author: David Goodger # Copyright: This module has been placed in the public domain. @@ -6,8 +6,8 @@ Command-line and common processing for Docutils front-end tools. This module is provisional. -Major changes will happen with the switch from the deprecated -"optparse" module to "arparse". +Major changes will happen with the transition from the +"optparse" module to "arparse" in Docutils 2.0 or later. Applications should use the high-level API provided by `docutils.core`. See https://docutils.sourceforge.io/docs/api/runtime-settings.html. @@ -30,7 +30,7 @@ `get_default_settings()`. New in 0.19. Option callbacks: - `store_multiple()`, `read_config_file()`. Deprecated. + `store_multiple()`, `read_config_file()`. Deprecated. To be removed. Setting validators: `validate_encoding()`, `validate_encoding_error_handler()`, @@ -50,29 +50,59 @@ `make_paths_absolute()`, `filter_settings_spec()`. Provisional. """ +from __future__ import annotations + __docformat__ = 'reStructuredText' import codecs import configparser import optparse -from optparse import SUPPRESS_HELP import os import os.path -from pathlib import Path import sys import warnings +from optparse import SUPPRESS_HELP +from pathlib import Path import docutils from docutils import io, utils - -def store_multiple(option, opt, value, parser, *args, **kwargs): +TYPE_CHECKING = False +if TYPE_CHECKING: + from collections.abc import Iterable, Mapping, Sequence + from typing import Any, ClassVar, Literal, Protocol + + from docutils import SettingsSpec, _OptionTuple, _SettingsSpecTuple + from docutils.io import StrPath + + class _OptionValidator(Protocol): + def __call__( + self, + setting: str, + value: str | None, + option_parser: OptionParser, + /, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> Any: + ... + + +def store_multiple(option: optparse.Option, + opt: str, + value: Any, + parser: OptionParser, + *args: str, + **kwargs: Any, + ) -> None: """ Store multiple values in `parser.values`. (Option callback.) Store `None` for each attribute named in `args`, and store the value for each key (attribute name) in `kwargs`. + + Deprecated. Will be removed with the switch to from optparse to argparse. """ for attribute in args: setattr(parser.values, attribute, None) @@ -80,9 +110,15 @@ def store_multiple(option, opt, value, parser, *args, **kwargs): setattr(parser.values, key, value) -def read_config_file(option, opt, value, parser): +def read_config_file(option: optparse.Option, + opt: str, + value: Any, + parser: OptionParser, + ) -> None: """ Read a configuration file during option processing. (Option callback.) + + Deprecated. Will be removed with the switch to from optparse to argparse. """ try: new_settings = parser.get_config_file_settings(value) @@ -91,25 +127,37 @@ def read_config_file(option, opt, value, parser): parser.values.update(new_settings, parser) -def validate_encoding(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_encoding(setting: str, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> str | None: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. if value is None: value = setting if value == '': - return None # allow overwriting a config file value + warnings.warn('Input encoding detection will be removed and the ' + 'special encoding values None and "" become invalid ' + 'in Docutils 1.0.', FutureWarning, stacklevel=2) + return None try: codecs.lookup(value) except LookupError: - raise LookupError('setting "%s": unknown encoding: "%s"' - % (setting, value)) + prefix = f'setting "{setting}":' if setting else '' + raise LookupError(f'{prefix} unknown encoding: "{value}"') return value -def validate_encoding_error_handler(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_encoding_error_handler( + setting: str, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> str: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -127,10 +175,20 @@ def validate_encoding_error_handler(setting, value=None, option_parser=None, def validate_encoding_and_error_handler( - setting, value, option_parser, config_parser=None, config_section=None): - """ + setting: str, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> str: + """Check/normalize encoding settings + Side-effect: if an error handler is included in the value, it is inserted into the appropriate place as if it were a separate setting/option. + + All arguments except `value` are ignored + (kept for compatibility with "optparse" module). + If there is only one positional argument, it is interpreted as `value`. """ if ':' in value: encoding, handler = value.split(':') @@ -145,11 +203,16 @@ def validate_encoding_and_error_handler( return validate_encoding(encoding) -def validate_boolean(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_boolean(setting: str | bool, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> bool: """Check/normalize boolean settings: - True: '1', 'on', 'yes', 'true' - False: '0', 'off', 'no','false', '' + + :True: '1', 'on', 'yes', 'true' + :False: '0', 'off', 'no','false', '' All arguments except `value` are ignored (kept for compatibility with "optparse" module). @@ -165,12 +228,17 @@ def validate_boolean(setting, value=None, option_parser=None, raise LookupError('unknown boolean value: "%s"' % value) -def validate_ternary(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_ternary(setting: str | bool, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> str | bool | None: """Check/normalize three-value settings: - True: '1', 'on', 'yes', 'true' - False: '0', 'off', 'no','false', '' - any other value: returned as-is. + + :True: '1', 'on', 'yes', 'true' + :False: '0', 'off', 'no','false', '' + :any other value: returned as-is. All arguments except `value` are ignored (kept for compatibility with "optparse" module). @@ -186,8 +254,12 @@ def validate_ternary(setting, value=None, option_parser=None, return value -def validate_nonnegative_int(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_nonnegative_int(setting: str | int, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> int: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -199,8 +271,12 @@ def validate_nonnegative_int(setting, value=None, option_parser=None, return value -def validate_threshold(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_threshold(setting: str | int, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> int: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -216,8 +292,12 @@ def validate_threshold(setting, value=None, option_parser=None, def validate_colon_separated_string_list( - setting, value=None, option_parser=None, - config_parser=None, config_section=None): + setting: str | list[str], + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> list[str]: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -231,8 +311,13 @@ def validate_colon_separated_string_list( return value -def validate_comma_separated_list(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_comma_separated_list( + setting: str | list[str], + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> list[str]: """Check/normalize list arguments (split at "," and strip whitespace). All arguments except `value` are ignored @@ -253,8 +338,12 @@ def validate_comma_separated_list(setting, value=None, option_parser=None, return value -def validate_math_output(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_math_output(setting: str, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> tuple[()] | tuple[str, str]: """Check "math-output" setting, return list with "format" and "options". See also https://docutils.sourceforge.io/docs/user/config.html#math-output @@ -270,7 +359,7 @@ def validate_math_output(setting, value=None, option_parser=None, tex2mathml_converters = ('', 'latexml', 'ttm', 'blahtexml', 'pandoc') if not value: - return [] + return () values = value.split(maxsplit=1) format = values[0].lower() try: @@ -286,11 +375,15 @@ def validate_math_output(setting, value=None, option_parser=None, raise LookupError(f'MathML converter "{options}" not supported,\n' f' choose from {tex2mathml_converters}.') options = converter - return [format, options] + return format, options -def validate_url_trailing_slash(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_url_trailing_slash(setting: str | None, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> str: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -304,8 +397,12 @@ def validate_url_trailing_slash(setting, value=None, option_parser=None, return value + '/' -def validate_dependency_file(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_dependency_file(setting: str | None, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> utils.DependencyList: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -318,8 +415,12 @@ def validate_dependency_file(setting, value=None, option_parser=None, return utils.DependencyList(None) -def validate_strip_class(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_strip_class(setting: str, + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> list[str]: # All arguments except `value` are ignored # (kept for compatibility with "optparse" module). # If there is only one positional argument, it is interpreted as `value`. @@ -336,8 +437,13 @@ def validate_strip_class(setting, value=None, option_parser=None, return value -def validate_smartquotes_locales(setting, value=None, option_parser=None, - config_parser=None, config_section=None): +def validate_smartquotes_locales( + setting: str | list[str | tuple[str, str]], + value: str | None = None, + option_parser: OptionParser | None = None, + config_parser: ConfigParser | None = None, + config_section: str | None = None, + ) -> list[tuple[str, Sequence[str]]]: """Check/normalize a comma separated list of smart quote definitions. Return a list of (language-tag, quotes) string tuples. @@ -377,7 +483,10 @@ def validate_smartquotes_locales(setting, value=None, option_parser=None, return lc_quotes -def make_paths_absolute(pathdict, keys, base_path=None): +def make_paths_absolute(pathdict: dict[str, list[StrPath] | StrPath], + keys: tuple[str], + base_path: StrPath | None = None, + ) -> None: """ Interpret filesystem path settings relative to the `base_path` given. @@ -388,24 +497,30 @@ def make_paths_absolute(pathdict, keys, base_path=None): base_path = Path.cwd() else: base_path = Path(base_path) + if sys.platform == 'win32' and sys.version_info[:2] <= (3, 9): + base_path = base_path.absolute() for key in keys: if key in pathdict: value = pathdict[key] - if isinstance(value, list): + if isinstance(value, (list, tuple)): value = [str((base_path/path).resolve()) for path in value] elif value: value = str((base_path/value).resolve()) pathdict[key] = value -def make_one_path_absolute(base_path, path): +def make_one_path_absolute(base_path: StrPath, path: StrPath) -> str: # deprecated, will be removed warnings.warn('frontend.make_one_path_absolute() will be removed ' - 'in Docutils 0.23.', DeprecationWarning, stacklevel=2) + 'in Docutils 2.0 or later.', + DeprecationWarning, stacklevel=2) return os.path.abspath(os.path.join(base_path, path)) -def filter_settings_spec(settings_spec, *exclude, **replace): +def filter_settings_spec(settings_spec: _SettingsSpecTuple, + *exclude: str, + **replace: _OptionTuple, + ) -> _SettingsSpecTuple: """Return a copy of `settings_spec` excluding/replacing some settings. `settings_spec` is a tuple of configuration settings @@ -418,7 +533,7 @@ def filter_settings_spec(settings_spec, *exclude, **replace): settings = list(settings_spec) # every third item is a sequence of option tuples for i in range(2, len(settings), 3): - newopts = [] + newopts: list[_OptionTuple] = [] for opt_spec in settings[i]: # opt_spec is ("", [

') - def depart_field_body(self, node): + def depart_field_body(self, node) -> None: self.body.append('\n') - def visit_figure(self, node): + def visit_figure(self, node) -> None: atts = {'class': 'figure'} if node.get('width'): atts['style'] = 'width: %s' % node['width'] @@ -1075,13 +1081,13 @@ def visit_figure(self, node): atts['class'] += " align-" + node['align'] self.body.append(self.starttag(node, 'div', **atts)) - def depart_figure(self, node): + def depart_figure(self, node) -> None: self.body.append('\n') - def visit_footer(self, node): + def visit_footer(self, node) -> None: self.context.append(len(self.body)) - def depart_footer(self, node): + def depart_footer(self, node) -> None: start = self.context.pop() footer = [self.starttag(node, 'div', CLASS='footer'), '\n'] @@ -1091,7 +1097,7 @@ def depart_footer(self, node): self.body_suffix[:0] = footer del self.body[start:] - def visit_footnote(self, node): + def visit_footnote(self, node) -> None: # No native HTML element: use \n') if not isinstance(node.next_node(descend=False, siblings=True), type(node)): self.body.append('\n') - def visit_footnote_reference(self, node): + def visit_footnote_reference(self, node) -> None: href = '#' + node['refid'] classes = [self.settings.footnote_references] self.body.append(self.starttag(node, 'a', suffix='', classes=classes, role='doc-noteref', href=href)) self.body.append('[') - def depart_footnote_reference(self, node): + def depart_footnote_reference(self, node) -> None: self.body.append(']') self.body.append('') @@ -1129,13 +1135,13 @@ def visit_generated(self, node): # Content already processed: raise nodes.SkipNode - def depart_generated(self, node): + def depart_generated(self, node) -> None: pass - def visit_header(self, node): + def visit_header(self, node) -> None: self.context.append(len(self.body)) - def depart_header(self, node): + def depart_header(self, node) -> None: start = self.context.pop() header = [self.starttag(node, 'div', CLASS='header')] header.extend(self.body[start:]) @@ -1144,21 +1150,17 @@ def depart_header(self, node): self.header.extend(header) del self.body[start:] - def visit_image(self, node): + def visit_image(self, node) -> None: # reference/embed images (still images and videos) uri = node['uri'] alt = node.get('alt', uri) mimetype = mimetypes.guess_type(uri)[0] element = '' # the HTML element (including potential children) - atts = {} # attributes for the HTML tag + # attributes for the HTML tag: + atts = self.image_size(node) # alignment is handled by CSS rules if 'align' in node: - atts['class'] = 'align-%s' % node['align'] - # set size with "style" attribute (more universal, accepts dimensions) - size_declaration = self.image_size(node) - if size_declaration: - atts['style'] = size_declaration - + atts['classes'] = [f"align-{node['align']}"] # ``:loading:`` option (embed, link, lazy), default from setting, # exception: only embed videos if told via directive option loading = 'link' if mimetype in self.videotypes else self.image_loading @@ -1167,18 +1169,19 @@ def visit_image(self, node): atts['loading'] = 'lazy' elif loading == 'embed': try: - imagepath = self.uri2imagepath(uri) - with open(imagepath, 'rb') as imagefile: - imagedata = imagefile.read() - except (ValueError, OSError) as err: + imagepath = self.uri2path(uri) + if mimetype == 'image/svg+xml': + imagedata = Path(imagepath).read_text(encoding='utf-8') + else: + imagedata = Path(imagepath).read_bytes() + except (ValueError, OSError, UnicodeError) as err: self.messages.append(self.document.reporter.error( f'Cannot embed image "{uri}":\n {err}', base_node=node)) # TODO: get external files with urllib.request (cf. odtwriter)? else: self.settings.record_dependencies.add(imagepath) if mimetype == 'image/svg+xml': - element = self.prepare_svg(node, imagedata, - size_declaration) + element = self.prepare_svg(imagedata, node, atts) else: data64 = base64.b64encode(imagedata).decode() uri = f'data:{mimetype};base64,{data64}' @@ -1213,17 +1216,17 @@ def visit_image(self, node): if suffix: # block-element self.report_messages(node) - def depart_image(self, node): + def depart_image(self, node) -> None: pass - def visit_inline(self, node): + def visit_inline(self, node) -> None: self.body.append(self.starttag(node, 'span', '')) - def depart_inline(self, node): + def depart_inline(self, node) -> None: self.body.append('') # footnote and citation labels: - def visit_label(self, node): + def visit_label(self, node) -> None: self.body.append('') self.body.append('[') # footnote/citation backrefs: @@ -1233,7 +1236,7 @@ def visit_label(self, node): self.body.append('' % backrefs[0]) - def depart_label(self, node): + def depart_label(self, node) -> None: backrefs = [] if self.settings.footnote_backlinks: backrefs = node.parent.get('backrefs', backrefs) @@ -1246,30 +1249,30 @@ def depart_label(self, node): self.body.append('(%s)\n' % ','.join(backlinks)) - def visit_legend(self, node): + def visit_legend(self, node) -> None: self.body.append(self.starttag(node, 'div', CLASS='legend')) - def depart_legend(self, node): + def depart_legend(self, node) -> None: self.body.append('\n') - def visit_line(self, node): + def visit_line(self, node) -> None: self.body.append(self.starttag(node, 'div', suffix='', CLASS='line')) if not len(node): self.body.append('
') - def depart_line(self, node): + def depart_line(self, node) -> None: self.body.append('\n') - def visit_line_block(self, node): + def visit_line_block(self, node) -> None: self.body.append(self.starttag(node, 'div', CLASS='line-block')) - def depart_line_block(self, node): + def depart_line_block(self, node) -> None: self.body.append('\n') - def visit_list_item(self, node): + def visit_list_item(self, node) -> None: self.body.append(self.starttag(node, 'li', '')) - def depart_list_item(self, node): + def depart_list_item(self, node) -> None: self.body.append('\n') # inline literal @@ -1297,16 +1300,16 @@ def visit_literal(self, node): self.body.append('
') raise nodes.SkipNode # content already processed - def depart_literal(self, node): + def depart_literal(self, node) -> None: # skipped unless literal element is from "code" role: self.body.append('') - def visit_literal_block(self, node): + def visit_literal_block(self, node) -> None: self.body.append(self.starttag(node, 'pre', '', CLASS='literal-block')) if 'code' in node['classes']: self.body.append('') - def depart_literal_block(self, node): + def depart_literal_block(self, node) -> None: if 'code' in node['classes']: self.body.append('') self.body.append('\n') @@ -1363,7 +1366,6 @@ def visit_math(self, node): math_code = self.encode(math_code) elif format == 'mathml': if 'XHTML 1' in self.doctype: - self.doctype = self.doctype_mathml self.content_type = self.content_type_mathml if self.math_options: converter = getattr(tex2mathml_extern, self.math_options) @@ -1396,70 +1398,70 @@ def visit_math(self, node): # Content already processed: raise nodes.SkipChildren - def depart_math(self, node): + def depart_math(self, node) -> None: pass - def visit_math_block(self, node): + def visit_math_block(self, node) -> None: self.visit_math(node) - def depart_math_block(self, node): + def depart_math_block(self, node) -> None: self.report_messages(node) # Meta tags: 'lang' attribute replaced by 'xml:lang' in XHTML 1.1 # HTML5/polyglot recommends using both - def visit_meta(self, node): + def visit_meta(self, node) -> None: self.meta.append(self.emptytag(node, 'meta', **node.non_default_attributes())) - def depart_meta(self, node): + def depart_meta(self, node) -> None: pass - def visit_option(self, node): + def visit_option(self, node) -> None: self.body.append(self.starttag(node, 'span', '', CLASS='option')) - def depart_option(self, node): + def depart_option(self, node) -> None: self.body.append('') if isinstance(node.next_node(descend=False, siblings=True), nodes.option): self.body.append(', ') - def visit_option_argument(self, node): + def visit_option_argument(self, node) -> None: self.body.append(node.get('delimiter', ' ')) self.body.append(self.starttag(node, 'var', '')) - def depart_option_argument(self, node): + def depart_option_argument(self, node) -> None: self.body.append('') - def visit_option_group(self, node): + def visit_option_group(self, node) -> None: self.body.append(self.starttag(node, 'dt', '')) self.body.append('') - def depart_option_group(self, node): + def depart_option_group(self, node) -> None: self.body.append('\n') - def visit_option_list(self, node): + def visit_option_list(self, node) -> None: self.body.append( self.starttag(node, 'dl', CLASS='option-list')) - def depart_option_list(self, node): + def depart_option_list(self, node) -> None: self.body.append('\n') - def visit_option_list_item(self, node): + def visit_option_list_item(self, node) -> None: pass - def depart_option_list_item(self, node): + def depart_option_list_item(self, node) -> None: pass - def visit_option_string(self, node): + def visit_option_string(self, node) -> None: pass - def depart_option_string(self, node): + def depart_option_string(self, node) -> None: pass - def visit_organization(self, node): + def visit_organization(self, node) -> None: self.visit_docinfo_item(node, 'organization') - def depart_organization(self, node): + def depart_organization(self, node) -> None: self.depart_docinfo_item() # Do not omit

tags @@ -1477,17 +1479,17 @@ def depart_organization(self, node): # # TODO: omit paragraph tags in simple table cells? - def visit_paragraph(self, node): + def visit_paragraph(self, node) -> None: self.body.append(self.starttag(node, 'p', '')) - def depart_paragraph(self, node): + def depart_paragraph(self, node) -> None: self.body.append('

') if not (isinstance(node.parent, (nodes.list_item, nodes.entry)) and (len(node.parent) == 1)): self.body.append('\n') self.report_messages(node) - def visit_problematic(self, node): + def visit_problematic(self, node) -> None: if node.hasattr('refid'): self.body.append('
' % node['refid']) self.context.append('') @@ -1495,7 +1497,7 @@ def visit_problematic(self, node): self.context.append('') self.body.append(self.starttag(node, 'span', '', CLASS='problematic')) - def depart_problematic(self, node): + def depart_problematic(self, node) -> None: self.body.append('') self.body.append(self.context.pop()) @@ -1513,7 +1515,7 @@ def visit_raw(self, node): # Keep non-HTML raw text out of output: raise nodes.SkipNode - def visit_reference(self, node): + def visit_reference(self, node) -> None: atts = {'classes': ['reference']} suffix = '' if 'refuri' in node: @@ -1534,80 +1536,80 @@ def visit_reference(self, node): suffix = '\n' self.body.append(self.starttag(node, 'a', suffix, **atts)) - def depart_reference(self, node): + def depart_reference(self, node) -> None: self.body.append('') if not isinstance(node.parent, nodes.TextElement): self.body.append('\n') self.in_mailto = False - def visit_revision(self, node): + def visit_revision(self, node) -> None: self.visit_docinfo_item(node, 'revision', meta=False) - def depart_revision(self, node): + def depart_revision(self, node) -> None: self.depart_docinfo_item() - def visit_row(self, node): + def visit_row(self, node) -> None: self.body.append(self.starttag(node, 'tr', '')) node.column = 0 - def depart_row(self, node): + def depart_row(self, node) -> None: self.body.append('\n') - def visit_rubric(self, node): + def visit_rubric(self, node) -> None: self.body.append(self.starttag(node, 'p', '', CLASS='rubric')) - def depart_rubric(self, node): + def depart_rubric(self, node) -> None: self.body.append('

\n') - def visit_section(self, node): + def visit_section(self, node) -> None: self.section_level += 1 self.body.append( self.starttag(node, 'div', CLASS='section')) - def depart_section(self, node): + def depart_section(self, node) -> None: self.section_level -= 1 self.body.append('\n') # TODO: use the new HTML5 element \n') - def visit_table(self, node): + def visit_table(self, node) -> None: atts = {'classes': self.settings.table_style.replace(',', ' ').split()} if 'align' in node: atts['classes'].append('align-%s' % node['align']) if 'width' in node: - atts['style'] = 'width: %s;' % node['width'] + width = node['width'] + if width[-1:] in '0123456789.': # unitless value + width += 'px' # add default length unit + atts['style'] = f'width: {width};' tag = self.starttag(node, 'table', **atts) self.body.append(tag) - def depart_table(self, node): + def depart_table(self, node) -> None: self.body.append('\n') self.report_messages(node) - def visit_target(self, node): + def visit_target(self, node) -> None: if ('refuri' not in node and 'refid' not in node and 'refname' not in node): @@ -1683,17 +1688,17 @@ def visit_target(self, node): else: self.context.append('') - def depart_target(self, node): + def depart_target(self, node) -> None: self.body.append(self.context.pop()) # no hard-coded vertical alignment in table body - def visit_tbody(self, node): + def visit_tbody(self, node) -> None: self.body.append(self.starttag(node, 'tbody')) - def depart_tbody(self, node): + def depart_tbody(self, node) -> None: self.body.append('\n') - def visit_term(self, node): + def visit_term(self, node) -> None: if 'details' in node.parent.parent['classes']: self.body.append(self.starttag(node, 'summary', suffix='')) else: @@ -1702,7 +1707,7 @@ def visit_term(self, node): classes=node.parent['classes'], ids=node.parent['ids'])) - def depart_term(self, node): + def depart_term(self, node) -> None: # Nest (optional) classifier(s) in the
element if node.next_node(nodes.classifier, descend=False, siblings=True): return # skip (depart_classifier() calls this function again) @@ -1711,17 +1716,17 @@ def depart_term(self, node): else: self.body.append('
\n') - def visit_tgroup(self, node): + def visit_tgroup(self, node) -> None: self.colspecs = [] node.stubs = [] - def depart_tgroup(self, node): + def depart_tgroup(self, node) -> None: pass - def visit_thead(self, node): + def visit_thead(self, node) -> None: self.body.append(self.starttag(node, 'thead')) - def depart_thead(self, node): + def depart_thead(self, node) -> None: self.body.append('\n') def section_title_tags(self, node): @@ -1743,7 +1748,7 @@ def section_title_tags(self, node): close_tag = '\n' % tagname return start_tag, close_tag - def visit_title(self, node): + def visit_title(self, node) -> None: close_tag = '

\n' if isinstance(node.parent, nodes.topic): # TODO: use role="heading" or

? (HTML5 only) @@ -1774,7 +1779,7 @@ def visit_title(self, node): self.body.append(start_tag) self.context.append(close_tag) - def depart_title(self, node): + def depart_title(self, node) -> None: self.body.append(self.context.pop()) if self.in_document_title: self.title = self.body[self.in_document_title:-1] @@ -1783,28 +1788,28 @@ def depart_title(self, node): self.html_title.extend(self.body) del self.body[:] - def visit_title_reference(self, node): + def visit_title_reference(self, node) -> None: self.body.append(self.starttag(node, 'cite', '')) - def depart_title_reference(self, node): + def depart_title_reference(self, node) -> None: self.body.append('') - def visit_topic(self, node): + def visit_topic(self, node) -> None: self.body.append(self.starttag(node, 'div', CLASS='topic')) - def depart_topic(self, node): + def depart_topic(self, node) -> None: self.body.append('\n') - def visit_transition(self, node): + def visit_transition(self, node) -> None: self.body.append(self.emptytag(node, 'hr', CLASS='docutils')) - def depart_transition(self, node): + def depart_transition(self, node) -> None: pass - def visit_version(self, node): + def visit_version(self, node) -> None: self.visit_docinfo_item(node, 'version', meta=False) - def depart_version(self, node): + def depart_version(self, node) -> None: self.depart_docinfo_item() def unimplemented_visit(self, node): @@ -1826,6 +1831,9 @@ class SimpleListChecker(nodes.GenericNodeVisitor): def default_visit(self, node): raise nodes.NodeFound + def default_departure(self, node): + pass + def visit_list_item(self, node): children = [child for child in node.children if not isinstance(child, nodes.Invisible)] @@ -1839,7 +1847,7 @@ def visit_list_item(self, node): else: raise nodes.NodeFound - def pass_node(self, node): + def pass_node(self, node) -> None: pass def ignore_node(self, node): diff --git a/addons/source-python/packages/site-packages/docutils/writers/docutils_xml.py b/addons/source-python/packages/site-packages/docutils/writers/docutils_xml.py index f41692950..a4c722751 100644 --- a/addons/source-python/packages/site-packages/docutils/writers/docutils_xml.py +++ b/addons/source-python/packages/site-packages/docutils/writers/docutils_xml.py @@ -1,4 +1,4 @@ -# $Id: docutils_xml.py 9502 2023-12-14 22:39:08Z milde $ +# $Id: docutils_xml.py 10136 2025-05-20 15:48:27Z milde $ # Author: David Goodger, Paul Tremblay, Guenter Milde # Maintainer: docutils-develop@lists.sourceforge.net # Copyright: This module has been placed in the public domain. @@ -8,6 +8,8 @@ https://docutils.sourceforge.io/docs/ref/docutils.dtd. """ +from __future__ import annotations + __docformat__ = 'reStructuredText' from io import StringIO @@ -52,11 +54,11 @@ class Writer(writers.Writer): output = None """Final translated form of `document`.""" - def __init__(self): + def __init__(self) -> None: writers.Writer.__init__(self) self.translator_class = XMLTranslator - def translate(self): + def translate(self) -> None: self.visitor = visitor = self.translator_class(self.document) self.document.walkabout(visitor) self.output = ''.join(visitor.output) @@ -77,7 +79,7 @@ class XMLTranslator(nodes.GenericNodeVisitor): xmlparser.setFeature( "http://xml.org/sax/features/external-general-entities", True) - def __init__(self, document): + def __init__(self, document) -> None: nodes.NodeVisitor.__init__(self, document) # Reporter @@ -114,12 +116,13 @@ def __init__(self, document): simple_nodes = (nodes.TextElement, nodes.meta, nodes.image, nodes.colspec, nodes.transition) - def default_visit(self, node): + def default_visit(self, node) -> None: """Default node visit method.""" if not self.in_simple: self.output.append(self.indent*self.level) self.output.append(node.starttag(xml.sax.saxutils.quoteattr)) - self.level += 1 + if not isinstance(node, nodes.Inline): + self.level += 1 # `nodes.literal` is not an instance of FixedTextElement by design, # see docs/ref/rst/restructuredtext.html#inline-literals if isinstance(node, (nodes.FixedTextElement, nodes.literal)): @@ -129,9 +132,10 @@ def default_visit(self, node): if not self.in_simple: self.output.append(self.newline) - def default_departure(self, node): + def default_departure(self, node) -> None: """Default node depart method.""" - self.level -= 1 + if not isinstance(node, nodes.Inline): + self.level -= 1 if not self.in_simple: self.output.append(self.indent*self.level) self.output.append(node.endtag()) @@ -145,14 +149,14 @@ def default_departure(self, node): # specific visit and depart methods # --------------------------------- - def visit_Text(self, node): + def visit_Text(self, node) -> None: text = xml.sax.saxutils.escape(node.astext()) # indent text if we are not in a FixedText element: if not self.fixed_text: text = text.replace('\n', '\n'+self.indent*self.level) self.output.append(text) - def depart_Text(self, node): + def depart_Text(self, node) -> None: pass def visit_raw(self, node): @@ -183,5 +187,5 @@ def visit_raw(self, node): class TestXml(xml.sax.handler.ContentHandler): - def setDocumentLocator(self, locator): + def setDocumentLocator(self, locator) -> None: self.locator = locator diff --git a/addons/source-python/packages/site-packages/docutils/writers/html4css1/__init__.py b/addons/source-python/packages/site-packages/docutils/writers/html4css1/__init__.py index 799d30e42..ff5a4e180 100644 --- a/addons/source-python/packages/site-packages/docutils/writers/html4css1/__init__.py +++ b/addons/source-python/packages/site-packages/docutils/writers/html4css1/__init__.py @@ -1,4 +1,4 @@ -# $Id: __init__.py 9558 2024-03-11 17:48:52Z milde $ +# $Id: __init__.py 10270 2025-12-03 11:38:54Z milde $ # Author: David Goodger # Maintainer: docutils-develop@lists.sourceforge.net # Copyright: This module has been placed in the public domain. @@ -12,6 +12,8 @@ for proper viewing with a modern graphical browser. """ +from __future__ import annotations + __docformat__ = 'reStructuredText' import os.path @@ -66,8 +68,14 @@ class Writer(writers._html_base.Writer): 'Specify the initial header level. Does not affect document ' 'title & subtitle (see --no-doc-title). (default: 1 for "

")', ['--initial-header-level'], - {'choices': '1 2 3 4 5 6'.split(), 'default': '1', + {'choices': '1 2 3 4 5 6 auto'.split(), 'default': '1', 'metavar': ''}), + math_output=( + 'Math output format (one of "MathML", "HTML", "MathJax", or ' + '"LaTeX") and option(s). (default: "HTML math.css")', + ['--math-output'], + {'metavar': '', 'default': 'HTML math.css', + 'validator': frontend.validate_math_output}), xml_declaration=( 'Prepend an XML declaration (default). ', ['--xml-declaration'], @@ -96,7 +104,7 @@ class Writer(writers._html_base.Writer): config_section = 'html4css1 writer' - def __init__(self): + def __init__(self) -> None: self.parts = {} self.translator_class = HTMLTranslator @@ -167,56 +175,56 @@ class HTMLTranslator(writers._html_base.HTMLTranslator): 'none': ('', '')} # ersatz for first/last pseudo-classes missing in CSS1 - def set_first_last(self, node): + def set_first_last(self, node) -> None: self.set_class_on_child(node, 'first', 0) self.set_class_on_child(node, 'last', -1) # add newline after opening tag - def visit_address(self, node): + def visit_address(self, node) -> None: self.visit_docinfo_item(node, 'address', meta=False) self.body.append(self.starttag(node, 'pre', CLASS='address')) - def depart_address(self, node): + def depart_address(self, node) -> None: self.body.append('\n\n') self.depart_docinfo_item() # ersatz for first/last pseudo-classes - def visit_admonition(self, node): + def visit_admonition(self, node) -> None: node['classes'].insert(0, 'admonition') self.body.append(self.starttag(node, 'div')) self.set_first_last(node) - def depart_admonition(self, node=None): + def depart_admonition(self, node=None) -> None: self.body.append('\n') # author, authors: use
instead of paragraphs - def visit_author(self, node): + def visit_author(self, node) -> None: if isinstance(node.parent, nodes.authors): if self.author_in_authors: self.body.append('\n
') else: self.visit_docinfo_item(node, 'author') - def depart_author(self, node): + def depart_author(self, node) -> None: if isinstance(node.parent, nodes.authors): self.author_in_authors = True else: self.depart_docinfo_item() - def visit_authors(self, node): + def visit_authors(self, node) -> None: self.visit_docinfo_item(node, 'authors') self.author_in_authors = False # initialize - def depart_authors(self, node): + def depart_authors(self, node) -> None: self.depart_docinfo_item() # use "width" argument instead of "style: 'width'": - def visit_colspec(self, node): + def visit_colspec(self, node) -> None: self.colspecs.append(node) # "stubs" list is an attribute of the tgroup element: node.parent.stubs.append(node.attributes.get('stub')) - def depart_colspec(self, node): + def depart_colspec(self, node) -> None: # write out when all colspecs are processed if isinstance(node.next_node(descend=False, siblings=True), nodes.colspec): @@ -225,10 +233,10 @@ def depart_colspec(self, node): or ('colwidths-auto' in self.settings.table_style and 'colwidths-given' not in node.parent.parent['classes'])): return - total_width = sum(node['colwidth'] for node in self.colspecs) + total_width = sum(node.propwidth() for node in self.colspecs) self.body.append(self.starttag(node, 'colgroup')) for node in self.colspecs: - colwidth = int(node['colwidth'] * 100.0 / total_width + 0.5) + colwidth = node.propwidth() * 100.0 / total_width + 0.5 self.body.append(self.emptytag(node, 'col', width='%i%%' % colwidth)) self.body.append('\n') @@ -246,7 +254,7 @@ def is_compactable(self, node): or self.check_simple_list(node)))) # citations: Use table for bibliographic references. - def visit_citation(self, node): + def visit_citation(self, node) -> None: self.body.append(self.starttag(node, 'table', CLASS='docutils citation', frame="void", rules="none")) @@ -255,11 +263,11 @@ def visit_citation(self, node): '') self.footnote_backrefs(node) - def depart_citation(self, node): + def depart_citation(self, node) -> None: self.body.append('\n' '\n\n') - def visit_citation_reference(self, node): + def visit_citation_reference(self, node) -> None: href = '#' if 'refid' in node: href += node['refid'] @@ -268,20 +276,20 @@ def visit_citation_reference(self, node): self.body.append(self.starttag(node, 'a', suffix='[', href=href, classes=['citation-reference'])) - def depart_citation_reference(self, node): + def depart_citation_reference(self, node) -> None: self.body.append(']') # insert classifier-delimiter (not required with CSS2) - def visit_classifier(self, node): + def visit_classifier(self, node) -> None: self.body.append(' : ') self.body.append(self.starttag(node, 'span', '', CLASS='classifier')) - def depart_classifier(self, node): + def depart_classifier(self, node) -> None: self.body.append('') self.depart_term(node) # close the
after last classifier # ersatz for first/last pseudo-classes - def visit_compound(self, node): + def visit_compound(self, node) -> None: self.body.append(self.starttag(node, 'div', CLASS='compound')) if len(node) > 1: node[0]['classes'].append('compound-first') @@ -289,41 +297,41 @@ def visit_compound(self, node): for child in node[1:-1]: child['classes'].append('compound-middle') - def depart_compound(self, node): + def depart_compound(self, node) -> None: self.body.append('\n') # ersatz for first/last pseudo-classes, no special handling of "details" - def visit_definition(self, node): + def visit_definition(self, node) -> None: self.body.append(self.starttag(node, 'dd', '')) self.set_first_last(node) - def depart_definition(self, node): + def depart_definition(self, node) -> None: self.body.append('\n') # don't add "simple" class value, no special handling of "details" - def visit_definition_list(self, node): + def visit_definition_list(self, node) -> None: self.body.append(self.starttag(node, 'dl', CLASS='docutils')) - def depart_definition_list(self, node): + def depart_definition_list(self, node) -> None: self.body.append('\n') # no special handling of "details" - def visit_definition_list_item(self, node): + def visit_definition_list_item(self, node) -> None: pass - def depart_definition_list_item(self, node): + def depart_definition_list_item(self, node) -> None: pass # use a table for description lists - def visit_description(self, node): + def visit_description(self, node) -> None: self.body.append(self.starttag(node, 'td', '')) self.set_first_last(node) - def depart_description(self, node): + def depart_description(self, node) -> None: self.body.append('') # use table for docinfo - def visit_docinfo(self, node): + def visit_docinfo(self, node) -> None: self.context.append(len(self.body)) self.body.append(self.starttag(node, 'table', CLASS='docinfo', @@ -333,14 +341,14 @@ def visit_docinfo(self, node): '\n') self.in_docinfo = True - def depart_docinfo(self, node): + def depart_docinfo(self, node) -> None: self.body.append('\n\n') self.in_docinfo = False start = self.context.pop() self.docinfo = self.body[start:] self.body = [] - def visit_docinfo_item(self, node, name, meta=True): + def visit_docinfo_item(self, node, name, meta=True) -> None: if meta: meta_tag = '\n' \ % (name, self.attval(node.astext())) @@ -354,28 +362,28 @@ def visit_docinfo_item(self, node, name, meta=True): if isinstance(node[-1], nodes.Element): node[-1]['classes'].append('last') - def depart_docinfo_item(self): + def depart_docinfo_item(self) -> None: self.body.append('\n') # add newline after opening tag - def visit_doctest_block(self, node): + def visit_doctest_block(self, node) -> None: self.body.append(self.starttag(node, 'pre', CLASS='doctest-block')) - def depart_doctest_block(self, node): + def depart_doctest_block(self, node) -> None: self.body.append('\n\n') # insert an NBSP into empty cells, ersatz for first/last - def visit_entry(self, node): + def visit_entry(self, node) -> None: writers._html_base.HTMLTranslator.visit_entry(self, node) if len(node) == 0: # empty cell self.body.append(' ') self.set_first_last(node) - def depart_entry(self, node): + def depart_entry(self, node) -> None: self.body.append(self.context.pop()) # ersatz for first/last pseudo-classes - def visit_enumerated_list(self, node): + def visit_enumerated_list(self, node) -> None: """ The 'start' attribute does not conform to HTML 4.01's strict.dtd, but cannot be emulated in CSS1 (HTML 5 reincludes it). @@ -395,18 +403,18 @@ def visit_enumerated_list(self, node): atts['class'] = (atts.get('class', '') + ' simple').strip() self.body.append(self.starttag(node, 'ol', **atts)) - def depart_enumerated_list(self, node): + def depart_enumerated_list(self, node) -> None: self.compact_simple, self.compact_p = self.context.pop() self.body.append('\n') # use table for field-list: - def visit_field(self, node): + def visit_field(self, node) -> None: self.body.append(self.starttag(node, 'tr', '', CLASS='field')) - def depart_field(self, node): + def depart_field(self, node) -> None: self.body.append('\n') - def visit_field_body(self, node): + def visit_field_body(self, node) -> None: self.body.append(self.starttag(node, 'td', '', CLASS='field-body')) self.set_class_on_child(node, 'first', 0) field = node.parent @@ -418,10 +426,10 @@ def visit_field_body(self, node): # space after last element. self.set_class_on_child(node, 'last', -1) - def depart_field_body(self, node): + def depart_field_body(self, node) -> None: self.body.append('\n') - def visit_field_list(self, node): + def visit_field_list(self, node) -> None: self.context.append((self.compact_field_list, self.compact_p)) self.compact_p = None if 'compact' in node['classes']: @@ -448,11 +456,11 @@ def visit_field_list(self, node): '\n' '\n') - def depart_field_list(self, node): + def depart_field_list(self, node) -> None: self.body.append('\n\n') self.compact_field_list, self.compact_p = self.context.pop() - def visit_field_name(self, node): + def visit_field_name(self, node) -> None: atts = {} if self.in_docinfo: atts['class'] = 'docinfo-name' @@ -469,12 +477,12 @@ def visit_field_name(self, node): self.context.append('') self.body.append(self.starttag(node, 'th', '', **atts)) - def depart_field_name(self, node): + def depart_field_name(self, node) -> None: self.body.append(':') self.body.append(self.context.pop()) # use table for footnote text - def visit_footnote(self, node): + def visit_footnote(self, node) -> None: self.body.append(self.starttag(node, 'table', CLASS='docutils footnote', frame="void", rules="none")) @@ -483,7 +491,7 @@ def visit_footnote(self, node): '') self.footnote_backrefs(node) - def footnote_backrefs(self, node): + def footnote_backrefs(self, node) -> None: backlinks = [] backrefs = node['backrefs'] if self.settings.footnote_backlinks and backrefs: @@ -509,12 +517,12 @@ def footnote_backrefs(self, node): node[1]['classes'].append('first') node[-1]['classes'].append('last') - def depart_footnote(self, node): + def depart_footnote(self, node) -> None: self.body.append('\n' '\n\n') # insert markers in text (pseudo-classes are not supported in CSS1): - def visit_footnote_reference(self, node): + def visit_footnote_reference(self, node) -> None: href = '#' + node['refid'] format = self.settings.footnote_references if format == 'brackets': @@ -527,11 +535,11 @@ def visit_footnote_reference(self, node): self.body.append(self.starttag(node, 'a', suffix, CLASS='footnote-reference', href=href)) - def depart_footnote_reference(self, node): + def depart_footnote_reference(self, node) -> None: self.body.append(self.context.pop() + '') # just pass on generated text - def visit_generated(self, node): + def visit_generated(self, node) -> None: pass # Backwards-compatibility implementation: @@ -547,7 +555,7 @@ def visit_generated(self, node): '.ogg': 'video/ogg', } - def visit_image(self, node): + def visit_image(self, node) -> None: atts = {} uri = node['uri'] ext = os.path.splitext(uri)[1].lower() @@ -565,15 +573,15 @@ def visit_image(self, node): if 'scale' in node: if (PIL and ('width' not in node or 'height' not in node) and self.settings.file_insertion_enabled): - imagepath = self.uri2imagepath(uri) try: + imagepath = self.uri2path(uri) with PIL.Image.open(imagepath) as img: img_size = img.size - except (OSError, UnicodeEncodeError): - pass # TODO: warn/info? + except (ValueError, OSError, UnicodeEncodeError) as e: + self.document.reporter.warning( + f'Problem reading image file: {e}') else: - self.settings.record_dependencies.add( - imagepath.replace('\\', '/')) + self.settings.record_dependencies.add(imagepath.as_posix()) if 'width' not in atts: atts['width'] = '%dpx' % img_size[0] if 'height' not in atts: @@ -611,25 +619,25 @@ def visit_image(self, node): else: self.body.append(self.emptytag(node, 'img', suffix, **atts)) - def depart_image(self, node): + def depart_image(self, node) -> None: pass # use table for footnote text, # context added in footnote_backrefs. - def visit_label(self, node): + def visit_label(self, node) -> None: self.body.append(self.starttag(node, 'td', '%s[' % self.context.pop(), CLASS='label')) - def depart_label(self, node): + def depart_label(self, node) -> None: self.body.append(f']{self.context.pop()}{self.context.pop()}') # ersatz for first/last pseudo-classes - def visit_list_item(self, node): + def visit_list_item(self, node) -> None: self.body.append(self.starttag(node, 'li', '')) if len(node): node[0]['classes'].append('first') - def depart_list_item(self, node): + def depart_list_item(self, node) -> None: self.body.append('\n') # use (not supported by HTML5), @@ -664,19 +672,19 @@ def visit_literal(self, node): # Content already processed: raise nodes.SkipNode - def depart_literal(self, node): + def depart_literal(self, node) -> None: # skipped unless literal element is from "code" role: self.body.append('') # add newline after wrapper tags, don't use for code - def visit_literal_block(self, node): + def visit_literal_block(self, node) -> None: self.body.append(self.starttag(node, 'pre', CLASS='literal-block')) - def depart_literal_block(self, node): + def depart_literal_block(self, node) -> None: self.body.append('\n\n') # use table for option list - def visit_option_group(self, node): + def visit_option_group(self, node) -> None: atts = {} if (self.settings.option_limit and len(node.astext()) > self.settings.option_limit): @@ -689,12 +697,12 @@ def visit_option_group(self, node): self.body.append('') self.context.append(0) # count number of options - def depart_option_group(self, node): + def depart_option_group(self, node) -> None: self.context.pop() self.body.append('\n') self.body.append(self.context.pop()) - def visit_option_list(self, node): + def visit_option_list(self, node) -> None: self.body.append( self.starttag(node, 'table', CLASS='docutils option-list', frame="void", rules="none")) @@ -702,18 +710,18 @@ def visit_option_list(self, node): '\n' '\n') - def depart_option_list(self, node): + def depart_option_list(self, node) -> None: self.body.append('\n\n') - def visit_option_list_item(self, node): + def visit_option_list_item(self, node) -> None: self.body.append(self.starttag(node, 'tr', '')) - def depart_option_list_item(self, node): + def depart_option_list_item(self, node) -> None: self.body.append('\n') # Omit

tags to produce visually compact lists (less vertical # whitespace) as CSS styling requires CSS2. - def should_be_compact_paragraph(self, node): + def should_be_compact_paragraph(self, node) -> bool: """ Determine if the

tags around paragraph ``node`` can be omitted. """ @@ -744,44 +752,44 @@ def should_be_compact_paragraph(self, node): return True return False - def visit_paragraph(self, node): + def visit_paragraph(self, node) -> None: if self.should_be_compact_paragraph(node): self.context.append('') else: self.body.append(self.starttag(node, 'p', '')) self.context.append('

\n') - def depart_paragraph(self, node): + def depart_paragraph(self, node) -> None: self.body.append(self.context.pop()) self.report_messages(node) # ersatz for first/last pseudo-classes - def visit_sidebar(self, node): + def visit_sidebar(self, node) -> None: self.body.append( self.starttag(node, 'div', CLASS='sidebar')) self.set_first_last(node) self.in_sidebar = True - def depart_sidebar(self, node): + def depart_sidebar(self, node) -> None: self.body.append('\n') self.in_sidebar = False # not allowed in
-    def visit_subscript(self, node):
+    def visit_subscript(self, node) -> None:
         if isinstance(node.parent, nodes.literal_block):
             self.body.append(self.starttag(node, 'span', '',
                                            CLASS='subscript'))
         else:
             self.body.append(self.starttag(node, 'sub', ''))
 
-    def depart_subscript(self, node):
+    def depart_subscript(self, node) -> None:
         if isinstance(node.parent, nodes.literal_block):
             self.body.append('')
         else:
             self.body.append('')
 
     # Use  for subtitles (deprecated in HTML 5)
-    def visit_subtitle(self, node):
+    def visit_subtitle(self, node) -> None:
         if isinstance(node.parent, nodes.sidebar):
             self.body.append(self.starttag(node, 'p', '',
                                            CLASS='sidebar-subtitle'))
@@ -797,7 +805,7 @@ def visit_subtitle(self, node):
                 + self.starttag({}, 'span', '', CLASS='section-subtitle'))
             self.context.append('\n' % tag)
 
-    def depart_subtitle(self, node):
+    def depart_subtitle(self, node) -> None:
         self.body.append(self.context.pop())
         if self.in_document_title:
             self.subtitle = self.body[self.in_document_title:-1]
@@ -807,21 +815,21 @@ def depart_subtitle(self, node):
             del self.body[:]
 
     #  not allowed in 
 in HTML 4
-    def visit_superscript(self, node):
+    def visit_superscript(self, node) -> None:
         if isinstance(node.parent, nodes.literal_block):
             self.body.append(self.starttag(node, 'span', '',
                                            CLASS='superscript'))
         else:
             self.body.append(self.starttag(node, 'sup', ''))
 
-    def depart_superscript(self, node):
+    def depart_superscript(self, node) -> None:
         if isinstance(node.parent, nodes.literal_block):
             self.body.append('')
         else:
             self.body.append('')
 
     #  element deprecated in HTML 5
-    def visit_system_message(self, node):
+    def visit_system_message(self, node) -> None:
         self.body.append(self.starttag(node, 'div', CLASS='system-message'))
         self.body.append('

') backref_text = '' @@ -847,11 +855,11 @@ def visit_system_message(self, node): % (node['type'], node['level'], self.encode(node['source']), line, backref_text)) - def depart_system_message(self, node): + def depart_system_message(self, node) -> None: self.body.append('\n') # "hard coded" border setting - def visit_table(self, node): + def visit_table(self, node) -> None: self.context.append(self.compact_p) self.compact_p = True atts = {'border': 1} @@ -859,38 +867,41 @@ def visit_table(self, node): if 'align' in node: classes.append('align-%s' % node['align']) if 'width' in node: - atts['style'] = 'width: %s' % node['width'] + width = node['width'] + if width[-1:] in '0123456789.': # unitless value + width += 'px' # add default length unit + atts['style'] = f'width: {width}' self.body.append( self.starttag(node, 'table', CLASS=' '.join(classes), **atts)) - def depart_table(self, node): + def depart_table(self, node) -> None: self.compact_p = self.context.pop() self.body.append('\n') # hard-coded vertical alignment - def visit_tbody(self, node): + def visit_tbody(self, node) -> None: self.body.append(self.starttag(node, 'tbody', valign='top')) - def depart_tbody(self, node): + def depart_tbody(self, node) -> None: self.body.append('\n') # no special handling of "details" in definition list - def visit_term(self, node): + def visit_term(self, node) -> None: self.body.append(self.starttag(node, 'dt', '', classes=node.parent['classes'], ids=node.parent['ids'])) - def depart_term(self, node): + def depart_term(self, node) -> None: # Nest (optional) classifier(s) in the

element if node.next_node(nodes.classifier, descend=False, siblings=True): return # skip (depart_classifier() calls this function again) self.body.append('
\n') # hard-coded vertical alignment - def visit_thead(self, node): + def visit_thead(self, node) -> None: self.body.append(self.starttag(node, 'thead', valign='bottom')) - def depart_thead(self, node): + def depart_thead(self, node) -> None: self.body.append('\n') # auxiliary method, called by visit_title() @@ -926,10 +937,8 @@ class SimpleListChecker(writers._html_base.SimpleListChecker): """ def visit_list_item(self, node): - children = [] - for child in node.children: - if not isinstance(child, nodes.Invisible): - children.append(child) + children = [child for child in node.children + if not isinstance(child, nodes.Invisible)] if (children and isinstance(children[0], nodes.paragraph) and (isinstance(children[-1], nodes.bullet_list) or isinstance(children[-1], nodes.enumerated_list))): diff --git a/addons/source-python/packages/site-packages/docutils/writers/html5_polyglot/__init__.py b/addons/source-python/packages/site-packages/docutils/writers/html5_polyglot/__init__.py index c9bdf66c5..219bc7e10 100644 --- a/addons/source-python/packages/site-packages/docutils/writers/html5_polyglot/__init__.py +++ b/addons/source-python/packages/site-packages/docutils/writers/html5_polyglot/__init__.py @@ -1,4 +1,4 @@ -# $Id: __init__.py 9539 2024-02-17 10:36:51Z milde $ +# $Id: __init__.py 10270 2025-12-03 11:38:54Z milde $ # :Author: Günter Milde # Based on the html4css1 writer by David Goodger. # :Maintainer: docutils-develop@lists.sourceforge.net @@ -24,6 +24,9 @@ The cascading style sheet "minimal.css" is required for proper viewing, the style sheet "plain.css" improves reading experience. """ + +from __future__ import annotations + __docformat__ = 'reStructuredText' from pathlib import Path @@ -70,7 +73,7 @@ class Writer(_html_base.Writer): 'Specify the initial header level. Does not affect document ' 'title & subtitle (see --no-doc-title). (default: 2 for "

")', ['--initial-header-level'], - {'choices': '1 2 3 4 5 6'.split(), 'default': '2', + {'choices': '1 2 3 4 5 6 auto'.split(), 'default': '2', 'metavar': ''}), no_xml_declaration=( 'Omit the XML declaration (default).', @@ -90,7 +93,7 @@ class Writer(_html_base.Writer): ('Suggest at which point images should be loaded: ' '"embed", "link" (default), or "lazy".', ['--image-loading'], - {'choices': ('embed', 'link', 'lazy'), + {'metavar': '', 'choices': ('embed', 'link', 'lazy'), # 'default': 'link' # default set in _html_base.py }), ('Append a self-link to section headings.', @@ -104,7 +107,7 @@ class Writer(_html_base.Writer): config_section = 'html5 writer' - def __init__(self): + def __init__(self) -> None: self.parts = {} self.translator_class = HTMLTranslator @@ -123,44 +126,44 @@ class HTMLTranslator(_html_base.HTMLTranslator): documenttag_args = {'tagname': 'main'} # add meta tag to fix rendering in mobile browsers - def __init__(self, document): + def __init__(self, document) -> None: super().__init__(document) self.meta.append('\n') # tag obsolete in HTML5. Use the tag instead. - def visit_acronym(self, node): + def visit_acronym(self, node) -> None: # @@@ implementation incomplete ("title" attribute) self.body.append(self.starttag(node, 'abbr', '')) - def depart_acronym(self, node): + def depart_acronym(self, node) -> None: self.body.append('') # no standard meta tag name in HTML5, use separate "author" meta tags # https://www.w3.org/TR/html5/document-metadata.html#standard-metadata-names - def visit_authors(self, node): + def visit_authors(self, node) -> None: self.visit_docinfo_item(node, 'authors', meta=False) for subnode in node: self.meta.append('\n') - def depart_authors(self, node): + def depart_authors(self, node) -> None: self.depart_docinfo_item() # use the
semantic tag. - def visit_caption(self, node): + def visit_caption(self, node) -> None: if isinstance(node.parent, nodes.figure): - self.body.append('
\n') - self.body.append(self.starttag(node, 'p', '')) + self.body.append(self.starttag(node, 'figcaption')) + self.body.append('

') - def depart_caption(self, node): + def depart_caption(self, node) -> None: self.body.append('

\n') #
is closed in depart_figure(), as legend may follow. # use HTML block-level tags if matching class value found supported_block_tags = {'ins', 'del'} - def visit_container(self, node): + def visit_container(self, node) -> None: # If there is exactly one of the "supported block tags" in # the list of class values, use it as tag name: classes = node['classes'] @@ -174,48 +177,48 @@ def visit_container(self, node): self.body.append(self.starttag(node, node.html5tagname, CLASS='docutils container')) - def depart_container(self, node): + def depart_container(self, node) -> None: self.body.append(f'\n') del node.html5tagname # no standard meta tag name in HTML5, use dcterms.rights # see https://wiki.whatwg.org/wiki/MetaExtensions - def visit_copyright(self, node): + def visit_copyright(self, node) -> None: self.visit_docinfo_item(node, 'copyright', meta=False) self.meta.append('\n') - def depart_copyright(self, node): + def depart_copyright(self, node) -> None: self.depart_docinfo_item() # no standard meta tag name in HTML5, use dcterms.date - def visit_date(self, node): + def visit_date(self, node) -> None: self.visit_docinfo_item(node, 'date', meta=False) self.meta.append('\n') - def depart_date(self, node): + def depart_date(self, node) -> None: self.depart_docinfo_item() # use new HTML5
and
elements - def visit_figure(self, node): + def visit_figure(self, node) -> None: atts = {} - if node.get('width'): + if 'width' in node: atts['style'] = f"width: {node['width']}" if node.get('align'): atts['class'] = f"align-{node['align']}" self.body.append(self.starttag(node, 'figure', **atts)) - def depart_figure(self, node): + def depart_figure(self, node) -> None: if len(node) > 1: self.body.append('
\n') self.body.append('
\n') # use HTML5

" -msgstr "

Source code for %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Overview: module code" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "conf value \"epub_identifier\" should not be empty for EPUB3" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

All modules for which code is available

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "conf value \"version\" should not be empty for EPUB3" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" +msgstr "invalid css_file: %r, ignored" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." +msgstr "The XML files are in %(outdir)s." -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "duplicate label %s, other instance in %s" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "" +msgid "error writing file %s: %s" +msgstr "error writing file %s: %s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== slowest reading durations =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "The pseudo-XML files are in %(outdir)s." -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "missing '+' or '-' in '%s' option." +msgid "duplicated ToC entry found: %s" +msgstr "duplicated ToC entry found: %s" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' is not a valid option." +msgid "cannot read image file %r: copying it instead" +msgstr "cannot read image file %r: copying it instead" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' is not a valid pyversion option" +msgid "cannot write image file %r: %s" +msgstr "cannot write image file %r: %s" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "invalid TestCode type" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow not found - copying image files" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Testing of doctests in the sources finished, look at the results in %(outdir)s/output.txt." +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "writing mimetype file..." -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "no code/output in %s block at %s:%s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "writing META-INF/container.xml file..." -#: ext/doctest.py:568 -#, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "ignoring invalid doctest code: %r" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "writing content.opf file..." -#: ext/imgmath.py:162 +#: builders/_epub_base.py:594 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "LaTeX command %r cannot be run (needed for maths display), check the imgmath_latex setting" +msgid "unknown mimetype for %s, ignoring" +msgstr "unknown mimetype for %s, ignoring" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s command %r cannot be run (needed for maths display), check the imgmath_%s setting" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" -msgstr "display latex %r: %s" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "writing toc.ncx file..." -#: ext/imgmath.py:380 +#: builders/_epub_base.py:802 #, python-format -msgid "inline latex %r: %s" -msgstr "inline latex %r: %s" +msgid "writing %s file..." +msgstr "writing %s file..." -#: ext/coverage.py:48 +#: builders/text.py:27 #, python-format -msgid "invalid regex %r in %s" -msgstr "invalid regex %r in %s" +msgid "The text files are in %(outdir)s." +msgstr "The text files are in %(outdir)s." -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:229 #, python-format -msgid "module %s could not be imported: %s" -msgstr "module %s could not be imported: %s" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "a suitable image for %s builder not found: %s (%s)" -#: ext/coverage.py:148 +#: builders/__init__.py:237 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "" +msgid "a suitable image for %s builder not found: %s" +msgstr "a suitable image for %s builder not found: %s" -#: ext/coverage.py:158 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "building [mo]: " -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." -msgstr "" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "writing output... " -#: ext/coverage.py:187 +#: builders/__init__.py:280 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "invalid regex %r in coverage_c_regexes" +msgid "all of %d po files" +msgstr "all of %d po files" -#: ext/coverage.py:260 +#: builders/__init__.py:302 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "undocumented c api: %s [%s] in file %s" +msgid "targets for %d po files that are specified" +msgstr "targets for %d po files that are specified" -#: ext/coverage.py:452 +#: builders/__init__.py:314 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "undocumented python function: %s :: %s" +msgid "targets for %d po files that are out of date" +msgstr "targets for %d po files that are out of date" -#: ext/coverage.py:473 -#, python-format -msgid "undocumented python class: %s :: %s" -msgstr "undocumented python class: %s :: %s" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "all source files" -#: ext/coverage.py:492 +#: builders/__init__.py:335 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "undocumented python method: %s :: %s :: %s" +msgid "file %r given on command line does not exist, " +msgstr "file %r given on command line does not exist, " -#: ext/imgconverter.py:44 +#: builders/__init__.py:342 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n\nTraceback: %s" +"file %r given on command line is not under the source directory, ignoring" +msgstr "file %r given on command line is not under the source directory, ignoring" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:353 #, python-format -msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "convert exited with error:\n[stderr]\n%r\n[stdout]\n%r" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "file %r given on command line is not a valid document, ignoring" -#: ext/imgconverter.py:83 +#: builders/__init__.py:366 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "convert command %r cannot be run, check the image_converter setting" - -#: ext/graphviz.py:138 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "Graphviz directive cannot have both content and a filename argument" +msgid "%d source files given on command line" +msgstr "%d source files given on command line" -#: ext/graphviz.py:153 +#: builders/__init__.py:382 #, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "External Graphviz file %r not found or reading it failed" +msgid "targets for %d source files that are out of date" +msgstr "targets for %d source files that are out of date" -#: ext/graphviz.py:164 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "Ignoring \"graphviz\" directive without content." +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "looking for now-outdated files... " -#: ext/graphviz.py:287 +#: builders/__init__.py:415 #, python-format -msgid "graphviz_dot executable path must be set! %r" -msgstr "" +msgid "%d found" +msgstr "%d found" -#: ext/graphviz.py:328 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "dot command %r cannot be run (needed for graphviz output), check the graphviz_dot setting" +#: builders/__init__.py:417 +msgid "none found" +msgstr "none found" -#: ext/graphviz.py:339 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot exited with error:\n[stderr]\n%r\n[stdout]\n%r" - -#: ext/graphviz.py:344 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot did not produce an output file:\n[stderr]\n%r\n[stdout]\n%r" - -#: ext/graphviz.py:367 -#, python-format -msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" -msgstr "" - -#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 -#, python-format -msgid "dot code %r: %s" -msgstr "dot code %r: %s" - -#: ext/graphviz.py:493 ext/graphviz.py:501 -#, python-format -msgid "[graph: %s]" -msgstr "[graph: %s]" - -#: ext/graphviz.py:495 ext/graphviz.py:503 -msgid "[graph]" -msgstr "[graph]" - -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 -#, python-format -msgid "TODO entry found: %s" -msgstr "TODO entry found: %s" - -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" - -#: ext/todo.py:154 -#, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(The <> is located in %s, line %d.)" - -#: ext/todo.py:166 -msgid "original entry" -msgstr "original entry" +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "pickling environment" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "non-whitespace stripped by dedent" +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "checking consistency" -#: directives/code.py:87 -#, python-format -msgid "Invalid caption: %s" -msgstr "Invalid caption: %s" +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "no targets are out of date." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 -#, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "line number spec is out of range(1-%d): %r" +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "updating environment: " -#: directives/code.py:216 +#: builders/__init__.py:499 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Cannot use both \"%s\" and \"%s\" options" +msgid "%s added, %s changed, %s removed" +msgstr "%s added, %s changed, %s removed" -#: directives/code.py:231 +#: builders/__init__.py:536 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: directives/code.py:235 +#: builders/__init__.py:545 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "Object named %r not found in include file %r" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" - -#: directives/code.py:314 +#: builders/__init__.py:556 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Line spec %r: no lines pulled from include file %r" - -#: directives/patches.py:71 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "\":file:\" option for csv-table directive now recognises an absolute path as a relative path from source directory. Please update your document." - -#: directives/other.py:119 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "toctree glob pattern %r didn't match any documents" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: builders/__init__.py:563 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree contains reference to excluded document %r" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree contains reference to nonexisting document %r" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "reading sources... " -#: directives/other.py:169 +#: builders/__init__.py:725 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "duplicated entry found in toctree: %s" - -#: directives/other.py:203 -msgid "Section author: " -msgstr "Section author: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Module author: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Code author: " +msgid "docnames to write: %s" +msgstr "docnames to write: %s" -#: directives/other.py:209 -msgid "Author: " -msgstr "Author: " +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr ".. acks content is not a list" +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "preparing documents" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr ".. hlist content is not a list" +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "copying assets" #: builders/changes.py:29 #, python-format msgid "The overview file is in %(outdir)s." msgstr "The overview file is in %(outdir)s." -#: builders/changes.py:56 +#: builders/changes.py:65 #, python-format msgid "no changes in version %s." msgstr "no changes in version %s." -#: builders/changes.py:58 +#: builders/changes.py:67 msgid "writing summary file..." msgstr "writing summary file..." -#: builders/changes.py:70 +#: builders/changes.py:79 msgid "Builtins" msgstr "Builtins" -#: builders/changes.py:72 +#: builders/changes.py:81 msgid "Module level" msgstr "Module level" -#: builders/changes.py:124 +#: builders/changes.py:137 msgid "copying source files..." msgstr "copying source files..." -#: builders/changes.py:133 +#: builders/changes.py:146 #, python-format msgid "could not read %r for changelog creation" msgstr "could not read %r for changelog creation" -#: builders/manpage.py:37 +#: ext/coverage.py:48 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "The manual pages are in %(outdir)s." - -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "no \"man_pages\" config value found; no manual pages will be written" - -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "writing" +msgid "invalid regex %r in %s" +msgstr "invalid regex %r in %s" -#: builders/manpage.py:71 +#: ext/coverage.py:140 ext/coverage.py:301 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" config value references unknown document %s" +msgid "module %s could not be imported: %s" +msgstr "module %s could not be imported: %s" -#: builders/__init__.py:224 +#: ext/coverage.py:148 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "a suitable image for %s builder not found: %s (%s)" +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" -#: builders/__init__.py:232 +#: ext/coverage.py:158 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "a suitable image for %s builder not found: %s" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "building [mo]: " +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "writing output... " +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" -#: builders/__init__.py:275 +#: ext/coverage.py:187 #, python-format -msgid "all of %d po files" -msgstr "all of %d po files" +msgid "invalid regex %r in coverage_c_regexes" +msgstr "invalid regex %r in coverage_c_regexes" -#: builders/__init__.py:297 +#: ext/coverage.py:260 #, python-format -msgid "targets for %d po files that are specified" -msgstr "targets for %d po files that are specified" +msgid "undocumented c api: %s [%s] in file %s" +msgstr "undocumented c api: %s [%s] in file %s" -#: builders/__init__.py:309 +#: ext/coverage.py:452 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "targets for %d po files that are out of date" +msgid "undocumented python function: %s :: %s" +msgstr "undocumented python function: %s :: %s" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "all source files" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "undocumented python class: %s :: %s" -#: builders/__init__.py:330 +#: ext/coverage.py:492 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "file %r given on command line does not exist, " +msgid "undocumented python method: %s :: %s :: %s" +msgstr "undocumented python method: %s :: %s :: %s" -#: builders/__init__.py:337 +#: ext/extlinks.py:82 #, python-format msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "file %r given on command line is not under the source directory, ignoring" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "hardcoded link %r could be replaced by an extlink (try using %r instead)" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "file %r given on command line is not a valid document, ignoring" +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" -#: builders/__init__.py:361 +#: ext/todo.py:94 #, python-format -msgid "%d source files given on command line" -msgstr "%d source files given on command line" +msgid "TODO entry found: %s" +msgstr "TODO entry found: %s" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "targets for %d source files that are out of date" +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" -#: builders/__init__.py:395 builders/gettext.py:265 +#: ext/todo.py:154 #, python-format -msgid "building [%s]: " -msgstr "building [%s]: " - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "looking for now-outdated files... " - -#: builders/__init__.py:410 -#, python-format -msgid "%d found" -msgstr "%d found" +msgid "(The <> is located in %s, line %d.)" +msgstr "(The <> is located in %s, line %d.)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "none found" +#: ext/todo.py:166 +msgid "original entry" +msgstr "original entry" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "pickling environment" +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n\nTraceback: %s" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "checking consistency" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "convert exited with error:\n[stderr]\n%r\n[stdout]\n%r" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "no targets are out of date." +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "convert command %r cannot be run, check the image_converter setting" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "updating environment: " +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "Graphviz directive cannot have both content and a filename argument" -#: builders/__init__.py:494 +#: ext/graphviz.py:153 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s added, %s changed, %s removed" +msgid "External Graphviz file %r not found or reading it failed" +msgstr "External Graphviz file %r not found or reading it failed" + +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "Ignoring \"graphviz\" directive without content." -#: builders/__init__.py:531 +#: ext/graphviz.py:287 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: builders/__init__.py:540 +#: ext/graphviz.py:328 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "dot command %r cannot be run (needed for graphviz output), check the graphviz_dot setting" -#: builders/__init__.py:551 +#: ext/graphviz.py:339 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot exited with error:\n[stderr]\n%r\n[stdout]\n%r" -#: builders/__init__.py:558 +#: ext/graphviz.py:344 #, python-format msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "reading sources... " +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot did not produce an output file:\n[stderr]\n%r\n[stdout]\n%r" -#: builders/__init__.py:713 +#: ext/graphviz.py:367 #, python-format -msgid "docnames to write: %s" -msgstr "docnames to write: %s" - -#: builders/__init__.py:715 -msgid "no docnames to write!" +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "preparing documents" - -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "copying assets" - -#: builders/__init__.py:883 +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "undecodable source characters, replacing with \"?\": %r" +msgid "dot code %r: %s" +msgstr "dot code %r: %s" -#: builders/epub3.py:84 +#: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "The ePub file is in %(outdir)s." +msgid "[graph: %s]" +msgstr "[graph: %s]" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "writing nav.xhtml file..." +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[graph]" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "LaTeX command %r cannot be run (needed for maths display), check the imgmath_latex setting" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s command %r cannot be run (needed for maths display), check the imgmath_%s setting" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "display latex %r: %s" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "conf value \"epub_author\" should not be empty for EPUB3" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "inline latex %r: %s" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "conf value \"epub_contributor\" should not be empty for EPUB3" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "conf value \"epub_description\" should not be empty for EPUB3" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "missing '+' or '-' in '%s' option." -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "conf value \"epub_publisher\" should not be empty for EPUB3" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "'%s' is not a valid option." -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' is not a valid pyversion option" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "conf value \"epub_identifier\" should not be empty for EPUB3" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "invalid TestCode type" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "conf value \"version\" should not be empty for EPUB3" +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Testing of doctests in the sources finished, look at the results in %(outdir)s/output.txt." -#: builders/epub3.py:279 builders/html/__init__.py:1291 +#: ext/doctest.py:451 #, python-format -msgid "invalid css_file: %r, ignored" -msgstr "invalid css_file: %r, ignored" +msgid "no code/output in %s block at %s:%s" +msgstr "no code/output in %s block at %s:%s" -#: builders/xml.py:31 +#: ext/doctest.py:568 #, python-format -msgid "The XML files are in %(outdir)s." -msgstr "The XML files are in %(outdir)s." +msgid "ignoring invalid doctest code: %r" +msgstr "ignoring invalid doctest code: %r" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: ext/autosectionlabel.py:52 #, python-format -msgid "error writing file %s: %s" -msgstr "error writing file %s: %s" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "section \"%s\" gets labeled as \"%s\"" -#: builders/xml.py:101 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "The pseudo-XML files are in %(outdir)s." +msgid "duplicate label %s, other instance in %s" +msgstr "duplicate label %s, other instance in %s" -#: builders/texinfo.py:45 +#: ext/duration.py:47 #, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "The Texinfo files are in %(outdir)s." +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: builders/texinfo.py:48 +#: ext/duration.py:117 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nRun 'make' in that directory to run these through makeinfo\n(use 'make info' here to do that automatically)." - -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "no \"texinfo_documents\" config value found; no documents will be written" +"====================== total reading duration ==========================" +msgstr "" -#: builders/texinfo.py:89 +#: ext/duration.py:124 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "\"texinfo_documents\" config value references unknown document %s" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" + +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== slowest reading durations =======================" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 +#: ext/duration.py:139 #, python-format -msgid "processing %s" -msgstr "processing %s" +msgid "%.3fs %s" +msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "resolving references..." +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[source]" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (in " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "highlighting module code... " -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "copying images... " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" + +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Module code" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 +#: ext/viewcode.py:359 #, python-format -msgid "cannot copy image file %r: %s" -msgstr "cannot copy image file %r: %s" +msgid "

Source code for %s

" +msgstr "

Source code for %s

" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "copying Texinfo support files" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Overview: module code" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "error writing file Makefile: %s" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

All modules for which code is available

" -#: builders/_epub_base.py:223 +#: domains/citation.py:75 #, python-format -msgid "duplicated ToC entry found: %s" -msgstr "duplicated ToC entry found: %s" +msgid "duplicate citation %s, other instance in %s" +msgstr "duplicate citation %s, other instance in %s" -#: builders/_epub_base.py:433 +#: domains/citation.py:92 #, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "cannot read image file %r: copying it instead" +msgid "Citation [%s] is not referenced." +msgstr "Citation [%s] is not referenced." -#: builders/_epub_base.py:464 +#: domains/math.py:73 #, python-format -msgid "cannot write image file %r: %s" -msgstr "cannot write image file %r: %s" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "duplicate label of equation %s, other instance in %s" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow not found - copying image files" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "Invalid math_eqref_format: %r" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "writing mimetype file..." +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (built-in function)" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "writing META-INF/container.xml file..." +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s method)" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "writing content.opf file..." +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (class)" -#: builders/_epub_base.py:591 +#: domains/javascript.py:188 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "unknown mimetype for %s, ignoring" +msgid "%s (global variable or constant)" +msgstr "%s (global variable or constant)" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (%s attribute)" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "writing toc.ncx file..." +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Arguments" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "writing %s file..." +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Throws" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "The dummy builder generates no files." +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Returns" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "The message catalogues are in %(outdir)s." +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Return type" -#: builders/gettext.py:266 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d template files" -msgstr "targets for %d template files" +msgid "%s (module)" +msgstr "%s (module)" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "reading templates... " +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "function" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "writing message catalogues... " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "method" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "The HTML page is in %(outdir)s." +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "class" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "assembling single document" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "writing additional files" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attribute" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Look for any errors in the above output or in %(outdir)s/output.txt" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "module" -#: builders/linkcheck.py:149 +#: domains/javascript.py:458 #, python-format -msgid "broken link: %s (%s)" -msgstr "broken link: %s (%s)" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "duplicate %s description of %s, other %s in %s" -#: builders/linkcheck.py:548 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "Anchor '%s' not found" -msgstr "Anchor '%s' not found" +msgid "%s (directive)" +msgstr "%s (directive)" -#: builders/linkcheck.py:758 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgid ":%s: (directive option)" +msgstr ":%s: (directive option)" -#: builders/text.py:29 +#: domains/rst.py:224 #, python-format -msgid "The text files are in %(outdir)s." -msgstr "The text files are in %(outdir)s." - -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "inconsistent footnote references in translated message. original: {0}, translated: {1}" +msgid "%s (role)" +msgstr "%s (role)" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "inconsistent references in translated message. original: {0}, translated: {1}" +#: domains/rst.py:234 +msgid "directive" +msgstr "directive" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "inconsistent citation references in translated message. original: {0}, translated: {1}" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "directive-option" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "inconsistent term references in translated message. original: {0}, translated: {1}" +#: domains/rst.py:236 +msgid "role" +msgstr "role" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 +#: domains/rst.py:262 #, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "duplicate description of %s %s, other instance in %s" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" msgstr "" -#: transforms/__init__.py:253 +#: domains/changeset.py:33 #, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "4 column based index found. It might be a bug of extensions you use: %r" +msgid "Changed in version %s" +msgstr "Changed in version %s" -#: transforms/__init__.py:294 +#: domains/changeset.py:34 #, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Footnote [%s] is not referenced." +msgid "Deprecated since version %s" +msgstr "Deprecated since version %s" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Footnote [#] is not referenced." +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "job number should be a positive number" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "For more information, visit ." -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nGenerate documentation from source files.\n\nsphinx-build generates documentation from the files in SOURCEDIR and places it\nin OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\nsettings. The 'sphinx-quickstart' tool may be used to generate template files,\nincluding 'conf.py'\n\nsphinx-build can create documentation in different formats. A format is\nselected by specifying the builder name on the command line; it defaults to\nHTML. Builders can also perform other tasks related to documentation\nprocessing.\n\nBy default, everything that is outdated is built. Output only for selected\nfiles can be built by specifying individual filenames.\n" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "path to documentation source files" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "path to output directory" + +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/build.py:114 +msgid "general options" +msgstr "general options" + +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/build.py:131 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "write all files (default: only write new and changed files)" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "don't use a saved environment, always read all files" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "override a setting in configuration file" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "pass a value into HTML templates" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "define tag: include \"only\" blocks with TAG" + +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: environment/__init__.py:86 -msgid "new config" -msgstr "new config" +#: cmd/build.py:212 +msgid "console output options" +msgstr "console output options" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "config changed" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "increase verbosity (can be repeated)" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "extensions changed" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "no output on stdout, just warnings on stderr" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "build environment version not current" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "no output at all, not even warnings" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "source directory has changed" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "do emit colored output (default: auto-detect)" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "do not emit coloured output (default: auto-detect)" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "write warnings (and errors) to given file" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "This environment is incompatible with the selected builder, please choose another doctree directory." +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "turn warnings into errors" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "Failed to scan documents in %s: %r" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "show full traceback on exception" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Domain %r is not registered" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "run Pdb on exception" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "document isn't included in any toctree" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "self referenced toctree found. Ignored." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "cannot combine -a option and filenames" -#: environment/__init__.py:889 +#: cmd/build.py:357 #, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "reading error: %s, %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-D option argument must be in the form name=value" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "writing error: %s, %s" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-A option argument must be in the form name=value" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "automatically insert docstrings from modules" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "automatically test code snippets in doctest blocks" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Invalid date format. Quote the string by single quote if you want to output it directly: %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "link between Sphinx documentation of different projects" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "Problem in %s domain: field is supposed to use role '%s', but that role is not in the domain." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "write \"todo\" entries that can be shown or hidden on build" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "checks for documentation coverage" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "include maths, rendered as PNG or SVG images" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "include maths, rendered in the browser by MathJax" -#: util/display.py:82 -msgid "skipped" -msgstr "skipped" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "conditional inclusion of content based on config values" -#: util/display.py:87 -msgid "failed" -msgstr "failed" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "include links to the source code of documented Python objects" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "create .nojekyll file to publish the document on GitHub pages" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Please enter a valid path name." -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Please enter some text." -#: util/docutils.py:789 +#: cmd/quickstart.py:134 #, python-format -msgid "unknown node type: %r" -msgstr "unknown node type: %r" +msgid "Please enter one of %s." +msgstr "Please enter one of %s." -#: util/fileutil.py:76 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Please enter either 'y' or 'n'." -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Please enter a file suffix, e.g. '.rst' or '.txt'." -#: util/rst.py:73 +#: cmd/quickstart.py:230 #, python-format -msgid "default role %s not found" -msgstr "default role %s not found" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Welcome to the Sphinx %s quickstart utility." -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Please enter values for the following settings (just press Enter to\naccept a default value, if one is given in brackets)." -#: util/inventory.py:166 +#: cmd/quickstart.py:242 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +msgid "Selected root path: %s" +msgstr "Selected root path: %s" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Footnotes" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Enter the root path for documentation." -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[image: %s]" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Root path for the documentation" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[image]" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Error: an existing conf.py has been found in the selected root path." -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Index" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart will not overwrite existing Sphinx projects." -#: writers/latex.py:743 writers/texinfo.py:646 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "encountered title node not in section, topic, table, admonition or sidebar" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Please enter a new root path (or just Enter to exit)" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "caption not inside a figure." +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "You have two options for placing the build directory for Sphinx output.\nEither, you use a directory \"_build\" within the root path, or you separate\n\"source\" and \"build\" directories within the root path." -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "unimplemented node type: %r" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Separate source and build directories (y/n)" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "unknown %r toplevel_sectioning for class %r" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Inside the root directory, two more directories will be created; \"_templates\"\nfor custom HTML templates and \"_static\" for custom stylesheets and other static\nfiles. You can enter another prefix (such as \".\") to replace the underscore." -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "no Babel option known for language %r" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Name prefix for templates and static dir" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "too large :maxdepth:, ignored." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "The project name will occur in several places in the built documentation." -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Project name" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "document title is not a single Text node" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Author name(s)" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx has the notion of a \"version\" and a \"release\" for the\nsoftware. Each version can have multiple releases. For example, for\nPython the version is something like 2.5 or 3.0, while the release is\nsomething like 2.5.1 or 3.0a1. If you don't need this dual structure,\njust set both to the same value." -#: writers/latex.py:1183 +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Project version" + +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Project release" + +#: cmd/quickstart.py:324 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "both tabularcolumns and :widths: option are given. :widths: is ignored." +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "If the documents are to be written in a language other than English,\nyou can select a language here by its language code. Sphinx will then\ntranslate text that it generates into that language.\n\nFor a list of supported codes, see\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "dimension unit %s is invalid. Ignored." +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Project language" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "unknown index entry type %s found" +#: cmd/quickstart.py:340 +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 "The file name suffix for source files. Commonly, this is either \".txt\"\nor \".rst\". Only files with this suffix are considered documents." -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "Invalid math_eqref_format: %r" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Source file suffix" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "One document is special in that it is considered the top node of the\n\"contents tree\", that is, it is the root of the hierarchical structure\nof the documents. Normally, this is \"index\", but if your \"index\"\ndocument is a custom template, you can also set this to another filename." -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format is not defined for %s" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Name of your master document (without suffix)" -#: writers/html5.py:441 +#: cmd/quickstart.py:368 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "Any IDs not assigned for %s node" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Error: the master file %s has already been found in the selected root path." -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart will not overwrite the existing file." -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Please enter a new file name, or rename the existing file and press Enter" -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Indicate which of the following Sphinx extensions should be enabled:" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Note: imgmath and mathjax cannot be enabled at the same time. imgmath has been deselected." -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "A Makefile and a Windows command file can be generated for you so that you\nonly have to run e.g. `make html' instead of invoking sphinx-build\ndirectly." -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Create Makefile? (y/n)" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "Could not obtain image size. :scale: option is ignored." +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Create Windows command file? (y/n)" -#: domains/__init__.py:322 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "Creating file %s." +msgstr "Creating file %s." -#: domains/math.py:73 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "duplicate label of equation %s, other instance in %s" +msgid "File %s already exists, skipping." +msgstr "File %s already exists, skipping." -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (built-in function)" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Finished: An initial directory structure has been created." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: cmd/quickstart.py:520 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s method)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "You should now populate your master file %s and create other documentation\nsource files. " -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (class)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Use the Makefile to build the docs, like so:\n make builder" -#: domains/javascript.py:187 +#: cmd/quickstart.py:531 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (global variable or constant)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Use the sphinx-build command to build the docs, like so:\n sphinx-build -b builder %s %s" -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attribute)" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "where \"builder\" is one of the supported builders, e.g. html, latex or linkcheck." -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Arguments" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nGenerate required files for a Sphinx project.\n\nsphinx-quickstart is an interactive tool that asks some questions about your\nproject and then generates a complete documentation directory and sample\nMakefile to be used with sphinx-build.\n" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Throws" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "quiet mode" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Returns" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "project root" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Return type" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Structure options" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (module)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "if specified, separate source and build dirs" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "function" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "if specified, create build dir under source dir" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "method" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "replacement for dot in _templates etc." -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "class" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Project basic options" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "project name" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "attribute" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "author names" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "module" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "version of project" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "duplicate %s description of %s, other %s in %s" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "release of project" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "document language" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Changed in version %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "source file suffix" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Deprecated since version %s" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "master document name" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (directive)" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "use epub" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (directive option)" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Extension options" -#: domains/rst.py:224 +#: cmd/quickstart.py:671 #, python-format -msgid "%s (role)" -msgstr "%s (role)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "directive" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "directive-option" +msgid "enable %s extension" +msgstr "enable %s extension" -#: domains/rst.py:236 -msgid "role" -msgstr "role" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "enable arbitrary extensions" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefile and Batchfile creation" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "create makefile" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "Citation [%s] is not referenced." +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "do not create makefile" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Attention" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "create batchfile" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Caution" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "do not create batchfile" -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Danger" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "use make-mode for Makefile/make.bat" -#: locale/__init__.py:231 -msgid "Error" -msgstr "Error" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Project templating" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Hint" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "template directory for template files" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Important" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "define a template variable" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Note" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -#: locale/__init__.py:235 -msgid "See also" -msgstr "See also" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Error: specified path is not a directory, or sphinx files already exist." -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tip" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart only generate into a empty directory. Please specify a new root path." -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Warning" +#: cmd/quickstart.py:810 +#, python-format +msgid "Invalid template variable: %s" +msgstr "Invalid template variable: %s" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "automatically insert docstrings from modules" +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" +msgstr "toctree glob pattern %r didn't match any documents" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "automatically test code snippets in doctest blocks" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "toctree contains reference to excluded document %r" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "link between Sphinx documentation of different projects" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree contains reference to nonexisting document %r" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "write \"todo\" entries that can be shown or hidden on build" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "duplicated entry found in toctree: %s" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "checks for documentation coverage" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Section author: " -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "include maths, rendered as PNG or SVG images" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Module author: " -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "include maths, rendered in the browser by MathJax" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Code author: " -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "conditional inclusion of content based on config values" +#: directives/other.py:209 +msgid "Author: " +msgstr "Author: " -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "include links to the source code of documented Python objects" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr ".. acks content is not a list" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "create .nojekyll file to publish the document on GitHub pages" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr ".. hlist content is not a list" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Please enter a valid path name." +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "\":file:\" option for csv-table directive now recognises an absolute path as a relative path from source directory. Please update your document." -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Please enter some text." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "non-whitespace stripped by dedent" -#: cmd/quickstart.py:133 +#: directives/code.py:87 #, python-format -msgid "Please enter one of %s." -msgstr "Please enter one of %s." +msgid "Invalid caption: %s" +msgstr "Invalid caption: %s" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Please enter either 'y' or 'n'." +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "line number spec is out of range(1-%d): %r" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Cannot use both \"%s\" and \"%s\" options" -#: cmd/quickstart.py:229 +#: directives/code.py:231 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Welcome to the Sphinx %s quickstart utility." +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: cmd/quickstart.py:234 +#: directives/code.py:235 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Please enter values for the following settings (just press Enter to\naccept a default value, if one is given in brackets)." +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: cmd/quickstart.py:241 +#: directives/code.py:276 #, python-format -msgid "Selected root path: %s" -msgstr "Selected root path: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Enter the root path for documentation." +msgid "Object named %r not found in include file %r" +msgstr "Object named %r not found in include file %r" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Root path for the documentation" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Error: an existing conf.py has been found in the selected root path." +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Line spec %r: no lines pulled from include file %r" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart will not overwrite existing Sphinx projects." +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Please enter a new root path (or just Enter to exit)" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Index" -#: cmd/quickstart.py:273 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "You have two options for placing the build directory for Sphinx output.\nEither, you use a directory \"_build\" within the root path, or you separate\n\"source\" and \"build\" directories within the root path." +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "encountered title node not in section, topic, table, admonition or sidebar" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Separate source and build directories (y/n)" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Footnotes" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Inside the root directory, two more directories will be created; \"_templates\"\nfor custom HTML templates and \"_static\" for custom stylesheets and other static\nfiles. You can enter another prefix (such as \".\") to replace the underscore." - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Name prefix for templates and static dir" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "The project name will occur in several places in the built documentation." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Project name" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Author name(s)" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "caption not inside a figure." -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "Sphinx has the notion of a \"version\" and a \"release\" for the\nsoftware. Each version can have multiple releases. For example, for\nPython the version is something like 2.5 or 3.0, while the release is\nsomething like 2.5.1 or 3.0a1. If you don't need this dual structure,\njust set both to the same value." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "unimplemented node type: %r" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Project version" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[image: %s]" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Project release" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[image]" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "If the documents are to be written in a language other than English,\nyou can select a language here by its language code. Sphinx will then\ntranslate text that it generates into that language.\n\nFor a list of supported codes, see\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Project language" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "numfig_format is not defined for %s" -#: cmd/quickstart.py:339 -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 "The file name suffix for source files. Commonly, this is either \".txt\"\nor \".rst\". Only files with this suffix are considered documents." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "Any IDs not assigned for %s node" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Source file suffix" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "One document is special in that it is considered the top node of the\n\"contents tree\", that is, it is the root of the hierarchical structure\nof the documents. Normally, this is \"index\", but if your \"index\"\ndocument is a custom template, you can also set this to another filename." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Name of your master document (without suffix)" +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Error: the master file %s has already been found in the selected root path." - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart will not overwrite the existing file." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Please enter a new file name, or rename the existing file and press Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Indicate which of the following Sphinx extensions should be enabled:" +msgid "unsupported rubric heading level: %s" +msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Note: imgmath and mathjax cannot be enabled at the same time. imgmath has been deselected." +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "A Makefile and a Windows command file can be generated for you so that you\nonly have to run e.g. `make html' instead of invoking sphinx-build\ndirectly." +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Create Makefile? (y/n)" +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Create Windows command file? (y/n)" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "Could not obtain image size. :scale: option is ignored." -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." -msgstr "Creating file %s." +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "unknown %r toplevel_sectioning for class %r" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "File %s already exists, skipping." -msgstr "File %s already exists, skipping." +msgid "no Babel option known for language %r" +msgstr "no Babel option known for language %r" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Finished: An initial directory structure has been created." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "too large :maxdepth:, ignored." -#: cmd/quickstart.py:519 +#: writers/latex.py:616 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "You should now populate your master file %s and create other documentation\nsource files. " +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Use the Makefile to build the docs, like so:\n make builder" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "document title is not a single Text node" -#: cmd/quickstart.py:530 -#, python-format +#: writers/latex.py:1198 msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Use the sphinx-build command to build the docs, like so:\n sphinx-build -b builder %s %s" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "both tabularcolumns and :widths: option are given. :widths: is ignored." -#: cmd/quickstart.py:537 +#: writers/latex.py:1228 +#, python-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "where \"builder\" is one of the supported builders, e.g. html, latex or linkcheck." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nGenerate required files for a Sphinx project.\n\nsphinx-quickstart is an interactive tool that asks some questions about your\nproject and then generates a complete documentation directory and sample\nMakefile to be used with sphinx-build.\n" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "dimension unit %s is invalid. Ignored." -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "For more information, visit ." +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "unknown index entry type %s found" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "quiet mode" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "project root" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Structure options" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "if specified, separate source and build dirs" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "if specified, create build dir under source dir" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "replacement for dot in _templates etc." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Project basic options" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "project name" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "author names" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "version of project" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "release of project" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "document language" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "source file suffix" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "master document name" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "use epub" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Extension options" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" -msgstr "enable %s extension" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "inconsistent footnote references in translated message. original: {0}, translated: {1}" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "enable arbitrary extensions" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "inconsistent references in translated message. original: {0}, translated: {1}" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefile and Batchfile creation" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "inconsistent citation references in translated message. original: {0}, translated: {1}" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "create makefile" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "inconsistent term references in translated message. original: {0}, translated: {1}" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "do not create makefile" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "create batchfile" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "do not create batchfile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "4 column based index found. It might be a bug of extensions you use: %r" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "Footnote [%s] is not referenced." -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Project templating" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "template directory for template files" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Footnote [#] is not referenced." -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "define a template variable" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "reading error: %s, %s" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart only generate into a empty directory. Please specify a new root path." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "writing error: %s, %s" -#: cmd/quickstart.py:809 +#: util/i18n.py:146 #, python-format -msgid "Invalid template variable: %s" -msgstr "Invalid template variable: %s" +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "job number should be a positive number" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/build.py:74 +#: util/i18n.py:253 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nGenerate documentation from source files.\n\nsphinx-build generates documentation from the files in SOURCEDIR and places it\nin OUTPUTDIR. It looks for 'conf.py' in SOURCEDIR for the configuration\nsettings. The 'sphinx-quickstart' tool may be used to generate template files,\nincluding 'conf.py'\n\nsphinx-build can create documentation in different formats. A format is\nselected by specifying the builder name on the command line; it defaults to\nHTML. Builders can also perform other tasks related to documentation\nprocessing.\n\nBy default, everything that is outdated is built. Output only for selected\nfiles can be built by specifying individual filenames.\n" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "path to documentation source files" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "path to output directory" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Invalid date format. Quote the string by single quote if you want to output it directly: %s" -#: cmd/build.py:109 +#: util/osutil.py:131 +#, python-format msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "general options" +#: util/display.py:82 +msgid "skipped" +msgstr "skipped" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/display.py:87 +msgid "failed" +msgstr "failed" + +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "write all files (default: only write new and changed files)" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "unknown node type: %r" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "don't use a saved environment, always read all files" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:157 +#: util/docfields.py:103 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Problem in %s domain: field is supposed to use role '%s', but that role is not in the domain." -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "default role %s not found" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "override a setting in configuration file" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree contains ref to nonexisting file %r" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "pass a value into HTML templates" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "exception while evaluating only directive expression: %s" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "define tag: include \"only\" blocks with TAG" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "continued from previous page" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "continues on next page" -#: cmd/build.py:212 -msgid "console output options" -msgstr "console output options" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Non-alphabetical" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "increase verbosity (can be repeated)" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Symbols" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "no output on stdout, just warnings on stderr" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Numbers" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "no output at all, not even warnings" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "page" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "do emit colored output (default: auto-detect)" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Release" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "do not emit coloured output (default: auto-detect)" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "Could not fetch remote image: %s [%s]" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "Could not fetch remote image: %s [%d]" + +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Unknown image format: %s..." + +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "Could not determine the fallback text for the cross-reference. Might be a bug." + +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "more than one target found for 'any' cross-reference %r: could be %s" + +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s reference target not found: %s" + +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r reference target not found: %s" + +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Interrupted!" + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "write warnings (and errors) to given file" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "turn warnings into errors" +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "show full traceback on exception" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "run Pdb on exception" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "cannot combine -a option and filenames" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" -#: cmd/build.py:357 +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Please also report this if it was a user error, so that a better error message can be provided next time." + +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Collapse sidebar" + +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigation" + +#: themes/basic/layout.html:115 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" +msgid "Search within %(docstitle)s" +msgstr "Search within %(docstitle)s" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "-D option argument must be in the form name=value" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "About these documents" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "-A option argument must be in the form name=value" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Search" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Last updated on %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Created using Sphinx %(sphinx_version)s." + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Previous topic" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "previous chapter" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Next topic" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Collapse sidebar" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "next chapter" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Table of Contents" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Full index on one page" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "This Page" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Show Source" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Quick search" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Go" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2682,7 +2882,7 @@ msgstr "Global Module Index" msgid "quick access to all modules" msgstr "quick access to all modules" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "General Index" @@ -2690,23 +2890,15 @@ msgstr "General Index" msgid "all functions, classes, terms" msgstr "all functions, classes, terms" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Table of Contents" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Full index on one page" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Quick search" +msgid "Search %(docstitle)s" +msgstr "Search %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2716,57 +2908,6 @@ msgstr "Index pages by letter" msgid "can be huge" msgstr "can be huge" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Previous topic" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "previous chapter" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Next topic" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "next chapter" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigation" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Search within %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "About these documents" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Last updated on %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Created using Sphinx %(sphinx_version)s." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2783,21 +2924,21 @@ msgstr "Searching for multiple words only shows matches that contain\n all wo msgid "search" msgstr "search" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Contents" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Search Results" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,22 +2946,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Searching" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Preparing search..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", in " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Hide Search Matches" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2828,6 +2968,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Changes in Version %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,120 +2994,127 @@ msgstr "Other changes" msgid "Expand sidebar" msgstr "Expand sidebar" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parameters" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variables" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Raises" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (in module %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (in module %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (built-in variable)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (built-in class)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (class in %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s class method)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s static method)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (%s property)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python Module Index" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modules" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Deprecated" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "exception" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "class method" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "static method" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "property" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "more than one target found for cross-reference %r: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (deprecated)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parameters" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variables" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Duplicate C++ declaration, also defined at %s:%s.\nDeclaration is '.. cpp:%s:: %s'." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2973,92 +3125,85 @@ msgstr "Template Parameters" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Duplicate C++ declaration, also defined at %s:%s.\nDeclaration is '.. cpp:%s:: %s'." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Return values" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "union" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "member" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "type" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "concept" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "function parameter" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "template parameter" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "Duplicate C declaration, also defined at %s:%s.\nDeclaration is '.. c:%s:: %s'." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variable" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "macro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "struct" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "environment variable; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3153,514 +3298,422 @@ msgstr "undefined label: %r" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "Failed to create a cross reference. A title or caption not found: %r" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "circular toctree references detected, ignoring: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree contains reference to document %r that doesn't have a title: no link will be generated" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "toctree contains reference to non-included document %r" - -#: environment/adapters/toctree.py:367 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "see %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "see also %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "unknown index entry type %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Symbols" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "image file not readable: %s" +msgid "invalid value set (missing closing brace): %s" +msgstr "invalid value set (missing closing brace): %s" -#: environment/collectors/asset.py:126 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "image file %s not readable: %s" -msgstr "image file %s not readable: %s" +msgid "invalid value set (missing opening brace): %s" +msgstr "invalid value set (missing opening brace): %s" -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "download file not readable: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "malformed string literal (missing closing quote): %s" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s is already assigned section numbers (nested numbered toctree?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Interrupted!" +msgid "malformed string literal (missing opening quote): %s" +msgstr "malformed string literal (missing opening quote): %s" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Example" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Examples" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Keyword Arguments" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Notes" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Other Parameters" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "Receives" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "References" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Please also report this if it was a user error, so that a better error message can be provided next time." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Warns" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "Could not determine the fallback text for the cross-reference. Might be a bug." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "Yields" -#: transforms/post_transforms/__init__.py:237 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "more than one target found for 'any' cross-reference %r: could be %s" +msgid "A mocked object is detected: %r" +msgstr "A mocked object is detected: %r" -#: transforms/post_transforms/__init__.py:299 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s reference target not found: %s" +msgid "alias of %s" +msgstr "alias of %s" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r reference target not found: %s" +msgid "Bases: %s" +msgstr "Bases: %s" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "Could not fetch remote image: %s [%s]" +msgid "invalid value for member-order option: %s" +msgstr "invalid value for member-order option: %s" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "Could not fetch remote image: %s [%d]" +msgid "invalid value for class-doc-from option: %s" +msgstr "invalid value for class-doc-from option: %s" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "Unknown image format: %s..." -msgstr "Unknown image format: %s..." +msgid "invalid signature for auto%s (%r)" +msgstr "invalid signature for auto%s (%r)" -#: builders/html/__init__.py:113 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "The HTML pages are in %(outdir)s." +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "don't know which module to import for autodocumenting %r (try placing a \"module\" or \"currentmodule\" directive in the document, or giving an explicit module name)" -#: builders/html/__init__.py:348 +#: ext/autodoc/_names.py:89 #, python-format -msgid "Failed to read build info file: %r" -msgstr "Failed to read build info file: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" - -#: builders/html/__init__.py:366 -msgid "building [html]: " +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:383 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" in automodule name doesn't make sense" -#: builders/html/__init__.py:560 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Logo of %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "next" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "previous" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "Would create file %s." -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "generating indices" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nLook recursively in for Python modules and packages and create\none reST file with automodule directives per package in the .\n\nThe s can be file and/or directory patterns that will be\nexcluded from generation.\n\nNote: By default this script will not overwrite already created files." -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "writing additional pages" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "path to module to document" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "fnmatch-style file and/or directory patterns to exclude from generation" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "copying downloadable files... " +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "directory to place all output" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "cannot copy downloadable file %r: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "maximum depth of submodules to show in the TOC (default: 4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "overwrite existing files" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "Failed to copy a file in html_static_file: %s: %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "follow symbolic links. Powerful when combined with collective.recipe.omelette." -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "copying static files" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "run the script without creating files" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "cannot copy static file %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "put documentation for each module on its own page" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "copying extra files" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "include \"_private\" modules" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "cannot copy extra file %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "filename of table of contents (default: modules)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "Failed to write build info file: %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "don't create a table of contents file" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "search index couldn't be loaded, but not all documents will be built: the index will be incomplete." +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "don't create headings for the module/package packages (e.g. when the docstrings already contain them)" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "page %s matches two patterns in html_sidebars: %r and %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "put module documentation before submodule documentation" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "a Unicode error occurred when rendering the page %s. Please make sure all config values that contain non-ASCII content are Unicode strings." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "interpret module paths according to PEP-0420 implicit namespaces specification" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "An error happened in rendering the page %s.\nReason: %r" - -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "dumping object inventory" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "dumping search index in %s" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "file suffix (default: rst)" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "generate a full project with sphinx-quickstart" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "append module_path to sys.path, used when --full is given" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "project name (default: root module name)" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "project author(s), used when --full is given" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "project version, used when --full is given" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "project release, used when --full is given, defaults to --doc-version" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "logo file %r does not exist" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "extension options" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "favicon file %r does not exist" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in configuration options)" - -#: builders/html/__init__.py:1449 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "%s %s documentation" -msgstr "%s %s documentation" +msgid "%s is not a directory." +msgstr "%s is not a directory." -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "The LaTeX files are in %(outdir)s." - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nRun 'make' in that directory to run these through (pdf)latex\n(use `make latexpdf' here to do that automatically)." - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "no \"latex_documents\" config value found; no documents will be written" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "\"latex_documents\" config value references unknown document %s" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Release" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "copying TeX support files" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "copying additional files" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Unknown theme option: latex_theme_options[%r], ignored." - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "Failed to get a docname!" +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r doesn't have \"%s\" setting" - -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "continued from previous page" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "continues on next page" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Non-alphabetical" - -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Numbers" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: failed to determine %r to be documented, the following exception was raised:\n%s" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] generating autosummary for: %s" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" +msgstr "[autosummary] writing to %s" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] failed to import %s.\nPossible hints:\n%s" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nGenerate ReStructuredText using autosummary directives.\n\nsphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\nthe reStructuredText files from the autosummary directives contained in the\ngiven input files.\n\nThe format of the autosummary directive is documented in the\n``sphinx.ext.autosummary`` Python module and can be read using::\n\n pydoc sphinx.ext.autosummary\n" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "source files to generate rST files for" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "directory to place all output in" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "default suffix for files (default: %(default)s)" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "custom template directory (default: %(default)s)" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "document imported members (default: %(default)s)" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "document exactly the members in module __all__ attribute. (default: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "autosummary references excluded document %r. Ignored." -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "autosummary: stub file not found %r. Check your autosummary_generate setting." -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "A captioned autosummary requires :toctree: option. ignored." -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3721,585 @@ msgid "" "%s" msgstr "autosummary: failed to import %s.\nPossible hints:\n%s" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "failed to parse name %s" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "failed to import object %s" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: file not found: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary: failed to determine %r to be documented, the following exception was raised:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] failed to import %s.\nPossible hints:\n%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nGenerate ReStructuredText using autosummary directives.\n\nsphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\nthe reStructuredText files from the autosummary directives contained in the\ngiven input files.\n\nThe format of the autosummary directive is documented in the\n``sphinx.ext.autosummary`` Python module and can be read using::\n\n pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "source files to generate rST files for" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "directory to place all output in" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "encountered some issues with some of the inventories, but they had working alternatives:" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "default suffix for files (default: %(default)s)" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "custom template directory (default: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "intersphinx inventory has moved: %s -> %s" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "document imported members (default: %(default)s)" +msgid "(in %s %s)" +msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "document exactly the members in module __all__ attribute. (default: %(default)s)" +msgid "(in %s)" +msgstr "(in %s)" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Failed to remove %s: %s" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nLook recursively in for Python modules and packages and create\none reST file with automodule directives per package in the .\n\nThe s can be file and/or directory patterns that will be\nexcluded from generation.\n\nNote: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "path to module to document" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "directory to place all output" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "external %s:%s reference target not found: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "error while formatting signature for %s: %s" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "overwrite existing files" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "follow symbolic links. Powerful when combined with collective.recipe.omelette." +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "Failed to get a function signature for %s: %s" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "run the script without creating files" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "Failed to update signature for %r: parameter not found: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "Failed to parse type_comment for %r: %s" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "include \"_private\" modules" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "Invalid __slots__ found on %s. Ignored." -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "error while formatting arguments for %s: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "don't create a table of contents file" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "Failed to get a constructor signature for %s: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "don't create headings for the module/package packages (e.g. when the docstrings already contain them)" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "Failed to get a method signature for %s: %s" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "interpret module paths according to PEP-0420 implicit namespaces specification" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Failed to parse a default argument value for %r: %s" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n%s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "signature arguments or return annotation given for automodule %s" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ should be a list of strings, not %r (in module %s) -- ignoring __all__" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "missing attribute mentioned in :members: option: module %s, attribute %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "missing attribute %s in object %s" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "alias of TypeVar(%s)" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "The HTML pages are in %(outdir)s." -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s is not a directory." +msgid "Failed to read build info file: %r" +msgstr "Failed to read build info file: %r" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" -#: ext/apidoc/_extension.py:121 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "next" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "previous" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "generating indices" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "writing additional pages" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:192 -#, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "copying downloadable files... " -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "cannot copy downloadable file %r: %s" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Failed to copy a file in html_static_file: %s: %r" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." -msgstr "Would create file %s." +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "copying static files" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:923 #, python-format -msgid "(in %s v%s)" -msgstr "(in %s v%s)" +msgid "cannot copy static file %r" +msgstr "cannot copy static file %r" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "(in %s)" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "copying extra files" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:938 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +msgid "cannot copy extra file %r" +msgstr "cannot copy extra file %r" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "Failed to write build info file: %r" +msgstr "Failed to write build info file: %r" + +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "search index couldn't be loaded, but not all documents will be built: the index will be incomplete." -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "page %s matches two patterns in html_sidebars: %r and %r" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1204 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "a Unicode error occurred when rendering the page %s. Please make sure all config values that contain non-ASCII content are Unicode strings." -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1217 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1225 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "external %s:%s reference target not found: %s" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "An error happened in rendering the page %s.\nReason: %r" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "dumping object inventory" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "dumping search index in %s" +msgstr "dumping search index in %s" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "invalid js_file: %r, ignored" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Many math_renderers are registered. But no math_renderer is selected." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "Unknown math_renderer %r is given." +msgstr "Unknown math_renderer %r is given." -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path entry %r is placed inside outdir" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path entry %r does not exist" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path entry %r is placed inside outdir" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path entry %r does not exist" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" +msgid "logo file %r does not exist" +msgstr "logo file %r does not exist" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "favicon file %r does not exist" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "encountered some issues with some of the inventories, but they had working alternatives:" - -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "failed to reach any of the inventories with the following issues:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in configuration options)" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "intersphinx inventory has moved: %s -> %s" +msgid "%s %s documentation" +msgstr "%s %s documentation" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "invalid value for member-order option: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r doesn't have \"theme\" setting" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "invalid value for class-doc-from option: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r doesn't have \"%s\" setting" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "invalid signature for auto%s (%r)" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "Failed to get a docname!" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "error while formatting arguments for %s: %s" +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n%s" +msgid "No footnote was found for given reference node %r" +msgstr "No footnote was found for given reference node %r" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "The LaTeX files are in %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "don't know which module to import for autodocumenting %r (try placing a \"module\" or \"currentmodule\" directive in the document, or giving an explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nRun 'make' in that directory to run these through (pdf)latex\n(use `make latexpdf' here to do that automatically)." -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "no \"latex_documents\" config value found; no documents will be written" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "\"latex_documents\" config value references unknown document %s" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "copying TeX support files" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "copying additional files" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ should be a list of strings, not %r (in module %s) -- ignoring __all__" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Unknown configure key: latex_elements[%r], ignored." -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Unknown theme option: latex_theme_options[%r], ignored." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s is already assigned section numbers (nested numbered toctree?)" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" +msgstr "image file not readable: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "Bases: %s" +msgid "image file %s not readable: %s" +msgstr "image file %s not readable: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "missing attribute %s in object %s" +msgid "download file not readable: %s" +msgstr "download file not readable: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "circular toctree references detected, ignoring: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree contains reference to document %r that doesn't have a title: no link will be generated" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "toctree contains reference to non-included document %r" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "Failed to parse a default argument value for %r: %s" +msgid "see %s" +msgstr "see %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" +msgstr "see also %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" +msgstr "unknown index entry type %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/en_HK/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/en_HK/LC_MESSAGES/sphinx.mo index 8898472d6f4cb417e83a2325ea67b18f76ce050b..837c1f26c9b5593fd95b9f9c620baf370bbcb6e6 100644 GIT binary patch delta 24 fcmbQhHi2z}I3u^Ak*\n" "Language-Team: English (Hong Kong) (http://app.transifex.com/sphinx-doc/sphinx-1/language/en_HK/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: en_HK\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2804,21 +2945,20 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2827,6 +2967,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2848,119 +2993,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2972,92 +3124,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3085,581 +3230,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3667,548 +3720,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/eo/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/eo/LC_MESSAGES/sphinx.mo index 44999ce8fa4d148910e475cb4c1288e43a2b8f39..fe3b1d04f9df6d1bae6a64aa39563f229b045a3e 100644 GIT binary patch delta 24 fcmbO)FkfK9Y!+@qBV7YS1w%6{LzB(RSSpzTSA_, 2021\n" "Language-Team: Esperanto (http://app.transifex.com/sphinx-doc/sphinx-1/language/eo/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: eo\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Ne povas trovi fontan dosierujon (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,473 +538,629 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Eraro" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:197 +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Averto" + +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" +msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" msgstr "" #: ext/coverage.py:140 ext/coverage.py:301 @@ -740,9 +1176,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -777,6 +1214,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -864,947 +1329,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "inline latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:231 +#: ext/doctest.py:297 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:451 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:568 #, python-format -msgid "Object named %r not found in include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/code.py:314 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" + +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:203 -msgid "Section author: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: directives/other.py:209 -msgid "Author: " -msgstr "Aŭtoro:" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/changes.py:133 +#: domains/javascript.py:186 #, python-format -msgid "could not read %r for changelog creation" +msgid "%s() (class)" +msgstr "%s() (klaso)" + +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" msgstr "" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "%s (%s attribute)" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcio" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klaso" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "datenoj" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atributo" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:275 +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:361 +#: domains/rst.py:262 #, python-format -msgid "%d source files given on command line" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:377 +#: domains/changeset.py:32 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/changeset.py:33 #, python-format -msgid "building [%s]: " +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:410 +#: domains/changeset.py:35 #, python-format -msgid "%d found" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:412 -msgid "none found" -msgstr "" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:109 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:558 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "" - -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "" - -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/texinfo.py:89 +#: cmd/build.py:357 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:134 #, python-format -msgid "unknown mimetype for %s, ignoring" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:794 +#: cmd/quickstart.py:230 #, python-format -msgid "writing %s file..." -msgstr "" - -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/gettext.py:266 +#: cmd/quickstart.py:242 #, python-format -msgid "targets for %d template files" -msgstr "" - -#: builders/gettext.py:271 -msgid "reading templates... " +msgid "Selected root path: %s" msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:298 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:309 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"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" +"just set both to the same value." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:324 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:340 +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 "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:397 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: util/i18n.py:245 +#: cmd/quickstart.py:671 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +msgid "enable %s extension" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/rst.py:73 +#: cmd/quickstart.py:810 #, python-format -msgid "default role %s not found" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:166 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/other.py:169 #, python-format -msgid "[image: %s]" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:205 +msgid "Module author: " +msgstr "" + +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/other.py:209 +msgid "Author: " +msgstr "Aŭtoro:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1833,6 +2344,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1849,793 +2365,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (klaso)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funkcio" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klaso" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "datenoj" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atributo" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "" - -#: domains/rst.py:234 -msgid "directive" -msgstr "" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Eraro" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Averto" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:273 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:286 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:297 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:308 +#: transforms/i18n.py:347 +#, python-brace-format 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" -"just set both to the same value." +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:323 +#: transforms/__init__.py:258 +#, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:367 +#: util/i18n.py:100 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:396 +#: util/i18n.py:253 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:406 +#: util/osutil.py:131 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: util/docutils.py:325 #, python-format -msgid "Creating file %s." +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/docutils.py:361 #, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:519 +#: util/docutils.py:805 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "" - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:530 +#: util/fileutil.py:76 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:572 +#: util/docfields.py:103 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:670 +#: util/rst.py:73 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:792 +#: util/nodes.py:462 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:809 +#: util/nodes.py:523 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Simboloj" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:157 +#: transforms/post_transforms/__init__.py:88 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Aŭtora rajto" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:357 +#: themes/basic/layout.html:201 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Antaŭa temo" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "antaŭa ĉapitro" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Sekva temo" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "sekvo ĉapitro" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2683,7 +2883,7 @@ msgstr "Universala modjulindico" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Indico universala" @@ -2691,22 +2891,14 @@ msgstr "Indico universala" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2714,58 +2906,7 @@ msgid "Index pages by letter" msgstr "" #: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Antaŭa temo" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "antaŭa ĉapitro" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Sekva temo" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "sekvo ĉapitro" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Aŭtora rajto" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +msgid "can be huge" msgstr "" #: themes/basic/search.html:20 @@ -2784,21 +2925,21 @@ msgstr "" msgid "search" msgstr "serĉu" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2806,21 +2947,20 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2829,6 +2969,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2850,119 +2995,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametroj" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "escepto" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametroj" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2974,746 +3126,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "membro" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipo" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "nomaĵo" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "vidu %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "vidu ankaŭ %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Simboloj" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/c/__init__.py:778 +msgid "variable" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "nomaĵo" + +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "environment variable; %s" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:116 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:239 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: transforms/post_transforms/images.py:143 +#: domains/std/__init__.py:319 #, python-format -msgid "Unknown image format: %s..." +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indico" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "sekva" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "antaŭa" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Avertoj" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "%s %s dokumentaro" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "" + +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "" - -#: ext/napoleon/docstring.py:895 -msgid "Example" +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Avertoj" - -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3721,7 +3653,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3736,481 +3668,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indico" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "sekva" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "antaŭa" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s dokumentaro" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "vidu %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "vidu ankaŭ %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/es/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/es/LC_MESSAGES/sphinx.mo index b757652751f5c25dcae32ddcdbf1ea9141f66233..8bc422bcdd2efebeb373291b6adc7e36eb49999d 100644 GIT binary patch delta 11035 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 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/es/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/es/LC_MESSAGES/sphinx.po index 24ea0cd02..13e88cea0 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/es/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/es/LC_MESSAGES/sphinx.po @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:38+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Adam Turner, 2023\n" "Language-Team: Spanish (http://app.transifex.com/sphinx-doc/sphinx-1/language/es/)\n" @@ -27,6 +27,127 @@ msgstr "" "Language: es\n" "Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "número de PEP inválido %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "número RFC inválido %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "configuración de %s.%s se produce en ninguna de las configuraciones de tema buscado" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "opción de tema no soportada %r fue dada" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "archivo %r o ruta del tema no es un archivo zip válido o no contiene ningún tema" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -41,127 +162,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Este proyecto necesita la extensión %s por lo menos en la versión %s y por lo tanto no puede ser construido con la versión cargada (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "El nombre del lexer de pigmentos %r se desconoce" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Evento %r ya presente" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Nombre de evento desconocido: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "Manipulador %r para el evento %r lanzó una excepción" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "No se encuentra directorio fuente (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Directorio de salida (%s) no es un directorio" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Directorio fuente y directorio destino no pueden ser idénticos" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Ejecutando Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Este proyecto necesita al menos Sphinx v%s y por lo tanto no se puede construir con esta versión." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "creando directorio de salida" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "mientras configura la extensión %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' como se define actualmente en el archivo conf.py no es un Python invocable. Por favor, modifique su definición para que sea una función invocable. Esto es necesario para que el archivo conf.py se comporte como una extensión de Sphinx." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "cargando traducciones [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "hecho" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "no disponible para mensajes incorporados" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "cargando el ambiente pickled" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "fallo: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Ningún constructor seleccionado, utilizando el valor predeterminado: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "la clase de nodo %r ya está registrada, sus visitantes serán reemplazados" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -169,12 +317,12 @@ msgid "" "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" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "la extensión %s no es segura para lectura paralela" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -182,82 +330,214 @@ msgid "" "explicit" msgstr "la extensión %s no declara si es seguro para la escritura paralela, suponiendo que no lo sea - solicite al autor de la extensión que lo verifique y haga explicito" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "la extensión %s no es segura para escritura paralela" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "realizando serialmente %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "directorio de configuración no contiene un archivo conf.py (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Constructor clase %s no tiene ningún atributo \"name\"" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Constructor %r ya existe (en el módulo %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Nombre de constructor %s no registrados o disponibles a través del punto de entrada" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Nombre de constructor %s no registrado" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "dominio %s ya esta registrado" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "dominio %s no esta registrado" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "La directiva %r ya fue registrada en el dominio %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "El rol %r ya fue registrado en el dominio %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "El índice %r ya fue registrado en el dominio %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "El %r object_type ya está registrado" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "El %r crossref_type ya está registrado" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r ya está registrado" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser para %r ya está registrado" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Analizador de fuentes para %s no registrado" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Traductor para %r ya existe" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwargs para la función add_node() debe ser una tupla de función (visitar, salir): %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r ya esta registrado" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "el renderizador matemático %s ya está registrado" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "Se encontró un valor de configuración no válido: 'language = None'. Actualice su configuración a un código de idioma válido. Volviendo a definir 'en' (Inglés)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "la extensión %r ya se fusionó con Sphinx desde la versión %s; esta extensión se omite." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Excepción original:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "No puede importar la extensión %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "extensión %r no tiene ninguna función setup(); ¿es realmente un módulo de extensión de Sphinx?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "La extensión %s utilizada por este proyecto necesita al menos la versión de Sphinx v%s; por lo tanto no puede ser construido con esta versión." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "extensión %r devuelve un objeto no soportado de su función setup(); debe devolver un diccionario de metadatos o ninguno" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "directorio de configuración no contiene un archivo conf.py (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "no se puede reemplazar el ajuste de la configuración del diccionario %r, haciendo caso omiso (utilice %r para definir elementos individuales)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "número no válido %r de valor de configuración %r, haciendo caso omiso" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "no se puede reemplazar los ajustes de configuración %r con tipo no compatible, haciendo caso omiso" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "valor de configuración desconocido %r en anulación, ignorando" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Valor de configuración %r ya presente" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "Se encontró un valor de configuración no válido: 'language = None'. Actualice su configuración a un código de idioma válido. Volviendo a definir 'en' (Inglés)." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Hay un error de sintaxis en su archivo de configuración: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "El archivo de configuración (o uno de los módulos que importa) invocó sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -265,547 +545,732 @@ msgid "" "%s" msgstr "Hay un error programable en su archivo de configuración:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Sección %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Figura %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabla %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Lista %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "El valor de configuración `{name}` tiene que ser uno de {candidates}, pero fue dado `{current}`." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "El valor de configuración `{name}' tiene tipo `{current.__name__}'; esperado {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "El valor de configuración `{name}' tiene el tipo `{current.__name__}', el valor predeterminado es `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r no fue encontrado, se ignora." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "El nombre del lexer de pigmentos %r se desconoce" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "nueva configuración" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "configuración de %s.%s se produce en ninguna de las configuraciones de tema buscado" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "configuración modificada" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "opción de tema no soportada %r fue dada" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "extensiones modificadas" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "archivo %r o ruta del tema no es un archivo zip válido o no contiene ningún tema" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "la versión del entorno de compilación no es actual" -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "directorio fuente ha cambiado" -#: theming.py:268 +#: environment/__init__.py:350 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:355 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:282 +#: environment/__init__.py:361 #, python-format -msgid "The %r theme has too many ancestors" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:310 -#, python-format -msgid "no theme configuration file found in %r" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Este entorno es incompatible con el generador seleccionado, elija otro directorio doctree." -#: theming.py:335 theming.py:388 +#: environment/__init__.py:518 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "Error al escanear los documentos en %s: %r" -#: theming.py:339 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "Dominio %r no está registrado" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "documento no está incluido en ningún toctree" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "toctree auto referenciado encontrado. Ignorado." -#: theming.py:366 +#: environment/__init__.py:952 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Evento %r ya presente" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Atención" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Nombre de evento desconocido: %s" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Prudencia" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "Manipulador %r para el evento %r lanzó una excepción" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Peligro" -#: project.py:72 +#: locale/__init__.py:232 +msgid "Error" +msgstr "Error" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Consejo" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Importante" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Nota" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Ver también" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Truco" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Advertencia" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Los archivos Texinfo están en %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nEjecute el comando 'make' en ese directorio para ejecutarlos a través de makeinfo\n(usa el comando 'make info' aquí para hacer esto automáticamente)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "no se encontró el valor de configuración \"texinfo_documents\"; no se escribirán documentos" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Constructor clase %s no tiene ningún atributo \"name\"" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "El valor de configuración \"texinfo_documents\" hace referencia a un documento desconocido %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Constructor %r ya existe (en el módulo %s)" +msgid "processing %s" +msgstr "procesando %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Nombre de constructor %s no registrados o disponibles a través del punto de entrada" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "escribiendo" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Nombre de constructor %s no registrado" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "resolviendo referencias..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "dominio %s ya esta registrado" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (en " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "dominio %s no esta registrado" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "copiando imágenes... " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "La directiva %r ya fue registrada en el dominio %s" +msgid "cannot copy image file %r: %s" +msgstr "no se puede copiar archivo de imagen %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "El rol %r ya fue registrado en el dominio %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "copiando archivos de soporte Texinfo" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "El índice %r ya fue registrado en el dominio %s" +msgid "error writing file Makefile: %s" +msgstr "error escribiendo archivo Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "El %r object_type ya está registrado" +msgid "The manual pages are in %(outdir)s." +msgstr "Las páginas del manual están en %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "El %r crossref_type ya está registrado" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "no se encontró el valor de configuración \"man_pages\"; no se escribirán las páginas del manual" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r ya está registrado" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "El valor de configuración \"man_pages\" hace referencia a un documento desconocido %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser para %r ya está registrado" +msgid "The HTML page is in %(outdir)s." +msgstr "Página HTML está en %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Analizador de fuentes para %s no registrado" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "ensamblando documento sencillo" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Traductor para %r ya existe" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "escribiendo archivos adicionales" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "kwargs para la función add_node() debe ser una tupla de función (visitar, salir): %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "El constructor ficticio no genera archivos." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r ya esta registrado" +msgid "The message catalogs are in %(outdir)s." +msgstr "Los catálogos de mensajes están en %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "el renderizador matemático %s ya está registrado" +msgid "building [%s]: " +msgstr "compilando [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "la extensión %r ya se fusionó con Sphinx desde la versión %s; esta extensión se omite." +msgid "targets for %d template files" +msgstr "objetivos para los archivos de plantillas %d" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Excepción original:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "leyendo plantillas... " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "No puede importar la extensión %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "escribiendo catálogos de mensajes... " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "extensión %r no tiene ninguna función setup(); ¿es realmente un módulo de extensión de Sphinx?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Busque cualquier error en la salida anterior o en el archivo %(outdir)s/output.txt" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "La extensión %s utilizada por este proyecto necesita al menos la versión de Sphinx v%s; por lo tanto no puede ser construido con esta versión." +msgid "broken link: %s (%s)" +msgstr "enlace roto: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "extensión %r devuelve un objeto no soportado de su función setup(); debe devolver un diccionario de metadatos o ninguno" +msgid "Anchor '%s' not found" +msgstr "Ancla '%s' no encontrado" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "Error al compilar expresiones regulares en linkcheck_allowed_redirects: %r %s" -#: roles.py:251 +#: builders/epub3.py:83 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "El archivo ePub está en %(outdir)s." -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" -msgstr "" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "escribiendo el archivo nav.xhtml..." -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_language\" (o \"language\") no debe estar vacío para EPUB3" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" -msgstr "número de PEP inválido %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "el valor de configuración \"epub_uid\" debe ser XML NAME para EPUB3" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" -msgstr "número RFC inválido %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_title\" (or \"html_title\") no debe estar vacío para EPUB3" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[fuente]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_author\" no debe estar vacío para EPUB3" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "resaltando el código del módulo... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_contributor\" no debe estar vacío para EPUB3" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[documentos]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_description\" no debe estar vacío para EPUB3" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Código de módulo" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_publisher\" no debe estar vacío para EPUB3" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Código fuente para %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_copyright\" (or \"copyright\") no debe estar vacío para EPUB3" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Resumen: código de modulo" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "el valor de configuración \"epub_identifier\" no debe estar vacío para EPUB3" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Todos los módulos para los cuales disponen código

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "el valor de configuración \"version\" no debe estar vacío para EPUB3" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "enlace codificado %r podría reemplazarse por un enlace externo (intente usar %r en su lugar)" +msgid "invalid css_file: %r, ignored" +msgstr "css_file inválido: %r, ignorado" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "Los archivos XML están en %(outdir)s." -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "etiqueta duplicada %s, otra instancia en %s" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "" +msgid "error writing file %s: %s" +msgstr "error escribiendo archivo %s: %s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== duraciones de lectura más lentas =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Los archivos pseudo-XML están en %(outdir)s." -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "falta '+' o '-' en la opción '%s'." +msgid "duplicated ToC entry found: %s" +msgstr "entrada de tabla de contenido duplicada encontrada: %s" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' no es una opción válida." +msgid "cannot read image file %r: copying it instead" +msgstr "no puede leer el archivo de imagen %r: en su lugar, lo copia" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' no es una opción pyversion válida" +msgid "cannot write image file %r: %s" +msgstr "no se puede escribir archivo de imagen %r: %s" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "tipo de TestCode inválido" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow no encontrada - copiando archivos de imágenes" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Prueba de doctests en las fuentes terminadas, mira los resultados en %(outdir)s/output.txt." +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "escribiendo el archivo mimetype..." + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "escribiendo el archivo META-INF/container.xml..." + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "escribiendo el archivo content.opf..." -#: ext/doctest.py:457 +#: builders/_epub_base.py:594 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "sin código/salida en el bloque %s en %s:%s" +msgid "unknown mimetype for %s, ignoring" +msgstr "mimetype desconocido para %s, ignorando" -#: ext/doctest.py:568 +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "escribiendo el archivo toc.ncx..." + +#: builders/_epub_base.py:802 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "ignorando el código doctest no válido: %r" +msgid "writing %s file..." +msgstr "escribiendo archivo %s..." -#: ext/imgmath.py:162 +#: builders/text.py:27 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "comando LaTeX %r no se puede ejecutar (necesario para la visualización matemática), compruebe la configuración de imgmath_latex" +msgid "The text files are in %(outdir)s." +msgstr "Los archivos de texto están en %(outdir)s." -#: ext/imgmath.py:181 +#: builders/__init__.py:229 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "comando %s %r no se puede ejecutar (necesario para la visualización matemática), verifique la configuración imgmath_%s" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "una imagen adecuada para %s constructor no encontrado: %s (%s)" -#: ext/imgmath.py:344 +#: builders/__init__.py:237 #, python-format -msgid "display latex %r: %s" -msgstr "visualizar latex %r: %s" +msgid "a suitable image for %s builder not found: %s" +msgstr "una imagen adecuada para %s constructor no encontrado: %s" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "compilando [mo]: " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "escribiendo salida... " -#: ext/imgmath.py:380 +#: builders/__init__.py:280 #, python-format -msgid "inline latex %r: %s" -msgstr "en línea latex %r: %s" +msgid "all of %d po files" +msgstr "todos los %d archivos po" -#: ext/coverage.py:48 +#: builders/__init__.py:302 #, python-format -msgid "invalid regex %r in %s" -msgstr "expresiones regulares inválidas %r en %s" +msgid "targets for %d po files that are specified" +msgstr "los objetivos para %d los archivos po que se especifican" -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:314 #, python-format -msgid "module %s could not be imported: %s" -msgstr "el módulo %s no podía ser importado: %s" +msgid "targets for %d po files that are out of date" +msgstr "los objetivos para %d los archivos po que estan desactualizados" -#: ext/coverage.py:148 +#: builders/__init__.py:324 +msgid "all source files" +msgstr "todos los archivos fuente" + +#: builders/__init__.py:335 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/coverage.py:158 +#: builders/__init__.py:342 +#, python-format msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "archivo %r dado en la línea de comandos no está en el directorio fuente, ignorado" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/coverage.py:187 +#: builders/__init__.py:366 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "expresiones regulares inválidas %r en coverage_c_regexes" +msgid "%d source files given on command line" +msgstr "%d archivos fuente dados en la línea de comandos" -#: ext/coverage.py:260 +#: builders/__init__.py:382 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "api c indocumentado: %s [%s] en archivo %s" +msgid "targets for %d source files that are out of date" +msgstr "los objetivos para %d los archivos fuentes que estan desactualizados" -#: ext/coverage.py:452 -#, python-format -msgid "undocumented python function: %s :: %s" -msgstr "función python indocumentada: %s :: %s" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "buscando por archivos no actualizados... " -#: ext/coverage.py:473 +#: builders/__init__.py:415 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "clase python indocumentada: %s :: %s" +msgid "%d found" +msgstr "%d encontrado" -#: ext/coverage.py:492 +#: builders/__init__.py:417 +msgid "none found" +msgstr "no encontrado" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "preparando ambiente" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "verificando consistencia" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "no hay archivos objetivo desactualizados." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "actualizando ambiente: " + +#: builders/__init__.py:499 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "método python indocumentado: %s :: %s :: %s" +msgid "%s added, %s changed, %s removed" +msgstr "%sañadido, %s cambiado, %s removido" -#: ext/imgconverter.py:44 +#: builders/__init__.py:536 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "No se puede ejecutar el comando de conversión de imagen %r. 'sphinx.ext.imgconverter' requiere ImageMagick por defecto. Asegúrese de que esté instalado o configure la opción 'image_converter' a un comando de conversión personalizado.\n\nRastrear: %s" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:545 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "convert salió con error:\n[stderr]\n%r\n[stdout]\n%r" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" -#: ext/imgconverter.py:83 +#: builders/__init__.py:556 #, 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" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "leyendo fuentes... " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "docnames para escribir: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "preparando documentos" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "El archivo de resumen está en %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "no hay cambios en versión %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "escribiendo archivo de resumen..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Funciones incorporadas" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Nivel de módulo" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "copiando archivos fuente..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "no se pudo leer %r for para la creación del registro de cambios" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "expresiones regulares inválidas %r en %s" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "el módulo %s no podía ser importado: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "expresiones regulares inválidas %r en coverage_c_regexes" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "api c indocumentado: %s [%s] en archivo %s" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "función python indocumentada: %s :: %s" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "clase python indocumentada: %s :: %s" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "método python indocumentado: %s :: %s :: %s" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "enlace codificado %r podría reemplazarse por un enlace externo (intente usar %r en su lugar)" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Por hacer" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "Marca TODO encontrada: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(La <> se encuentra en %s, línea %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "entrada original" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "No se puede ejecutar el comando de conversión de imagen %r. 'sphinx.ext.imgconverter' requiere ImageMagick por defecto. Asegúrese de que esté instalado o configure la opción 'image_converter' a un comando de conversión personalizado.\n\nRastrear: %s" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "convert salió con error:\n[stderr]\n%r\n[stdout]\n%r" + +#: ext/imgconverter.py:83 +#, 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" #: ext/graphviz.py:138 msgid "Graphviz directive cannot have both content and a filename argument" @@ -871,1780 +1336,1515 @@ msgstr "[gráfica: %s]" msgid "[graph]" msgstr "[gráfica]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Por hacer" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "comando LaTeX %r no se puede ejecutar (necesario para la visualización matemática), compruebe la configuración de imgmath_latex" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" -msgstr "Marca TODO encontrada: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "comando %s %r no se puede ejecutar (necesario para la visualización matemática), verifique la configuración imgmath_%s" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "visualizar latex %r: %s" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(La <> se encuentra en %s, línea %d.)" +msgid "inline latex %r: %s" +msgstr "en línea latex %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "entrada original" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "no espacios en blanco eliminados por identado" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "falta '+' o '-' en la opción '%s'." -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" -msgstr "Subtítulo inválido: %s" +msgid "'%s' is not a valid option." +msgstr "'%s' no es una opción válida." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "la especificación del número de línea está fuera de range(1-%d): %r" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' no es una opción pyversion válida" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "tipo de TestCode inválido" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "No puede utilizar ambas opciones \"%s\" y \"%s\"" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Prueba de doctests en las fuentes terminadas, mira los resultados en %(outdir)s/output.txt." -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +msgid "no code/output in %s block at %s:%s" +msgstr "sin código/salida en el bloque %s en %s:%s" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +msgid "ignoring invalid doctest code: %r" +msgstr "ignorando el código doctest no válido: %r" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "Objeto nombrado %r no encontrado en el archivo incluido %r" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "No puede utilizar a \"lineno-match\" con un conjunto desunido de \"líneas\"" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "etiqueta duplicada %s, otra instancia en %s" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Línea especifico %r: sin líneas tiradas desde el archivo incluido %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "\":file:\" La opción para la directiva csv-table ahora reconoce una ruta absoluta como una ruta relativa desde el directorio de origen. Actualice su documento." +"====================== total reading duration ==========================" +msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "patrón global toctree %r no coincide con ningún documento" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree contiene referencia al documento excluido %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== duraciones de lectura más lentas =======================" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree contiene referencias a documentos inexistentes %r" +msgid "%.3fs %s" +msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "entrada duplicada encontrada en toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[fuente]" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autor de la sección: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "resaltando el código del módulo... " -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autor del módulo: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[documentos]" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Código del autor: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Código de módulo" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Código fuente para %s

" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr ".. contenido de los reconocimientos no es una lista" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Resumen: código de modulo" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr ".. hlist contenido no es una lista" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Todos los módulos para los cuales disponen código

" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "El archivo de resumen está en %(outdir)s." +msgid "duplicate citation %s, other instance in %s" +msgstr "citación duplicada %s, otra instancia en %s" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." -msgstr "no hay cambios en versión %s." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "escribiendo archivo de resumen..." - -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Funciones incorporadas" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Nivel de módulo" - -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "copiando archivos fuente..." +msgid "Citation [%s] is not referenced." +msgstr "Citación [%s] no está referenciada." -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" -msgstr "no se pudo leer %r for para la creación del registro de cambios" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "etiqueta duplicada de la ecuación %s, otra instancia en %s" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Las páginas del manual están en %(outdir)s." +msgid "Invalid math_eqref_format: %r" +msgstr "No válido math_eqref_format: %r" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "no se encontró el valor de configuración \"man_pages\"; no se escribirán las páginas del manual" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (función incorporada)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "escribiendo" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (método de %s)" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "El valor de configuración \"man_pages\" hace referencia a un documento desconocido %s" +msgid "%s() (class)" +msgstr "%s() (clase)" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "una imagen adecuada para %s constructor no encontrado: %s (%s)" +msgid "%s (global variable or constant)" +msgstr "%s (variable global o constante)" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "una imagen adecuada para %s constructor no encontrado: %s" +msgid "%s (%s attribute)" +msgstr "%s (atributo de %s)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "compilando [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumentos" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "escribiendo salida... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Lanzamientos" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "todos los %d archivos po" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Devuelve" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "los objetivos para %d los archivos po que se especifican" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Tipo del valor devuelto" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "los objetivos para %d los archivos po que estan desactualizados" +msgid "%s (module)" +msgstr "%s (módulo)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "todos los archivos fuente" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "función" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "método" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "archivo %r dado en la línea de comandos no está en el directorio fuente, ignorado" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "clase" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dato" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "%d archivos fuente dados en la línea de comandos" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atributo" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "los objetivos para %d los archivos fuentes que estan desactualizados" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "módulo" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " -msgstr "compilando [%s]: " - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "buscando por archivos no actualizados... " +msgid "duplicate %s description of %s, other %s in %s" +msgstr "duplicada %s descripción de %s, otra %s en %s" -#: builders/__init__.py:410 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "%d found" -msgstr "%d encontrado" - -#: builders/__init__.py:412 -msgid "none found" -msgstr "no encontrado" +msgid "%s (directive)" +msgstr "%s (directiva)" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "preparando ambiente" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s: (opción directiva)" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "verificando consistencia" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (rol)" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "no hay archivos objetivo desactualizados." +#: domains/rst.py:234 +msgid "directive" +msgstr "directiva" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "actualizando ambiente: " +#: domains/rst.py:235 +msgid "directive-option" +msgstr "directive-option" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%sañadido, %s cambiado, %s removido" +#: domains/rst.py:236 +msgid "role" +msgstr "rol" -#: builders/__init__.py:531 +#: domains/rst.py:262 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "descripción duplicada de %s %s, otra instancia en %s" -#: builders/__init__.py:540 +#: domains/changeset.py:32 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid "Changed in version %s" +msgstr "Distinto en la versión %s" -#: builders/__init__.py:558 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "leyendo fuentes... " +msgid "Deprecated since version %s" +msgstr "Obsoleto desde la versión %s" -#: builders/__init__.py:713 +#: domains/changeset.py:35 #, python-format -msgid "docnames to write: %s" -msgstr "docnames para escribir: %s" - -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" - -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "preparando documentos" - -#: builders/__init__.py:731 -msgid "copying assets" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:883 +#: domains/__init__.py:322 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "caracteres fuente no codificables, reemplazando con \"?\": %r" +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "El archivo ePub está en %(outdir)s." +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "número de trabajo debe ser un número positivo" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "escribiendo el archivo nav.xhtml..." +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "Para más información visite ." -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_language\" (o \"language\") no debe estar vacío para EPUB3" - -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "el valor de configuración \"epub_uid\" debe ser XML NAME para EPUB3" - -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_title\" (or \"html_title\") no debe estar vacío para EPUB3" - -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_author\" no debe estar vacío para EPUB3" - -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_contributor\" no debe estar vacío para EPUB3" - -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_description\" no debe estar vacío para EPUB3" - -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_publisher\" no debe estar vacío para EPUB3" - -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_copyright\" (or \"copyright\") no debe estar vacío para EPUB3" - -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "el valor de configuración \"epub_identifier\" no debe estar vacío para EPUB3" - -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "el valor de configuración \"version\" no debe estar vacío para EPUB3" - -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "css_file inválido: %r, ignorado" - -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Los archivos XML están en %(outdir)s." - -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "error escribiendo archivo %s: %s" - -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Los archivos pseudo-XML están en %(outdir)s." - -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Los archivos Texinfo están en %(outdir)s." - -#: builders/texinfo.py:48 +#: cmd/build.py:74 msgid "" "\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nEjecute el comando 'make' en ese directorio para ejecutarlos a través de makeinfo\n(usa el comando 'make info' aquí para hacer esto automáticamente)." - -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "no se encontró el valor de configuración \"texinfo_documents\"; no se escribirán documentos" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "El valor de configuración \"texinfo_documents\" hace referencia a un documento desconocido %s" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "procesando %s" - -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "resolviendo referencias..." - -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (en " - -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "copiando imágenes... " - -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "no se puede copiar archivo de imagen %r: %s" - -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "copiando archivos de soporte Texinfo" - -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "error escribiendo archivo Makefile: %s" - -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "entrada de tabla de contenido duplicada encontrada: %s" - -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "no puede leer el archivo de imagen %r: en su lugar, lo copia" - -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "no se puede escribir archivo de imagen %r: %s" - -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow no encontrada - copiando archivos de imágenes" - -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "escribiendo el archivo mimetype..." - -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "escribiendo el archivo META-INF/container.xml..." - -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "escribiendo el archivo content.opf..." - -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "mimetype desconocido para %s, ignorando" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" - -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "escribiendo el archivo toc.ncx..." - -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "escribiendo archivo %s..." - -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "El constructor ficticio no genera archivos." - -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Los catálogos de mensajes están en %(outdir)s." - -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "objetivos para los archivos de plantillas %d" - -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "leyendo plantillas... " - -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "escribiendo catálogos de mensajes... " - -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Página HTML está en %(outdir)s." - -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "ensamblando documento sencillo" - -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "escribiendo archivos adicionales" - -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Busque cualquier error en la salida anterior o en el archivo %(outdir)s/output.txt" - -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "enlace roto: %s (%s)" - -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "Ancla '%s' no encontrado" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\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 a partir de los archivos en SOURCEDIR y la\ncoloca en OUTPUTDIR. Busca 'conf.py' en SOURCEDIR para los ajustes de configuración.\nLa herramienta 'sphinx-quickstart' se puede usar para generar archivos de plantilla,\nincluido 'conf.py'\n\nsphinx-build puede crear documentación en diferentes formatos. Se selecciona un\nformato especificando el nombre del constructor en la línea de comando; por defecto\nes HTML. Los constructores también pueden realizar otras tareas relacionadas con\nel procesamiento de la documentación.\n\nDe forma predeterminada, se construye todo lo que está desactualizado. La salida solo\npara archivos seleccionados se puede generar especificando nombres de archivo individuales.\n" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "Error al compilar expresiones regulares en linkcheck_allowed_redirects: %r %s" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "ruta a los archivos fuente de la documentación" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Los archivos de texto están en %(outdir)s." +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "ruta al directorio de salida" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/build.py:109 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "referencias de pie de página inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "referencias inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" +#: cmd/build.py:114 +msgid "general options" +msgstr "opciones generales" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "referencias de citas inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/build.py:131 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "referencias de término inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d de %B de %Y" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "escribir todos los archivos (por defecto: solo escribir archivos nuevos y modificados)" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "no usar un entorno guardado, siempre leer todos los archivos" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/build.py:157 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "Índice basado en 4 columnas encontrado. Puede ser un error de extensiones que usted usa: %r" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Pie de página [%s] no está referenciado." +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Pie de página [#] no está referenciado." +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "sobreescribir un ajuste en el fichero de configuración" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "pasar un valor a la plantilla HTML" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "define la etiqueta: incluye bloques \"only\" con TAG" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/build.py:212 +msgid "console output options" +msgstr "opciones de salida de consola" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "Opciones" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "aumentar la verbosidad (puede repetirse)" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "sin salida en salida estándar, solo advertencias en los mensajes de error estándar" -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "sin salida, ni siquiera advertencias" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "emitir salida de color (predeterminado: detección automática)" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "no emite salida de color (predeterminado: detección automática)" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "escribir avisos (y errores) al fichero indicado" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "convertir advertencias en errores" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "mostrar rastreo completo en excepción" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "ejecutar Pdb en excepción" -#: _cli/__init__.py:231 -msgid "" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "no se puede combinar la opción -a y nombres de archivo" -#: environment/__init__.py:86 -msgid "new config" -msgstr "nueva configuración" +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" +msgstr "" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "configuración modificada" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "argumento de la opción -D debe estar en la forma nombre=valor" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "extensiones modificadas" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "argumento de la opción -A debe estar en la forma nombre=valor" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "la versión del entorno de compilación no es actual" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "insertar automáticamente docstrings de los módulos" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "directorio fuente ha cambiado" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "probar automáticamente fragmentos de código en bloques doctest" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "enlace entre la documentación de Sphinx de diferentes proyectos" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "escribir entradas de \"todo\" que se pueden mostrar u ocultar en la compilación" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "verificación para el cubrimiento de la documentación" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Este entorno es incompatible con el generador seleccionado, elija otro directorio doctree." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "incluir expresiones matemáticas, mostradas como imágenes PNG o SVG" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "Error al escanear los documentos en %s: %r" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "incluir matemática, mostrada en el navegador por MathJax" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Dominio %r no está registrado" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "inclusión condicional de contenido basado en valores de configuración" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "documento no está incluido en ningún toctree" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "incluir enlaces al código fuente de objetos documentados de Python" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "toctree auto referenciado encontrado. Ignorado." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "crear archivo .nojekyll para publicar el documento en páginas GitHub" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Por favor, ingrese un nombre de ruta válido." -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "leyendo error: %s, %s" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Por favor, ingrese algún texto." -#: util/i18n.py:113 +#: cmd/quickstart.py:134 #, python-format -msgid "writing error: %s, %s" -msgstr "escribiendo error: %s, %s" +msgid "Please enter one of %s." +msgstr "Por favor, ingrese uno de %s." -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Por favor, ingrese cualquiera de 'y' o 'n'." -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Por favor, ingrese un archivo de sufijo, por ejemplo, '.rst' o '.txt'." -#: util/i18n.py:245 +#: cmd/quickstart.py:230 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Formato de fecha inválido. Cite la cadena con comillas simples si desea generarla directamente: %s" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Bienvenido a la utilidad de inicio rápido de Sphinx %s." -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:235 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "Problema en el dominio %s: se supone que el campo debe usar el rol '%s', pero ese rol no está en el dominio." +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Ingrese los valores para las siguientes configuraciones (solo presione Entrar para\naceptar un valor predeterminado, si se da uno entre paréntesis)." -#: util/nodes.py:423 +#: cmd/quickstart.py:242 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" +msgid "Selected root path: %s" +msgstr "Ruta raíz seleccionada: %s" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree contiene referencia al archivo inexistente %r" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Ingrese la ruta raíz para la documentación." -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "excepción al evaluar solamente la expresión directiva: %s" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Ruta raíz para la documentación" -#: util/display.py:82 -msgid "skipped" -msgstr "omitido" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Error: un archivo conf.py ya existe en la ruta raíz seleccionada." -#: util/display.py:87 -msgid "failed" -msgstr "fallado" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart no sobreescribirá proyectos existentes de Sphinx." -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Por favor, ingrese una nueva ruta raíz (o ingrese Enter para salir)" + +#: cmd/quickstart.py:274 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Tiene dos opciones para colocar el directorio de compilación para la salida de Sphinx.\nO usas un directorio \"_build\" dentro de la ruta raíz, o separas\ndirectorios \"fuente\" y \"compilación\" dentro de la ruta raíz." -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Separar directorios fuente y compilado (y/n)" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Dentro del directorio raíz, se crearán dos directorios más; \"_templates\"\npara plantillas HTML personalizadas y \"_static\" para hojas de estilo personalizadas y otras archivos\nestáticos. Puede ingresar otro prefijo (como \".\") Para reemplazar el guión bajo." -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "tipo de nodo desconocido: %r" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Prefijo de nombre para directorios de plantillas y estático" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +"The project name will occur in several places in the built documentation." +msgstr "El nombre del proyecto aparecerá en varios lugares en la documentación construida." -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "rol por defecto %s no encontrado" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Nombre de proyecto" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Autor(es)" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx tiene la noción de una \"versión\" y un \"lanzamiento\" para el\nsoftware. Cada versión puede tener varios lanzamientos. 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, simplemente\nconfigure ambas con el mismo valor." -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Notas a pie de página" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Versión del proyecto" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[imagen: %s]" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Liberación del proyecto" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[imagen]" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Si los documentos deben escribirse en un idioma que no sea inglés,\npuede seleccionar un idioma aquí por su código de idioma. Sphinx entonces\ntraducir el texto que genera a ese idioma.\n\nPara obtener una lista de códigos compatibles, vea\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Índice" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Lenguaje del proyecto" -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:340 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "no se encontró el nodo de título en la sección, tema, tabla, advertencia o barra lateral" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." +msgstr "El sufijo del nombre de archivo para los archivos de fuente. Comúnmente, esto es \".txt\"\no \".rst\". Solo los archivos con este sufijo se consideran documentos." -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "subtítulo no dentro de una figura." +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Sufijo del archivo fuente" -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "tipo de nodo no implementado: %r" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Un documento es especial porque se considera el nodo superior del\n\"contents tree\", es decir, es la raíz de la estructura jerárquica\nde los documentos. Normalmente, esto es \"index\", pero si su documento \"index\"\nes una plantilla personalizada, también puede establecerlo en otro nombre de archivo." -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "desconocida %r toplevel_sectioning para la clase %r" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Nombre del documento maestro (sin sufijo)" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: cmd/quickstart.py:368 #, python-format -msgid "no Babel option known for language %r" -msgstr "No se conoce la opción de Babel para el idioma %r" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "demasiado grande :maxdepth:, ignorado." +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Error: el archivo maestro %s ya se ha encontrado en la ruta raíz seleccionada." -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart no sobreescribirá el archivo existente." -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "título del documento no es un nodo de Texto único" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Ingrese un nuevo nombre de archivo o cambie el nombre del archivo existente y presione Enter" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Indique cuál de las siguientes extensiones de Sphinx deben habilitarse:" -#: writers/latex.py:1183 +#: cmd/quickstart.py:397 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "ambas columnas tabulares y la opción :widths: se dan. La opción :widths: se ignora." - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "la unidad de dimensión %s no es válida. Ignorado." +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Nota: imgmath y mathjax no se pueden habilitar al mismo tiempo. imgmath ha sido deseleccionado." -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "tipo de entrada de índice desconocido %s encontrado" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Se puede generar un archivo Makefile y un archivo de comandos de Windows para que usted\nsolo tiene que ejecutar, por ejemplo, `make html' en lugar de invocar sphinx-build\ndirectamente." -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "No válido math_eqref_format: %r" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "¿Crear Makefile? (y/n)" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "¿Crear archivo de comandos para Windows? (y/n)" -#: writers/html5.py:431 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format no está definido para %s" +msgid "Creating file %s." +msgstr "Creando archivo %s." -#: writers/html5.py:441 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "Cualquier ID no asignado para el nodo %s" +msgid "File %s already exists, skipping." +msgstr "El archivo %s ya existe, omitiendo." -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Terminado: se ha creado una estructura de directorio inicial." -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Ahora debe completar su archivo maestro %s y crear otros archivos fuente\nde documentación. " -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Use el archivo Makefile para compilar los documentos, así ejecute el comando:\n make builder" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Use el comando sphinx-build para compilar los documentos, así ejecute el comando:\n sphinx-build -b builder %s %s" -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "donde \"builder\" es uno de los constructores compatibles, por ejemplo, html, latex o linkcheck." -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nGenere los archivos necesarios para un proyecto Sphinx.\n\nsphinx-quickstart es una herramienta interactiva que hace algunas preguntas sobre su\nproyecto y luego genera un directorio completo de documentación y un ejemplo del archivo\nMakefilepara ser utilizado con el comando sphinx-build.\n" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "No se pudo obtener el tamaño de la imagen. La opción :scale: se ignora." +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "modo silencioso" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "raíz del proyecto" -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "etiqueta duplicada de la ecuación %s, otra instancia en %s" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Opciones de estructura" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (función incorporada)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "si se especifica, separe los directorios de fuentes y de compilación" -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (método de %s)" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "si se especifica, cree un directorio de compilación en el directorio de origen" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (clase)" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "reemplazo para punto en _templates, etc." -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variable global o constante)" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Opciones básicas del proyecto" -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (atributo de %s)" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "nombre del proyecto" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumentos" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "autores" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Lanzamientos" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "versión del proyecto" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Devuelve" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "liberación del proyecto" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Tipo del valor devuelto" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "lenguaje del documento" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (módulo)" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "sufijo de archivo fuente" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "función" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "nombre de documento maestro" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "método" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "usar epub" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "clase" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Opciones de extensión" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dato" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" +msgstr "habilitada extensión %s" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atributo" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "habilitar extensiones arbitrarias" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "módulo" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "creación del Makefile y Batchfile" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "duplicada %s descripción de %s, otra %s en %s" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "crear makefile" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "no crear makefile" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Distinto en la versión %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "crear batchfile" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Obsoleto desde la versión %s" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "no crear batchfile" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "use el modo make para Makefile/make.bat" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (directiva)" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Plantillas de proyecto" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (opción directiva)" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "directorio de plantillas para archivos de plantillas" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rol)" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "definir una variable de proyceto" -#: domains/rst.py:234 -msgid "directive" -msgstr "directiva" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "se especifica \"quiet\", pero no se especifica ninguno de \"project\" o \"author\"." -#: domains/rst.py:235 -msgid "directive-option" -msgstr "directive-option" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Error: la ruta especificada no es un directorio, o ya existen archivos sphinx." -#: domains/rst.py:236 -msgid "role" -msgstr "rol" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart solo se genera en un directorio vacío. Por favor, especifique una nueva ruta raíz." -#: domains/rst.py:262 +#: cmd/quickstart.py:810 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "descripción duplicada de %s %s, otra instancia en %s" +msgid "Invalid template variable: %s" +msgstr "Variable de plantilla inválida: %s" -#: domains/citation.py:75 +#: directives/other.py:119 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "citación duplicada %s, otra instancia en %s" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "patrón global toctree %r no coincide con ningún documento" -#: domains/citation.py:92 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "Citación [%s] no está referenciada." - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Atención" +msgid "toctree contains reference to excluded document %r" +msgstr "toctree contiene referencia al documento excluido %r" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Prudencia" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree contiene referencias a documentos inexistentes %r" -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Peligro" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "entrada duplicada encontrada en toctree: %s" -#: locale/__init__.py:231 -msgid "Error" -msgstr "Error" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor de la sección: " -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Consejo" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor del módulo: " -#: locale/__init__.py:233 -msgid "Important" -msgstr "Importante" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Código del autor: " -#: locale/__init__.py:234 -msgid "Note" -msgstr "Nota" +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor: " -#: locale/__init__.py:235 -msgid "See also" -msgstr "Ver también" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr ".. contenido de los reconocimientos no es una lista" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Truco" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr ".. hlist contenido no es una lista" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Advertencia" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "\":file:\" La opción para la directiva csv-table ahora reconoce una ruta absoluta como una ruta relativa desde el directorio de origen. Actualice su documento." -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "insertar automáticamente docstrings de los módulos" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "no espacios en blanco eliminados por identado" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "probar automáticamente fragmentos de código en bloques doctest" +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "Subtítulo inválido: %s" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "enlace entre la documentación de Sphinx de diferentes proyectos" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "la especificación del número de línea está fuera de range(1-%d): %r" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "escribir entradas de \"todo\" que se pueden mostrar u ocultar en la compilación" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "No puede utilizar ambas opciones \"%s\" y \"%s\"" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "verificación para el cubrimiento de la documentación" +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "incluir expresiones matemáticas, mostradas como imágenes PNG o SVG" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "incluir matemática, mostrada en el navegador por MathJax" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "Objeto nombrado %r no encontrado en el archivo incluido %r" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "inclusión condicional de contenido basado en valores de configuración" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "No puede utilizar a \"lineno-match\" con un conjunto desunido de \"líneas\"" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "incluir enlaces al código fuente de objetos documentados de Python" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Línea especifico %r: sin líneas tiradas desde el archivo incluido %r" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "crear archivo .nojekyll para publicar el documento en páginas GitHub" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d de %B de %Y" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Por favor, ingrese un nombre de ruta válido." +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Índice" -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Por favor, ingrese algún texto." +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "no se encontró el nodo de título en la sección, tema, tabla, advertencia o barra lateral" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "Por favor, ingrese uno de %s." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Notas a pie de página" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Por favor, ingrese cualquiera de 'y' o 'n'." +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "subtítulo no dentro de una figura." -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Por favor, ingrese un archivo de sufijo, por ejemplo, '.rst' o '.txt'." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "tipo de nodo no implementado: %r" -#: cmd/quickstart.py:229 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Bienvenido a la utilidad de inicio rápido de Sphinx %s." +msgid "[image: %s]" +msgstr "[imagen: %s]" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Ingrese los valores para las siguientes configuraciones (solo presione Entrar para\naceptar un valor predeterminado, si se da uno entre paréntesis)." +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[imagen]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" -#: cmd/quickstart.py:241 +#: writers/html5.py:431 #, python-format -msgid "Selected root path: %s" -msgstr "Ruta raíz seleccionada: %s" +msgid "numfig_format is not defined for %s" +msgstr "numfig_format no está definido para %s" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Ingrese la ruta raíz para la documentación." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "Cualquier ID no asignado para el nodo %s" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Ruta raíz para la documentación" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Error: un archivo conf.py ya existe en la ruta raíz seleccionada." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart no sobreescribirá proyectos existentes de Sphinx." +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Por favor, ingrese una nueva ruta raíz (o ingrese Enter para salir)" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Tiene dos opciones para colocar el directorio de compilación para la salida de Sphinx.\nO usas un directorio \"_build\" dentro de la ruta raíz, o separas\ndirectorios \"fuente\" y \"compilación\" dentro de la ruta raíz." +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Separar directorios fuente y compilado (y/n)" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Dentro del directorio raíz, se crearán dos directorios más; \"_templates\"\npara plantillas HTML personalizadas y \"_static\" para hojas de estilo personalizadas y otras archivos\nestáticos. Puede ingresar otro prefijo (como \".\") Para reemplazar el guión bajo." +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Prefijo de nombre para directorios de plantillas y estático" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "No se pudo obtener el tamaño de la imagen. La opción :scale: se ignora." -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "El nombre del proyecto aparecerá en varios lugares en la documentación construida." +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "desconocida %r toplevel_sectioning para la clase %r" -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Nombre de proyecto" +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "No se conoce la opción de Babel para el idioma %r" -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Autor(es)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "demasiado grande :maxdepth:, ignorado." -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "Sphinx tiene la noción de una \"versión\" y un \"lanzamiento\" para el\nsoftware. Cada versión puede tener varios lanzamientos. 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, simplemente\nconfigure ambas con el mismo valor." +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Versión del proyecto" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "título del documento no es un nodo de Texto único" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Liberación del proyecto" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "ambas columnas tabulares y la opción :widths: se dan. La opción :widths: se ignora." -#: cmd/quickstart.py:323 +#: writers/latex.py:1228 +#, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Si los documentos deben escribirse en un idioma que no sea inglés,\npuede seleccionar un idioma aquí por su código de idioma. Sphinx entonces\ntraducir el texto que genera a ese idioma.\n\nPara obtener una lista de códigos compatibles, vea\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Lenguaje del proyecto" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "la unidad de dimensión %s no es válida. Ignorado." -#: cmd/quickstart.py:339 -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 "El sufijo del nombre de archivo para los archivos de fuente. Comúnmente, esto es \".txt\"\no \".rst\". Solo los archivos con este sufijo se consideran documentos." +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "tipo de entrada de índice desconocido %s encontrado" + +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Sufijo del archivo fuente" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "Un documento es especial porque se considera el nodo superior del\n\"contents tree\", es decir, es la raíz de la estructura jerárquica\nde los documentos. Normalmente, esto es \"index\", pero si su documento \"index\"\nes una plantilla personalizada, también puede establecerlo en otro nombre de archivo." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Nombre del documento maestro (sin sufijo)" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Error: el archivo maestro %s ya se ha encontrado en la ruta raíz seleccionada." +#: _cli/__init__.py:98 +msgid "Options" +msgstr "Opciones" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart no sobreescribirá el archivo existente." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:377 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Ingrese un nuevo nombre de archivo o cambie el nombre del archivo existente y presione Enter" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Indique cuál de las siguientes extensiones de Sphinx deben habilitarse:" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Nota: imgmath y mathjax no se pueden habilitar al mismo tiempo. imgmath ha sido deseleccionado." +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Se puede generar un archivo Makefile y un archivo de comandos de Windows para que usted\nsolo tiene que ejecutar, por ejemplo, `make html' en lugar de invocar sphinx-build\ndirectamente." +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "¿Crear Makefile? (y/n)" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "¿Crear archivo de comandos para Windows? (y/n)" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "Creando archivo %s." +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "El archivo %s ya existe, omitiendo." +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Terminado: se ha creado una estructura de directorio inicial." +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:519 -#, python-format +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" + +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Ahora debe completar su archivo maestro %s y crear otros archivos fuente\nde documentación. " +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "referencias de pie de página inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" -#: cmd/quickstart.py:526 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Use el archivo Makefile para compilar los documentos, así ejecute el comando:\n make builder" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "referencias inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" -#: cmd/quickstart.py:530 -#, python-format +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Use el comando sphinx-build para compilar los documentos, así ejecute el comando:\n sphinx-build -b builder %s %s" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "referencias de citas inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" -#: cmd/quickstart.py:537 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "donde \"builder\" es uno de los constructores compatibles, por ejemplo, html, latex o linkcheck." +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "referencias de término inconsistentes en el mensaje traducido. original: {0}, traducido: {1}" -#: cmd/quickstart.py:572 +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" + +#: transforms/__init__.py:258 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nGenere los archivos necesarios para un proyecto Sphinx.\n\nsphinx-quickstart es una herramienta interactiva que hace algunas preguntas sobre su\nproyecto y luego genera un directorio completo de documentación y un ejemplo del archivo\nMakefilepara ser utilizado con el comando sphinx-build.\n" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "Índice basado en 4 columnas encontrado. Puede ser un error de extensiones que usted usa: %r" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "Para más información visite ." +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "Pie de página [%s] no está referenciado." -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "modo silencioso" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "raíz del proyecto" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Pie de página [#] no está referenciado." -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Opciones de estructura" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "si se especifica, separe los directorios de fuentes y de compilación" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "si se especifica, cree un directorio de compilación en el directorio de origen" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "leyendo error: %s, %s" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "reemplazo para punto en _templates, etc." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "escribiendo error: %s, %s" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Opciones básicas del proyecto" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "nombre del proyecto" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "autores" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Formato de fecha inválido. Cite la cadena con comillas simples si desea generarla directamente: %s" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "versión del proyecto" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "liberación del proyecto" +#: util/display.py:82 +msgid "skipped" +msgstr "omitido" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "lenguaje del documento" +#: util/display.py:87 +msgid "failed" +msgstr "fallado" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "sufijo de archivo fuente" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "nombre de documento maestro" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "usar epub" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "tipo de nodo desconocido: %r" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Opciones de extensión" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/quickstart.py:670 +#: util/fileutil.py:89 #, python-format -msgid "enable %s extension" -msgstr "habilitada extensión %s" +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "habilitar extensiones arbitrarias" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Problema en el dominio %s: se supone que el campo debe usar el rol '%s', pero ese rol no está en el dominio." -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "creación del Makefile y Batchfile" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "rol por defecto %s no encontrado" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "crear makefile" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "no crear makefile" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree contiene referencia al archivo inexistente %r" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "crear batchfile" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "excepción al evaluar solamente la expresión directiva: %s" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "no crear batchfile" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "proviene de la página anterior" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "use el modo make para Makefile/make.bat" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "continúe en la próxima página" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Plantillas de proyecto" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "No alfabético" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "directorio de plantillas para archivos de plantillas" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Símbolos" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "definir una variable de proyceto" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Números" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "se especifica \"quiet\", pero no se especifica ninguno de \"project\" o \"author\"." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "página" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Error: la ruta especificada no es un directorio, o ya existen archivos sphinx." +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Versión" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart solo se genera en un directorio vacío. Por favor, especifique una nueva ruta raíz." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "No se pudo recuperar la imagen remota: %s [%s]" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "Invalid template variable: %s" -msgstr "Variable de plantilla inválida: %s" +msgid "Could not fetch remote image: %s [%d]" +msgstr "No se pudo recuperar la imagen remota: %s [%d]" -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "número de trabajo debe ser un número positivo" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Formato de imagen desconocido: %s..." -#: cmd/build.py:74 +#: transforms/post_transforms/__init__.py:88 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\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 a partir de los archivos en SOURCEDIR y la\ncoloca en OUTPUTDIR. Busca 'conf.py' en SOURCEDIR para los ajustes de configuración.\nLa herramienta 'sphinx-quickstart' se puede usar para generar archivos de plantilla,\nincluido 'conf.py'\n\nsphinx-build puede crear documentación en diferentes formatos. Se selecciona un\nformato especificando el nombre del constructor en la línea de comando; por defecto\nes HTML. Los constructores también pueden realizar otras tareas relacionadas con\nel procesamiento de la documentación.\n\nDe forma predeterminada, se construye todo lo que está desactualizado. La salida solo\npara archivos seleccionados se puede generar especificando nombres de archivo individuales.\n" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "No se pudo determinar el texto alternativo para la referencia cruzada. Podría ser un error." -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "ruta a los archivos fuente de la documentación" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "más de un objetivo destino encontrado para 'cualquier' referencia cruzada %r: podría ser %s" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "ruta al directorio de salida" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s objetivo de referencia no encontrado: %s" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r objetivo de referencia no encontrado: %s" -#: cmd/build.py:114 -msgid "general options" -msgstr "opciones generales" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "¡Interrumpido!" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "escribir todos los archivos (por defecto: solo escribir archivos nuevos y modificados)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "no usar un entorno guardado, siempre leer todos los archivos" - -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:157 +#: _cli/util/errors.py:207 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "sobreescribir un ajuste en el fichero de configuración" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "pasar un valor a la plantilla HTML" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "define la etiqueta: incluye bloques \"only\" con TAG" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "opciones de salida de consola" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Por favor, informe también esto si fue un error del usuario, de modo que la próxima vez se pueda proporcionar un mejor mensaje de error." -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "aumentar la verbosidad (puede repetirse)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Contraer barra lateral" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "sin salida en salida estándar, solo advertencias en los mensajes de error estándar" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navegación" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "sin salida, ni siquiera advertencias" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Buscar en %(docstitle)s" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "emitir salida de color (predeterminado: detección automática)" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Sobre este documento" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "no emite salida de color (predeterminado: detección automática)" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Búsqueda" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "escribir avisos (y errores) al fichero indicado" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Actualizado por última vez en %(last_updated)s." -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "convertir advertencias en errores" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Creado usando Sphinx %(sphinx_version)s." -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "mostrar rastreo completo en excepción" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Tema anterior" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "ejecutar Pdb en excepción" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "capítulo anterior" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Próximo tema" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "no se puede combinar la opción -a y nombres de archivo" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "próximo capítulo" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Index – %(key)s" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "argumento de la opción -D debe estar en la forma nombre=valor" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "argumento de la opción -A debe estar en la forma nombre=valor" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Índice completo en una página" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Contraer barra lateral" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Esta página" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Tabla de contenido" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Mostrar el código" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Búsqueda" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Búsqueda rápida" #: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 #: themes/basic/searchfield.html:12 msgid "Go" msgstr "Ir a" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Mostrar el código" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Contenidos" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Buscar en %(docstitle)s" - #: themes/basic/defindex.html:4 msgid "Overview" msgstr "Resumen" @@ -2690,7 +2890,7 @@ msgstr "Índice Global de Módulos" msgid "quick access to all modules" msgstr "acceso rápido a todos los módulos" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Índice General" @@ -2698,23 +2898,15 @@ msgstr "Índice General" msgid "all functions, classes, terms" msgstr "todas las funciones, clases, términos" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Esta página" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Tabla de contenido" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Índice completo en una página" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Búsqueda rápida" +msgid "Search %(docstitle)s" +msgstr "Buscar en %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2724,57 +2916,6 @@ msgstr "Índice alfabético de páginas" msgid "can be huge" msgstr "puede ser muy grande" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Tema anterior" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "capítulo anterior" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Próximo tema" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "próximo capítulo" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navegación" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Buscar en %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Sobre este documento" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Actualizado por última vez en %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Creado usando Sphinx %(sphinx_version)s." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2791,21 +2932,21 @@ msgstr "La búsqueda de varias palabras solo muestra coincidencias que contienen msgid "search" msgstr "buscar" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Ocultar coincidencias de la búsqueda" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Contenidos" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Resultados de la búsqueda" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Su búsqueda no coincide con ningún documentos. Por favor, asegúrese de que todas las palabras estén correctamente escritas y que usted allá seleccionado las suficientes categorías." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2814,22 +2955,21 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Buscando" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Preparando búsqueda..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", en " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Ocultar coincidencias de la búsqueda" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2837,6 +2977,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Cambios en la versión %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2858,120 +3003,127 @@ msgstr "Otros cambios" msgid "Expand sidebar" msgstr "Expandir barra lateral" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parámetros" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variables" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Muestra" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (en el módulo %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (en el módulo %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variable incorporada)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (clase incorporada)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (clase en %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (método de clase de %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (método estático de %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (%s propiedad)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Índice de Módulos Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "módulos" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Obsoleto" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "excepción" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "método de la clase" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "método estático" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "propiedad" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "se encontró más de un objetivo para la referencia cruzada %r: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (obsoleto)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parámetros" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variables" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Muestra" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Declaración de C++ duplicada, también definida en %s:%s.\nLa declaración es '.. cpp:%s:: %s'." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2982,92 +3134,85 @@ msgstr "Parametros de Plantilla" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Declaración de C++ duplicada, también definida en %s:%s.\nLa declaración es '.. cpp:%s:: %s'." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Valores devueltos" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "unión" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "miembro" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipo" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "concepto" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumeración" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "parámetro de función" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "parámetro de plantilla" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "Declaración de C duplicada, también definida en %s:%s.\nLa declaración es '.. c:%s:: %s'." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variable" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "macro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "estructura" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "variables de entorno; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3162,514 +3307,422 @@ msgstr "etiqueta indefinida: %r" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "No se pudo crear una referencia cruzada. Un título o subtítulo no encontrado: %r" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "referencias circulares de toctree detectadas, ignorando: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree contiene una referencia al documento %r que no tiene título: no se generará ningún enlace" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "el árbol de la tabla de contenido contiene una referencia a un documento no incluido %r" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "ver %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "ver también %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "tipo de entrada de índice desconocido %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Símbolos" - -#: environment/collectors/asset.py:98 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "image file not readable: %s" -msgstr "archivo de imagen no legible: %s" +msgid "invalid value set (missing closing brace): %s" +msgstr "conjunto de valores no válidos (falta la llave de cierre): %s" -#: environment/collectors/asset.py:126 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "image file %s not readable: %s" -msgstr "archivo de imagen %s no legible: %s" +msgid "invalid value set (missing opening brace): %s" +msgstr "conjunto de valor no válido (falta llave de apertura): %s" -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "el archivo de descarga no es legible: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "literal de cadena con formato incorrecto (falta la comilla de cierre): %s" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s ya tiene asignados números de sección (¿número de árbol anidado?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "¡Interrumpido!" +msgid "malformed string literal (missing opening quote): %s" +msgstr "literal de cadena con formato incorrecto (falta la comilla de apertura): %s" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Ejemplo" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Ejemplos" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumentos de palabras clave" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Notas" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Otros parámetros" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "Recibe" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Referencias" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Por favor, informe también esto si fue un error del usuario, de modo que la próxima vez se pueda proporcionar un mejor mensaje de error." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Avisos" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "No se pudo determinar el texto alternativo para la referencia cruzada. Podría ser un error." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "Campos" -#: transforms/post_transforms/__init__.py:237 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "más de un objetivo destino encontrado para 'cualquier' referencia cruzada %r: podría ser %s" +msgid "A mocked object is detected: %r" +msgstr "Se detecta un objeto simulado: %r" -#: transforms/post_transforms/__init__.py:299 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s objetivo de referencia no encontrado: %s" +msgid "alias of %s" +msgstr "alias de %s" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r objetivo de referencia no encontrado: %s" +msgid "Bases: %s" +msgstr "Bases: %s" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "No se pudo recuperar la imagen remota: %s [%s]" +msgid "invalid value for member-order option: %s" +msgstr "valor no válido para la opción de pedido de miembro: %s" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "No se pudo recuperar la imagen remota: %s [%d]" +msgid "invalid value for class-doc-from option: %s" +msgstr "valor no válido para la opción class-doc-from: %s" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "Unknown image format: %s..." -msgstr "Formato de imagen desconocido: %s..." +msgid "invalid signature for auto%s (%r)" +msgstr "firma inválida para auto%s (%r)" -#: builders/html/__init__.py:113 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Las páginas HTML están en %(outdir)s." +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "no sabe qué módulo importar para el autodocumento %r (intente colocar una directiva \"module\" o \"currentmodule\" en el documento o dar un nombre explícito al módulo)" -#: builders/html/__init__.py:348 +#: ext/autodoc/_names.py:89 #, python-format -msgid "Failed to read build info file: %r" -msgstr "Error al leer la información de compilación del fichero: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" - -#: builders/html/__init__.py:366 -msgid "building [html]: " +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:383 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "índice" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" en el nombre del automodule no tiene sentido" -#: builders/html/__init__.py:560 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Logo of %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "siguiente" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "anterior" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "Debería crear archivo %s." -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "generando índices" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nMire recursivamente en para módulos y paquetes de Python y cree\nun archivo reST con directivas automodule por paquete en el .\n\nLos s pueden ser patrones de archivo y/o directorio que serán\nexcluidos de la generación.\n\nNota: Por defecto, este script no sobrescribirá los archivos ya creados." -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "escribiendo páginas adicionales" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "ruta al módulo al documento" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "archivo de estilo fnmatch y/o patrones de directorio para excluir de la generación" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "copiando archivos descargables... " +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "directorio para colocar toda la salida" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "no se puede copiar archivo descargable %r: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "rofundidad máxima de submódulos para mostrar en la tabla de contenido (predeterminado: 4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "sobreescribir archivos existentes" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "Error al copiar un archivo en html_static_file: %s: %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "seguir enlaces simbólicos. Potente cuando se combina con el paquete collective.recipe.omelette." -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "copiar archivos estáticos" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "ejecutar la rutina sin crear archivos" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "no se puede copiar archivo estático %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "poner documentación para cada módulo en su propia página" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "copiando archivos extras" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "incluir \"_private\" en módulos" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "no se puede copiar archivo extra %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "nombre de archivo de la tabla de contenido (predeterminado: módulos)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "Error al escribir el archivo de información de compilación: %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "no crear un archivo de tabla de contenido" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "no se pudo cargar el índice de búsqueda, pero no se crearán todos los documentos: el índice estará incompleto." +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "no cree encabezados para los paquetes de módulos/paquetes (por ejemplo, cuando las cadenas de documentación docstrings ya los contienen)" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "página %s coincide con dos patrones en html_sidebars: %r y %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "poner la documentación del módulo antes de la documentación del submódulo" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "Se produjo un error Unicode al representar la página %s. Asegúrese de que todos los valores de configuración que contengan contenido que no sea ASCII sean cadenas Unicode." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "interpretar las rutas del módulo de acuerdo con la especificación de espacios de nombres implícitos en la PEP-0420" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Ha ocurrido un error al renderizar la pagina %s.\nRazón: %r" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "volcar inventario de objetos" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "sufijo de archivo (por defecto: rst)" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "volcar el índice de búsqueda en %s" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "js_file inválido: %r, ignorado" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "generar un proyecto completo con sphinx-quickstart" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Muchos math_renderers están registrados. Pero no se ha seleccionado math_renderer." +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "agregue module_path al sys.path, que se usa cuando se da el parámetro --full" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "Desconocido math_renderer %r es dado." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "nombre del proyecto (predeterminado: nombre del módulo raíz)" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "entrada html_extra_path %r se coloca dentro de outdir" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "autor(es) del proyecto, utilizado cuando se da el parámetro --full" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "entrada html_extra_path %r no existe" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "versión del proyecto, utilizado cuando se da el parámetro --full" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "lanzamiento del proyecto, utilizado cuando se da el parámetro --full, por defecto es --doc-version" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "opciones de extensión" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1380 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "entrada html_static_path %r se coloca dentro de outdir" +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1385 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "entrada html_static_path %r no existe" +msgid "%s is not a directory." +msgstr "%s no es un directorio." -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "archivo de logo %r no existe" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" -#: builders/html/__init__.py:1407 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "favicon file %r does not exist" -msgstr "el archivo %r usado para el favicon no existe" +msgid "apidoc_modules item %i must be a dict" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "%s %s documentation" -msgstr "documentación de %s - %s" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:133 +#, python-format +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Los archivos LaTeX están en %(outdir)s." - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nEjecuta el comando 'make' en este directorio para compilarlos usando (pdf)latex\n(usa el comando 'make latexpdf' aquí para hacer esto automáticamente)." - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "no se encontró el valor de configuración \"latex_documents\"; no se escribirán documentos" +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "valor de configuración \"latex_documents\" hace referencia a un documento desconocido %s" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Versión" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "copiando archivos de soporte TeX" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "copiando archivos adicionales" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Clave de configuración desconocida: latex_elements[%r], ignorada." +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Opción de tema desconocida: latex_theme_options[%r], ignorado." - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r no tiene configuración de \"tema\"" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r no tiene configuración de \"%s\"" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: no se pudo determinar %r que se documentará, se produjo la siguiente excepción:\n%s" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "proviene de la página anterior" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] generar autosummary para: %s" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "continúe en la próxima página" +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" +msgstr "[autosummary] escribiendo a %s" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "No alfabético" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] no se pudo importar %s.\nPosibles pistas:\n%s" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Números" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nGenere ReStructuredText usando directivas de resumen automático \"autosummary\".\n\nsphinx-autogen es una interfaz para sphinx.ext.autosummary.generate. Genera\nlos archivos reStructuredText de las directivas autosummary contenidas en el\nlos archivos de entrada dados.\n\nEl formato de la directiva autosummary está documentado en el módulo Python\n``sphinx.ext.autosummary`` y se puede leer usando el siguiente comando::\n\n pydoc sphinx.ext.autosummary\n" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "página" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "archivos fuente para generar archivos rST para" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argumentos de palabras clave" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "directorio para colocar toda la salida en" -#: ext/napoleon/docstring.py:176 +#: ext/autosummary/generate.py:915 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "conjunto de valores no válidos (falta la llave de cierre): %s" +msgid "default suffix for files (default: %(default)s)" +msgstr "sufijo predeterminado para archivos (predeterminado: %(default)s)" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:923 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "conjunto de valor no válido (falta llave de apertura): %s" +msgid "custom template directory (default: %(default)s)" +msgstr "directorio de plantillas personalizadas (predeterminado: %(default)s)" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:931 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "literal de cadena con formato incorrecto (falta la comilla de cierre): %s" +msgid "document imported members (default: %(default)s)" +msgstr "documento importados miembros (predeterminado: %(default)s)" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:940 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "literal de cadena con formato incorrecto (falta la comilla de apertura): %s" - -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Ejemplo" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Ejemplos" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Notas" - -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Otros parámetros" - -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "Recibe" - -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Referencias" - -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Avisos" - -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "Campos" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "documentar exactamente los miembros en module __all__ attribute. (por defecto: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "referencias autosummary excluidas documento %r. Ignorado." -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "autosummary: no se encontró el archivo stub %r. Verifique su configuración de autosummary_generate." -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "Un resumen automático con subtítulos requiere la opción :toctree: ignorado." -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3677,548 +3730,585 @@ msgid "" "%s" msgstr "autosummary: no se pudo importar %s.\nPosibles pistas:\n%s" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "fallo al analizar el nombre %s" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "fallo al importar el objeto %s" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: archivo no encontrado: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary: no se pudo determinar %r que se documentará, se produjo la siguiente excepción:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] generar autosummary para: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] escribiendo a %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] no se pudo importar %s.\nPosibles pistas:\n%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nGenere ReStructuredText usando directivas de resumen automático \"autosummary\".\n\nsphinx-autogen es una interfaz para sphinx.ext.autosummary.generate. Genera\nlos archivos reStructuredText de las directivas autosummary contenidas en el\nlos archivos de entrada dados.\n\nEl formato de la directiva autosummary está documentado en el módulo Python\n``sphinx.ext.autosummary`` y se puede leer usando el siguiente comando::\n\n pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "archivos fuente para generar archivos rST para" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "directorio para colocar toda la salida en" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "encontró algunos problemas con algunos de los inventarios, pero tenían alternativas de trabajo:" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "sufijo predeterminado para archivos (predeterminado: %(default)s)" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "directorio de plantillas personalizadas (predeterminado: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "el inventario intersphinx se ha movido: %s -> %s" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "documento importados miembros (predeterminado: %(default)s)" +msgid "(in %s %s)" +msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "documentar exactamente los miembros en module __all__ attribute. (por defecto: %(default)s)" +msgid "(in %s)" +msgstr "(en %s)" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Failed to remove %s: %s" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nMire recursivamente en para módulos y paquetes de Python y cree\nun archivo reST con directivas automodule por paquete en el .\n\nLos s pueden ser patrones de archivo y/o directorio que serán\nexcluidos de la generación.\n\nNota: Por defecto, este script no sobrescribirá los archivos ya creados." +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "ruta al módulo al documento" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "archivo de estilo fnmatch y/o patrones de directorio para excluir de la generación" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "directorio para colocar toda la salida" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "%s externo: destino de referencia %s no encontrado: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "rofundidad máxima de submódulos para mostrar en la tabla de contenido (predeterminado: 4)" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "error al formatear la firma para %s: %s" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "sobreescribir archivos existentes" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "seguir enlaces simbólicos. Potente cuando se combina con el paquete collective.recipe.omelette." +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "Error al obtener una firma de función para %s: %s" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "ejecutar la rutina sin crear archivos" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "Error al actualizar la firma para %r: parámetro no encontrado: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "poner documentación para cada módulo en su propia página" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "Error al analizar type_comment para %r: %s" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "incluir \"_private\" en módulos" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "Se encontraron __slots__ no válidas en %s. Ignorado." -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "nombre de archivo de la tabla de contenido (predeterminado: módulos)" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "error al formatear argumentos para %s: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "no crear un archivo de tabla de contenido" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "Error al obtener una firma de constructor para %s: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "no cree encabezados para los paquetes de módulos/paquetes (por ejemplo, cuando las cadenas de documentación docstrings ya los contienen)" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "Error al obtener una firma de método para %s: %s" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "poner la documentación del módulo antes de la documentación del submódulo" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "interpretar las rutas del módulo de acuerdo con la especificación de espacios de nombres implícitos en la PEP-0420" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Error al analizar un valor de argumento predeterminado para %r: %s" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "sufijo de archivo (por defecto: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: no pudo determinar %s.%s (%r) para ser documentado, se planteó la siguiente excepción:\n%s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "generar un proyecto completo con sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "argumentos de firma o anotación de retorno dada para automodule %s" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "agregue module_path al sys.path, que se usa cuando se da el parámetro --full" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ debe ser una lista de cadenas, no %r (en el módulo %s) -- ignorando __all__" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "nombre del proyecto (predeterminado: nombre del módulo raíz)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "atributo faltante mencionado en la :members: módulo %s, atributo %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "autor(es) del proyecto, utilizado cuando se da el parámetro --full" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "falta el atributo %s en el objeto %s" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "versión del proyecto, utilizado cuando se da el parámetro --full" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "alias de TypeVar(%s)" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "lanzamiento del proyecto, utilizado cuando se da el parámetro --full, por defecto es --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "opciones de extensión" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "Las páginas HTML están en %(outdir)s." -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s no es un directorio." +msgid "Failed to read build info file: %r" +msgstr "Error al leer la información de compilación del fichero: %r" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "índice" -#: ext/apidoc/_extension.py:121 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "siguiente" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "anterior" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "generando índices" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "escribiendo páginas adicionales" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:192 -#, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "copiando archivos descargables... " -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "no se puede copiar archivo descargable %r: %s" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Error al copiar un archivo en html_static_file: %s: %r" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." -msgstr "Debería crear archivo %s." +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "copiar archivos estáticos" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:923 #, python-format -msgid "(in %s v%s)" -msgstr "(en %s versión %s)" +msgid "cannot copy static file %r" +msgstr "no se puede copiar archivo estático %r" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "(en %s)" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "copiando archivos extras" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:938 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +msgid "cannot copy extra file %r" +msgstr "no se puede copiar archivo extra %r" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "Failed to write build info file: %r" +msgstr "Error al escribir el archivo de información de compilación: %r" + +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "no se pudo cargar el índice de búsqueda, pero no se crearán todos los documentos: el índice estará incompleto." -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "página %s coincide con dos patrones en html_sidebars: %r y %r" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1204 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "Se produjo un error Unicode al representar la página %s. Asegúrese de que todos los valores de configuración que contengan contenido que no sea ASCII sean cadenas Unicode." -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1217 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1225 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "%s externo: destino de referencia %s no encontrado: %s" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Ha ocurrido un error al renderizar la pagina %s.\nRazón: %r" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "volcar inventario de objetos" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "dumping search index in %s" +msgstr "volcar el índice de búsqueda en %s" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "js_file inválido: %r, ignorado" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Muchos math_renderers están registrados. Pero no se ha seleccionado math_renderer." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "Unknown math_renderer %r is given." +msgstr "Desconocido math_renderer %r es dado." -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "entrada html_extra_path %r se coloca dentro de outdir" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "entrada html_extra_path %r no existe" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "entrada html_static_path %r se coloca dentro de outdir" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "entrada html_static_path %r no existe" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" +msgid "logo file %r does not exist" +msgstr "archivo de logo %r no existe" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "el archivo %r usado para el favicon no existe" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "encontró algunos problemas con algunos de los inventarios, pero tenían alternativas de trabajo:" - -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "no se pudo llegar a ninguno de los inventarios con los siguientes problemas:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "el inventario intersphinx se ha movido: %s -> %s" +msgid "%s %s documentation" +msgstr "documentación de %s - %s" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "valor no válido para la opción de pedido de miembro: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r no tiene configuración de \"tema\"" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "valor no válido para la opción class-doc-from: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r no tiene configuración de \"%s\"" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "firma inválida para auto%s (%r)" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "error al formatear argumentos para %s: %s" +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc: no pudo determinar %s.%s (%r) para ser documentado, se planteó la siguiente excepción:\n%s" +msgid "No footnote was found for given reference node %r" +msgstr "" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Los archivos LaTeX están en %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "no sabe qué módulo importar para el autodocumento %r (intente colocar una directiva \"module\" o \"currentmodule\" en el documento o dar un nombre explícito al módulo)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nEjecuta el comando 'make' en este directorio para compilarlos usando (pdf)latex\n(usa el comando 'make latexpdf' aquí para hacer esto automáticamente)." -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "Se detecta un objeto simulado: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "no se encontró el valor de configuración \"latex_documents\"; no se escribirán documentos" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "error al formatear la firma para %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "valor de configuración \"latex_documents\" hace referencia a un documento desconocido %s" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" en el nombre del automodule no tiene sentido" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "copiando archivos de soporte TeX" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "argumentos de firma o anotación de retorno dada para automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "copiando archivos adicionales" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ debe ser una lista de cadenas, no %r (en el módulo %s) -- ignorando __all__" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Clave de configuración desconocida: latex_elements[%r], ignorada." -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "atributo faltante mencionado en la :members: módulo %s, atributo %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Opción de tema desconocida: latex_theme_options[%r], ignorado." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "Error al obtener una firma de función para %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s ya tiene asignados números de sección (¿número de árbol anidado?)" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "Error al obtener una firma de constructor para %s: %s" +msgid "image file not readable: %s" +msgstr "archivo de imagen no legible: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "Bases: %s" +msgid "image file %s not readable: %s" +msgstr "archivo de imagen %s no legible: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "falta el atributo %s en el objeto %s" +msgid "download file not readable: %s" +msgstr "el archivo de descarga no es legible: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "alias de %s" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "referencias circulares de toctree detectadas, ignorando: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "alias de TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree contiene una referencia al documento %r que no tiene título: no se generará ningún enlace" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "Error al obtener una firma de método para %s: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "el árbol de la tabla de contenido contiene una referencia a un documento no incluido %r" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "Se encontraron __slots__ no válidas en %s. Ignorado." +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "Error al analizar un valor de argumento predeterminado para %r: %s" +msgid "see %s" +msgstr "ver %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "Error al actualizar la firma para %r: parámetro no encontrado: %s" +msgid "see also %s" +msgstr "ver también %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "Error al analizar type_comment para %r: %s" +msgid "unknown index entry type %r" +msgstr "tipo de entrada de índice desconocido %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/es_CO/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/es_CO/LC_MESSAGES/sphinx.mo index ebade7dade8df7ae851d9e4fb82f3555d08abf82..231c1f666954a0d5f40eecca542a7dbe0fba43fa 100644 GIT binary patch delta 24 fcmey%_LpsgI3u^Ak*\n" "Language-Team: Spanish (Colombia) (http://app.transifex.com/sphinx-doc/sphinx-1/language/es_CO/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: es_CO\n" "Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,21 +2946,20 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2828,6 +2968,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,119 +2994,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2973,92 +3125,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3086,581 +3231,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3721,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/et/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/et/LC_MESSAGES/sphinx.mo index d3a3c54a4389d27bc752f0fe0b902d32882b4195..9230844e6d1d8ed000fa30c029371e9439e95b6b 100644 GIT binary patch delta 6134 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, 2013-2022\n" "Language-Team: Estonian (http://app.transifex.com/sphinx-doc/sphinx-1/language/et/)\n" @@ -22,6 +22,127 @@ msgstr "" "Language: et\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Pythoni täiustusettepanekud; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "fail %r teemarajal pole korrektni zip-fail või ei sisalda see teemat" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -36,127 +157,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "See projekt vajab laiendust %s vähemalt versiooniga %s ja seetõttu pole projekti võimalik laaditud versiooniga (%s) ehitada." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Sündmus %r on juba olemas" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Tundmatu sündmuse nimi: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Lähtekataloogi (%s) pole võimalik leida" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Väljundkataloog (%s) ei ole kataloog" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Lähtekataloog ja sihtkataloog ei tohi olla identsed" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx v%s käitamine" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "See projekt vajab vähemalt Sphinxi v%s ja seetõttu pole projekti võimalik käesoleva versiooniga ehitada." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "väljundkataloogi loomine" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "tõlgete laadimine [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "valmis" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "serialiseeritud keskkonna laadimine" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "tõrge: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Ehitajat pole valitud, kasutatakse vaikimisi ehitajat: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -164,12 +312,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "laiendus %s pole rööbiti lugemiseks turvaline" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -177,82 +325,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "laiendus %s pole rööbiti kirjutamiseks turvaline" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "seadistuste kataloog (%s) ei sisalda faili conf.py" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Ehitaja klassil %s puudub atribuut \"name\"" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Ehitaja %r on juba olemas (moodulis %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Ehitajat nimega %s pole registreeritud" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domeen %s on juba registreeritud" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domeen %s pole veel registreeritud" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser on %r jaoks juba registreeritud" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Lähtekoodi analüsaatorit pole %s jaoks registreeritud" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Algne erind:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Laiendust %s pole võimalik importida" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "erindil %r puudub funktsioon setup(); kas see on päriselt Sphinxi laiendusmoodul?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "seadistuste kataloog (%s) ei sisalda faili conf.py" + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "vigane arv %r seadistuse väärtusele %r, eiratakse" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Seadistuste väärtus %r on juba olemas" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Sinu seadistusfailis on süntaksi viga: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Seadistusfail (või mõni selle poolt imporditud moodulitest) kutsus välja sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -260,468 +540,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Sektsioon %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Joonis %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabel %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Nimekiri %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r ei leitud, eiratakse." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "fail %r teemarajal pole korrektni zip-fail või ei sisalda see teemat" - -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:268 +#: environment/__init__.py:350 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:355 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:282 +#: environment/__init__.py:361 #, python-format -msgid "The %r theme has too many ancestors" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:310 -#, python-format -msgid "no theme configuration file found in %r" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "See keskkond pole valitud ehitajaga ühilduv, palun vali mõni teine dokumendipuu kataloog." -#: theming.py:335 theming.py:388 +#: environment/__init__.py:518 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:339 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "dokument pole ühegi sisukorrapuu osa" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:366 +#: environment/__init__.py:952 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Sündmus %r on juba olemas" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Tähelepanu" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Tundmatu sündmuse nimi: %s" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Ettevaatust" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Oht" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Viga" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Vihje" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Ehitaja klassil %s puudub atribuut \"name\"" +#: locale/__init__.py:234 +msgid "Important" +msgstr "Tähtis" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Ehitaja %r on juba olemas (moodulis %s)" +#: locale/__init__.py:235 +msgid "Note" +msgstr "Märkus" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "" +#: locale/__init__.py:236 +msgid "See also" +msgstr "Vaata ka" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Ehitajat nimega %s pole registreeritud" +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Nõuanne" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "domeen %s on juba registreeritud" +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Hoiatus" -#: registry.py:228 registry.py:249 registry.py:262 +#: builders/texinfo.py:41 #, python-format -msgid "domain %s not yet registered" -msgstr "domeen %s pole veel registreeritud" +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo failid asuvad kataloogis %(outdir)s." -#: registry.py:235 -#, python-format -msgid "The %r directive is already registered to domain %s" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:253 +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "seadistusparameetrit \"texinfo_documents\" ei leitud, dokumente ei kirjutata" + +#: builders/texinfo.py:85 #, python-format -msgid "The %r role is already registered to domain %s" -msgstr "" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "seadistusparameeter \"texinfo_documents\" viitab tundmatule dokumendile %s" -#: registry.py:266 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:344 +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "viidete lahendamine..." + +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (pealkirjas " + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "kujutiste kopeerimine... " + +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r crossref_type is already registered" -msgstr "" +msgid "cannot copy image file %r: %s" +msgstr "kujutise faili %r pole võimalik kopeerida: %s" + +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "Texinfo tugifailide kopeerimine" -#: registry.py:353 +#: builders/texinfo.py:218 #, python-format -msgid "source_suffix %r is already registered" -msgstr "" +msgid "error writing file Makefile: %s" +msgstr "viga faili Makefile kirjutamisel: %s" -#: registry.py:363 +#: builders/manpage.py:37 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser on %r jaoks juba registreeritud" +msgid "The manual pages are in %(outdir)s." +msgstr "Juhendi lehed asuvad kataloogis %(outdir)s." + +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "seadistusparameetrit \"man_pages\" ei leitud, juhendi lehti ei kirjutata" -#: registry.py:372 +#: builders/manpage.py:64 #, python-format -msgid "Source parser for %s not registered" -msgstr "Lähtekoodi analüsaatorit pole %s jaoks registreeritud" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "seadistusparameeter \"man_pages\" viitab tundmatule dokumendile %s" -#: registry.py:390 +#: builders/singlehtml.py:35 #, python-format -msgid "Translator for %r already exists" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML-leht asub kataloogis %(outdir)s." + +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "täiendavate failide kirjutamine" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "" +msgid "The message catalogs are in %(outdir)s." +msgstr "Sõnumikataloogid asuvad kataloogis %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "" +msgid "building [%s]: " +msgstr "ehitamine [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "" +msgid "targets for %d template files" +msgstr "%d mallifaili sihtfailid" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Algne erind:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "mallide lugemine... " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "Laiendust %s pole võimalik importida" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "sõnumikataloogide kirjutamine... " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "erindil %r puudub funktsioon setup(); kas see on päriselt Sphinxi laiendusmoodul?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Otsi vigu ülalolevast väljundist või failist %(outdir)s/output.txt" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Pythoni täiustusettepanekud; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[lähtekood]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumentatsioon]" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Mooduli kood" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "

Source code for %s

" -msgstr "

%s lähtekood

" +msgid "invalid css_file: %r, ignored" +msgstr "vigane css_file: %r, eiratakse" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Ülevaade: mooduli kood" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "XML-failid asuvad kataloogis %(outdir)s." -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Kõik lähtekoodiga moodulid

" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "viga faili %s kirjutamisel: %s" -#: ext/extlinks.py:82 +#: builders/xml.py:103 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "PseudoXML-failid asuvad kataloogis %(outdir)s." + +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/_epub_base.py:436 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/_epub_base.py:467 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "cannot write image file %r: %s" +msgstr "kujutise faili %r pole võimalik kirjutada: %s" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 #, python-format -msgid "'%s' is not a valid option." +msgid "writing %s file..." +msgstr "faili %s kirjutamine..." + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "Tekstifailid asuvad kataloogis %(outdir)s." + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: ext/doctest.py:139 +#: builders/__init__.py:237 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "vigane TestCode tüüp" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "ehitamine [mo]: " -#: ext/doctest.py:297 +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "väljundi kirjutamine... " + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "%d määratud po-faili sihtfailid" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "%d po-faili sihtfailid on aegunud" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "kõik lähtefailid" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Lähtefailide doctest-testimine on lõppenud, vaata tulemusi failist %(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" +msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "vigase doctest koodi eiramine: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "%d lähtefaili sihtfailid on aegunud" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "praeguseks aegunud failide otsimine... " + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "leitud %d" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "ei leitud" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "kooskõla kontrollimine" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "aegunud sihtfaile pole" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "keskkonna uuendamine:" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "lisatud %s, muudetud %s, eemaldatud %s" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "lähtefailide lugemine..." + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "dokumentide ettevalmistamine" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "Ülevaatefail asub kataloogis %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "versioonis %s pole muutusi." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "kokkuvõttefaili kirjutamine..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Sisseehitatud" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Mooduli tase" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "lähtefailide kopeerimine..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -742,9 +1178,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -779,6 +1216,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Teha" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "Leitud TEHA kirje: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> asub failis %s, real %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "algne kirje" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -866,879 +1331,960 @@ msgstr "[joonis: %s]" msgid "[graph]" msgstr "[joonis]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Teha" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" -msgstr "Leitud TEHA kirje: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> asub failis %s, real %d.)" +msgid "inline latex %r: %s" +msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "algne kirje" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" -msgstr "Vigane selgitustekst: %s" +msgid "'%s' is not a valid option." +msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "vigane TestCode tüüp" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Suvandeid \"%s\" ja \"%s\" pole võimalik korraga kasutada" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Lähtefailide doctest-testimine on lõppenud, vaata tulemusi failist %(outdir)s/output.txt." -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +msgid "ignoring invalid doctest code: %r" +msgstr "vigase doctest koodi eiramine: %r" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[lähtekood]" + +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Sektsiooni autor: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumentatsioon]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Mooduli autor: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Mooduli kood" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Koodi autor: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s lähtekood

" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor: " +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Ülevaade: mooduli kood" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Kõik lähtekoodiga moodulid

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "Ülevaatefail asub kataloogis %(outdir)s." +msgid "Citation [%s] is not referenced." +msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." -msgstr "versioonis %s pole muutusi." +msgid "duplicate label of equation %s, other instance in %s" +msgstr "võrrandil %s on topeltsilt, teine instants on %s" -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "kokkuvõttefaili kirjutamine..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "Vigane math_eqref_format: %r" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Sisseehitatud" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (sisseehitatud funktsioon)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Mooduli tase" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s meetod)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "lähtefailide kopeerimine..." +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (klass)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (globaalmuutuja või konstant)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Juhendi lehed asuvad kataloogis %(outdir)s." +msgid "%s (%s attribute)" +msgstr "%s (%s atribuut)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "seadistusparameetrit \"man_pages\" ei leitud, juhendi lehti ei kirjutata" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumendid" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "seadistusparameeter \"man_pages\" viitab tundmatule dokumendile %s" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Tagastab" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Tagastustüüp" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (moodul)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "ehitamine [mo]: " +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funktsioon" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "väljundi kirjutamine... " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "meetod" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klass" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "%d määratud po-faili sihtfailid" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "andmed" -#: builders/__init__.py:309 -#, python-format -msgid "targets for %d po files that are out of date" -msgstr "%d po-faili sihtfailid on aegunud" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribuut" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "kõik lähtefailid" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "moodul" -#: builders/__init__.py:330 +#: domains/javascript.py:458 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "%s (directive)" +msgstr "%s (direktiiv)" + +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:348 +#: domains/rst.py:224 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" +msgid "%s (role)" +msgstr "%s (roll)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direktiiv" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:361 +#: domains/rst.py:236 +msgid "role" +msgstr "roll" + +#: domains/rst.py:262 #, python-format -msgid "%d source files given on command line" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:377 +#: domains/changeset.py:32 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "%d lähtefaili sihtfailid on aegunud" +msgid "Added in version %s" +msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/changeset.py:33 #, python-format -msgid "building [%s]: " -msgstr "ehitamine [%s]: " +msgid "Changed in version %s" +msgstr "Muudetud versioonis %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "praeguseks aegunud failide otsimine... " +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "Iganenud alates versioonist %s" -#: builders/__init__.py:410 +#: domains/changeset.py:35 #, python-format -msgid "%d found" -msgstr "leitud %d" +msgid "Removed in version %s" +msgstr "" -#: builders/__init__.py:412 -msgid "none found" -msgstr "ei leitud" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "kooskõla kontrollimine" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "aegunud sihtfaile pole" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "keskkonna uuendamine:" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "dokumentatsiooni lähtefailide rada" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "lisatud %s, muudetud %s, eemaldatud %s" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "väljundkataloogi rada" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:109 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +#: cmd/build.py:114 +msgid "general options" +msgstr "üldsuvandid" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:558 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "lähtefailide lugemine..." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "kõikide failide kirjutamine (vaikimisi kirjutatakse ainult uued ja muutunud failid)" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" -msgstr "" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "salvestatud keskkonda ei kasutata, alati loetakse kõik failid" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "dokumentide ettevalmistamine" - -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "seadistusfailis määratud väärtuse asendamine" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "väärtuse edastamine HTML-mallidesse" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:212 +msgid "console output options" +msgstr "konsooliväljundi suvandid" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "vigane css_file: %r, eiratakse" - -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XML-failid asuvad kataloogis %(outdir)s." +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "hoiatuste (ja vigade) kirjutamine määratud faili" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "viga faili %s kirjutamisel: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "hoiatuste muutmine vigadeks" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "PseudoXML-failid asuvad kataloogis %(outdir)s." +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "erindi korral täieliku tagasijälituse näitamine" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfo failid asuvad kataloogis %(outdir)s." +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "erindi korral Pdb käivitamine" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "seadistusparameetrit \"texinfo_documents\" ei leitud, dokumente ei kirjutata" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "seadistusparameeter \"texinfo_documents\" viitab tundmatule dokumendile %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "suvandit -a ja failinimesid pole võimalik kombineerida" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 +#: cmd/build.py:357 #, python-format -msgid "processing %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "viidete lahendamine..." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-D suvandi argument peab olema vormingus nimi=väärtus" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (pealkirjas " +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-A suvandi argument peab olema vormingus nimi=väärtus" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "kujutiste kopeerimine... " +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "moodulite dokumentatsioonistringide automaatne lisamine" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "kujutise faili %r pole võimalik kopeerida: %s" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "dokumentatsioonistringides olevate koodijuppide automaattestimine" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "Texinfo tugifailide kopeerimine" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "eri projektide Sphinx-dokumentatsiooni omavaheline viitamine" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "viga faili Makefile kirjutamisel: %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "\"teha\" sissekannete kirjutamine, mida võib ehitamisega peita või näidata" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "dokumentatsiooni katvuse kontrollid" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "matemaatika kaasamine, mis renderdatakse PNG- või SVG-kujutisteks" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "kujutise faili %r pole võimalik kirjutada: %s" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "matemaatika kaasamine, mis renderdatakse veebisirvikus MathJax-i abil" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "sisu tingimuslik kaasamine seadistusparameetrite alusel" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "dokumenteeritud Python-objektide lähtekoodile viitamise kaasamine" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr ".nojekyll faili loomine dokumentide avaldamiseks GitHub-i lehtedel" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Palun sisesta mingi tekst." + +#: cmd/quickstart.py:134 #, python-format -msgid "unknown mimetype for %s, ignoring" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Palun sisesta kas 'y' või 'n'." -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:794 +#: cmd/quickstart.py:230 #, python-format -msgid "writing %s file..." -msgstr "faili %s kirjutamine..." +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Tere tulemast kasutama Sphinx %s lendstardi utiliiti." -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Palun sisesta väärtused järgnevate sätete jaoks (kandiliste sulgude vahel\nvõib olla vaikeväärtus, millega nõustumiseks vajuta lihtsalt Enter)." -#: builders/gettext.py:244 +#: cmd/quickstart.py:242 #, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Sõnumikataloogid asuvad kataloogis %(outdir)s." +msgid "Selected root path: %s" +msgstr "Valitud juurkataloog: %s" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "%d mallifaili sihtfailid" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "mallide lugemine... " +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "sõnumikataloogide kirjutamine... " +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Viga: valitud juurkataloogist leiti olemasolev conf.py." -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML-leht asub kataloogis %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart ei kirjuta olemasolevaid Sphinx-projekte üle." -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Palun sisesta uus juurkataloog (või vajuta Enter lõpetamiseks)" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "täiendavate failide kirjutamine" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Sphinx'i väljundi ehitamise kataloogi asetamiseks on kaks valikut.\nVõid kasutada kataloogi \"_build\" juurkataloogis või eraldiseisvaid \n\"source\" ja \"build\" katalooge juurkataloogis." -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Otsi vigu ülalolevast väljundist või failist %(outdir)s/output.txt" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Lähtekoodi ja ehitamise kataloogide eraldamine (y/n)" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Mallide ja staatilise kataloogi nime eesliide" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Tekstifailid asuvad kataloogis %(outdir)s." +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Projekti nimi" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Autorite nimed" -#: transforms/i18n.py:272 -#, python-brace-format +#: cmd/quickstart.py:309 msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +"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" +"just set both to the same value." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Projekti versioon" + +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Projekti väljalase" + +#: cmd/quickstart.py:324 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Projekti keel" + +#: cmd/quickstart.py:340 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d. %b %Y" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Lähtefaili järelliide" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Sinu põhidokumendi nimi (ilma järelliiteta)" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Viga: valitud juurkataloogist leiti peafail %s." -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart ei kirjuta olemasolevat faili üle." -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Palun sisesta uus failinimi või nimeta olemasolev fail ümber ja vajuta Enter" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Märkus: imgmath ja mathjax ei saa korraga lubatud olla. imgmath eemaldati valikust." -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Kas luua Makefile? (y/n)" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Kas luua Windowsi käsufail? (y/n)" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." +msgstr "Faili %s loomine." -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." +msgstr "Fail %s on juba olemas ja jäetakse vahele." -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Lõpetamine: Algne kataloogistruktuur on loodud." + +#: cmd/quickstart.py:520 +#, python-format msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Sa peaks nüüd asustama oma peafaili %s ja looma ülejäänud dokumentatsiooni\nlähtefailid. " -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Dokumentide ehitamiseks kasuta Makefile, näiteks:\n make ehitaja" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Dokumentide ehitamiseks kasuta käsku sphinx-build, näiteks:\n sphinx-build -b builder %s %s" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "kus \"ehitaja\" on üks toetatud ehitajatest, nt. html, latex või linkcheck." -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nSphinx-projekti jaoks vajalike failide genereerimine.\n\nsphinx-quickstart on interaktiivne tööriist, mis küsib mõned küsimused Sinu\nprojekti kohta ja seepeale genereerib täieliku dokumentatsioonikataloogi ning\nnäidis-Makefile kasutamiseks koos sphinx-buildiga.\n" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "vaikne režiim" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Struktuuri suvandid" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "kasutamise korral eraldatakse lähtefailide ja ehitamise kataloogid" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Projekti põhisuvandid" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "projekti nimi" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "autorite nimed" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "projekti versioon" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "projekti väljalase" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "dokumendi keel" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "lähtefaili järelliide" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "See keskkond pole valitud ehitajaga ühilduv, palun vali mõni teine dokumendipuu kataloog." +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "põhidokumendi nimi" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Laienduste suvandid" + +#: cmd/quickstart.py:671 #, python-format -msgid "Domain %r is not registered" -msgstr "" +msgid "enable %s extension" +msgstr "laienduse %s lubamine" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "dokument pole ühegi sisukorrapuu osa" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "suvaliste laienduste määramine" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefile ja Batchfile loomine" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "makefile loomine" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "makefile loomata jätmine" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "batchfile loomine" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "batchfile loomata jätmine" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "viga lugemisel: %s, %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Projekti loomine mallist" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "viga kirjutamisel: %s, %s" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "mallifailide kataloog" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "malli muutuja kirjeldamine" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/i18n.py:245 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docfields.py:103 +#: cmd/quickstart.py:810 #, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +msgid "Invalid template variable: %s" +msgstr "Vigane mallimuutuja: %s" + +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/nodes.py:423 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/nodes.py:490 +#: directives/other.py:156 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/nodes.py:706 +#: directives/other.py:169 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Sektsiooni autor: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Mooduli autor: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Koodi autor: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/display.py:87 -msgid "failed" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: util/osutil.py:131 -#, python-format +#: directives/patches.py:70 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/docutils.py:345 +#: directives/code.py:87 #, python-format -msgid "unknown role name: %s" -msgstr "" +msgid "Invalid caption: %s" +msgstr "Vigane selgitustekst: %s" -#: util/docutils.py:789 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown node type: %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:76 +#: directives/code.py:216 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Suvandeid \"%s\" ja \"%s\" pole võimalik korraga kasutada" -#: util/fileutil.py:89 +#: directives/code.py:231 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/rst.py:73 +#: directives/code.py:235 #, python-format -msgid "default role %s not found" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/inventory.py:147 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Joonealused märkused" - -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[pilt: %s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[pilt]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d. %b %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1747,11 +2293,15 @@ msgstr "[pilt]" msgid "Index" msgstr "Indeks" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Joonealused märkused" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "" @@ -1761,53 +2311,14 @@ msgstr "" msgid "unimplemented node type: %r" msgstr "" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: on liiga suur ja seda eiratakse." - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown index entry type %s found" -msgstr "" +msgid "[image: %s]" +msgstr "[pilt: %s]" -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "Vigane math_eqref_format: %r" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[pilt]" #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" @@ -1835,6 +2346,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1851,794 +2367,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "võrrandil %s on topeltsilt, teine instants on %s" +msgid "no Babel option known for language %r" +msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (sisseehitatud funktsioon)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: on liiga suur ja seda eiratakse." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s meetod)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (klass)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globaalmuutuja või konstant)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atribuut)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumendid" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Tagastab" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Tagastustüüp" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (moodul)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funktsioon" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "meetod" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klass" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "andmed" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribuut" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "moodul" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Muudetud versioonis %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Iganenud alates versioonist %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktiiv)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (roll)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "direktiiv" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "roll" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/citation.py:92 +#: writers/latex.py:1228 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Tähelepanu" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Ettevaatust" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Oht" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Viga" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Vihje" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Tähtis" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Märkus" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Vaata ka" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Nõuanne" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Hoiatus" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "moodulite dokumentatsioonistringide automaatne lisamine" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "dokumentatsioonistringides olevate koodijuppide automaattestimine" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "eri projektide Sphinx-dokumentatsiooni omavaheline viitamine" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "\"teha\" sissekannete kirjutamine, mida võib ehitamisega peita või näidata" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "dokumentatsiooni katvuse kontrollid" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "matemaatika kaasamine, mis renderdatakse PNG- või SVG-kujutisteks" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "matemaatika kaasamine, mis renderdatakse veebisirvikus MathJax-i abil" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "sisu tingimuslik kaasamine seadistusparameetrite alusel" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "dokumenteeritud Python-objektide lähtekoodile viitamise kaasamine" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr ".nojekyll faili loomine dokumentide avaldamiseks GitHub-i lehtedel" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Palun sisesta mingi tekst." - -#: cmd/quickstart.py:133 +#: writers/latex.py:1615 #, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Palun sisesta kas 'y' või 'n'." - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Tere tulemast kasutama Sphinx %s lendstardi utiliiti." - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Palun sisesta väärtused järgnevate sätete jaoks (kandiliste sulgude vahel\nvõib olla vaikeväärtus, millega nõustumiseks vajuta lihtsalt Enter)." - -#: cmd/quickstart.py:241 +#: writers/latex.py:1950 #, python-format -msgid "Selected root path: %s" -msgstr "Valitud juurkataloog: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Viga: valitud juurkataloogist leiti olemasolev conf.py." - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart ei kirjuta olemasolevaid Sphinx-projekte üle." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Palun sisesta uus juurkataloog (või vajuta Enter lõpetamiseks)" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Sphinx'i väljundi ehitamise kataloogi asetamiseks on kaks valikut.\nVõid kasutada kataloogi \"_build\" juurkataloogis või eraldiseisvaid \n\"source\" ja \"build\" katalooge juurkataloogis." - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Lähtekoodi ja ehitamise kataloogide eraldamine (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Mallide ja staatilise kataloogi nime eesliide" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Projekti nimi" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Autorite nimed" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Projekti versioon" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Projekti väljalase" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Projekti keel" - -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Lähtefaili järelliide" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Sinu põhidokumendi nimi (ilma järelliiteta)" - -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Viga: valitud juurkataloogist leiti peafail %s." - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart ei kirjuta olemasolevat faili üle." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Palun sisesta uus failinimi või nimeta olemasolev fail ümber ja vajuta Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Märkus: imgmath ja mathjax ei saa korraga lubatud olla. imgmath eemaldati valikust." - -#: cmd/quickstart.py:406 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Kas luua Makefile? (y/n)" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Kas luua Windowsi käsufail? (y/n)" - -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "Faili %s loomine." - -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "Fail %s on juba olemas ja jäetakse vahele." - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Lõpetamine: Algne kataloogistruktuur on loodud." - -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Sa peaks nüüd asustama oma peafaili %s ja looma ülejäänud dokumentatsiooni\nlähtefailid. " - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Dokumentide ehitamiseks kasuta Makefile, näiteks:\n make ehitaja" - -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Dokumentide ehitamiseks kasuta käsku sphinx-build, näiteks:\n sphinx-build -b builder %s %s" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "kus \"ehitaja\" on üks toetatud ehitajatest, nt. html, latex või linkcheck." - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nSphinx-projekti jaoks vajalike failide genereerimine.\n\nsphinx-quickstart on interaktiivne tööriist, mis küsib mõned küsimused Sinu\nprojekti kohta ja seepeale genereerib täieliku dokumentatsioonikataloogi ning\nnäidis-Makefile kasutamiseks koos sphinx-buildiga.\n" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "vaikne režiim" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Struktuuri suvandid" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "kasutamise korral eraldatakse lähtefailide ja ehitamise kataloogid" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Projekti põhisuvandid" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "projekti nimi" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "autorite nimed" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "projekti versioon" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "projekti väljalase" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "dokumendi keel" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "lähtefaili järelliide" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "põhidokumendi nimi" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Laienduste suvandid" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" + +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "" -#: cmd/quickstart.py:670 +#: util/inventory.py:147 #, python-format -msgid "enable %s extension" -msgstr "laienduse %s lubamine" +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "suvaliste laienduste määramine" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefile ja Batchfile loomine" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "viga lugemisel: %s, %s" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "makefile loomine" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "viga kirjutamisel: %s, %s" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "makefile loomata jätmine" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "batchfile loomine" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "batchfile loomata jätmine" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Projekti loomine mallist" +#: util/display.py:82 +msgid "skipped" +msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "mallifailide kataloog" +#: util/display.py:87 +msgid "failed" +msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "malli muutuja kirjeldamine" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:792 +#: util/fileutil.py:76 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:809 +#: util/fileutil.py:89 #, python-format -msgid "Invalid template variable: %s" -msgstr "Vigane mallimuutuja: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:74 +#: util/docfields.py:103 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "dokumentatsiooni lähtefailide rada" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "väljundkataloogi rada" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "" -#: cmd/build.py:109 +#: util/nodes.py:462 +#, python-format msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "üldsuvandid" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "jätk eelmisele leheküljele" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "jätkub järgmisel leheküljel" + +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "kõikide failide kirjutamine (vaikimisi kirjutatakse ainult uued ja muutunud failid)" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Sümbolid" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "salvestatud keskkonda ei kasutata, alati loetakse kõik failid" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "lehekülg" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Redaktsioon" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "" + +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:157 +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Tundmatu pildivorming: %s..." + +#: transforms/post_transforms/__init__.py:88 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "seadistusfailis määratud väärtuse asendamine" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "väärtuse edastamine HTML-mallidesse" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Katkestatud!" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "konsooliväljundi suvandid" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Kui see oli kasutaja viga, siis anna palun sellest teada, et tulevikus oleks võimalik parem veateade väljastada." -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "hoiatuste (ja vigade) kirjutamine määratud faili" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Varja külgriba" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "hoiatuste muutmine vigadeks" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigatsioon" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "erindi korral täieliku tagasijälituse näitamine" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Otsi %(docstitle)s piires" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "erindi korral Pdb käivitamine" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Info selle dokumentatsiooni kohta" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Otsing" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Autoriõigus" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "suvandit -a ja failinimesid pole võimalik kombineerida" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Viimati uuendatud %(last_updated)s." -#: cmd/build.py:357 +#: themes/basic/layout.html:204 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "-D suvandi argument peab olema vormingus nimi=väärtus" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Eelmine teema" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "-A suvandi argument peab olema vormingus nimi=väärtus" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "eelmine jaotis" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Varja külgriba" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Järgmine teema" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Sisukorratabel" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "järgmine jaotis" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Otsing" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Otsi" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Täisindeks ühel lehel" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Käesolev leht" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Näita lähtekoodi" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Sisukord" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Kiirotsing" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Otsi %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Otsi" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2685,7 +2885,7 @@ msgstr "Globaalne moodulite indeks" msgid "quick access to all modules" msgstr "kiire ligipääs kõigile moodulitele" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Üldindeks" @@ -2693,82 +2893,23 @@ msgstr "Üldindeks" msgid "all functions, classes, terms" msgstr "kõik funktsioonid, klassid ja terminid" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Käesolev leht" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Täisindeks ühel lehel" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Kiirotsing" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Indeksi leheküljed algustähe kaupa" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "võib olla väga suur" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Eelmine teema" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "eelmine jaotis" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Järgmine teema" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "järgmine jaotis" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigatsioon" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Otsi %(docstitle)s piires" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Info selle dokumentatsiooni kohta" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Autoriõigus" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Sisukorratabel" -#: themes/basic/layout.html:201 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Viimati uuendatud %(last_updated)s." +msgid "Search %(docstitle)s" +msgstr "Otsi %(docstitle)s" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Indeksi leheküljed algustähe kaupa" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "võib olla väga suur" #: themes/basic/search.html:20 msgid "" @@ -2786,21 +2927,21 @@ msgstr "" msgid "search" msgstr "otsi" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Varja otsingu tulemused" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Sisukord" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Otsingu tulemused" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Sinu otsingule ei vastanud ükski dokument. Palun veendu, et kõik sisestatud sõnad on õigesti kirjutatud ja sa oled valinud piisavalt kategooriaid." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2808,22 +2949,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Otsimine" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Otsingu ettevalmistamine..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s &8212; %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Varja otsingu tulemused" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2831,6 +2971,11 @@ msgstr "%(filename)s &8212; %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Muutused versioonis %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s &8212; %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2852,119 +2997,126 @@ msgstr "Ülejäänud muutused" msgid "Expand sidebar" msgstr "Näita külgriba" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parameetrid" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Muutujad" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (moodulis %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (moodulis %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (sisseehitatud muutuja)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (sisseehitatud klass)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klass moodulis %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (klassi %s meetod)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s staatiline meetod)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Pythoni moodulite indeks" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moodulid" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Iganenud" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "erind" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "klassi meetod" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "staatiline meetod" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (iganenud)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parameetrid" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Muutujad" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2976,92 +3128,85 @@ msgstr "Malli parameetrid" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "liige" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tüüp" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "loend" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "funktsiooni parameeter" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "muutuja" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "keskkonnamuutuja; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3146,576 +3291,363 @@ msgstr "vigane numfig_format: %s (%r)" msgid "invalid numfig_format: %s" msgstr "vigane numfig_format: %s" -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "vaata %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "vaata ka %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Sümbolid" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "kujutise fail pole loetav: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "kujutise fail %s pole loetav: %s" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Katkestatud!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Kui see oli kasutaja viga, siis anna palun sellest teada, et tulevikus oleks võimalik parem veateade väljastada." - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "" - -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "" - -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." -msgstr "Tundmatu pildivorming: %s..." - -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTML-lehed asuvad kataloogis %(outdir)s." - -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" -msgstr "Viga ehitamise infofaili lugemisel: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" - -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "" - -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "" - -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indeks" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" - -#: builders/html/__init__.py:589 -msgid "next" -msgstr "järgmine" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "eelmine" - -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "indeksite genereerimine" - -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "täiendavate lehtede kirjutamine" - -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "allalaaditavate failide kopeerimine..." - -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1456 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:864 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "cannot copy static file %r" -msgstr "staatilist faili %r pole võimalik kopeerida" +msgid "malformed string literal (missing opening quote): %s" +msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "lisafailide kopeerimine" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Näide" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "lisafaili %r pole võimalik kopeerida" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Näited" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "Viga ehitamise infofaili kirjutamisel: %r" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Võtmesõnadega argumendid" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Märkused" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "lehe %s renderdamisel tekkis Unicode viga. Palun veendu, et kõik mitte-ASCII sisuga seadistusparameetrid on kirjeldatud Unicode stringidena." - -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "otsinguindeksi tõmmise kirjutamine keelele %s" - -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "vigane js_file: %r, eiratakse" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:1346 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "Unknown math_renderer %r is given." +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1360 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path kirje %r asub väljaspool väljundkataloogi" +msgid "alias of %s" +msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path kirjet %r pole olemas" +msgid "Bases: %s" +msgstr "Põlvnemine: %s" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "logofaili %r pole olemas" - -#: builders/html/__init__.py:1407 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "favicon file %r does not exist" -msgstr "favicon faili %r pole olemas" +msgid "invalid signature for auto%s (%r)" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:93 #, python-format -msgid "%s %s documentation" -msgstr "%s %s dokumentatsioon" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeX-failid asuvad kataloogis %(outdir)s." +msgid "Would create file %s." +msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nNende jooksutamiseks läbi (pdf)latex programmi käivita selles kataloogis\n'make' (selle automaatseks tegemiseks kasuta `make latexpdf')." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "seadistusparameetrit \"latex_documents\" ei leitud, dokumente ei kirjutata" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "seadistusparameeter \"latex_documents\" viitab tundmatule dokumendile %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Redaktsioon" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "TeX-i tugifailide kopeerimine" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "lisafailide kopeerimine" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "jätk eelmisele leheküljele" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "jätkub järgmisel leheküljel" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "lehekülg" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Võtmesõnadega argumendid" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Näide" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "laienduse suvandid" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Näited" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Märkused" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "%s pole kataloog." -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" -msgstr "tõrge objekti %s importimisel" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "[autosummary] automaatkokkuvõtte genereerimine failile: %s" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "[autosummary] kirjutamine kataloogi %s" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3723,7 +3655,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3738,481 +3670,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "lähtefailid, mille kohta rST-faile genereerida" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "väljundfailide kataloog" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "failide vaikimisi järelliide (vaikimisi: %(default)s)" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "kohandatud mallide kataloog (vaikimisi: %(default)s)" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "imporditud liikmete dokumenteerimine (vaikimisi: %(default)s)" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "tõrge objekti %s importimisel" + +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "laienduse suvandid" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_loader.py:193 #, python-format -msgid "%s is not a directory." -msgstr "%s pole kataloog." +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_extension.py:178 -#, python-format -msgid "apidoc_modules item %i '%s' must be an int" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_extension.py:192 -#, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:114 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML-lehed asuvad kataloogis %(outdir)s." -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:337 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "Failed to read build info file: %r" +msgstr "Viga ehitamise infofaili lugemisel: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:372 #, python-format -msgid "Would create file %s." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(projektis %s v%s)" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indeks" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:549 #, python-format -msgid "(in %s)" +msgid "Logo of %s" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:578 +msgid "next" +msgstr "järgmine" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "eelmine" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "indeksite genereerimine" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "täiendavate lehtede kirjutamine" + +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "allalaaditavate failide kopeerimine..." + +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:871 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "staatilist faili %r pole võimalik kopeerida" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "lisafailide kopeerimine" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "lisafaili %r pole võimalik kopeerida" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "Viga ehitamise infofaili kirjutamisel: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "lehe %s renderdamisel tekkis Unicode viga. Palun veendu, et kõik mitte-ASCII sisuga seadistusparameetrid on kirjeldatud Unicode stringidena." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "otsinguindeksi tõmmise kirjutamine keelele %s" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "vigane js_file: %r, eiratakse" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path kirje %r asub väljaspool väljundkataloogi" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1370 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path kirjet %r pole olemas" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "" +msgid "logo file %r does not exist" +msgstr "logofaili %r pole olemas" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "favicon faili %r pole olemas" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s dokumentatsioon" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX-failid asuvad kataloogis %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nNende jooksutamiseks läbi (pdf)latex programmi käivita selles kataloogis\n'make' (selle automaatseks tegemiseks kasuta `make latexpdf')." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "seadistusparameetrit \"latex_documents\" ei leitud, dokumente ei kirjutata" + +#: builders/latex/__init__.py:167 +#, python-format +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "seadistusparameeter \"latex_documents\" viitab tundmatule dokumendile %s" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "TeX-i tugifailide kopeerimine" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "lisafailide kopeerimine" + +#: builders/latex/__init__.py:529 +#, python-format +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:537 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:98 #, python-format -msgid "Bases: %s" -msgstr "Põlvnemine: %s" +msgid "image file not readable: %s" +msgstr "kujutise fail pole loetav: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:126 #, python-format -msgid "missing attribute %s in object %s" -msgstr "" +msgid "image file %s not readable: %s" +msgstr "kujutise fail %s pole loetav: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of TypeVar(%s)" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "" +msgid "see %s" +msgstr "vaata %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see also %s" +msgstr "vaata ka %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/eu/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/eu/LC_MESSAGES/sphinx.mo index b2fdc51d863619e730fdcab06e17b34ad958896b..9dff32fa852e0dd8dce37f0708d50324730732c8 100644 GIT binary patch delta 24 fcmeA)=``8!fS=pYNY}tn!O+ag&}8##emO1xU@Qj_ delta 24 fcmeA)=``8!fS=pINY~Ip!N9=E*kbc*emO1xU}Fat diff --git a/addons/source-python/packages/site-packages/sphinx/locale/eu/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/eu/LC_MESSAGES/sphinx.po index 5aced68d7..db4b73972 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/eu/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/eu/LC_MESSAGES/sphinx.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:38+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Asier Iturralde Sarasola , 2018\n" "Language-Team: Basque (http://app.transifex.com/sphinx-doc/sphinx-1/language/eu/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: eu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Hobekuntza Proposamena; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,468 +538,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Adi" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Kontuz" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Arriskua" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Errorea" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Argibidea" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Garrantzitsua" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Oharra" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Ikusi baita ere" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Iradokizuna" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Kontuz" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (hemen: " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Hobekuntza Proposamena; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[iturburua]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumentazioa]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Moduluko kodea" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

%s(r)en iturburu kodea

" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Gainbegirada: moduluko kodea" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Kodea eskuragarri duten modulu guztiak

" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "invalid css_file: %r, ignored" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:29 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Modulu maila" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -740,9 +1176,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -777,6 +1214,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Egitekoa" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "jatorrizko sarrera" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -864,1779 +1329,1514 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Egitekoa" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "jatorrizko sarrera" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Atalaren egilea: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[iturburua]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Moduluaren egilea: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Kodearen egilea: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumentazioa]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Egilea:" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Moduluko kodea" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s(r)en iturburu kodea

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Gainbegirada: moduluko kodea" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Kodea eskuragarri duten modulu guztiak

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Modulu maila" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metodoa)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (klasea)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (aldagai globala edo konstantea)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s atributua)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumentuak" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Jaurtitzen du" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Itzultzen du" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Itzulketa mota" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (modulua)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funtzioa" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metodoa" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klasea" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "datuak" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atributua" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modulua" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:275 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "all of %d po files" +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are specified" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:309 +#: domains/rst.py:224 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (role)" +msgstr "%s (rola)" + +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "rola" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "%s bertsioan aldatuta" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "%s bertsiotik aurrera zaharkituta" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (hemen: " +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%Y %b %d" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: environment/__init__.py:86 -msgid "new config" -msgstr "" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" - -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" - -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" - -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" - -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" - -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" - -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" - -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" - -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" - -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" - -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "" - -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" - -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" - -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "" - -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: util/nodes.py:423 +#: cmd/quickstart.py:520 #, python-format msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" - -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" - -#: util/display.py:82 -msgid "skipped" -msgstr "" - -#: util/display.py:87 -msgid "failed" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" - -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" - -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: util/fileutil.py:76 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" - -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "" - -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" - -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" - -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Oin-oharrak" - -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[irudia]" - -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Indizea" - -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:538 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" - -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "" - -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: writers/latex.py:1183 +#: cmd/quickstart.py:573 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metodoa)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (klasea)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (aldagai globala edo konstantea)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atributua)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumentuak" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Jaurtitzen du" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Itzultzen du" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Itzulketa mota" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modulua)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funtzioa" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metodoa" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klasea" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "datuak" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atributua" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modulua" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "%s bertsioan aldatuta" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "%s bertsiotik aurrera zaharkituta" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rola)" - -#: domains/rst.py:234 -msgid "directive" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "rola" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Adi" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Kontuz" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Arriskua" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Errorea" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Argibidea" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Garrantzitsua" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Oharra" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Ikusi baita ere" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Iradokizuna" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Kontuz" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: cmd/quickstart.py:234 +#: cmd/quickstart.py:786 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: cmd/quickstart.py:810 +#, python-format +msgid "Invalid template variable: %s" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: directives/other.py:203 +msgid "Section author: " +msgstr "Atalaren egilea: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Moduluaren egilea: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Kodearen egilea: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Egilea:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: cmd/quickstart.py:286 +#: directives/patches.py:70 msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: cmd/quickstart.py:308 +#: directives/code.py:235 +#, python-format 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" -"just set both to the same value." +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" + +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: cmd/quickstart.py:323 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%Y %b %d" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Indizea" + +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Oin-oharrak" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[irudia]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:441 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "Any IDs not assigned for %s node" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "File %s already exists, skipping." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:519 +#: writers/latex.py:616 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:526 +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" + +#: writers/latex.py:1198 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1228 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:244 #, python-format -msgid "Invalid template variable: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:74 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "aurreko orritik jarraitzen du" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Argitalpena" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Alboko barra tolestu" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Nabigazioa" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Bilatu %(docstitle)s(e)n" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Dokumentu hauen inguruan" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Bilatu" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Joan" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Azken aldaketa: %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Aurreko gaia" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "aurreko kapitulua" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Hurrengo gaia" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "hurrengo kapitulua" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Indize guztia orri batean" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Orri hau" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Iturburua ikusi" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Edukiak" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Bilaketa azkarra" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s bilatu" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Joan" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2683,7 +2883,7 @@ msgstr "Modulu indize globala" msgid "quick access to all modules" msgstr "modulu guztietara atzipen azkarra" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Indize orokorra" @@ -2691,23 +2891,15 @@ msgstr "Indize orokorra" msgid "all functions, classes, terms" msgstr "funtzio, klase, termino guztiak" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Orri hau" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Indize guztia orri batean" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Bilaketa azkarra" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s bilatu" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2717,57 +2909,6 @@ msgstr "Indize orriak hizkika" msgid "can be huge" msgstr "handia izan daiteke" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Aurreko gaia" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "aurreko kapitulua" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Hurrengo gaia" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "hurrengo kapitulua" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Nabigazioa" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Bilatu %(docstitle)s(e)n" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Dokumentu hauen inguruan" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Azken aldaketa: %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2784,21 +2925,21 @@ msgstr "" msgid "search" msgstr "bilatu" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Bilaketa bat-etortzeak ezkutatu" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Edukiak" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Bilaketa emaitzak" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2806,22 +2947,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Bilaketa bat-etortzeak ezkutatu" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2829,6 +2969,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2850,120 +2995,127 @@ msgstr "Beste aldaketak" msgid "Expand sidebar" msgstr "Alboko barra luzatu" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametroak" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Aldagaiak" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Goratzen du" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (%s moduluan)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (%s moduluan)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klasea %s-(e)n)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s klaseko metodoa)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s metodo estatikoa)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python moduluen indizea" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduluak" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Zaharkitua" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "salbuespena" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "klaseko metodoa" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "metodo estatikoa" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (zaharkitua)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametroak" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Aldagaiak" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Goratzen du" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2974,746 +3126,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "partaidea" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "mota" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "aldagaia" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "makroa" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "inguruneko aldagaia; %s" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "glosarioko terminoa" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "gramatikako token-a" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "erreferentzia etiketa" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "inguruneko aldagaia" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "programako aukera" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Moduluen indizea" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "%s ikusi" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "ikusi %s baita ere" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 +#: domains/c/__init__.py:211 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +msgid "%s (C %s)" msgstr "" -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "aldagaia" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "makroa" + +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" +msgid "environment variable; %s" +msgstr "inguruneko aldagaia; %s" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:116 #, python-format -msgid "%r reference target not found: %s" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: transforms/post_transforms/images.py:143 +#: domains/std/__init__.py:239 #, python-format -msgid "Unknown image format: %s..." +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:319 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indizea" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "glosarioko terminoa" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "gramatikako token-a" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "hurrengoa" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "erreferentzia etiketa" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "aurrekoa" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "inguruneko aldagaia" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "programako aukera" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Moduluen indizea" + +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "%s %s dokumentazioa" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Argitalpena" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "aurreko orritik jarraitzen du" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3721,7 +3653,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3736,481 +3668,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indizea" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "hurrengoa" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "aurrekoa" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s dokumentazioa" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "%s ikusi" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "ikusi %s baita ere" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fa/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/fa/LC_MESSAGES/sphinx.mo index d0fe9670331daae224d652cb5d6a4cbac67d070f..d2cfc67e42f3ebc21c59d5935d6ccef6c5a81583 100644 GIT binary patch delta 10879 zcmYM)3w+LX|Htv~kDVBXZOqtqZMHEsnKQFF&e^bGb0(B?4wV*l(L@fRM(DotZ_2R} zU1`YeP=qKH(Sei>S`Kxm9LxQBU*F&3@$Yfp_w)Pt{;unL_z<1?ol7;}}!W73StrarfkG1G}xKVZxx3~g*o zWqbkyaX#`Dvjmr7DQ04qbYof?<2CarbfaPqw!^?C#w1`iR={x>g3~bxXQ2jKf^oPP z!ji71drQhGJI?r+<@2p#~KXqdxdFR>5WH!L_J{_MyIb3f0hg z_xaD5M;y}3wlfqv5YKSq9j?bw?O(#0cmt#8-&AVOe=!Neu?Z$(7p#pF-FN}+B7PI; z(>&C|m|%PvHS={y63r&pudpj|CGxBe`(t&Sgsg(`qE{Vkqo5@?j;k=Tl`$Fk7AnQR zU?f&(Z47OiI8;0kJva%Kk>_1kp)y#4TDonRg}dD6x3E5Oxi;iqg@$d6iN*fd4ridg z=tFI$J*YMQ7#WMXg4zp7j8Ylsi5gHIl2tPvJ-8P2{e7s^e}d6?0X4DP8RTCb)oN>J zkbpVFsp#Kqt|b^l{b3|Y=0~i7F>GaR)@GQC`KZ0J1%q%8R>TjnHh$__hUzECOJ4NF z0ho-NP-}StJL4JbhS8*@CyvG_d>b|MBd7_SM5X*o)BrA{GIa;(%QS6o_r^5rNc`e)p8p%;@GN@pCTfpF zb+XSBkPLdwFbZ0uM^U@~87zk{A^$OJ_#a&$=TXl?NJ{|L!KMzKVk6=K*|vjus0=Pe z?THo0N6Z$~_pf6amhYld=QZXU1>H~GV8Z!i2Vhk3$Zbzl|1P;RQP&3Y8eZp`U zatE2os5O5THGwx!nYfNqFswUS#;36o{hNan)W9j!1@oOA;8oPp+`;--zlUwOpX*Rm z{llo;y&RR95*&;hFc2L!PA~>zDu!VVGS?Qp5me;$vJH$wEkz-!;RP6i+fb?8g%$Ax zYO{WYEUR&PbL6lyDg#@QF`MsD$FU(>T^ShZItObKznVk-RoF>IA)Z7nL61ImHxEa3 zJQ+2^BCLcfFbqquI&OF4gIJgNG$!ILRC_Uf?f23#h&T&1vFyI&Uo*;~LMa-Ap*YHo zC!^9QjCp2WHME$Y0F>Ss6QQ%JVW0#tvWV^zH1rJ#{qM_nkl zupx%!+J-ZbE5LL`4PZWMhHEg5HT(}&BmOndPT+6UzykZ*cB4_x>!LEz9JM#PV*~WQ zPN6A<6Zim@A7IzMDK;V=icH2V#;N!XDkHrI+TA}H6Ns0gQvMEl@GPpMTga-KynL>A zT!+fUO-$1H?^IwL9FGflun;xFYMilp*c=rPLv5L zZBc{z_S98W>i@#Um_5?oC#SFp@qP5Fp(dm3rpdw>;ykR5(@-OxhpllXM&k+8 zOv_Nm@dj$3&V#n$M%bKq6p|FP3b_i*4XlqHN82AJ6GxN(2r7J3uo=t|48v=#|DXm~ zg@sJUXiUToSPLIQ4R{V}U~91h?n0K^+{H8;IM)8Yn1^+UUqkh~f2`MTqBB(Jb$Js5 zvGGH8W-U<1rV}dF`KYxYfh}+qX5gpT9VWcNr0s=aK~QVm28 zK8g&$YgSUw8f`(1>>TRY{f6lnJlP(X))+$E2Q{DqR7VR@H{3SVL_R?6pKfi3RyL#Xy{ zU_(rqX5#^<0WNZ5AI8$ZxlBQ86g=IY^V-NIXj)?hH1@->@sjbMNNhc+?W^M74k5aq_QJpQfS_{@^|cpJ`K;jFqV$f~hzjo8n7u z{l};^K8N-2PgKV-PuNuFU^?+kd;mA2+W8XWF{qIIYbNyzZR)$CW-uCc8lFa_bPuZG z%Qz5gJ!zea%HUzl#mHIqf*OaqN1n%UEJkHuBc|YA7>OS5Y?DzSEyb8J8A||PuT&sK{fmkrr~ney{OM$!E6kF+FopfP{-B#5QUZ$UcdxAinZ|y z#$X5;Qk;x>-Vrr3-JCUXA~wS!*PR$ad==GkxjFXqq+k&7Sl3BNdtNhxf@bm(cEg>h z4?1)0dp`t&iBqvNHpAvvh}w*AqfWY7jp)IPm_Yx= zdDd>aMAR4Bp;B0Y+B}mn1m|K^T!cyZFVyKcfa>@JYIk2iWg>LG9Y_>r6L&z>FF>vR z3iPVseH3&|j-d9!9aILIEU+`qLG9K-r~y6V#zm;(y9RZhH)AsHLG6u8sF~kIO~^cF z2Ofz*gc;9~|IrjWQlT~3;6B)op~Q!=9)6B(@Gg3=#X@7+V?GAsYOI5=q6YFG)Id(6 zW_r_&6BgOug55ET`jSQDUo*Z)g;E){*p4h2mC7_!1A|fL|5?1*aY84?ec3Fi;2r@hB~2AIt(?#2T_}G zp&P%28t`dU2lp`$YcIF`#A6z9Z`5<|EDGA)t6X=XM*6iI|BkwN!e6kPumP&Wrf!^% z%D_nMi!)FIK8UUH5@uk`i}r#Vgj%v9V`#<1p||yCg|inYbgW{b$3kp~;L+Re2c#}n^%O?=y!{lrT#1^aAs*BXZrFF|d_GE@gu zwsWrOU^FfyUiXgO^{GBPu>#DdeirH&AMla?Ar!u)LaEMp*Pj0z)P*tttKxJVfJJWn zCFT;BVIF4gu*d2Je1do%hGQ$z7=gX8A&x>OZ=OeGKEqpT@8ri(A1J~sd>b3%HPjl% z?X<_V73z2m#83`?*p63`PhT_5T;_)5ABj? zVmBS&H54lF;Cs{uulOJEUN~rv&m3$){d=f^UPZ0>eN4u@L$>}&j3-`#%D`4E!X4NV zTYqE+FdMa}He;B#9J`%D4iz6Cv0top)V_8-s1Y~BsaSv>Jc>mQn-41yPdUa0!&z7d zk0AdsKk`2Xxc#_or{X8}*tW#isLw~QW_FiCGB){?MsN^T#xwXVUP2F!Kf#X$4tC~eX!NHw%zB@pHb96 zuA(LwevucE!}<@P;Gv@T_jc1w!N$b1F%;iIrD_+(;3-^;*Rd1Mx@3Rf@52n@;2-Q? zFm}S$#LMtSJc=9yGxSG0kd&X45ig^qppnl+jeG~Hp}?PQCOY5?#2?~gIN-896~|DY z@Ar$nic2uaAyfDO^*@%`b|QbZ@BMx_g8J3i4sT(5`Zukv*sHP-^NFvZ)~@qa)(r>Z z3cQW`aOpL>hB?>mQVc>Jw+B%ZDa41d6dPjPZ`Piu3vMP(#1GIrg+im>?QVYs!-!k_ z*LKhas}T3YE;tfv;YQSPI^aGp!->rNHhxI`*c>-M5)}+)JSw6(3_S3^$H{caOyF#8+?(u5}#$U$vAk=lJi1 z-l$_c9W~SW_$qG25bRUl@z1aTqlw45@f^${ejc}?_Ztf8XmNmJc4B6rV@mNadn1@=U^{Az|k7}q_H9Lb*sN*vq`{OCBjmgy=|8K*N=pkN> z?Qs|8;~h-H+;GSLyI>CXAzpw5^l#2m(57h|;rK6(_83n*6*bZqQ4Q?DEG)zKFeTD4 z2@a-aC4cBq+;Lp8J!mD+c(1S`floD_~L#^M@}&D>6`M*O`S-@r)X*m%eP z7n9B6y^dKz#cV2c94e4crFti7jekPz){MG#CO*_AYLaM=Rfg+8)ZUqfb?_MK>b{H~ zT%6?ie`UXkBZ>b(9m^5kWXFF;KZ)5?Y{0R21$EKn*0bk-6;36-hcj?;eaHWj`VN~D z$E4UL%)^ev&*5M^hT0p+4IKYF;YECw_zuoO@0^B?|KCdA!>6d2m}=MP7gVZSr`Z{F zMrC3wYNqEg4qG;|dnF%rYS!Z<{4X}e5f9jVpcq>bA4A=!0ge5e-D?(5(2Pq_4acP0 z)X#K1j@qs9O&tG^$PpMr{1XnufTng+4ncixJtpHN)aj|%%$}-dsLeYDHLHuia2$St>Y!aqyJ>r%j`u=TX4ari zS5Pa*)YAFyPeGe%3hIM1@nu|qdTS-Lwwvi=>`FYjjlBtXU~A$Zusz0R*kd;W^}4-} zYA3y|y%~>V6me>%9auJcwW;P&&~f_{bzD-j?2VR%YG?&&fFEHYojDo<*hlPt-uBcd%FPJlsco0yTqW z9qlRDgi3XtPWGi!54A}jN4*=aq1uV-Y}-#q4{;yYshz#{LU@6SnmpKuI(GZ876xS7 zwT?wyEJ>)DcSd#m6z;+2P#MVXV&54LqrN{IwZt!>*1kqpo9QB4K)l;ap#g=C-R!QN zj7h{RP{(OEYO@4)x4U})ZYD0qrI^{nF>~=a>SoL7Y2W)}Q0IRdcGGhliIKhRv3wkL zqk6Ych^Fuha^0JN-edw}bL>UZqL01f3sD*R559tDP&eg_zK)rICAb_b^>h4xqV>beI95Xy1wruz)xV{r~@;RTMl_ypGS|A=J6f$+t5q!WW4n3hV$j zVh!S3n1Eq}?5=Nux(CLf2ba6?cGM<6@5Z-LS9a21GNN5Sgn|d3MeT(R*aS}v_DyIo zu(I!X%dm33tTuN8ecjuqJHCS*9;@o>k$cPWZS7yFoG&8(K!7iO=(CQm-|%;<`PxlA z8{(T<=qu+NHM=OR_~zmbzR#A73HD7|5$pK2tz1^Va`UwGCTWe+J?Smlq&M^RTC+Ub zSLXYpeDUx1>-ZM#%&%Bn^gqlFdbt1q delta 13616 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

=jU~fcJgza!khxX z!=?1N+`>3(IyE{=%k=wF^K<-#PI7iy#r$dC+qF}3R`~qM8NQMQGZO3O7UnO>$&Slk zl^<6ze#RR$XQmfqWw{~tr4VLk31dp}`Ldn7nd$1yS(%)jub#cd(&D(W z)-_eqd@FoeIk`T6MT5D;c0h}{Bsn*i)>g7!4#OyPvXcE7J}1Y|!@k_CLMPjomrqA| zX82n8yf|kro$2k=WWP@XEF>3F{ccc9KW?C$BzH0l=Vt7)GM8oMJ2~l2ulV@*7D^y5 zK4t*ExQw`jiu>lBYFyHDOREUxmCp_4Ps%As{>-#AUv|altV^}0YfibzewHCSd700N z$+Oav-K=!ypPagc02it&HwxJ+SeG1sCX4G%RTtB9va)hkDtk;qCRDU5I8|dvhCexX z$%@R?i*gF`a|`kprRVsUk=n}&^77qrWHXj@r*m$0M(6HM=e!jnr68Y1oEU$_yDRT% z*l79;XIZj;X+f@+Y$bDw_J`zT`To~g{aln@tGAC`keot}d+|`h9!!>fNLFAg6clgg%2R z+TXXmb%=KOlSh6E3A|SpJQ~~^EDu&XQ2E~e;NGgcoT`o0#ZK@*)n;m&f@MyyELiUF zP+4^`Pwg}Hs*S-4>gE5pz3&7M2KNOIIKfIA#vg2Q<@tRYgwlu)?fyFz2fE)y41a*VEq3 zXBb&I!}^nqep)^pG+$!6%V&BMJHI<@@8i=%Cg1YJfXV$c9h-hcE;g$ zQx@mY_i>utTebCnJjN6_GagokSgAoq{>!%2WEAYZ!DAHGb4!ggin2Is*N#}bS;fww+Ftq7iUqoGl2?6jed;Fo;oj+)Ri{F2%x=k_v6T6D9} zsl_AZ?5ACgBJ5T*m|fB!JEG#o=gBo9naF{v9d0ByXl5G~19wrG%5#r6eVC{A2-)jy zCvPLMv6Re;gyIm~cXRp#&nda|dSui_GNg=IlDSnoNQLV1>ZkQTH;1apr;=f3ny37l z8HY4`W%++(<<0ogn+D~sr)F~V;0+#iM^^UB!Vw6fd648#VyLNvikV;3>o|-6RJcJU z41SY{RU1e_LUeO8yUD@qi!`kb+DKY5_o3=t+lSk&cby(=H#(l&*nXv9$y;Ya+Z+fU z(g1jYOgdb37e&q;Qln~P$xCON-dgSkPPyaey0(bs=k72!q%5npR#j2(=B7Hr-Q()k zO9`qR0-9xc!tu6I_QKGT_&+t9d-IrgXUNSmvhUZ%8MC(LK1U7HqkG)D`RSN5-^935 zskd3f_Ci8{ju&>aUuv7cBr0iRlRG@}?U%!ABQex;7}wF8hm@NHWlpT$H+@EzUGbys ztBJh1ft~XIige@SoyOS5>d*W2z$8?R_1By`rLbtSW*y53nmNswG`9%#Al(y^=&^V;5$ORu(Qsb%DR*WaAO9MS%#XM`*O diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fa/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/fa/LC_MESSAGES/sphinx.po index f91dda94f..afa4c11ec 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/fa/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/fa/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -11,153 +11,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Hadi F , 2020-2021\n" "Language-Team: Persian (http://app.transifex.com/sphinx-doc/sphinx-1/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: fa\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "تنظیمات %s. %s در هیچ یک از پیکربندی‌های جستجو شده رخ نمی‌دهد" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "گزینه‌ی پشتیبانی نشده‌ی زمینه %r داده شده" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "پرونده‌ی %r که مسیر زمینه به آن اشاره دارد یا پرونده زیپ معتبری نیست یا هیچ زمینه‌ای درونش ندارد" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "تنظیمات needs_extensions (نیازهای افزونه) افزونه‌ی %s را نیاز دارد، ولی بارگذاری نمی شود." + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "این پروژه افزونه‌ی %s (دست کم نسخه‌ی %s) را نیاز دارد، بنابراین نمی تواند با نسخه بارگذاری شده (%s) ساخته شود." + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "نام رنگ‌مایه خوان %r شناخته شده نیست" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "رویداد %r در حال حاضر موجود است" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "نوع اتفاق نامشخّص است: %s" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "مدیر %r برای رویداد %r یک باعث ایراد شد" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "شاخه‌ی منبع(%s) پیدا نشد." -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "نشانی (%s) شاخه نیست" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "شاخه‌های مبدأ و مقصد نمی توانند یکسان باشند" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "اجرای اسفینکس نگارش %s" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "این پروژه دست که به افینکس نگارش%s نیاز دارد و برای همین با این نسخه قابل ساخت نیست." -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "ایجاد پوشه ی برون داد" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "در حال راه اندازی افزونه‌ی%s:" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' آن طور که در conf.py تعریف شده شیئ قابل فراخوانی پایتون نیست. لطفاً تعریفش را تغییر دهید تا تابع قابل فراخوان پایتون شود. این کار لازمه‌ی conf.py است تا به عنوان افزنه‌ی اسفینکس کار کند." -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "بارگذاری ترجمه ها [%s]... " -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "انجام شد" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "برای پیام‌های داخلی در دسترس نیست" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "بارگذاری محیط pckle شده" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "شکست خورد: %s" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "هیچ سازنده‌ای برگزیده نشده، استفاده از قالب خروجی پیش‌فرض: html" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "بست کلاس %r در حال حاضر ثبت نام شده است، بازدیدکنندگان این پیوند نادیده گرفته خواهد شد" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" -msgstr "دستور %r از قبل ثبت شده که مقدار قبلی نادیده گرفته خواهد شد" +msgid "directive %r is already registered and will not be overridden" +msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" -msgstr "نقش %r از قبل ثبت شده که مقدار قبلی نادیده گرفته خواهد شد" +msgid "role %r is already registered and will not be overridden" +msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -165,12 +312,12 @@ msgid "" "explicit" msgstr "افزونه‌ی %s مشخّص نکرده که آیا برای خواندن موازی امن هست یا نه. که فرض می‌گیریم نیست. لطفاً از نویسنده‌ی افزونه بخواهید این موضوع را بررسی و آن را مشخّص کند" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "افزونه ی %sبرای خواندن موازی امن نیست" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -178,645 +325,357 @@ msgid "" "explicit" msgstr "افزونه‌ی %s مشخّص نکرده که آیا برای نوشتن موازی امن هست یا نه. که فرض می‌گیریم نیست. لطفاً از نویسنده‌ی افزونه بخواهید این موضوع را بررسی و آن را مشخّص کند" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "افزونه‌ی %s برای نوشتن موازی امن نیست" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "انجام چندباره‌ی %s" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "کلاس سازنده %s هیچ ویژگی‌ای به عنوان \"name\" ندارد" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "سازنده %r در حال حاضر وجود دارد (در پیمانه‌ی %s)" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "نام سازنده %s یا ثبت شده نیست و یا فقط از طریق نقطه ورود در دسترس است" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "نام سازنده %s ثبت نشده است" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "دامنه ی %sپیش تر ثبت شده" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "دامنه %s هنوز ثبت نشده است" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "دستورالعمل %r قبلاً برای دامنه %s ثبت شده" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "نقش %r قبلاً برای دامنه %s ثبت شده" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "شاخص %r قبلاً برای دامنه %s ثبت شده" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "نوع شیئ (object_type) %r قبلاً برای دامنه ثبت شده" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "ارجاع متقابل (crossref_type) %r قبلاً ثبت شده" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "پسوند (source_suffix) %r قبلاً ثبت شده است" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "تحلیل‌گر منبع (source_parser) %r قبلاً ثبت شده است" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "تجزیه کننده مبدإ برای %s ثبت نشده است" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "در حال حاضر برای %r مترجم وجود دارد" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "مؤلّفه‌های کلیدی برای تابع add_node() باید تاپل تابعی (بازدید، خروج) باشند: %r=%r" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "بست قابل شمارش (enumerable_node) %r قبلاً ثبت شده است" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "ترسیم‌گر ریاضی %s قبلاً ثبت شده" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "افزونه‌ی %r از نسخه‌ی %s اسفینکس به بعد، در آن ادغام شده؛ بنابراین نادیده گرفته می‌شود." -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "ایراد اصلی:\n" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "امکان وارد کردن افزونه‌ی %s نبود" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "افزونه‌ی %r هیچ تابع setup()ی ندارد؛ آیا این مورد واقعاً یک پیمانه‌ی افزونه‌ی اسفینکس است؟" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "افزونه‌ی %s که در این پروژه استفاده شده دست کم نیازمند اسفینکس نسخه‌ی %s است؛ بنابراین با این نسخه قابل ساخت نیست." -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "افزونه‌ی %r شیئ پشتیبانی نشده‌‌ای از تابع setup()ش برگرداند؛ در حالی که می بایست مقدار تهی/هیچ و یا یک دیکشنری فراداده‌ برمی‌گرداند" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" - -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" - -#: highlighting.py:168 +#: config.py:351 #, python-format -msgid "Pygments lexer name %r is not known" -msgstr "نام رنگ‌مایه خوان %r شناخته شده نیست" +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "شاخه‌ی پیکربندی(%s)، پرونده‌ی conf.py را ندارد" -#: highlighting.py:202 +#: config.py:374 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: extension.py:55 +#: config.py:379 #, python-format msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." -msgstr "تنظیمات needs_extensions (نیازهای افزونه) افزونه‌ی %s را نیاز دارد، ولی بارگذاری نمی شود." +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "امکان لغو تنظیمات پیکربندیdictionary %r ، نادیده گرفته می‌شود (برای تعیین تک تک عناصر %r را به کار ببرید)" -#: extension.py:76 +#: config.py:391 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." -msgstr "این پروژه افزونه‌ی %s (دست کم نسخه‌ی %s) را نیاز دارد، بنابراین نمی تواند با نسخه بارگذاری شده (%s) ساخته شود." +msgid "invalid number %r for config value %r, ignoring" +msgstr "شماره نامعتبر %r برای پیکربندی مقدار %r، نادیده گرفته می‌شود" -#: theming.py:114 +#: config.py:399 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "امکان لغو تنظیمات پیکربندی %r با نوع پشتیبانی نشده نبود، نادیده گرفته می‌شود" -#: theming.py:120 +#: config.py:422 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "تنظیمات %s. %s در هیچ یک از پیکربندی‌های جستجو شده رخ نمی‌دهد" +msgid "unknown config value %r in override, ignoring" +msgstr "مقدار پیکربندی ناشناخته %r در ابطال، نادیده گرفته شد" -#: theming.py:135 +#: config.py:476 #, python-format -msgid "unsupported theme option %r given" -msgstr "گزینه‌ی پشتیبانی نشده‌ی زمینه %r داده شده" +msgid "No such config value: %r" +msgstr "" -#: theming.py:207 +#: config.py:504 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "پرونده‌ی %r که مسیر زمینه به آن اشاره دارد یا پرونده زیپ معتبری نیست یا هیچ زمینه‌ای درونش ندارد" +msgid "Config value %r already present" +msgstr "مقدار پیکربندی %r از قبل موجود است" -#: theming.py:228 +#: config.py:541 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:275 +#: config.py:599 #, python-format +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "خطای نحوی در پرونده‌ی پیکربندی شما وجود دارد: %s\n" + +#: config.py:603 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "" +"The configuration file (or one of the modules it imports) called sys.exit()" +msgstr "پرونده‌ی پیکربندی (یا یکی از ماژول هایی که وارد می کند) sys.exit() را فراخواند" -#: theming.py:282 +#: config.py:611 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" +msgstr "یک خطای قابل برنامه ریزی در پرونده‌ی پیکربندی شما وجود دارد:\n\n%s" -#: theming.py:310 +#: config.py:633 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:651 config.py:659 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:339 +#: config.py:665 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:686 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "Section %s" +msgstr "بخش%s" -#: theming.py:347 +#: config.py:687 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +msgid "Fig. %s" +msgstr "شکل %s" -#: theming.py:366 +#: config.py:688 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +msgid "Table %s" +msgstr "جدول %s" -#: config.py:309 +#: config.py:689 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "شاخه‌ی پیکربندی(%s)، پرونده‌ی conf.py را ندارد" +msgid "Listing %s" +msgstr "فهرست %s" -#: config.py:318 -msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "" - -#: config.py:341 -#, python-format -msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" -msgstr "امکان لغو تنظیمات پیکربندیdictionary %r ، نادیده گرفته می‌شود (برای تعیین تک تک عناصر %r را به کار ببرید)" - -#: config.py:350 -#, python-format -msgid "invalid number %r for config value %r, ignoring" -msgstr "شماره نامعتبر %r برای پیکربندی مقدار %r، نادیده گرفته می‌شود" - -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" -msgstr "امکان لغو تنظیمات پیکربندی %r با نوع پشتیبانی نشده نبود، نادیده گرفته می‌شود" - -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" -msgstr "مقدار پیکربندی ناشناخته %r در ابطال، نادیده گرفته شد" - -#: config.py:430 -#, python-format -msgid "No such config value: %r" -msgstr "" - -#: config.py:453 -#, python-format -msgid "Config value %r already present" -msgstr "مقدار پیکربندی %r از قبل موجود است" - -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" -msgstr "" - -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" -msgstr "خطای نحوی در پرونده‌ی پیکربندی شما وجود دارد: %s\n" - -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "پرونده‌ی پیکربندی (یا یکی از ماژول هایی که وارد می کند) sys.exit() را فراخواند" - -#: config.py:537 -#, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" -msgstr "یک خطای قابل برنامه ریزی در پرونده‌ی پیکربندی شما وجود دارد:\n\n%s" - -#: config.py:560 -#, python-format -msgid "Failed to convert %r to a set or tuple" -msgstr "" - -#: config.py:581 config.py:586 -#, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." -msgstr "" - -#: config.py:589 -#, python-format -msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." -msgstr "" - -#: config.py:608 -#, python-format -msgid "Section %s" -msgstr "بخش%s" - -#: config.py:609 -#, python-format -msgid "Fig. %s" -msgstr "شکل %s" - -#: config.py:610 -#, python-format -msgid "Table %s" -msgstr "جدول %s" - -#: config.py:611 -#, python-format -msgid "Listing %s" -msgstr "فهرست %s" - -#: config.py:718 +#: config.py:798 +#, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "مقدار پیکربندی '{name}' باید یکی از {candidates} باشد، اما '{current}' داده شده." -#: config.py:742 +#: config.py:829 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "مقدار پیکربندی '{name}' دارای نوع '{current.__name__}' است، ولی انتظار می‌رفت {permitted} می‌بود." -#: config.py:755 +#: config.py:846 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "مقدار پیکربندی '{name}' دارای نوع '{current.__name__}' است، حالت پیش‌فرض {permitted} است." -#: config.py:766 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "دامنه‌ی اصلی %r یافت نشد، نادیده گرفته می‌شوند." -#: config.py:778 +#: config.py:878 msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." -msgstr "از زمان نسخه‌ی ۲ تا به حال، اسفیکنس به صورت پیش فرض از \"index\" به عنوان ریشه‌ی سند(root_doc) استفاده می‌کند. لطفاً \"root_doc = 'contents'\" را به پرونده conf.py تان اضافه کنید." - -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" -msgstr "%s (دستورالمعل)" - -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" -msgstr "%s (گزینه‌ی دستورالمعل)" - -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" -msgstr "%s (نقش)" - -#: domains/rst.py:224 -msgid "directive" -msgstr "دستورالمعل" - -#: domains/rst.py:225 -msgid "directive-option" -msgstr "گزینه‌ی دستورالمعل" - -#: domains/rst.py:226 -msgid "role" -msgstr "نقش" - -#: domains/rst.py:248 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "توضیح تکراری از %s %s، مورد دیگر در %s قرار دارد" - -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (توابع درونی)" - -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s متد)" - -#: domains/javascript.py:168 -#, python-format -msgid "%s() (class)" -msgstr "%s (کلاس)" - -#: domains/javascript.py:170 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (متغیّر عمومی یا مقدار ثابت)" - -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s مشخصه)" - -#: domains/javascript.py:255 -msgid "Arguments" -msgstr "نشانوندها" - -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" -msgstr "ایجاد" - -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" -msgstr "بازگشت ها" - -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" -msgstr "نوع برگشتی" - -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" -msgstr "%s (ماژول)" - -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" -msgstr "تابع" - -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" -msgstr "متد" - -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" -msgstr "کلاس" - -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" -msgstr "داده" - -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" -msgstr "مشخّصه" - -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "ماژول" - -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "توضیح %s تکراری از %s، مورد دیگر%s در %s قرار دارد" - -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "تغییر داده شده در نسخه %s" - -#: domains/changeset.py:27 -#, python-format -msgid "Deprecated since version %s" -msgstr "منسوخ شده از نسخه %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Removed in version %s" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "نقل‌قول %s تکراری، مورد دیگر در %s قرار دارد" - -#: domains/citation.py:84 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "نقل [%s] قول ارجاع داده نشده." - -#: domains/math.py:63 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "بر چسب معادله ی %s تکرار است، مورد دیگر در %s قرار دارد" - -#: domains/math.py:119 writers/latex.py:2479 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "قالب مرجع معادله‌‌ی ریاضی (math_eqref_format) نامعتبر: %r" - -#: environment/__init__.py:81 +#: environment/__init__.py:89 msgid "new config" msgstr "پیکربندی جدید" -#: environment/__init__.py:82 +#: environment/__init__.py:90 msgid "config changed" msgstr "پیکربندی تغییر داده شد" -#: environment/__init__.py:83 +#: environment/__init__.py:91 msgid "extensions changed" msgstr "افزونه‌ها تغییر کردند" -#: environment/__init__.py:249 +#: environment/__init__.py:261 msgid "build environment version not current" msgstr "نسخه‌ی محیط ساخت به‌روز نیست" -#: environment/__init__.py:251 +#: environment/__init__.py:263 msgid "source directory has changed" msgstr "شاخه ی منبع تغییر کرد" -#: environment/__init__.py:313 +#: environment/__init__.py:350 #, python-format msgid "The configuration has changed (1 option: %r)" msgstr "" -#: environment/__init__.py:318 +#: environment/__init__.py:355 #, python-format msgid "The configuration has changed (%d options: %s)" msgstr "" -#: environment/__init__.py:324 +#: environment/__init__.py:361 #, python-format msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: environment/__init__.py:366 +#: environment/__init__.py:404 msgid "" "This environment is incompatible with the selected builder, please choose " "another doctree directory." msgstr "این محیط با سازنده‌ی انتخاب شده سازگار نیست، لطفاً یک خوشه‌ی اسناد دیگری را انتخاب کنید." -#: environment/__init__.py:473 +#: environment/__init__.py:518 #, python-format msgid "Failed to scan documents in %s: %r" msgstr "پویش اسناد %s: %r شکست خورد" -#: environment/__init__.py:626 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format msgid "Domain %r is not registered" msgstr "دامنه ی %r ثبت نشده" -#: environment/__init__.py:777 +#: environment/__init__.py:811 msgid "document isn't included in any toctree" msgstr "سند در هیچ درختواره‌ی فهرست مطالبی گنجانده نشده" -#: environment/__init__.py:810 +#: environment/__init__.py:922 msgid "self referenced toctree found. Ignored." msgstr "درختواره‌ی فهرست مطالب با ارجاع به خود پیدا شده. نادیده گرفته می‌شود." -#: environment/__init__.py:839 +#: environment/__init__.py:952 #, python-format msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" @@ -861,2224 +720,2038 @@ msgstr "نکته" msgid "Warning" msgstr "هشدار" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" -msgstr "درج خودکار رشته‌مستندات را از پیمانه‌ها" - -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" -msgstr "آزمایش خودکار تکّه‌کدها در قسمت‌های مختلف پیمانه‌ی doctest" +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "پرونده‌ی اطّلاعات متن در پوشه‌ی %(outdir)s است." -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" -msgstr "پیوند بین اسناد Sphinx از پروژه های گوناگون" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nدر آن شاخه فرمان 'make' را اجرا کنید تا این‌ها رh با makeinfo اجرا کند\n(برای انجام خودکار `make info' را به کار ببرید)." -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "نوشتن مدخل‌های لیست اقدام‌ها (\"todo\")که در ساخت می تواند نشان داده و یا پنهان شوند" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "هیچ تنظیماتی برای «صفحات راهنما» پیدا نشد؛ بنابراین هیچ صفحه‌ی راهنمایی نوشته نخواهد شد" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" -msgstr "بررسی برای پوشش اسناد" +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "مقدار پیکربندی اطّلاعات متن سندها (texinfo_documents) به سند ناشناخته‌ی %s ارجاع می‌دهد" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" -msgstr "گنجاندن رابطه‌های ریاضی که در قالب PNG یا SVG به نمایش در آمده" +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" +msgstr "در حال پردازش %s" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" -msgstr "گنجاندن رابطه‌های ریاضی که MathJax در مرورگر نمایش در آورده" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "در حال نوشتن" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" -msgstr "گنجاندن شرطی محتوا بر اساس مقادیر پیکربندی" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "حل ارجاع‌ها..." -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" -msgstr "گنجاندن ویندهای کد منبع اشیاء مستند شده‌ی پایتون" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (در " -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "ساخت پرونده‌ی nojekyll برای انتشار سند در صفحات گیت-هاب" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "در حال رونوشت از تصاویر... " -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." -msgstr "لطفاً نام مسیر معتبری را وارد کنید." +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" +msgstr "نمی تواند پرونده‌ی تصویر %r: %s را کپی کند" -#: cmd/quickstart.py:110 -msgid "Please enter some text." -msgstr "لطفاً متنی وارد کنید." +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "رونوشت از پرونده‌های با پشتیبانی اطلاعات متن" -#: cmd/quickstart.py:117 +#: builders/texinfo.py:218 #, python-format -msgid "Please enter one of %s." -msgstr "لطفاً یکی از %s وارد کنید." +msgid "error writing file Makefile: %s" +msgstr "خطای نوشتن پرونده‌ی ساخت (Makefile) : %s" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." -msgstr "لطفاً یا y و یا n وارد کنید." - -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "لطفاً یک پسوند را وارد کنید، مثل: '.rst' یا '.txt'." - -#: cmd/quickstart.py:215 +#: builders/manpage.py:37 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "به ابزار شروع سریع اسفینکس %s خوش آمدید." +msgid "The manual pages are in %(outdir)s." +msgstr "صفحات راهنما در %(outdir)s است." -#: cmd/quickstart.py:219 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "لطفاً مقدارهای تنظیمات زیر را وارد کنید\n(اگر مقدار پیش‌گزیده‌ای درون داده کروشه شده بود، برای برای پذیرش آن فقط کلید Enter‌را فشار دهید)." +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "هیچ مقداری برای تنظیمات «صفحات راهنما» ا نشد؛ بنابراین هیچ صفحه‌ی راهنمایی نوشته نخواهد شد" -#: cmd/quickstart.py:227 +#: builders/manpage.py:64 #, python-format -msgid "Selected root path: %s" -msgstr "مسیر برگزیده‌ی ریشه‌ی مستندات: %s" - -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." -msgstr "مسیر ریشه‌ی مستندات را وارد کنید." - -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" -msgstr "مسیر ریشه‌ی مستندات" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "پیکربندی مقدارهای «صفحات راهنما» به سند ناشناخته‌ای ارجاع می‌دهند %s" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "خطا: در مسیر ریشه‌ی انتخاب شده‌، پرونده‌ی conf.pyی دیگری یپدا شد." +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." +msgstr "صفحه HTML در %(outdir)s است." -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "ابراز شروع سریع اسفینکس روی پروژه‌های از قبل موجود اسفینکس بازنویسی نمی‌کند." +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "سر جمع کرد تک سند" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "لطفاً یک مسیر ریشه‌ی جدید وارد کنید (یا برای خروج Enter‌ را بزنید)" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "نوشتن پرونده‌های اضافی" -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "شما برای تعیین شاخه‌ی ساخت برای برون‌داد اسفینکس دو گزینه دارید.\nیا از شاخه‌ای با نام \"_build\" درون شاخه‌ی ریشه استفاده کنید،\nو یا شاخه‌های را درون یک مسیر ریشه با نام‌های منبع (source) و ساخت (build) جدا کنید." +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "سازنده‌ی بدلی هیچ پرونده‌ای تولید نمی کند." -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" -msgstr "شاخه‌های منبع و ساخت از یکدیگر جدا شوند؟(y/n)" +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." +msgstr "سیاهه‌های پیام‌ها در %(outdir)s است." -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "درون شاخه‌ی ریشه، دو شاخه‌ی دیگر ساخته خواهد شد؛\n\"_templates\" برای قالب‌های سفارشی HTML و \"_static\" برای قالب برگه‌ها و بقیّه‌ی پرونده‌های ثابت.\nشما می‌توانید پیشوند دیگری (مانند «.») برای جایگزینی نویسه‌ی خط به کار ببرید." +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " +msgstr "ساخت [%s]: " -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" -msgstr "برای شاخه‌های قالب‌ها (templates) و ثابت‌ها (static) نویسه‌ی پیشوندی را بنویسید" +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" +msgstr "مقصد‌های قالب پرونده‌های %d" -#: cmd/quickstart.py:282 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "نام پروژه در چندین جا در سند ساخته شده به کار می‌رود." +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "خواندن قالب‌ها... " -#: cmd/quickstart.py:286 -msgid "Project name" -msgstr "نام پروژه" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "نوشتن سیاهه‌های پیام... " -#: cmd/quickstart.py:288 -msgid "Author name(s)" -msgstr "نام نویسنده (ها)" +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "به دنبال هر یک از خطاهای بالا در یا در برون‌داد و یا در %(outdir)s/output.txt بگردید" -#: cmd/quickstart.py:293 -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" -"just set both to the same value." -msgstr "اسفینکس نظریّه‌ای برای یک «نسخه» و یک «نگارش» برای نرم افزار دارد.\nهر نسخه‌ای می تواند چندید نگارش داشته باشد.\n مثلاً برای پایتون نسخه‌ چیزی شبیه به ۲/۵ یا ۳/۰ است،\n در حالی که انتشار چیزیست شبیه به ۲/۵/۱ یا ۳/۰a۱ \n.\nاگر شما نیازی به این ساختار دوگانه ندارید، هر دو را یکی تعیین کنید." +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" +msgstr "پیوند خراب: %s (%s)" -#: cmd/quickstart.py:301 -msgid "Project version" -msgstr "نسخه انتشار پروژه" +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" +msgstr "مهار '%s' پیدا نشد" -#: cmd/quickstart.py:303 -msgid "Project release" -msgstr "انتشار پروژه" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" -#: cmd/quickstart.py:308 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "اگر مستندات قرار است با زبانی غیر از انگلیسی نوشته شود،\nمی توانید همین‌جا یک زبان را با انتخاب کد زبانیش انتخاب کنید.\nاسفینکس سپس متن‌هایی را که تولید می‌کند را به آن زبان ترجمه می‌کند.\n\nبرای فهرست زبان‌های پشتیبانی شده، به این نشانی مراجعه کنید\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "شکست در گردآوری عبارات باقاعده در linkcheck_allowed_redirects: %r %s" -#: cmd/quickstart.py:317 -msgid "Project language" -msgstr "زبان پروژه" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." +msgstr "پرونده‌ی ePub در پوشه‌ی %(outdir)s است." -#: cmd/quickstart.py:324 -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 "پسوند نام پرونده برای پرونده‌های منبع. معمولاً این پسوند یا \".txt\" است و یا \".rst\".\nفقط پرونده‌هایی بای این پسوند به عنوان اسناد در نظر گرفته می‌شوند." +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "نوشتن پرونده‌ی nav.xhtml..." -#: cmd/quickstart.py:329 -msgid "Source file suffix" -msgstr "پسوند پرونده‌ی منبع" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "مقدار پیکربندی زبان پرونده epub (\"epub_language\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:334 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "یک سند از آن جهت خاص است که به عنوان بست بالایی «درختواره‌ی محتوا» در نظر گرفته می‌شود.\nیعنی، این سند ریشه‌ی ساختار سلسله مراتبی اسناد است.\nمعمولاً سند این کار «نمایه» است، ولی اگر سند «نمایه‌»‌ی شما قالب سفارشی است؛ می توانید آن را به نام دیگری تغییر دهید." +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "مقدار پیکربندی شناسه‌ی یکتای انتشار الکترونیکی (\"epub_uid\") باید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) یک XML NAME باشد" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" -msgstr "نام سند اصلی شما (بدون پسوند)" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "مقدار پیکربندی عنوان (\"html_title\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:352 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "خطا: پرونده‌ی اصلی %s از قبل در مسیر ریشه‌ی برگزیده بوده‌است." +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "مقدار پیکربندی مؤلّف (\"epub_author\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "ابراز شروع سریع اسفینکس روی پرونده‌های از قبل موجود بازنویسی نمی‌کند." +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "مقدار پیکربندی حامی (\"epub_contributor\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "لطفاُ یک نام جدید وارد کنید، یا نام پرونده‌ی موجود را تغییر دهید و Enter‌ را فشار دهید" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "مقدار پیکربندی توضیحات (\"epub_description\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "مشخّص کنید کدام یک از این افزونه‌های اسفینکس باید فعّال باشد:" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "مقدار پیکربندی ناشر (\"epub_publisher\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:381 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "یادداشت: ابزارهای‌ imgmath و mathjax نمی‌توانند در یک زمان فعّال باشند. انتخاب imgmath لغو شد." +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "مقدار پیکربندی حق انتشار (\"epub_copyright\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:391 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "پرونده‌های خط‌فرمان ویندوز و Makefile می‌توانند برای شما تولید شوند، به گونه‌ای که شما فقط نیاز باشد تا مثلاً فرمان `make html' را به جای فراخوان مستقیم ابزار ساخت اسفینکس اجرا کنید." +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "مقدار پیکربندی شناسه (\"epub_identifier\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" -msgstr "آیا پرونده‌ی‌ make ایجاد شود؟ (y/n)" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "مقدار پیکربندی ویراست (\"version\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" -msgstr "آیا پرونده‌ی خط فرمان ویندوز ساخته شود؟ (y/n)ٍ" +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "پرونده‌ی css نامعتبر%r: نادیده گرفته می‌شود" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: builders/xml.py:29 #, python-format -msgid "Creating file %s." -msgstr "ایجاد پرونده‌ی %s." +msgid "The XML files are in %(outdir)s." +msgstr "پرونده‌ی XML در پوشه‌ی %(outdir)s است." -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "File %s already exists, skipping." -msgstr "پرونده‌ی %s در حال حاضر وجود دارد، رد شدن." +msgid "error writing file %s: %s" +msgstr "خطای نوشتن پرونده: %s, %s" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." -msgstr "پایان یافت: ساختار آغازین شاخه ایجاد شد." +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "پرونده‌های شبه XML در پوشه‌ی %(outdir)s." -#: cmd/quickstart.py:504 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "شما باید حالا دیگر پرونده‌ی اصلی‌تان %s را جمع آوری کنید\n و بقیّه‌ی پرونده‌های منبع مستندات را ایجاد کنید. " +msgid "duplicated ToC entry found: %s" +msgstr "عنوان تکراری در فهرست مطالب پیدا شد:%s" -#: cmd/quickstart.py:512 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "از Makefile برای ساختن مستندات استفاده کنید، مانند این:\n make builder" +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "امکان خواندن پرونده‌ی تصویری %r نبود: در عوض کپی می‌شود" -#: cmd/quickstart.py:515 +#: builders/_epub_base.py:467 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "از فرمان ساخت اسفینکس برای ساختن مستندات استفاده کنید، مانند این:\n sphinx-build -b builder %s %s" +msgid "cannot write image file %r: %s" +msgstr "نمی تواند پرونده‌ی تصویری %r: %s را بنویسد" -#: cmd/quickstart.py:522 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "که در آن سازنده یکی از سازنده‌های پشتیبانی شده است، مانند html, latex و یا linkcheck." +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow پیدا نشد- رونوشت برداشتن از پرونده‌های تصویری" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nتولید پرونده‌های مورد نیاز برای یک پروژه‌ی اسفینکس\n\nابزار شروع سریع اسفینکس ابزاری تعاملی است که شماری سؤال درباره‌ی پروژه‌یتان از شما می پرسد\nو سپس یک شاخه‌ی کامل مستندات و پرونده ساخت Makefile را برای استفاده به همراه ابزار ساخت اسفینکس تولید می‌کند.\n" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "نوشتن پرونده‌های نوع رسانه..." -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." -msgstr "برای اطّلاعات بیشتر به بروید." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "نوشتن پرونده META-INF/container.xml..." -#: cmd/quickstart.py:577 -msgid "quiet mode" -msgstr "حالت سکوت" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "نوشتن پرونده‌ی content.opf..." -#: cmd/quickstart.py:587 -msgid "project root" -msgstr "ریشه‌ی پروژه" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "نوع رسانه‌ی ناشناخته %s، نادیده گرفته شد" -#: cmd/quickstart.py:590 -msgid "Structure options" -msgstr "گزینه‌های ساختار" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" -msgstr "در صورتی مشخّص شدن، شاخه‌های منبع و ساخت از یکدیگر جدا می‌شوند" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "نوشتن پرونده‌ی خلاصه toc.ncx..." -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" -msgstr "در صورت مشخّص بودن، شاخه‌ی build (ساخت) را درون شاخه‌ی منبع بساز" +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "نوشتن پرونده‌ی %s..." -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." -msgstr "جایگزینی نقطه در _templates (قالب‌ها) و ... ." +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "پرونده‌ی متنی در پوشه‌ی %(outdir)s است." -#: cmd/quickstart.py:611 -msgid "Project basic options" -msgstr "گزینه‌های اساسی پروژه" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "تصویر مناسبی برای سازنده‌ی %s پیدا نشد: %s (%s)" -#: cmd/quickstart.py:613 -msgid "project name" -msgstr "نام پروژه" +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "تصویر مناسبی برای سازنده‌ی %s پیدا نشد: %s" -#: cmd/quickstart.py:616 -msgid "author names" -msgstr "نام نویسندگان" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "ساخت پرونده‌ی [mo]: " -#: cmd/quickstart.py:623 -msgid "version of project" -msgstr "نسخه انتشار پروژه" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "نوشتن برون‌داد... " -#: cmd/quickstart.py:630 -msgid "release of project" -msgstr "انتشار پروژه" +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "همه‌ی پرونده‌های %d po" -#: cmd/quickstart.py:637 -msgid "document language" -msgstr "زبان سند" +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "اهداف برای %d پرونده‌های poی که مشخّص شده" -#: cmd/quickstart.py:640 -msgid "source file suffix" -msgstr "پسوند پرونده‌ی منبع" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "مقصد‌های %d پرونده‌های poی هستند که منسوخ شده‌اند" -#: cmd/quickstart.py:643 -msgid "master document name" -msgstr "نام سند اصلی" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "همه‌ی پرونده‌های منبع" -#: cmd/quickstart.py:646 -msgid "use epub" -msgstr "استفاده epub" +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" -msgstr "گزینه‌های افزونه" +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "پرونده‌ی %r که در خط فرمان داده شده، در شاخه‌ی منبع نیست, نادیده گرفته می‌شود" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: builders/__init__.py:353 #, python-format -msgid "enable %s extension" -msgstr "فعّال‌سازی %s افزونه" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" -msgstr "فعّال‌سازی افزونه‌های اختیاری" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "پرونده‌های منبع %d داده شده در خط فرمان" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" -msgstr "ایجاد Makefile و Batchfile" +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "مقصد‌های %d پرونده‌های منبعی هستند که منسوخ شده‌اند" -#: cmd/quickstart.py:672 -msgid "create makefile" -msgstr "ایجاد پرونده‌ی سازنده (makefile)" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "در پی پرونده‌هایی که الآن منسوخ هستند... " -#: cmd/quickstart.py:678 -msgid "do not create makefile" -msgstr "پرونده‌ی سازنده (makefile) را ایجاد نکن" +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "%d تا مورد پیدا شد" -#: cmd/quickstart.py:685 -msgid "create batchfile" -msgstr "ایجاد Batchfile" +#: builders/__init__.py:417 +msgid "none found" +msgstr "چیزی پیدا نشد" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" -msgstr "batchfile را ایجاد نکن" +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "بارگذاری محیط pickle شده" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" -msgstr "اسفتاده از حالت ایجاد برای پرونده‌های Makefile/make.bat" +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "بررسی ثبات" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" -msgstr "قالب سازی پروژه" +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "هیچ مقدار تاریخ منسوخ نیست." -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" -msgstr "شاخه‌ی قالب شامل پرونده‌های قالب" +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "به روز رسانی محیط: " -#: cmd/quickstart.py:716 -msgid "define a template variable" -msgstr "تعریف متغیّر قالب" +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "%s اضافه شد، %s تغییر کرد، %s حذف شد" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "حالت «ساکت» تعیین شده، ولی یکی از موارد «پروژه» یا «نویسنده» مشخّص نشده." +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" -#: cmd/quickstart.py:770 +#: builders/__init__.py:545 +#, python-format msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "خطا: مسیر مشخّص شده پوشه نیست، یا از قبل پرونده‌های اسفینکس وجود داشته‌اند." +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" -#: cmd/quickstart.py:777 +#: builders/__init__.py:556 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "ابزار شروع سریع اسفینکس فقط یک پوشه‌ی خالی درست می کند. لطفاً یک مسیر ریشه‌ی جدید مشخّص کنید." +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" -#: cmd/quickstart.py:795 +#: builders/__init__.py:563 #, python-format -msgid "Invalid template variable: %s" -msgstr "متغیرهای نامعتبرقالب؛ %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" -msgstr "در حین ساخت ایرادی رخ داد، شروع اشکال زدا:" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "خواندن منبع‌ها... " -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" -msgstr "قطع شد!" +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "نام مستندات برای نوشتن: %s" -#: cmd/build.py:67 -msgid "reST markup error:" -msgstr "خطای نشانه‌گذاری متن بازساختمند (reST)" +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" -msgstr "خطای کدگذاری نویسه:" +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "آماده سازی اسناد" -#: cmd/build.py:78 cmd/build.py:108 -#, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." -msgstr "اگر می‌‌خواهید مشکل را به توسعه‌دهندگان گزارش دهید، ردیابی کامل خطا در %s ذخیره شده است." +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" -msgstr "خطای بازگشتی:" +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "پرونده‌ی بازبینی در پوشه‌ی %(outdir)s است." -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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 زیاد کنید، مثلاً با:" +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "بدون تغییرات در نسخه‌ی %s." -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" -msgstr "ایراد رخ داد:" +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "نوشتن پرونده‌ی خلاصه..." -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "لطفاً اگر این مورد خطای کاربر بوده، آن را گزارش دهید تا برای بارهای بعدی پیام خطای بهتری بتواند ارائه شود." +#: builders/changes.py:79 +msgid "Builtins" +msgstr "درونی سازی" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" -msgstr "گزارش اشکال می تواند در ردیاب در مسیر ثبت شود. با سپاس!" +#: builders/changes.py:81 +msgid "Module level" +msgstr "در سطح ماژول" -#: cmd/build.py:144 -msgid "job number should be a positive number" -msgstr "شماره‌ی کار باید یک عدد مثبت باشد" +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "رونوشت از پرونده‌های مبدأ..." -#: cmd/build.py:154 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nایجاد مستندات از پرونده‌های مبدأ.\n\nسازنده‌ی اسفنکس مستندات را از روی پرونده های مبنع در پوشه‌‌ی منبع تولید کرده در پوشه‌ی برون‌داد قرار می‌دهد.\nاین سازنده در پوشه‌ی مبدأ به دنبال پرونده 'conf.py' تنظیمات پیکربندی می‌گردد.\nاین امکان وجود دارد که از ابزار شروع سریع اسفینکس ('sphinx-quickstart') برای تولید پرونده‌های قالب، که شامل پرونده 'conf.py' هم می‌شود استفاده شود.\n\nسازنده‌ی اسفینکس می توند مستندات را در قالب‌های گوناگونی از پرونده‌های خروجی ایجاد کند. قالب پرونده خروجی با مشخّص کردن نام سازنده در خط فرمان مشخّص می‌شود که به صورت پیش فرض HTML است. همچنین، سازنده‌ها می‌توانند کارهای دیگر مربوط به فرآیند پردازش مستندسازی را انجام دهند.\n\nبه صورت پیش فرض، هر چیزی که منسوخ شده باشد تولید می‌شود. برون‌داد برای پرونده‌های منتخب می‌تواند فقط با مشخّص کردن نام تک تک پرونده‌ها ساخته شود.\n" +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "نمی‌توان %r را برای ایجاد گزارش تغییرات خواند" -#: cmd/build.py:180 -msgid "path to documentation source files" -msgstr "مسیر پرونده‌های مستندات" +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "عبارت باقاعده‌ی نامعتبر %r در %s" -#: cmd/build.py:183 -msgid "path to output directory" -msgstr "مسیری برای شاخه‌ی برون داد" +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "امکان وارد کردن پیمانه‎ی %s نبود: %s" -#: cmd/build.py:188 +#: ext/coverage.py:148 +#, python-format msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/build.py:194 -msgid "general options" -msgstr "گزینه‌های کلی" - -#: cmd/build.py:201 -msgid "builder to use (default: 'html')" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/build.py:210 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/build.py:220 -msgid "write all files (default: only write new and changed files)" -msgstr "نوشتن همه‌ی پرونده‌ها (پیش‌گزیده: فقط پرونده‌های جدید نو تغییر یافته را بنویس)" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "عبارات باقاعده‌ی نامعتبر %r در پوشش عبارت باقاعده‌ی زبان سی (coverage_c_regexes)" -#: cmd/build.py:227 -msgid "don't use a saved environment, always read all files" -msgstr "از محیط ذخیره شده استفاده نکن، همیشه همه پرونده ها را بخوان" +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "رابط برنامه‌نویسی مستند نشده‌ی C: %s [%s] در پرونده‌ی %s" -#: cmd/build.py:230 -msgid "path options" -msgstr "" +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "تابع پایتونی بدون مستندات: %s :: %s" -#: cmd/build.py:236 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "کلاس مستندسازی نشده‌ی پایتون: %s :: %s" -#: cmd/build.py:246 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "شگرد مستندسازی نشده‌ی پایتون: %s :: %s :: %s" -#: cmd/build.py:255 -msgid "use no configuration file, only use settings from -D options" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/build.py:264 -msgid "override a setting in configuration file" -msgstr "نادیده گرفتن تنظیماتی در پرونده‌ی پیکره‌بندی" - -#: cmd/build.py:273 -msgid "pass a value into HTML templates" -msgstr "مقداری را به قالب‌های HTML بدهید" - -#: cmd/build.py:282 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "تعریف برچسب: «فقط» تکّه‌های با برچسب گنجانده شود" - -#: cmd/build.py:289 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:292 -msgid "console output options" -msgstr "گزنیه‌های برون‌داد میز فرمان" - -#: cmd/build.py:299 -msgid "increase verbosity (can be repeated)" -msgstr "افزایش ارائه‌ی جزئیّات (می تواند تکرار شود)" +#: ext/todo.py:61 +msgid "Todo" +msgstr "در دست انجام" -#: cmd/build.py:306 ext/apidoc.py:413 -msgid "no output on stdout, just warnings on stderr" -msgstr "بدون برون‌داد در درگاه خروجی استاندارد(stdout)، فقط هشدارها در درگاه استاندارد خطاها (stderr)" +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "مدخل فهرست اقدام پیدا شد: %s" -#: cmd/build.py:313 -msgid "no output at all, not even warnings" -msgstr "بدون هیچ برون‌داد، حتّی بدون هشدار" +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" -#: cmd/build.py:321 -msgid "do emit colored output (default: auto-detect)" -msgstr "خروجی رنگ شده منتشر شود (پیش‌فرض: تشخیص خودکار)" +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "( در%s و سطر %d جای گرفته است.)" -#: cmd/build.py:329 -msgid "do not emit colored output (default: auto-detect)" -msgstr "خروجی رنگ شده منتشر نشود (پیش‌فرض: تشخیص خودکار)" +#: ext/todo.py:166 +msgid "original entry" +msgstr "مدخل اصلی" -#: cmd/build.py:332 -msgid "warning control options" +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/build.py:338 -msgid "write warnings (and errors) to given file" -msgstr "نوشتن هشدارها (و خطاها) در پرونده‌ی داده شده" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "تبدیل با خطایی از کار افتاد:\n[stderr]\n%r\n[stdout]\n%r" -#: cmd/build.py:345 -msgid "turn warnings into errors" -msgstr "تغییر هشدارها به خطاها" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "فرمان تبدیل %r را نمی توان اجرا کرد، تنظیمات image_converter را بررسی کنید" -#: cmd/build.py:353 -msgid "show full traceback on exception" -msgstr "نمایش گزارش کامل ردیابی ایراد" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "دستورالعمل Graphviz نمی تواند هم نشانوند محتوا را داشته باشد و هم نام پرونده" -#: cmd/build.py:356 -msgid "run Pdb on exception" -msgstr "ایراد در اجرای Pdb" +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" +msgstr "پرونده گنجانده شده‌ی خارجی Graphviz %r یا پیدا نشد و یا خواندنش با شکست رو به رو شد" -#: cmd/build.py:362 -msgid "raise an exception on warnings" +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "نادیده گرفتن دستورالعمل «graphviz» بدون محتوا." + +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/build.py:405 -msgid "cannot combine -a option and filenames" -msgstr "نمی توان گزینه‌ی -a را با نام پرونده‌ها ترکیب کرد" +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "فرمان dot %r نمی‌تواند اجرا شود (زیرا نیازمند برون‌داد graphviz است)، تنظیمات graphviz_dot را بررسی کنید" -#: cmd/build.py:437 +#: ext/graphviz.py:339 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot با خطایی از کار افتاد:\n[stderr]\n%r\n[stdout]\n%r" -#: cmd/build.py:456 -msgid "-D option argument must be in the form name=value" -msgstr "نشانوند گزینه‌ی D- می‌بایست در قالب نام=مقدار (name=value) باشد" +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot هیچ پرونده‌ی برون‌دادی تولید نکرد:\n[stderr]\n%r\n[stdout]\n%r" -#: cmd/build.py:463 -msgid "-A option argument must be in the form name=value" -msgstr "نشانوند گزینه‌ی A- می‌بایست در قالب نام=مقدار (name=value) باشد" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "سازنده‌ی بدلی هیچ پرونده‌ای تولید نمی کند." +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "کد دات: %r: %s" -#: builders/linkcheck.py:75 +#: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "به دنبال هر یک از خطاهای بالا در یا در برون‌داد و یا در %(outdir)s/output.txt بگردید" +msgid "[graph: %s]" +msgstr "[گراف:%s]" -#: builders/linkcheck.py:146 +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[گراف:]" + +#: ext/imgmath.py:148 #, python-format -msgid "broken link: %s (%s)" -msgstr "پیوند خراب: %s (%s)" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "فرمان لتکس %r را نمی توان اجرا کرد(برای نمایش ریاضی لازم است)، تنظیمات imgmath_latex را بررسی کنید" -#: builders/linkcheck.py:540 +#: ext/imgmath.py:167 #, python-format -msgid "Anchor '%s' not found" -msgstr "مهار '%s' پیدا نشد" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%sفرمان %r را نمی توان اجرا کرد(برای نمایش ریاضی لازم است)، تنظیمات imgmath_%s را بررسی کنید" -#: builders/linkcheck.py:742 +#: ext/imgmath.py:326 #, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "شکست در گردآوری عبارات باقاعده در linkcheck_allowed_redirects: %r %s" +msgid "display latex %r: %s" +msgstr "نمایش لتکس: %r: %s" -#: builders/singlehtml.py:37 +#: ext/imgmath.py:362 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "صفحه HTML در %(outdir)s است." +msgid "inline latex %r: %s" +msgstr "لتکس بین سطری: %r: %s" -#: builders/singlehtml.py:173 -msgid "assembling single document" -msgstr "سر جمع کرد تک سند" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" -msgstr "در حال نوشتن" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "فاقد «+» یا «-» در گزینه‌ی '%s'." -#: builders/singlehtml.py:191 -msgid "writing additional files" -msgstr "نوشتن پرونده‌های اضافی" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "\"%s\" یک گزینه‌ی معتبر نیست." -#: builders/manpage.py:39 +#: ext/doctest.py:139 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "صفحات راهنما در %(outdir)s است." +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' یک گزینه‌ی معتبر نسخه‌ی پایتون (pyversion) نیست" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "هیچ مقداری برای تنظیمات «صفحات راهنما» ا نشد؛ بنابراین هیچ صفحه‌ی راهنمایی نوشته نخواهد شد" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "نوع TestCode نامعتبر" -#: builders/manpage.py:73 +#: ext/doctest.py:297 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "پیکربندی مقدارهای «صفحات راهنما» به سند ناشناخته‌ای ارجاع می‌دهند %s" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "آزمایش مستندات منابع به پایان رسید، به نتایج در %(outdir)s/output.txt نگاهی بیاندازید." -#: builders/text.py:34 +#: ext/doctest.py:451 #, python-format -msgid "The text files are in %(outdir)s." -msgstr "پرونده‌ی متنی در پوشه‌ی %(outdir)s است." +msgid "no code/output in %s block at %s:%s" +msgstr "بدون کد/خروجی در تکّه‌ی %s در %s:%s" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: ext/doctest.py:568 #, python-format -msgid "error writing file %s: %s" -msgstr "خطای نوشتن پرونده: %s, %s" +msgid "ignoring invalid doctest code: %r" +msgstr "نادیده گرفتن کد پیمانه‌ی doctest : %r" -#: builders/xml.py:38 +#: ext/autosectionlabel.py:52 #, python-format -msgid "The XML files are in %(outdir)s." -msgstr "پرونده‌ی XML در پوشه‌ی %(outdir)s است." +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: builders/xml.py:110 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "پرونده‌های شبه XML در پوشه‌ی %(outdir)s." +msgid "duplicate label %s, other instance in %s" +msgstr "بر چسب تکراری %s، مورد دیگر در %s قرار دارد" -#: builders/texinfo.py:47 +#: ext/duration.py:47 #, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "پرونده‌ی اطّلاعات متن در پوشه‌ی %(outdir)s است." +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: builders/texinfo.py:49 +#: ext/duration.py:117 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nدر آن شاخه فرمان 'make' را اجرا کنید تا این‌ها رh با makeinfo اجرا کند\n(برای انجام خودکار `make info' را به کار ببرید)." - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "هیچ تنظیماتی برای «صفحات راهنما» پیدا نشد؛ بنابراین هیچ صفحه‌ی راهنمایی نوشته نخواهد شد" +"====================== total reading duration ==========================" +msgstr "" -#: builders/texinfo.py:90 +#: ext/duration.py:124 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "مقدار پیکربندی اطّلاعات متن سندها (texinfo_documents) به سند ناشناخته‌ی %s ارجاع می‌دهد" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" + +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== کند ترین زمان خواندن =======================" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 +#: ext/duration.py:139 #, python-format -msgid "processing %s" -msgstr "در حال پردازش %s" +msgid "%.3fs %s" +msgstr "" -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." -msgstr "حل ارجاع‌ها..." +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[منبع]" -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr " (در " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "برجسته کردن کد پیمانه... " -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "در حال رونوشت از تصاویر... " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[مستندات]" + +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "کد ماژول" -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 +#: ext/viewcode.py:359 #, python-format -msgid "cannot copy image file %r: %s" -msgstr "نمی تواند پرونده‌ی تصویر %r: %s را کپی کند" +msgid "

Source code for %s

" +msgstr "

کد منبع برای %s

" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "رونوشت از پرونده‌های با پشتیبانی اطلاعات متن" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "بررسی اجمالی: کد ماژول" -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "خطای نوشتن پرونده‌ی ساخت (Makefile) : %s" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

همه‌ی پیمانه‌هایی که برایشان کد در دسترس است

" -#: builders/gettext.py:230 +#: domains/citation.py:75 #, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "سیاهه‌های پیام‌ها در %(outdir)s است." +msgid "duplicate citation %s, other instance in %s" +msgstr "نقل‌قول %s تکراری، مورد دیگر در %s قرار دارد" -#: builders/__init__.py:383 builders/gettext.py:251 +#: domains/citation.py:92 #, python-format -msgid "building [%s]: " -msgstr "ساخت [%s]: " +msgid "Citation [%s] is not referenced." +msgstr "نقل [%s] قول ارجاع داده نشده." -#: builders/gettext.py:252 +#: domains/math.py:73 #, python-format -msgid "targets for %d template files" -msgstr "مقصد‌های قالب پرونده‌های %d" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "بر چسب معادله ی %s تکرار است، مورد دیگر در %s قرار دارد" -#: builders/gettext.py:257 -msgid "reading templates... " -msgstr "خواندن قالب‌ها... " +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "قالب مرجع معادله‌‌ی ریاضی (math_eqref_format) نامعتبر: %r" -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "نوشتن سیاهه‌های پیام... " +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (توابع درونی)" -#: builders/__init__.py:212 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "تصویر مناسبی برای سازنده‌ی %s پیدا نشد: %s (%s)" +msgid "%s() (%s method)" +msgstr "%s() (%s متد)" -#: builders/__init__.py:220 +#: domains/javascript.py:186 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "تصویر مناسبی برای سازنده‌ی %s پیدا نشد: %s" +msgid "%s() (class)" +msgstr "%s (کلاس)" -#: builders/__init__.py:243 -msgid "building [mo]: " -msgstr "ساخت پرونده‌ی [mo]: " +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "%s (متغیّر عمومی یا مقدار ثابت)" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " -msgstr "نوشتن برون‌داد... " +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (%s مشخصه)" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "نشانوندها" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "ایجاد" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "بازگشت ها" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "نوع برگشتی" -#: builders/__init__.py:263 +#: domains/javascript.py:374 #, python-format -msgid "all of %d po files" -msgstr "همه‌ی پرونده‌های %d po" +msgid "%s (module)" +msgstr "%s (ماژول)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "تابع" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "متد" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "کلاس" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "داده" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "مشخّصه" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "ماژول" -#: builders/__init__.py:285 +#: domains/javascript.py:458 #, python-format -msgid "targets for %d po files that are specified" -msgstr "اهداف برای %d پرونده‌های poی که مشخّص شده" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "توضیح %s تکراری از %s، مورد دیگر%s در %s قرار دارد" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "مقصد‌های %d پرونده‌های poی هستند که منسوخ شده‌اند" +msgid "%s (directive)" +msgstr "%s (دستورالمعل)" -#: builders/__init__.py:307 -msgid "all source files" -msgstr "همه‌ی پرونده‌های منبع" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr "%s (گزینه‌ی دستورالمعل)" -#: builders/__init__.py:319 +#: domains/rst.py:224 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +msgid "%s (role)" +msgstr "%s (نقش)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "دستورالمعل" + +#: domains/rst.py:235 +msgid "directive-option" +msgstr "گزینه‌ی دستورالمعل" -#: builders/__init__.py:325 +#: domains/rst.py:236 +msgid "role" +msgstr "نقش" + +#: domains/rst.py:262 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "پرونده‌ی %r که در خط فرمان داده شده، در شاخه‌ی منبع نیست, نادیده گرفته می‌شود" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "توضیح تکراری از %s %s، مورد دیگر در %s قرار دارد" -#: builders/__init__.py:336 +#: domains/changeset.py:32 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:351 +#: domains/changeset.py:33 #, python-format -msgid "%d source files given on command line" -msgstr "پرونده‌های منبع %d داده شده در خط فرمان" +msgid "Changed in version %s" +msgstr "تغییر داده شده در نسخه %s" -#: builders/__init__.py:366 +#: domains/changeset.py:34 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "مقصد‌های %d پرونده‌های منبعی هستند که منسوخ شده‌اند" - -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " -msgstr "در پی پرونده‌هایی که الآن منسوخ هستند... " +msgid "Deprecated since version %s" +msgstr "منسوخ شده از نسخه %s" -#: builders/__init__.py:398 +#: domains/changeset.py:35 #, python-format -msgid "%d found" -msgstr "%d تا مورد پیدا شد" +msgid "Removed in version %s" +msgstr "" -#: builders/__init__.py:400 -msgid "none found" -msgstr "چیزی پیدا نشد" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:407 -msgid "pickling environment" -msgstr "بارگذاری محیط pickle شده" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "شماره‌ی کار باید یک عدد مثبت باشد" -#: builders/__init__.py:414 -msgid "checking consistency" -msgstr "بررسی ثبات" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "برای اطّلاعات بیشتر به بروید." -#: builders/__init__.py:418 -msgid "no targets are out of date." -msgstr "هیچ مقدار تاریخ منسوخ نیست." +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nایجاد مستندات از پرونده‌های مبدأ.\n\nسازنده‌ی اسفنکس مستندات را از روی پرونده های مبنع در پوشه‌‌ی منبع تولید کرده در پوشه‌ی برون‌داد قرار می‌دهد.\nاین سازنده در پوشه‌ی مبدأ به دنبال پرونده 'conf.py' تنظیمات پیکربندی می‌گردد.\nاین امکان وجود دارد که از ابزار شروع سریع اسفینکس ('sphinx-quickstart') برای تولید پرونده‌های قالب، که شامل پرونده 'conf.py' هم می‌شود استفاده شود.\n\nسازنده‌ی اسفینکس می توند مستندات را در قالب‌های گوناگونی از پرونده‌های خروجی ایجاد کند. قالب پرونده خروجی با مشخّص کردن نام سازنده در خط فرمان مشخّص می‌شود که به صورت پیش فرض HTML است. همچنین، سازنده‌ها می‌توانند کارهای دیگر مربوط به فرآیند پردازش مستندسازی را انجام دهند.\n\nبه صورت پیش فرض، هر چیزی که منسوخ شده باشد تولید می‌شود. برون‌داد برای پرونده‌های منتخب می‌تواند فقط با مشخّص کردن نام تک تک پرونده‌ها ساخته شود.\n" -#: builders/__init__.py:458 -msgid "updating environment: " -msgstr "به روز رسانی محیط: " +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "مسیر پرونده‌های مستندات" -#: builders/__init__.py:483 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s اضافه شد، %s تغییر کرد، %s حذف شد" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "مسیری برای شاخه‌ی برون داد" -#: builders/__init__.py:519 -#, python-format +#: cmd/build.py:109 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:528 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +#: cmd/build.py:114 +msgid "general options" +msgstr "گزینه‌های کلی" -#: builders/__init__.py:539 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " -msgstr "خواندن منبع‌ها... " +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "نوشتن همه‌ی پرونده‌ها (پیش‌گزیده: فقط پرونده‌های جدید نو تغییر یافته را بنویس)" -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" -msgstr "نام مستندات برای نوشتن: %s" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "از محیط ذخیره شده استفاده نکن، همیشه همه پرونده ها را بخوان" -#: builders/__init__.py:711 -msgid "preparing documents" -msgstr "آماده سازی اسناد" +#: cmd/build.py:150 +msgid "path options" +msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "نویسه‌ی منبع غیرقابل رمزگشایی، جایگزین با «؟» : %r" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "پرونده‌ی ePub در پوشه‌ی %(outdir)s است." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "نوشتن پرونده‌ی nav.xhtml..." +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "نادیده گرفتن تنظیماتی در پرونده‌ی پیکره‌بندی" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "مقدار پیکربندی زبان پرونده epub (\"epub_language\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "مقداری را به قالب‌های HTML بدهید" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "مقدار پیکربندی شناسه‌ی یکتای انتشار الکترونیکی (\"epub_uid\") باید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) یک XML NAME باشد" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "تعریف برچسب: «فقط» تکّه‌های با برچسب گنجانده شود" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "مقدار پیکربندی عنوان (\"html_title\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "مقدار پیکربندی مؤلّف (\"epub_author\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:212 +msgid "console output options" +msgstr "گزنیه‌های برون‌داد میز فرمان" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "مقدار پیکربندی حامی (\"epub_contributor\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "افزایش ارائه‌ی جزئیّات (می تواند تکرار شود)" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "مقدار پیکربندی توضیحات (\"epub_description\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "بدون برون‌داد در درگاه خروجی استاندارد(stdout)، فقط هشدارها در درگاه استاندارد خطاها (stderr)" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "مقدار پیکربندی ناشر (\"epub_publisher\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "بدون هیچ برون‌داد، حتّی بدون هشدار" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "مقدار پیکربندی حق انتشار (\"epub_copyright\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "خروجی رنگ شده منتشر شود (پیش‌فرض: تشخیص خودکار)" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "مقدار پیکربندی شناسه (\"epub_identifier\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "خروجی رنگ شده منتشر نشود (پیش‌فرض: تشخیص خودکار)" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "مقدار پیکربندی ویراست (\"version\") نباید برای نسخه‌ی سوم پرونده‌های انتشار الکترونیک(EPUB3) خالی باشد" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "پرونده‌ی css نامعتبر%r: نادیده گرفته می‌شود" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "نوشتن هشدارها (و خطاها) در پرونده‌ی داده شده" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "عنوان تکراری در فهرست مطالب پیدا شد:%s" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "تغییر هشدارها به خطاها" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "امکان خواندن پرونده‌ی تصویری %r نبود: در عوض کپی می‌شود" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "نمایش گزارش کامل ردیابی ایراد" -#: builders/_epub_base.py:465 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "نمی تواند پرونده‌ی تصویری %r: %s را بنویسد" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "ایراد در اجرای Pdb" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" -msgstr "Pillow پیدا نشد- رونوشت برداشتن از پرونده‌های تصویری" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." -msgstr "نوشتن پرونده‌های نوع رسانه..." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "نمی توان گزینه‌ی -a را با نام پرونده‌ها ترکیب کرد" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." -msgstr "نوشتن پرونده META-INF/container.xml..." +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" +msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "نوشتن پرونده‌ی content.opf..." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "نشانوند گزینه‌ی D- می‌بایست در قالب نام=مقدار (name=value) باشد" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "نوع رسانه‌ی ناشناخته %s، نادیده گرفته شد" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "نشانوند گزینه‌ی A- می‌بایست در قالب نام=مقدار (name=value) باشد" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "درج خودکار رشته‌مستندات را از پیمانه‌ها" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." -msgstr "نوشتن پرونده‌ی خلاصه toc.ncx..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "آزمایش خودکار تکّه‌کدها در قسمت‌های مختلف پیمانه‌ی doctest" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." -msgstr "نوشتن پرونده‌ی %s..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "پیوند بین اسناد Sphinx از پروژه های گوناگون" -#: builders/changes.py:33 -#, python-format -msgid "The overview file is in %(outdir)s." -msgstr "پرونده‌ی بازبینی در پوشه‌ی %(outdir)s است." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "نوشتن مدخل‌های لیست اقدام‌ها (\"todo\")که در ساخت می تواند نشان داده و یا پنهان شوند" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." -msgstr "بدون تغییرات در نسخه‌ی %s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "بررسی برای پوشش اسناد" -#: builders/changes.py:62 -msgid "writing summary file..." -msgstr "نوشتن پرونده‌ی خلاصه..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "گنجاندن رابطه‌های ریاضی که در قالب PNG یا SVG به نمایش در آمده" -#: builders/changes.py:74 -msgid "Builtins" -msgstr "درونی سازی" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "گنجاندن رابطه‌های ریاضی که MathJax در مرورگر نمایش در آورده" -#: builders/changes.py:76 -msgid "Module level" -msgstr "در سطح ماژول" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "گنجاندن شرطی محتوا بر اساس مقادیر پیکربندی" -#: builders/changes.py:128 -msgid "copying source files..." -msgstr "رونوشت از پرونده‌های مبدأ..." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "گنجاندن ویندهای کد منبع اشیاء مستند شده‌ی پایتون" -#: builders/changes.py:137 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "نمی‌توان %r را برای ایجاد گزارش تغییرات خواند" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "ساخت پرونده‌ی nojekyll برای انتشار سند در صفحات گیت-هاب" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" -msgstr "نقش پیش‌فرض %s یافت نشد" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "لطفاً نام مسیر معتبری را وارد کنید." -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "لطفاً متنی وارد کنید." -#: util/osutil.py:130 +#: cmd/quickstart.py:134 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +msgid "Please enter one of %s." +msgstr "لطفاً یکی از %s وارد کنید." -#: util/nodes.py:419 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "لطفاً یا y و یا n وارد کنید." -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "درختواره‌ی فهرست مطالب شامل ارجاع به پرونده ناموجود %r است" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "لطفاً یک پسوند را وارد کنید، مثل: '.rst' یا '.txt'." -#: util/nodes.py:701 +#: cmd/quickstart.py:230 #, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "ایراد در هنگام ارزیابی تنها عبارت دستور العمل: %s" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "به ابزار شروع سریع اسفینکس %s خوش آمدید." -#: util/fileutil.py:74 -#, python-format +#: cmd/quickstart.py:235 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "لطفاً مقدارهای تنظیمات زیر را وارد کنید\n(اگر مقدار پیش‌گزیده‌ای درون داده کروشه شده بود، برای برای پذیرش آن فقط کلید Enter‌را فشار دهید)." -#: util/fileutil.py:89 +#: cmd/quickstart.py:242 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +msgid "Selected root path: %s" +msgstr "مسیر برگزیده‌ی ریشه‌ی مستندات: %s" -#: util/inventory.py:170 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "مسیر ریشه‌ی مستندات را وارد کنید." -#: util/inventory.py:185 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "مسیر ریشه‌ی مستندات" -#: util/docutils.py:284 -#, python-format -msgid "unknown directive or role name: %s:%s" -msgstr "نام نقش یا دستورالعمل ناشناخته: %s:%s" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "خطا: در مسیر ریشه‌ی انتخاب شده‌، پرونده‌ی conf.pyی دیگری یپدا شد." -#: util/docutils.py:747 -#, python-format -msgid "unknown node type: %r" -msgstr "بست از نوع ناشناخته: %r" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "ابراز شروع سریع اسفینکس روی پروژه‌های از قبل موجود اسفینکس بازنویسی نمی‌کند." -#: util/display.py:81 -msgid "skipped" -msgstr "رد شدن و نادیده انگاشتن" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "لطفاً یک مسیر ریشه‌ی جدید وارد کنید (یا برای خروج Enter‌ را بزنید)" -#: util/display.py:86 -msgid "failed" -msgstr "شکست خورد" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "شما برای تعیین شاخه‌ی ساخت برای برون‌داد اسفینکس دو گزینه دارید.\nیا از شاخه‌ای با نام \"_build\" درون شاخه‌ی ریشه استفاده کنید،\nو یا شاخه‌های را درون یک مسیر ریشه با نام‌های منبع (source) و ساخت (build) جدا کنید." -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" -msgstr "خطای خواندن: %s, %s" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "شاخه‌های منبع و ساخت از یکدیگر جدا شوند؟(y/n)" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" -msgstr "خطای نوشتن: %s, %s" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "درون شاخه‌ی ریشه، دو شاخه‌ی دیگر ساخته خواهد شد؛\n\"_templates\" برای قالب‌های سفارشی HTML و \"_static\" برای قالب برگه‌ها و بقیّه‌ی پرونده‌های ثابت.\nشما می‌توانید پیشوند دیگری (مانند «.») برای جایگزینی نویسه‌ی خط به کار ببرید." -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "برای شاخه‌های قالب‌ها (templates) و ثابت‌ها (static) نویسه‌ی پیشوندی را بنویسید" -#: util/i18n.py:230 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "قالب تاریخ ناشناخته. اگر می‌خواهید از رشته‌متن مستقیماً خروجی بگیرید، آن را با نقل قول رشته‌متنی محصور کنید: %s" +"The project name will occur in several places in the built documentation." +msgstr "نام پروژه در چندین جا در سند ساخته شده به کار می‌رود." -#: directives/patches.py:66 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "گزینه‌ی \":file:\" برای دستورالمعل جدول داده‌های جداشده با کاما (csv-table) حالا دیگر مسیر ثابت را یک مسیر نسبی از شاخه‌ی منبع در نظر می گیرد. لطفاُ سندتان را به روز رسانی کنید." +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "نام پروژه" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "غیرفاصله‌ در فرآیند حذف فاصله‌ از ابتدای سطر حذف شد" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "نام نویسنده (ها)" -#: directives/code.py:87 -#, python-format -msgid "Invalid caption: %s" -msgstr "برچسب نامعتبر:%s" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "اسفینکس نظریّه‌ای برای یک «نسخه» و یک «نگارش» برای نرم افزار دارد.\nهر نسخه‌ای می تواند چندید نگارش داشته باشد.\n مثلاً برای پایتون نسخه‌ چیزی شبیه به ۲/۵ یا ۳/۰ است،\n در حالی که انتشار چیزیست شبیه به ۲/۵/۱ یا ۳/۰a۱ \n.\nاگر شما نیازی به این ساختار دوگانه ندارید، هر دو را یکی تعیین کنید." -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 -#, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "شماره‌ی سطر مشخّص شده خارج از بازه‌ی (1-%d) است: %r" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "نسخه انتشار پروژه" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "امکان استفاده از هر دوی %sو%s نیست" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "انتشار پروژه" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "اگر مستندات قرار است با زبانی غیر از انگلیسی نوشته شود،\nمی توانید همین‌جا یک زبان را با انتخاب کد زبانیش انتخاب کنید.\nاسفینکس سپس متن‌هایی را که تولید می‌کند را به آن زبان ترجمه می‌کند.\n\nبرای فهرست زبان‌های پشتیبانی شده، به این نشانی مراجعه کنید\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: directives/code.py:234 -#, python-format +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "زبان پروژه" + +#: cmd/quickstart.py:340 msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." +msgstr "پسوند نام پرونده برای پرونده‌های منبع. معمولاً این پسوند یا \".txt\" است و یا \".rst\".\nفقط پرونده‌هایی بای این پسوند به عنوان اسناد در نظر گرفته می‌شوند." -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "شیئ با نام %r در پرونده‌ی %r پیدا نشد" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "پسوند پرونده‌ی منبع" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "امکان استفاده‌ی گزینه‌ی «هم‌خوان شماره‌ی سطر» (lineno-match) با مجموعه‌ی سطرهای گسیخته وجود ندارد" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "یک سند از آن جهت خاص است که به عنوان بست بالایی «درختواره‌ی محتوا» در نظر گرفته می‌شود.\nیعنی، این سند ریشه‌ی ساختار سلسله مراتبی اسناد است.\nمعمولاً سند این کار «نمایه» است، ولی اگر سند «نمایه‌»‌ی شما قالب سفارشی است؛ می توانید آن را به نام دیگری تغییر دهید." -#: directives/code.py:314 -#, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "سطر مشخّص شده %r: هیچ سطری از پرونده‌ی گنجانده شده %r بیرون کشیده نشده" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "نام سند اصلی شما (بدون پسوند)" -#: directives/other.py:122 +#: cmd/quickstart.py:368 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "خطا: پرونده‌ی اصلی %s از قبل در مسیر ریشه‌ی برگزیده بوده‌است." -#: directives/other.py:155 environment/adapters/toctree.py:355 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "درختواره‌ی فهرست مطالب ارجاعی به سند کنار گذاشته شده %r را دارد" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "ابراز شروع سریع اسفینکس روی پرونده‌های از قبل موجود بازنویسی نمی‌کند." -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "لطفاُ یک نام جدید وارد کنید، یا نام پرونده‌ی موجود را تغییر دهید و Enter‌ را فشار دهید" + +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "مشخّص کنید کدام یک از این افزونه‌های اسفینکس باید فعّال باشد:" + +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "یادداشت: ابزارهای‌ imgmath و mathjax نمی‌توانند در یک زمان فعّال باشند. انتخاب imgmath لغو شد." + +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "پرونده‌های خط‌فرمان ویندوز و Makefile می‌توانند برای شما تولید شوند، به گونه‌ای که شما فقط نیاز باشد تا مثلاً فرمان `make html' را به جای فراخوان مستقیم ابزار ساخت اسفینکس اجرا کنید." + +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "آیا پرونده‌ی‌ make ایجاد شود؟ (y/n)" + +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "آیا پرونده‌ی خط فرمان ویندوز ساخته شود؟ (y/n)ٍ" + +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "فهرست مطالب شامل ارجاع به سند ناموجود %r است" +msgid "Creating file %s." +msgstr "ایجاد پرونده‌ی %s." -#: directives/other.py:171 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" +msgid "File %s already exists, skipping." +msgstr "پرونده‌ی %s در حال حاضر وجود دارد، رد شدن." -#: directives/other.py:204 -msgid "Section author: " -msgstr "نویسنده این بخش: " +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "پایان یافت: ساختار آغازین شاخه ایجاد شد." -#: directives/other.py:206 -msgid "Module author: " -msgstr "نویسنده این ماژول: " +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "شما باید حالا دیگر پرونده‌ی اصلی‌تان %s را جمع آوری کنید\n و بقیّه‌ی پرونده‌های منبع مستندات را ایجاد کنید. " -#: directives/other.py:208 -msgid "Code author: " -msgstr "نویسنده ی کد: " +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "از Makefile برای ساختن مستندات استفاده کنید، مانند این:\n make builder" -#: directives/other.py:210 -msgid "Author: " -msgstr "نویسنده: " +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "از فرمان ساخت اسفینکس برای ساختن مستندات استفاده کنید، مانند این:\n sphinx-build -b builder %s %s" -#: directives/other.py:284 -msgid ".. acks content is not a list" -msgstr "" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "که در آن سازنده یکی از سازنده‌های پشتیبانی شده است، مانند html, latex و یا linkcheck." -#: directives/other.py:309 -msgid ".. hlist content is not a list" -msgstr "" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nتولید پرونده‌های مورد نیاز برای یک پروژه‌ی اسفینکس\n\nابزار شروع سریع اسفینکس ابزاری تعاملی است که شماری سؤال درباره‌ی پروژه‌یتان از شما می پرسد\nو سپس یک شاخه‌ی کامل مستندات و پرونده ساخت Makefile را برای استفاده به همراه ابزار ساخت اسفینکس تولید می‌کند.\n" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "حالت سکوت" -#: _cli/__init__.py:75 -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "ریشه‌ی پروژه" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "گزینه‌های ساختار" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "در صورتی مشخّص شدن، شاخه‌های منبع و ساخت از یکدیگر جدا می‌شوند" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "در صورت مشخّص بودن، شاخه‌ی build (ساخت) را درون شاخه‌ی منبع بساز" -#: _cli/__init__.py:112 _cli/__init__.py:183 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "جایگزینی نقطه در _templates (قالب‌ها) و ... ." -#: _cli/__init__.py:172 -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "گزینه‌های اساسی پروژه" -#: _cli/__init__.py:182 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "نام پروژه" -#: _cli/__init__.py:194 -msgid "Show the version and exit." -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "نام نویسندگان" -#: _cli/__init__.py:202 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "نسخه انتشار پروژه" -#: _cli/__init__.py:206 -msgid "Logging" -msgstr "" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "انتشار پروژه" -#: _cli/__init__.py:213 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "زبان سند" -#: _cli/__init__.py:221 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "پسوند پرونده‌ی منبع" -#: _cli/__init__.py:228 -msgid "No output at all" -msgstr "" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "نام سند اصلی" -#: _cli/__init__.py:234 -msgid "" -msgstr "" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "استفاده epub" -#: _cli/__init__.py:265 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "گزینه‌های افزونه" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 +#: cmd/quickstart.py:671 #, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" +msgid "enable %s extension" +msgstr "فعّال‌سازی %s افزونه" -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "فعّال‌سازی افزونه‌های اختیاری" -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "ایجاد Makefile و Batchfile" -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "نمایه‌ای بر پایه‌ی ۴ ستون پیدا شد. شاید یک اشکال برنامه‌نویسی از افزونه‌هایی که استفاده می‌کنید باشد: %r" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "ایجاد پرونده‌ی سازنده (makefile)" -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "پانویس [%s] ارجاع داده نشده است." +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "پرونده‌ی سازنده (makefile) را ایجاد نکن" -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "ایجاد Batchfile" -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "پانویس [#] ارجاع داده نشده است." +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "batchfile را ایجاد نکن" -#: transforms/i18n.py:228 transforms/i18n.py:303 -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "ارجاعات پانویس ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "اسفتاده از حالت ایجاد برای پرونده‌های Makefile/make.bat" -#: transforms/i18n.py:273 -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "ارجاعات ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "قالب سازی پروژه" -#: transforms/i18n.py:323 -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "ارجاعات نقل قول ادبی ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "شاخه‌ی قالب شامل پرونده‌های قالب" -#: transforms/i18n.py:345 -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "ارجاعات اصطلاحی ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "تعریف متغیّر قالب" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" -msgstr "[منبع]" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "حالت «ساکت» تعیین شده، ولی یکی از موارد «پروژه» یا «نویسنده» مشخّص نشده." -#: ext/imgconverter.py:40 -#, python-format +#: cmd/quickstart.py:786 msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "خطا: مسیر مشخّص شده پوشه نیست، یا از قبل پرونده‌های اسفینکس وجود داشته‌اند." -#: ext/imgconverter.py:49 ext/imgconverter.py:73 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "تبدیل با خطایی از کار افتاد:\n[stderr]\n%r\n[stdout]\n%r" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "ابزار شروع سریع اسفینکس فقط یک پوشه‌ی خالی درست می کند. لطفاً یک مسیر ریشه‌ی جدید مشخّص کنید." -#: ext/imgconverter.py:68 +#: cmd/quickstart.py:810 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "فرمان تبدیل %r را نمی توان اجرا کرد، تنظیمات image_converter را بررسی کنید" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " -msgstr "برجسته کردن کد پیمانه... " - -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "[مستندات]" - -#: ext/viewcode.py:306 -msgid "Module code" -msgstr "کد ماژول" +msgid "Invalid template variable: %s" +msgstr "متغیرهای نامعتبرقالب؛ %s" -#: ext/viewcode.py:312 +#: directives/other.py:119 #, python-format -msgid "

Source code for %s

" -msgstr "

کد منبع برای %s

" - -#: ext/viewcode.py:338 -msgid "Overview: module code" -msgstr "بررسی اجمالی: کد ماژول" - -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" -msgstr "

همه‌ی پیمانه‌هایی که برایشان کد در دسترس است

" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "" -#: ext/coverage.py:47 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "invalid regex %r in %s" -msgstr "عبارت باقاعده‌ی نامعتبر %r در %s" +msgid "toctree contains reference to excluded document %r" +msgstr "درختواره‌ی فهرست مطالب ارجاعی به سند کنار گذاشته شده %r را دارد" -#: ext/coverage.py:134 ext/coverage.py:280 +#: directives/other.py:156 #, python-format -msgid "module %s could not be imported: %s" -msgstr "امکان وارد کردن پیمانه‎ی %s نبود: %s" +msgid "toctree contains reference to nonexisting document %r" +msgstr "فهرست مطالب شامل ارجاع به سند ناموجود %r است" -#: ext/coverage.py:141 +#: directives/other.py:169 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +#: directives/other.py:203 +msgid "Section author: " +msgstr "نویسنده این بخش: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "نویسنده این ماژول: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "نویسنده ی کد: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "نویسنده: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: ext/coverage.py:163 -#, python-format +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." -msgstr "آزمودن پوشش منابع پایان یافت، به نتایج در %(outdir)spython.txt نگاهی بیاندازید." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "گزینه‌ی \":file:\" برای دستورالمعل جدول داده‌های جداشده با کاما (csv-table) حالا دیگر مسیر ثابت را یک مسیر نسبی از شاخه‌ی منبع در نظر می گیرد. لطفاُ سندتان را به روز رسانی کنید." -#: ext/coverage.py:177 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "عبارات باقاعده‌ی نامعتبر %r در پوشش عبارت باقاعده‌ی زبان سی (coverage_c_regexes)" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "غیرفاصله‌ در فرآیند حذف فاصله‌ از ابتدای سطر حذف شد" -#: ext/coverage.py:245 +#: directives/code.py:87 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "رابط برنامه‌نویسی مستند نشده‌ی C: %s [%s] در پرونده‌ی %s" +msgid "Invalid caption: %s" +msgstr "برچسب نامعتبر:%s" -#: ext/coverage.py:429 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "تابع پایتونی بدون مستندات: %s :: %s" +msgid "line number spec is out of range(1-%d): %r" +msgstr "شماره‌ی سطر مشخّص شده خارج از بازه‌ی (1-%d) است: %r" -#: ext/coverage.py:445 +#: directives/code.py:216 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "کلاس مستندسازی نشده‌ی پایتون: %s :: %s" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "امکان استفاده از هر دوی %sو%s نیست" -#: ext/coverage.py:458 +#: directives/code.py:231 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "شگرد مستندسازی نشده‌ی پایتون: %s :: %s :: %s" +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: ext/todo.py:71 -msgid "Todo" -msgstr "در دست انجام" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: ext/todo.py:104 +#: directives/code.py:276 #, python-format -msgid "TODO entry found: %s" -msgstr "مدخل فهرست اقدام پیدا شد: %s" +msgid "Object named %r not found in include file %r" +msgstr "شیئ با نام %r در پرونده‌ی %r پیدا نشد" -#: ext/todo.py:163 -msgid "<>" -msgstr "<>" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "امکان استفاده‌ی گزینه‌ی «هم‌خوان شماره‌ی سطر» (lineno-match) با مجموعه‌ی سطرهای گسیخته وجود ندارد" -#: ext/todo.py:165 +#: directives/code.py:314 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "( در%s و سطر %d جای گرفته است.)" - -#: ext/todo.py:175 -msgid "original entry" -msgstr "مدخل اصلی" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "سطر مشخّص شده %r: هیچ سطری از پرونده‌ی گنجانده شده %r بیرون کشیده نشده" -#: ext/extlinks.py:82 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "فهرست" + +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "به بست عنوانی برخورد که در قسمت، موضوع، جدول، اندرز یا نوارکناری نبود" -#: ext/doctest.py:115 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "فاقد «+» یا «-» در گزینه‌ی '%s'." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "پانویس ها" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "عنوان درون شکل نیست." -#: ext/doctest.py:120 +#: writers/texinfo.py:1303 #, python-format -msgid "'%s' is not a valid option." -msgstr "\"%s\" یک گزینه‌ی معتبر نیست." +msgid "unimplemented node type: %r" +msgstr "بست به کار نرفته: %r" -#: ext/doctest.py:134 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' یک گزینه‌ی معتبر نسخه‌ی پایتون (pyversion) نیست" +msgid "[image: %s]" +msgstr "[تصویر%s]" -#: ext/doctest.py:220 -msgid "invalid TestCode type" -msgstr "نوع TestCode نامعتبر" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[تصویر]" -#: ext/doctest.py:281 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "آزمایش مستندات منابع به پایان رسید، به نتایج در %(outdir)s/output.txt نگاهی بیاندازید." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" -#: ext/doctest.py:434 +#: writers/html5.py:431 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "بدون کد/خروجی در تکّه‌ی %s در %s:%s" +msgid "numfig_format is not defined for %s" +msgstr "قالب عدد شکل برای %s تعریف نشده" -#: ext/doctest.py:522 +#: writers/html5.py:441 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "نادیده گرفتن کد پیمانه‌ی doctest : %r" +msgid "Any IDs not assigned for %s node" +msgstr "هر کدام از شناسه‌هایی که به بست %s اختصاص داده نشده" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "دستورالعمل Graphviz نمی تواند هم نشانوند محتوا را داشته باشد و هم نام پرونده" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "پرونده گنجانده شده‌ی خارجی Graphviz %r یا پیدا نشد و یا خواندنش با شکست رو به رو شد" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "نادیده گرفتن دستورالعمل «graphviz» بدون محتوا." +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: ext/graphviz.py:268 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "graphviz_dot executable path must be set! %r" +msgid "unsupported rubric heading level: %s" msgstr "" -#: ext/graphviz.py:303 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "فرمان dot %r نمی‌تواند اجرا شود (زیرا نیازمند برون‌داد graphviz است)، تنظیمات graphviz_dot را بررسی کنید" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: ext/graphviz.py:310 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot با خطایی از کار افتاد:\n[stderr]\n%r\n[stdout]\n%r" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: ext/graphviz.py:313 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot هیچ پرونده‌ی برون‌دادی تولید نکرد:\n[stderr]\n%r\n[stdout]\n%r" +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" -msgstr "قالب خروجی graphviz باید یکی از قالب های 'png' یا 'svg' باشد ولی %r است" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "امکان دست یابی به اندازه‌ی عکس نبود. گزینه‌ی تغییر اندازه :scale: نادیده گرفته می‌شود." -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: writers/latex.py:386 #, python-format -msgid "dot code %r: %s" -msgstr "کد دات: %r: %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "قسمت‌بندی رده‌بالای %r ناشناخته برای کلاس %r" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "[graph: %s]" -msgstr "[گراف:%s]" +msgid "no Babel option known for language %r" +msgstr "بدون گزینه‌ی Babel شناخته شده برای زبان %r" -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "[گراف:]" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "مقدار بسیار بزرگ :maxdepth:، نادیده گرفته شد." -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: ext/apidoc.py:85 -#, python-format -msgid "Would create file %s." -msgstr "پرونده‌ی %s را می سازد." +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "عنوان سند یک بست متنی نیست" -#: ext/apidoc.py:375 +#: writers/latex.py:1198 msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nبه صورت بازگشتی در مسیر دنبال پیمانه‌هاو بسته‌های پایتون بگرد و \nبا به ازای دستورالمعل‌های خودکار پیمانه‌ی هر بسته در مسیر خروجی یک پرونده‌ی reST بساز.\n\nالگوی استثتاء های می‌تواند الگوی پرونده‌ها و یا شاخه‌هایی باشد که از تولید کنار گذاشته شده‌اند.\n\nتوجّه: به صورت پیش فرض این اسکریپت روی پرونده‌های از پیش ساخته شده دوباره نویسی نمی‌کند." - -#: ext/apidoc.py:392 -msgid "path to module to document" -msgstr "مسیر پیمانه به سند" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "هر دو مقدار tabularcolumns و :widths: داده شده، بنابراین :widths: حذف می شود." -#: ext/apidoc.py:396 +#: writers/latex.py:1228 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "الگوها‌ی به سبک fnmatch در پرونده و یا شاخه برای کنار گذاشتن از تولید" - -#: ext/apidoc.py:407 -msgid "directory to place all output" -msgstr "پوشه‌ای برای قرار دادن همه‌ی برون دادها" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "نهایت عمق زیر پیمانه‌ها برای نشان دادن در فهرست مطالب (پیش‌گزیده: ۴)" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "ابعاد واحد %sنامعتبر است و نادیده گرفته شد." -#: ext/apidoc.py:429 -msgid "overwrite existing files" -msgstr "بازنویسی پرونده‌های موجود" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "نوع ناشناخته مدخل نمایه%s پیدا شد" -#: ext/apidoc.py:437 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "ردگیری پیوند نمادین. وقتی با collective.recipe.omelette ترکیب می‌شود توانمند است." +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "اجرای اسکریپت بدون ساخت پرونده" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "قرار دادن مستندات هر پیمانه در صفحه‌ی خودش" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" -msgstr "در برداشتن پیمانه‌های «خصوصی»(_private)" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "نام پرونده فهرست مطالب (پیش‌گزیده: پیمانه‌ها)" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" -msgstr "پرونده‌ی فهرست مطالب را ایجاد نکن" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: ext/apidoc.py:481 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "برای بسته‌ها و پیمانه‌ها سربرگ نساز (مثلاً وقتی رشته‌متن‌های مستندات از قبل آن‌ها را داشته باشند)" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" -msgstr "قرار دادن مستندات پیمانه پیش از مستندات پیمانه‌ی زیرمجموعه‌‌اش" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: ext/apidoc.py:498 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "تفسیر مسیرهای پیمانه بر اساس ویژگی‌های ضمنی فضای نام‌ها در PEP -0420" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" -msgstr "پسوند پرونده ( پیش فرض: rst)" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" -msgstr "تولید یک پروژه‌ی کامل با ابزار شروع سریع اسفینکس" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" -msgstr "پیوست مسیر پیمانه (module_path) به مسیر سیستم (sys.path)، هنگامی به کار می‌رود که گزینه‌ی full-- داده شود" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" -msgstr "نام پروژه (پیش‌گزیده: نام پیمانه‌ی ریشه)" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" -msgstr "نویسنده(های) پروژه، وقتی که گزینه‌ی --full داده شده باشد استفاده می شود" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" -msgstr "نسخه‌ی پروژه، وقتی که گزینه‌ی --full داده شده باشد استفاده می شود" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "نگارش پروژه، وقتی که گزینه‌ی --full داده شده باشد استفاده می شود، پیش‌گزیده همان شماره‌ی نسخه (--doc-version) است" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "ارجاعات پانویس ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" -#: ext/apidoc.py:564 -msgid "extension options" -msgstr "گزینه های افزونه" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "ارجاعات ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" + +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "ارجاعات نقل قول ادبی ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" + +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "ارجاعات اصطلاحی ناهناهنگ در پیام‌های ترجمه شده. اصلی:{0}، ترجمه شده:{1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: ext/apidoc.py:638 +#: transforms/__init__.py:258 #, python-format -msgid "%s is not a directory." -msgstr "%s شاخه نیست." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "نمایه‌ای بر پایه‌ی ۴ ستون پیدا شد. شاید یک اشکال برنامه‌نویسی از افزونه‌هایی که استفاده می‌کنید باشد: %r" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 +#: transforms/__init__.py:299 #, python-format -msgid "Failed to remove %s: %s" +msgid "Footnote [%s] is not referenced." +msgstr "پانویس [%s] ارجاع داده نشده است." + +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/autosectionlabel.py:48 +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "پانویس [#] ارجاع داده نشده است." + +#: util/inventory.py:147 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 +#: util/inventory.py:166 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "بر چسب تکراری %s، مورد دیگر در %s قرار دارد" - -#: ext/duration.py:85 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== کند ترین زمان خواندن =======================" +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: ext/imgmath.py:159 +#: util/i18n.py:100 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "فرمان لتکس %r را نمی توان اجرا کرد(برای نمایش ریاضی لازم است)، تنظیمات imgmath_latex را بررسی کنید" +msgid "reading error: %s, %s" +msgstr "خطای خواندن: %s, %s" -#: ext/imgmath.py:174 +#: util/i18n.py:113 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%sفرمان %r را نمی توان اجرا کرد(برای نمایش ریاضی لازم است)، تنظیمات imgmath_%s را بررسی کنید" +msgid "writing error: %s, %s" +msgstr "خطای نوشتن: %s, %s" -#: ext/imgmath.py:328 +#: util/i18n.py:146 #, python-format -msgid "display latex %r: %s" -msgstr "نمایش لتکس: %r: %s" +msgid "locale_dir %s does not exist" +msgstr "" -#: ext/imgmath.py:362 +#: util/i18n.py:244 #, python-format -msgid "inline latex %r: %s" -msgstr "لتکس بین سطری: %r: %s" +msgid "Invalid Babel locale: %r." +msgstr "" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" -msgstr "پانویس ها" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "قالب تاریخ ناشناخته. اگر می‌خواهید از رشته‌متن مستقیماً خروجی بگیرید، آن را با نقل قول رشته‌متنی محصور کنید: %s" -#: writers/manpage.py:309 writers/text.py:936 +#: util/osutil.py:131 #, python-format -msgid "[image: %s]" -msgstr "[تصویر%s]" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[تصویر]" +#: util/display.py:82 +msgid "skipped" +msgstr "رد شدن و نادیده انگاشتن" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +#: util/display.py:87 +msgid "failed" +msgstr "شکست خورد" + +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: writers/html5.py:415 +#: util/docutils.py:361 #, python-format -msgid "numfig_format is not defined for %s" -msgstr "قالب عدد شکل برای %s تعریف نشده" +msgid "unknown role name: %s" +msgstr "" -#: writers/html5.py:427 +#: util/docutils.py:805 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "هر کدام از شناسه‌هایی که به بست %s اختصاص داده نشده" +msgid "unknown node type: %r" +msgstr "بست از نوع ناشناخته: %r" -#: writers/html5.py:482 -msgid "Link to this term" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 +#: util/rst.py:73 #, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +msgid "default role %s not found" +msgstr "نقش پیش‌فرض %s یافت نشد" -#: writers/html5.py:613 -msgid "Link to this code" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" -msgstr "" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "درختواره‌ی فهرست مطالب شامل ارجاع به پرونده ناموجود %r است" -#: writers/html5.py:617 -msgid "Link to this toctree" -msgstr "" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "ایراد در هنگام ارزیابی تنها عبارت دستور العمل: %s" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "امکان دست یابی به اندازه‌ی عکس نبود. گزینه‌ی تغییر اندازه :scale: نادیده گرفته می‌شود." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "ادامه از صفحه‌ی قبل" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "فهرست" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "ادامه در صفحه‌ی بعد" -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "به بست عنوانی برخورد که در قسمت، موضوع، جدول، اندرز یا نوارکناری نبود" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "غیر الفبایی" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." -msgstr "عنوان درون شکل نیست." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "نماد ها" -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" -msgstr "بست به کار نرفته: %r" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "شماره ها" -#: writers/latex.py:360 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "قسمت‌بندی رده‌بالای %r ناشناخته برای کلاس %r" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "صفحه" -#: builders/latex/__init__.py:223 writers/latex.py:410 -#, python-format -msgid "no Babel option known for language %r" -msgstr "بدون گزینه‌ی Babel شناخته شده برای زبان %r" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "انتشار" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." -msgstr "مقدار بسیار بزرگ :maxdepth:، نادیده گرفته شد." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "امکان دریافت تصویر از منبع راه دور نبود: %s [%s]" -#: writers/latex.py:590 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" +msgid "Could not fetch remote image: %s [%d]" +msgstr "امکان دریافت تصویر از منبع راه دور نبود: %s [%d]" -#: writers/latex.py:708 -msgid "document title is not a single Text node" -msgstr "عنوان سند یک بست متنی نیست" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "قالب تصویر ناشناخته: %s..." -#: writers/latex.py:1175 +#: transforms/post_transforms/__init__.py:88 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "هر دو مقدار tabularcolumns و :widths: داده شده، بنابراین :widths: حذف می شود." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "امکان تشخیص متن جایگزین برای ارجاع متقابل نبود. شاید یک اشکال برنامه نویسی باشد." -#: writers/latex.py:1573 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "ابعاد واحد %sنامعتبر است و نادیده گرفته شد." +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "برای «هر» ارجاع متقابل بیشتر از یک هفد پیدا شد: %r شاید %s باشد" -#: writers/latex.py:1931 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "unknown index entry type %s found" -msgstr "نوع ناشناخته مدخل نمایه%s پیدا شد" +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s مرجع هدف پیدا نشد: %s" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "environment variable; %s" -msgstr "متغیرهای عمومی؛ %s" +msgid "%r reference target not found: %s" +msgstr "مقصد ارجاع %r پیدا نشد %s" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "قطع شد!" + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: domains/std/__init__.py:235 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "توضیح بدشکل برای گزینه‌ی %r، باید شبیه این‌ها باشد \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" یا \"+opt args\"" - -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" -msgstr "%s گزینه‌ی خط فرمان" - -#: domains/std/__init__.py:308 -msgid "command line option" -msgstr "گزینه خط فرمان" - -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" -msgstr "یک خط خالی باید پیش از اصطلاح واژه‌نامه باشد" - -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" -msgstr "اصطلاحات واژه‌نامه نباید با خطوط خالی از هم جدا شوند" - -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "به نظر می رسد واژه‌نامه اشتباه شکل داده شده است، فاصله‌گذاری از ابتدای سطر را بررسی کنید" - -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "اصطلاح واژه‌نامه" - -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "نشانه ی گرامری" - -#: domains/std/__init__.py:604 -msgid "reference label" -msgstr "برچسب ارجاع" - -#: domains/std/__init__.py:607 -msgid "environment variable" -msgstr "متغیّر عمومی" - -#: domains/std/__init__.py:608 -msgid "program option" -msgstr "اختیارات برنامه" - -#: domains/std/__init__.py:609 -msgid "document" -msgstr "سند" - -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" -msgstr "فهرست ماژول ها" - -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "صفحه جستجو" - -#: domains/std/__init__.py:722 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "تکرار توضیح %s از %s، مورد دیگر در%s قرار دارد" - -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." -msgstr "شماره‌ی شکل غیر فعّال است. گزینه‌ی :numref: نادیده گرفته می‌شود." - -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "شکست در ایجاد ارجاع متقابل. هیچ شماره انتساب داده نشده: %s" - -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" -msgstr "پیوند هیچ برچسبی ندارد: %s" - -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "قالب شماره‌ی شکل نامعتبر: %s (%r)" - -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "قالب شماره‌ی شکل نامعتبر: %s" - -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: domains/python/__init__.py:107 domains/python/__init__.py:244 -#, python-format -msgid "%s() (in module %s)" -msgstr "%s() (در ماژول %s)" - -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 -#, python-format -msgid "%s (in module %s)" -msgstr "%s (در ماژول %s)" - -#: domains/python/__init__.py:169 -#, python-format -msgid "%s (built-in variable)" -msgstr "%s (متغیر درونی)" - -#: domains/python/__init__.py:194 -#, python-format -msgid "%s (built-in class)" -msgstr "%s (کلاس درونی)" - -#: domains/python/__init__.py:195 -#, python-format -msgid "%s (class in %s)" -msgstr "%s (کلاس در %s)" - -#: domains/python/__init__.py:249 -#, python-format -msgid "%s() (%s class method)" -msgstr "%s() (%s شگرد کلاس)" - -#: domains/python/__init__.py:251 -#, python-format -msgid "%s() (%s static method)" -msgstr "%s() (%s متد استاتیک)" - -#: domains/python/__init__.py:389 -#, python-format -msgid "%s (%s property)" -msgstr "%s(%sویژگی)" - -#: domains/python/__init__.py:428 -#, python-format -msgid "%s (type alias in %s)" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: domains/python/__init__.py:559 -msgid "Python Module Index" -msgstr "نمایه ی ماژول های پایتون" - -#: domains/python/__init__.py:560 -msgid "modules" -msgstr "ماژول ها" - -#: domains/python/__init__.py:637 -msgid "Deprecated" -msgstr "منسوخ شده" - -#: domains/python/__init__.py:663 -msgid "exception" -msgstr "ایراد" - -#: domains/python/__init__.py:665 -msgid "class method" -msgstr "class method" - -#: domains/python/__init__.py:666 -msgid "static method" -msgstr "متد استاتیک" - -#: domains/python/__init__.py:668 -msgid "property" -msgstr "ویژگی" - -#: domains/python/__init__.py:669 -msgid "type alias" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: domains/python/__init__.py:729 -#, python-format -msgid "" -"duplicate object description of %s, other instance in %s, use :no-index: for" -" one of them" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: domains/python/__init__.py:858 -#, python-format -msgid "more than one target found for cross-reference %r: %s" -msgstr "برای ارجاع متقابل %r بیش از یک هدف پیدا شد: %s" - -#: domains/python/__init__.py:920 -msgid " (deprecated)" -msgstr " (منسوخ)" - -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "پارامترها" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "متغیر ها" - -#: domains/python/_object.py:173 -msgid "Raises" -msgstr "برانگیختن" - -#: domains/c/__init__.py:199 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 -#, python-format +#: _cli/util/errors.py:240 msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "اعلان C تکراری، که در %s:%s هم تعریف شده.\nاعلان '.. c:%s:: %s' است." - -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 -msgid "Return values" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" -msgstr "عضو" - -#: domains/c/__init__.py:680 -msgid "variable" -msgstr "متغیّر" - -#: domains/c/__init__.py:682 -msgid "macro" -msgstr "ماکرو" - -#: domains/c/__init__.py:683 -msgid "struct" -msgstr "ساختار" - -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" -msgstr "اجتماع" - -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 -msgid "enum" -msgstr "شمارش" - -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 -msgid "enumerator" -msgstr "شمارنده" - -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "گونه" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 -msgid "function parameter" -msgstr "مؤلّفه‌ی تابع" - -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" -msgstr "پارامترهای قالب" - -#: domains/cpp/__init__.py:277 -#, python-format -msgid "%s (C++ %s)" -msgstr "%s (C++ %s)" - -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 -#, python-format +#: _cli/util/errors.py:246 msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "اعلان ++C تکراری، که در %s:%s هم تعریف شده.\nاعلان '.. cpp:%s:: %s' است." - -#: domains/cpp/__init__.py:862 -msgid "concept" -msgstr "کانسپت" - -#: domains/cpp/__init__.py:867 -msgid "template parameter" -msgstr "مؤلّفه‌ی قالب" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "محتوا ها" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "فهرست عناوین" - -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "جستجو" - -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "برو" - -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "نمایش سورس" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "لطفاً اگر این مورد خطای کاربر بوده، آن را گزارش دهید تا برای بارهای بعدی پیام خطای بهتری بتواند ارائه شود." #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" @@ -3097,6 +2770,11 @@ msgstr "جستجو در %(docstitle)s" msgid "About these documents" msgstr "درباره این مستندات" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "جستجو" + #: themes/basic/layout.html:133 themes/basic/layout.html:177 #: themes/basic/layout.html:179 msgid "Copyright" @@ -3119,33 +2797,49 @@ msgid "" "%(sphinx_version)s." msgstr "ایجاد شده باSphinx %(sphinx_version)s." -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "موضوع قبلی" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "فهرست کامل در یک صفحه" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "فصل قبلی" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "فهرست صفحات بر اساس حروف" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "موضوع بعدی" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "ممکن است سترگ باشد" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "فصل بعدی" -#: themes/basic/opensearch.xml:4 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "Search %(docstitle)s" -msgstr "جستجو %(docstitle)s" +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "فهرست کامل در یک صفحه" #: themes/basic/sourcelink.html:4 msgid "This Page" msgstr "صفحه فعلی" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "نمایش سورس" + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "جستجو سریع" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "برو" + #: themes/basic/defindex.html:4 msgid "Overview" msgstr "بررسی اجمالی" @@ -3174,6 +2868,11 @@ msgstr "فهرست کامل مطالب" msgid "lists all sections and subsections" msgstr "فهرست تمامی بخش ها و زیر مجموعه ها" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "صفحه جستجو" + #: themes/basic/defindex.html:19 msgid "search this documentation" msgstr "جستجو در این اسناد" @@ -3186,7 +2885,7 @@ msgstr "فهرست کلی ماژول ها" msgid "quick access to all modules" msgstr "دسترسی سریع به تمامی متدها" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "فهرست کلی" @@ -3194,9 +2893,23 @@ msgstr "فهرست کلی" msgid "all functions, classes, terms" msgstr "تمامی توابع ، کلاس ها ، اصطلاحات" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "جستجو سریع" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "فهرست عناوین" + +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "جستجو %(docstitle)s" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "فهرست صفحات بر اساس حروف" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "ممکن است سترگ باشد" #: themes/basic/search.html:20 msgid "" @@ -3214,25 +2927,43 @@ msgstr "در حال جستجو برای چندین واژه. فقط واژگان msgid "search" msgstr "جستجو" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "موضوع قبلی" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "محتوا ها" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "فصل قبلی" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "نتایج جستجو" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "موضوع بعدی" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "جستجوی شما با هیچ سندی هم خوانی نداشت. لطفاً اطمینان حاصل کنید که همه ی واژه ها املای درستی دارند و دسته بندی های کافی را انتخاب کرده اید." -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "فصل بعدی" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "گسترش نوار کناره" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "در حال جست و جو" + +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "آماده سازی جست و جو..." + +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr "، در " + +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "عدم نمایش نتایج یافت شده" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -3240,6 +2971,11 @@ msgstr "گسترش نوار کناره" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "تغییرات در نسخه %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -3257,861 +2993,1316 @@ msgstr "C API تغییرات" msgid "Other changes" msgstr "دگر تغییرات" -#: themes/basic/changes/rstsource.html:5 +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "گسترش نوار کناره" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "" + +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "پارامترها" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "متغیر ها" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "برانگیختن" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +msgid "%s() (in module %s)" +msgstr "%s() (در ماژول %s)" + +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 +#, python-format +msgid "%s (in module %s)" +msgstr "%s (در ماژول %s)" + +#: domains/python/__init__.py:174 +#, python-format +msgid "%s (built-in variable)" +msgstr "%s (متغیر درونی)" + +#: domains/python/__init__.py:209 +#, python-format +msgid "%s (built-in class)" +msgstr "%s (کلاس درونی)" + +#: domains/python/__init__.py:210 +#, python-format +msgid "%s (class in %s)" +msgstr "%s (کلاس در %s)" + +#: domains/python/__init__.py:275 +#, python-format +msgid "%s() (%s class method)" +msgstr "%s() (%s شگرد کلاس)" + +#: domains/python/__init__.py:277 +#, python-format +msgid "%s() (%s static method)" +msgstr "%s() (%s متد استاتیک)" + +#: domains/python/__init__.py:430 +#, python-format +msgid "%s (%s property)" +msgstr "%s(%sویژگی)" + +#: domains/python/__init__.py:470 +#, python-format +msgid "%s (type alias in %s)" +msgstr "" + +#: domains/python/__init__.py:624 +msgid "Python Module Index" +msgstr "نمایه ی ماژول های پایتون" + +#: domains/python/__init__.py:625 +msgid "modules" +msgstr "ماژول ها" + +#: domains/python/__init__.py:703 +msgid "Deprecated" +msgstr "منسوخ شده" + +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "ایراد" + +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "class method" + +#: domains/python/__init__.py:732 +msgid "static method" +msgstr "متد استاتیک" + +#: domains/python/__init__.py:734 +msgid "property" +msgstr "ویژگی" + +#: domains/python/__init__.py:735 +msgid "type alias" +msgstr "" + +#: domains/python/__init__.py:804 +#, python-format +msgid "" +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" +msgstr "" + +#: domains/python/__init__.py:974 +#, python-format +msgid "more than one target found for cross-reference %r: %s" +msgstr "برای ارجاع متقابل %r بیش از یک هدف پیدا شد: %s" + +#: domains/python/__init__.py:1048 +msgid " (deprecated)" +msgstr " (منسوخ)" + +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "اعلان ++C تکراری، که در %s:%s هم تعریف شده.\nاعلان '.. cpp:%s:: %s' است." + +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "پارامترهای قالب" + +#: domains/cpp/__init__.py:302 +#, python-format +msgid "%s (C++ %s)" +msgstr "%s (C++ %s)" + +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "" + +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "اجتماع" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "عضو" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "گونه" + +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "کانسپت" + +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "شمارش" + +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "شمارنده" + +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "مؤلّفه‌ی تابع" + +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "مؤلّفه‌ی قالب" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 +#, python-format +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "اعلان C تکراری، که در %s:%s هم تعریف شده.\nاعلان '.. c:%s:: %s' است." + +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "متغیّر" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "ماکرو" + +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "ساختار" + +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "متغیرهای عمومی؛ %s" + +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" + +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" + +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "" + +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "توضیح بدشکل برای گزینه‌ی %r، باید شبیه این‌ها باشد \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" یا \"+opt args\"" + +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" +msgstr "%s گزینه‌ی خط فرمان" + +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "گزینه خط فرمان" + +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "یک خط خالی باید پیش از اصطلاح واژه‌نامه باشد" + +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "اصطلاحات واژه‌نامه نباید با خطوط خالی از هم جدا شوند" + +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "به نظر می رسد واژه‌نامه اشتباه شکل داده شده است، فاصله‌گذاری از ابتدای سطر را بررسی کنید" + +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "اصطلاح واژه‌نامه" + +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "نشانه ی گرامری" + +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "برچسب ارجاع" + +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "متغیّر عمومی" + +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "اختیارات برنامه" + +#: domains/std/__init__.py:735 +msgid "document" +msgstr "سند" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "فهرست ماژول ها" + +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" +msgstr "تکرار توضیح %s از %s، مورد دیگر در%s قرار دارد" + +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "شماره‌ی شکل غیر فعّال است. گزینه‌ی :numref: نادیده گرفته می‌شود." + +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "شکست در ایجاد ارجاع متقابل. هیچ شماره انتساب داده نشده: %s" + +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" +msgstr "پیوند هیچ برچسبی ندارد: %s" + +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" +msgstr "قالب شماره‌ی شکل نامعتبر: %s (%r)" + +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "قالب شماره‌ی شکل نامعتبر: %s" + +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "" + +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" + +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "مقدار نامعتبر تعیین شده (بدون کمانک انتهایی): %s" + +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "مقدار نامعتبر تعیین شده (بدون کمانک ابتدایی): %s" + +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "رشته‌متن ادبی ناقص (بدون علامت نقل‌قول انتهایی): %s" + +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "رشته‌متن ادبی ناقص (بدون علامت نقل‌قول ابتدایی): %s" + +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "مثال" + +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "نمونه‎ها" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "نشانوندهای کلیدی" + +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "یادداشت‌ها" + +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "مؤلّفه‌های دیگر" + +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "دریافت‌ها" + +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "منابع" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "هشدارها" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "فرآورده" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "شیئ ساختگی شناسایی شد: %r" + +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "نام جانشین %s" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "پایه ها:%s" + +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" +msgstr "مقدار نامعتبر برای گزینه‌ی ترتیب اعضا (member-order): %s" + +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "مقدار نامعتبر برای گزینه‌ی «از مستندات کلاس» class-doc-from:%s" + +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" +msgstr "امضای ناشناخته‌ برای %s (%r)" + +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "مشخّص نیست کدام پیمانه را برای مستندسازی خودکار فراخوان کند %r (سعی کنید دستورالعمل «module» یا «currentmodule» را در سند قرار دهید، یا یک نام واضح برای پیمانه ارائه دهید)" + +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" در پیمانه‌ی خودکار معنی نمی‌دهد" + +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "" + +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "پرونده‌ی %s را می سازد." + +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nبه صورت بازگشتی در مسیر دنبال پیمانه‌هاو بسته‌های پایتون بگرد و \nبا به ازای دستورالمعل‌های خودکار پیمانه‌ی هر بسته در مسیر خروجی یک پرونده‌ی reST بساز.\n\nالگوی استثتاء های می‌تواند الگوی پرونده‌ها و یا شاخه‌هایی باشد که از تولید کنار گذاشته شده‌اند.\n\nتوجّه: به صورت پیش فرض این اسکریپت روی پرونده‌های از پیش ساخته شده دوباره نویسی نمی‌کند." + +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "مسیر پیمانه به سند" + +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "الگوها‌ی به سبک fnmatch در پرونده و یا شاخه برای کنار گذاشتن از تولید" + +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "پوشه‌ای برای قرار دادن همه‌ی برون دادها" + +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "نهایت عمق زیر پیمانه‌ها برای نشان دادن در فهرست مطالب (پیش‌گزیده: ۴)" + +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "بازنویسی پرونده‌های موجود" + +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "ردگیری پیوند نمادین. وقتی با collective.recipe.omelette ترکیب می‌شود توانمند است." + +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "اجرای اسکریپت بدون ساخت پرونده" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "قرار دادن مستندات هر پیمانه در صفحه‌ی خودش" + +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "در برداشتن پیمانه‌های «خصوصی»(_private)" + +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "نام پرونده فهرست مطالب (پیش‌گزیده: پیمانه‌ها)" + +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "پرونده‌ی فهرست مطالب را ایجاد نکن" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "عدم نمایش نتایج یافت شده" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "برای بسته‌ها و پیمانه‌ها سربرگ نساز (مثلاً وقتی رشته‌متن‌های مستندات از قبل آن‌ها را داشته باشند)" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "نتایج جستجو" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "قرار دادن مستندات پیمانه پیش از مستندات پیمانه‌ی زیرمجموعه‌‌اش" -#: themes/basic/static/searchtools.js:119 +#: ext/apidoc/_cli.py:152 msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "جستجوی شما با هیچ سندی هم خوانی نداشت. لطفاً اطمینان حاصل کنید که همه ی واژه ها املای درستی دارند و دسته بندی های کافی را انتخاب کرده اید." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "تفسیر مسیرهای پیمانه بر اساس ویژگی‌های ضمنی فضای نام‌ها در PEP -0420" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "در حال جست و جو" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "پسوند پرونده ( پیش فرض: rst)" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "آماده سازی جست و جو..." +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " -msgstr "، در " +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "تولید یک پروژه‌ی کامل با ابزار شروع سریع اسفینکس" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" -msgstr "پرونده‌ی تصویر خوانا نیست: %s" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "پیوست مسیر پیمانه (module_path) به مسیر سیستم (sys.path)، هنگامی به کار می‌رود که گزینه‌ی full-- داده شود" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" -msgstr "پرونده‌ی عکس %s خوانا نیست: %s" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "نام پروژه (پیش‌گزیده: نام پیمانه‌ی ریشه)" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" -msgstr "پرونده‌ی دریافت شده خوانا نیست: %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "نویسنده(های) پروژه، وقتی که گزینه‌ی --full داده شده باشد استفاده می شود" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "شماره‌ی قسمت‌ها پیش‌تر به %s نسبت داده شده ( آیا درختواره‌ی فهرست مطالب شماره‌گذاری تو در تو دارد؟)" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "نسخه‌ی پروژه، وقتی که گزینه‌ی --full داده شده باشد استفاده می شود" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "دور تسلسل در درختواره‌ی ارجاعات فهرست مطالب تشخیص داده شده، نادیده گرفته می‌شوند: %s <- %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "نگارش پروژه، وقتی که گزینه‌ی --full داده شده باشد استفاده می شود، پیش‌گزیده همان شماره‌ی نسخه (--doc-version) است" -#: environment/adapters/toctree.py:342 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "فهرست مطالب دارای ارجاع به سند %r است که عنوانی ندارد: هیچ پیوندی تولید نخواهد شد" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "گزینه های افزونه" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "%s را ببینید" - -#: environment/adapters/indexentries.py:136 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "see also %s" -msgstr "%s را هم ببینید" +msgid "enable %s extension, used when --full is given" +msgstr "" -#: environment/adapters/indexentries.py:144 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "unknown index entry type %r" -msgstr "نوع ناشناخته مدخل نمایه %r" - -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "نماد ها" +msgid "%s is not a directory." +msgstr "%s شاخه نیست." -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:113 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "صفحات HTML در %(outdir)s است." +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: builders/html/__init__.py:348 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to read build info file: %r" -msgstr "شکست در خواندن پرونده‌ی اطّلاعات ساخت: %r" - -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_extension.py:133 +#, python-format +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:382 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "فهرست" - -#: builders/html/__init__.py:560 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "Logo of %s" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "بعدی" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "قبلی" - -#: builders/html/__init__.py:695 -msgid "generating indices" -msgstr "تولید نمایه‌ها" - -#: builders/html/__init__.py:710 -msgid "writing additional pages" -msgstr "نوشتن صفحات اضافی" - -#: builders/html/__init__.py:793 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " -msgstr "رونوشت از پرونده‌های قابل دریافت... " +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "نمی تواند از پرونده‌ی قابل دریافت %r: %s رونوشت بگیرد" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "شکست در رونوشت یک پرونده‌ی به html_static_file: %s: %r" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" -msgstr "رونوشت از پرونده‌های ثابت" +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: builders/html/__init__.py:933 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "cannot copy static file %r" -msgstr "نمی تواند از پرونده‌ی ثابت %r رونوشت بگیرد" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "خلاصه‌ی خودکار: شکست در تشخیص %r برای مستندسازی، این ایراد به وجود آمد:\n%s" -#: builders/html/__init__.py:938 -msgid "copying extra files" -msgstr "رونوشت برداری از پرونده‌های اضافی" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" +msgstr "[خلاصه‌ی خودکار] تولید خلاصه‌ی خودکار برای: %s" -#: builders/html/__init__.py:948 +#: ext/autosummary/generate.py:634 #, python-format -msgid "cannot copy extra file %r" -msgstr "نمی تواند از پرونده‌ی اضافه‌ی %r رونوشت بگیرد" +msgid "[autosummary] writing to %s" +msgstr "[خلاصه‌ی خودکار] نوشتن در %s" -#: builders/html/__init__.py:954 +#: ext/autosummary/generate.py:679 #, python-format -msgid "Failed to write build info file: %r" -msgstr "شکست در نوشتن پرونده‌ی اطّلاعات ساخت: %r" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" -#: builders/html/__init__.py:1003 +#: ext/autosummary/generate.py:877 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "نمایه‌ی جستجو نمی‌تواند بارگزاری شود، ولی برای همه‌ی مستندات ساخته‌ نمی‌شود: نمایه‌ ناقص خواهد بود." +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nتولید ReStructuredText با استفاده از دستورالعمل‌های خلاصه‌ی خودکار.\n\nخودکارساز اسفینکس رابط کابر پسندی برای sphinx.ext.autosummary.generate (پیمانه‌ی افزونه‌ی خلاصه‌ساز اسفنیکس) است.\nاین افزونه پرونده های متن reStructuredText را از دستورالعمل‌های خلاصه‌ی خودکاری تولید می‌کند که در پرونده‌های درون‌داد مشخّص شده قرار دارد.\n\nقالب دستورالعمل خلاصه‌ی خودکار درپیمانه‌ی افزونه‌ی خلاصه‌ی خودکار اسفنیکس (sphinx.ext.autosummary) مستند سازی شده می توان آن را با دستور زیر خواند::\n\n pydoc sphinx.ext.autosummary\n" -#: builders/html/__init__.py:1051 +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "پرونده‌های منبع برای تولید پرونده‌های rST" + +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "پوشه‌ای برای قرار دادن همه‌ی برون دادها در آن" + +#: ext/autosummary/generate.py:915 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "صفحه‌ی %s با دو الگو در نوار کناری صفحه (html_sidebars) هم‌خوانی دارد: %r و%r" +msgid "default suffix for files (default: %(default)s)" +msgstr "پسوند پیش فرض برای پرونده‌ها (پیش‌فرض: %(default)s)" -#: builders/html/__init__.py:1213 +#: ext/autosummary/generate.py:923 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "هنگام ارائه‌ی صفحه‌ی %s خطای یونیکد رخ داد. لطفاً اطمینان حاصل کنید که تمام مقدارهای پیکربندی‌ها دارای محتوای غیر اَسکی، رشته‌متن‌های یونکد هستند." +msgid "custom template directory (default: %(default)s)" +msgstr "شاخه‌ی سفارشی قالب (پیش‌گزیده: %(default)s)" -#: builders/html/__init__.py:1222 +#: ext/autosummary/generate.py:931 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "خطایی در نمایش صفحه‌ی %s رخ داد.\nعلّت: %r" +msgid "document imported members (default: %(default)s)" +msgstr "اجزای فراخوان شده‌ی سند (پیش‌گزیده: %(default)s)" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" -msgstr "خالی کردن فهرست اشیاء" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/__init__.py:235 #, python-format -msgid "dumping search index in %s" -msgstr "خالی کردن نمایه‌ی جستجو در %s" +msgid "autosummary references excluded document %r. Ignored." +msgstr "ارجاعات خلاصه‌ی خودکار سند %r حذف کنار گذاشته. نادیده گرفته می‌شود." -#: builders/html/__init__.py:1306 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "invalid js_file: %r, ignored" -msgstr "پرونده‌ی js نامعتبر%r: نادیده گرفته می‌شود" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "خلاصه‌ی خودکار: خرده‌پرونده‌ی %r پیدا نشد. تنظیمات تولید خلاصه‌ی خودکار(autosummary_generate) را بررسی کنید." -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "ارا‌ئه کننده‌های ریاضی زیادی ثبت شده‌اند، ولی هیچ کدام انتخاب نشده." +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "خلاصه‌ی خودکار عنوان‌ٔار نیازمند گزینه‌ی :toctree: است، نادیده گرفته می‌شود." -#: builders/html/__init__.py:1344 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "Unknown math_renderer %r is given." -msgstr "نمایش‌دهنده‌ی ریاضی نامشخّص %r داده شده." +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" -#: builders/html/__init__.py:1358 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "مدخل مسیر اضافی (html_extra_path) %r درون شاخه‌ی خارجی قرار دارد" +msgid "failed to import object %s" +msgstr "شکست در وارد کردن شیئ %s" -#: builders/html/__init__.py:1363 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "مدخل مسیر اضافی (html_extra_path) %r وجود ندارد" +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "" -#: builders/html/__init__.py:1378 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "مدخل مسیر ثابت (html_static_path) %r درون شاخه‌ی خارجی قرار دارد" +msgid "autosummary_generate: file not found: %s" +msgstr "تولید خلاصه خودکار: پرونده پیدا نشد: %s" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "" -#: builders/html/__init__.py:1383 +#: ext/intersphinx/_load.py:61 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "مدخل مسیر ثابت (html_static_path) %r وجود ندارد" +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "logo file %r does not exist" -msgstr "پرونده‌ی آرم %r وجود ندارد" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: builders/html/__init__.py:1405 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "favicon file %r does not exist" -msgstr "پرونده‌ی آیکون مورد علاقه %r وجود ندارد" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: builders/html/__init__.py:1417 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/html/__init__.py:1430 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%s %s documentation" -msgstr "مستندات %s%s" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: builders/latex/transforms.py:119 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: builders/latex/transforms.py:485 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: builders/latex/__init__.py:117 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "پرونده‌ی LaTeX در پوشه‌ی %(outdir)s است." +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" -#: builders/latex/__init__.py:119 +#: ext/intersphinx/_load.py:324 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nدر آن شاخه فرمان 'make' را اجرا کنید تا این‌ها را با لتکس(pdf) اجرا کند\n(برای انجام خودکار `make latexpdf' را به کار ببرید)." - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "هیچ مقدار پیکربندی اسناد لتکسی (latex_documents) پیدا نشد؛ بنابراین هیچ سندی نوشته نخواهد شد" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "مشکلاتی در برخی از سیاهه‌ها به وجود آمد،ولی این مشکلات راه‌های جایگزین های داشته‌اند:" -#: builders/latex/__init__.py:169 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "مقدار پیکربندی سندهای لتکس (latex_documents) به سند ناشناخته‌ی %s ارجاع می‌دهد" - -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "انتشار" - -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" -msgstr "رونوشت از پرونده‌های پشتیبانی لتکس" - -#: builders/latex/__init__.py:466 -msgid "copying additional files" -msgstr "رونوشت برداری از پرونده‌های اضافی" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "کلید پیکربندی ناشناخته: latex_elements[%r]، نادیده گرفته می‌شود." +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "سیاهه‌ی بین اسفینکس جا به جایی را انجام داد: %s -> %s" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "کلید زمینه‌ی ناشناخته: latex_theme_options[%r]، نادیده گرفته می‌شود." +msgid "(in %s %s)" +msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r فاقد تنظیمات زمینه است" +msgid "(in %s)" +msgstr "(در %s )" -#: builders/latex/theming.py:90 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r فاقد تنظیمات \"%s\" است" - -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: _cli/util/errors.py:172 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: transforms/post_transforms/__init__.py:125 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "امکان تشخیص متن جایگزین برای ارجاع متقابل نبود. شاید یک اشکال برنامه نویسی باشد." - -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_resolve.py:407 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "برای «هر» ارجاع متقابل بیشتر از یک هفد پیدا شد: %r شاید %s باشد" +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_resolve.py:561 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s مرجع هدف پیدا نشد: %s" +msgid "external %s:%s reference target not found: %s" +msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 #, python-format -msgid "%r reference target not found: %s" -msgstr "مقصد ارجاع %r پیدا نشد %s" +msgid "error while formatting signature for %s: %s" +msgstr "خطا در قالب بندی امضا برای %s: %s" -#: transforms/post_transforms/images.py:77 +#: ext/autodoc/_dynamic/_loader.py:193 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "امکان دریافت تصویر از منبع راه دور نبود: %s [%s]" +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "امکان دریافت تصویر از منبع راه دور نبود: %s [%d]" +msgid "Failed to get a function signature for %s: %s" +msgstr "شکست در دریافت امضای تابع برای %s: مؤلّفه پیدا نشد: %s" -#: transforms/post_transforms/images.py:141 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "Unknown image format: %s..." -msgstr "قالب تصویر ناشناخته: %s..." - -#: ext/napoleon/docstring.py:707 -msgid "Example" -msgstr "مثال" - -#: ext/napoleon/docstring.py:708 -msgid "Examples" -msgstr "نمونه‎ها" - -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" -msgstr "نشانوندهای کلیدی" - -#: ext/napoleon/docstring.py:768 -msgid "Notes" -msgstr "یادداشت‌ها" - -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" -msgstr "مؤلّفه‌های دیگر" - -#: ext/napoleon/docstring.py:813 -msgid "Receives" -msgstr "دریافت‌ها" - -#: ext/napoleon/docstring.py:817 -msgid "References" -msgstr "منابع" +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "شکست در به روز رسانی امضا برای %r: مؤلّفه پیدا نشد: %s" -#: ext/napoleon/docstring.py:849 -msgid "Warns" -msgstr "هشدارها" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "شکست در تحلیل نوع یادداشت برای %r: %s" -#: ext/napoleon/docstring.py:853 -msgid "Yields" -msgstr "فرآورده" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "__slots__ نامعتبر در %sیدا شد و نادیده گرفته شد." -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "مقدار نامعتبر تعیین شده (بدون کمانک انتهایی): %s" +msgid "error while formatting arguments for %s: %s" +msgstr "خطا در قالب بندی نشانوند برای %s: %s" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "مقدار نامعتبر تعیین شده (بدون کمانک ابتدایی): %s" +msgid "Failed to get a constructor signature for %s: %s" +msgstr "شکست در دریافت امضای سازنده‌ی شیئ برای %s: مؤلّفه پیدا نشد: %s" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "رشته‌متن ادبی ناقص (بدون علامت نقل‌قول انتهایی): %s" +msgid "Failed to get a method signature for %s: %s" +msgstr "شکست در دریافت امضای شگرد برای %s: مؤلّفه پیدا نشد: %s" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "رشته‌متن ادبی ناقص (بدون علامت نقل‌قول ابتدایی): %s" +msgid "Failed to get a signature for %s: %s" +msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "autosummary references excluded document %r. Ignored." -msgstr "ارجاعات خلاصه‌ی خودکار سند %r حذف کنار گذاشته. نادیده گرفته می‌شود." +msgid "Failed to parse a default argument value for %r: %s" +msgstr "شکست در تحلیل مقدار پیش‌گزیده‌‌ی نشانوند برای %r: %s" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "خلاصه‌ی خودکار: خرده‌پرونده‌ی %r پیدا نشد. تنظیمات تولید خلاصه‌ی خودکار(autosummary_generate) را بررسی کنید." - -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "خلاصه‌ی خودکار عنوان‌ٔار نیازمند گزینه‌ی :toctree: است، نادیده گرفته می‌شود." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" -msgstr "شکست در تجزیه تحلیل نام %s" +msgid "signature arguments or return annotation given for automodule %s" +msgstr "نشانوند‌های امضا یا یادداشت مقدار برگشتی داده شده برای پیمانه‌ی خودکار %s" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" -msgstr "شکست در وارد کردن شیئ %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ باید لیستی از رشته‌متن ها باشد، نه %r (در پیمانه‌ی %s) -- __all__ نادیده گرفته می‌شود" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." -msgstr "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "ویژگی نایاب در گزینه‌ی :members: قید شده: پیمانه‌ی:%s، ویژگی %s" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" -msgstr "تولید خلاصه خودکار: پرونده پیدا نشد: %s" +msgid "missing attribute %s in object %s" +msgstr "ویژگی ناموجود %s در شیئ %s" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "نام جانشین نوع متغیر(%s)" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "خلاصه‌ی خودکار: شکست در تشخیص %r برای مستندسازی، این ایراد به وجود آمد:\n%s" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" -#: ext/autosummary/generate.py:526 +#: builders/html/__init__.py:114 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[خلاصه‌ی خودکار] تولید خلاصه‌ی خودکار برای: %s" +msgid "The HTML pages are in %(outdir)s." +msgstr "صفحات HTML در %(outdir)s است." -#: ext/autosummary/generate.py:530 +#: builders/html/__init__.py:337 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[خلاصه‌ی خودکار] نوشتن در %s" +msgid "Failed to read build info file: %r" +msgstr "شکست در خواندن پرونده‌ی اطّلاعات ساخت: %r" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" + +#: builders/html/__init__.py:372 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nتولید ReStructuredText با استفاده از دستورالعمل‌های خلاصه‌ی خودکار.\n\nخودکارساز اسفینکس رابط کابر پسندی برای sphinx.ext.autosummary.generate (پیمانه‌ی افزونه‌ی خلاصه‌ساز اسفنیکس) است.\nاین افزونه پرونده های متن reStructuredText را از دستورالعمل‌های خلاصه‌ی خودکاری تولید می‌کند که در پرونده‌های درون‌داد مشخّص شده قرار دارد.\n\nقالب دستورالعمل خلاصه‌ی خودکار درپیمانه‌ی افزونه‌ی خلاصه‌ی خودکار اسفنیکس (sphinx.ext.autosummary) مستند سازی شده می توان آن را با دستور زیر خواند::\n\n pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "فهرست" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" -msgstr "پرونده‌های منبع برای تولید پرونده‌های rST" +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" +msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" -msgstr "پوشه‌ای برای قرار دادن همه‌ی برون دادها در آن" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "بعدی" -#: ext/autosummary/generate.py:805 -#, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "پسوند پیش فرض برای پرونده‌ها (پیش‌فرض: %(default)s)" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "قبلی" -#: ext/autosummary/generate.py:813 -#, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "شاخه‌ی سفارشی قالب (پیش‌گزیده: %(default)s)" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "تولید نمایه‌ها" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" -msgstr "اجزای فراخوان شده‌ی سند (پیش‌گزیده: %(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "نوشتن صفحات اضافی" -#: ext/autosummary/generate.py:829 +#: builders/html/__init__.py:783 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:47 -#, python-format -msgid "(in %s v%s)" -msgstr "(در %s v%s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "رونوشت از پرونده‌های قابل دریافت... " -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:807 #, python-format -msgid "(in %s)" -msgstr "(در %s )" +msgid "cannot copy downloadable file %r: %s" +msgstr "نمی تواند از پرونده‌ی قابل دریافت %r: %s رونوشت بگیرد" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "شکست در رونوشت یک پرونده‌ی به html_static_file: %s: %r" -#: ext/intersphinx/_resolve.py:359 -#, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "رونوشت از پرونده‌های ثابت" -#: ext/intersphinx/_resolve.py:367 +#: builders/html/__init__.py:923 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "cannot copy static file %r" +msgstr "نمی تواند از پرونده‌ی ثابت %r رونوشت بگیرد" -#: ext/intersphinx/_resolve.py:378 -#, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "رونوشت برداری از پرونده‌های اضافی" -#: ext/intersphinx/_resolve.py:585 +#: builders/html/__init__.py:938 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy extra file %r" +msgstr "نمی تواند از پرونده‌ی اضافه‌ی %r رونوشت بگیرد" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:944 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "Failed to write build info file: %r" +msgstr "شکست در نوشتن پرونده‌ی اطّلاعات ساخت: %r" -#: ext/intersphinx/_load.py:70 -#, python-format +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "نمایه‌ی جستجو نمی‌تواند بارگزاری شود، ولی برای همه‌ی مستندات ساخته‌ نمی‌شود: نمایه‌ ناقص خواهد بود." -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "صفحه‌ی %s با دو الگو در نوار کناری صفحه (html_sidebars) هم‌خوانی دارد: %r و%r" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "هنگام ارائه‌ی صفحه‌ی %s خطای یونیکد رخ داد. لطفاً اطمینان حاصل کنید که تمام مقدارهای پیکربندی‌ها دارای محتوای غیر اَسکی، رشته‌متن‌های یونکد هستند." -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "خطایی در نمایش صفحه‌ی %s رخ داد.\nعلّت: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "خالی کردن فهرست اشیاء" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "خالی کردن نمایه‌ی جستجو در %s" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" - -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "مشکلاتی در برخی از سیاهه‌ها به وجود آمد،ولی این مشکلات راه‌های جایگزین های داشته‌اند:" +msgid "invalid js_file: %r, ignored" +msgstr "پرونده‌ی js نامعتبر%r: نادیده گرفته می‌شود" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "شکست در رسیدن به یکی از سیاهه‌ها به خاطر مشکلات زیر:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "ارا‌ئه کننده‌های ریاضی زیادی ثبت شده‌اند، ولی هیچ کدام انتخاب نشده." -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "سیاهه‌ی بین اسفینکس جا به جایی را انجام داد: %s -> %s" +msgid "Unknown math_renderer %r is given." +msgstr "نمایش‌دهنده‌ی ریاضی نامشخّص %r داده شده." -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1365 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "شکست در به روز رسانی امضا برای %r: مؤلّفه پیدا نشد: %s" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "مدخل مسیر اضافی (html_extra_path) %r درون شاخه‌ی خارجی قرار دارد" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "شکست در تحلیل نوع یادداشت برای %r: %s" +msgid "html_extra_path entry %r does not exist" +msgstr "مدخل مسیر اضافی (html_extra_path) %r وجود ندارد" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "مقدار نامعتبر برای گزینه‌ی ترتیب اعضا (member-order): %s" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "مدخل مسیر ثابت (html_static_path) %r درون شاخه‌ی خارجی قرار دارد" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "مقدار نامعتبر برای گزینه‌ی «از مستندات کلاس» class-doc-from:%s" +msgid "html_static_path entry %r does not exist" +msgstr "مدخل مسیر ثابت (html_static_path) %r وجود ندارد" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "امضای ناشناخته‌ برای %s (%r)" +msgid "logo file %r does not exist" +msgstr "پرونده‌ی آرم %r وجود ندارد" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "خطا در قالب بندی نشانوند برای %s: %s" +msgid "favicon file %r does not exist" +msgstr "پرونده‌ی آیکون مورد علاقه %r وجود ندارد" -#: ext/autodoc/__init__.py:807 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:902 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "مشخّص نیست کدام پیمانه را برای مستندسازی خودکار فراخوان کند %r (سعی کنید دستورالعمل «module» یا «currentmodule» را در سند قرار دهید، یا یک نام واضح برای پیمانه ارائه دهید)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "شیئ ساختگی شناسایی شد: %r" +msgid "%s %s documentation" +msgstr "مستندات %s%s" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:87 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "خطا در قالب بندی امضا برای %s: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r فاقد تنظیمات زمینه است" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" در پیمانه‌ی خودکار معنی نمی‌دهد" +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "%r فاقد تنظیمات \"%s\" است" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" + +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "نشانوند‌های امضا یا یادداشت مقدار برگشتی داده شده برای پیمانه‌ی خودکار %s" +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ باید لیستی از رشته‌متن ها باشد، نه %r (در پیمانه‌ی %s) -- __all__ نادیده گرفته می‌شود" +msgid "No footnote was found for given reference node %r" +msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "پرونده‌ی LaTeX در پوشه‌ی %(outdir)s است." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "ویژگی نایاب در گزینه‌ی :members: قید شده: پیمانه‌ی:%s، ویژگی %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nدر آن شاخه فرمان 'make' را اجرا کنید تا این‌ها را با لتکس(pdf) اجرا کند\n(برای انجام خودکار `make latexpdf' را به کار ببرید)." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "هیچ مقدار پیکربندی اسناد لتکسی (latex_documents) پیدا نشد؛ بنابراین هیچ سندی نوشته نخواهد شد" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "شکست در دریافت امضای تابع برای %s: مؤلّفه پیدا نشد: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "مقدار پیکربندی سندهای لتکس (latex_documents) به سند ناشناخته‌ی %s ارجاع می‌دهد" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "رونوشت از پرونده‌های پشتیبانی لتکس" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "رونوشت برداری از پرونده‌های اضافی" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "شکست در دریافت امضای سازنده‌ی شیئ برای %s: مؤلّفه پیدا نشد: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "کلید پیکربندی ناشناخته: latex_elements[%r]، نادیده گرفته می‌شود." -#: ext/autodoc/__init__.py:1760 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" -msgstr "پایه ها:%s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "کلید زمینه‌ی ناشناخته: latex_theme_options[%r]، نادیده گرفته می‌شود." -#: ext/autodoc/__init__.py:1774 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" -msgstr "ویژگی ناموجود %s در شیئ %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "شماره‌ی قسمت‌ها پیش‌تر به %s نسبت داده شده ( آیا درختواره‌ی فهرست مطالب شماره‌گذاری تو در تو دارد؟)" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" -msgstr "نام جانشین %s" +msgid "image file not readable: %s" +msgstr "پرونده‌ی تصویر خوانا نیست: %s" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "نام جانشین نوع متغیر(%s)" +msgid "image file %s not readable: %s" +msgstr "پرونده‌ی عکس %s خوانا نیست: %s" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "شکست در دریافت امضای شگرد برای %s: مؤلّفه پیدا نشد: %s" +msgid "download file not readable: %s" +msgstr "پرونده‌ی دریافت شده خوانا نیست: %s" -#: ext/autodoc/__init__.py:2448 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "__slots__ نامعتبر در %sیدا شد و نادیده گرفته شد." +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "دور تسلسل در درختواره‌ی ارجاعات فهرست مطالب تشخیص داده شده، نادیده گرفته می‌شوند: %s <- %s" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "شکست در تحلیل مقدار پیش‌گزیده‌‌ی نشانوند برای %r: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "فهرست مطالب دارای ارجاع به سند %r است که عنوانی ندارد: هیچ پیوندی تولید نخواهد شد" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "ادامه از صفحه‌ی قبل" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "ادامه در صفحه‌ی بعد" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "غیر الفبایی" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "%s را ببینید" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "شماره ها" +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "%s را هم ببینید" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "صفحه" +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "نوع ناشناخته مدخل نمایه %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fi/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/fi/LC_MESSAGES/sphinx.mo index 00433e591791760da6c9168419a4a778fd695319..5ed53f938ec8221fb880a5ee52ebfb59aa96f957 100644 GIT binary patch delta 26 hcmX>gaX?~&IXkbZuAz~xfuVw-nU$f*W*7E9EC6Fx2O|Ig delta 26 hcmX>gaX?~&IXkb3uAz~xk)?u>k(IIKW*7E9EC6HB2QUBt diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fi/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/fi/LC_MESSAGES/sphinx.po index 12a6479da..ec0fe50ed 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/fi/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/fi/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -8,153 +8,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: FIRST AUTHOR , 2009\n" "Language-Team: Finnish (http://app.transifex.com/sphinx-doc/sphinx-1/language/fi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: fi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" +msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,1153 +322,1307 @@ msgid "" "explicit" msgstr "" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "" -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "" -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 +#: config.py:351 #, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: project.py:87 +#: config.py:374 #, python-format -msgid "Ignored unreadable document %r." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: highlighting.py:168 +#: config.py:379 #, python-format -msgid "Pygments lexer name %r is not known" +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" msgstr "" -#: highlighting.py:202 +#: config.py:391 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: extension.py:55 +#: config.py:399 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." +msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: extension.py:76 +#: config.py:422 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." +msgid "unknown config value %r in override, ignoring" msgstr "" -#: theming.py:114 +#: config.py:476 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +msgid "No such config value: %r" msgstr "" -#: theming.py:120 +#: config.py:504 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +msgid "Config value %r already present" msgstr "" -#: theming.py:135 +#: config.py:541 #, python-format -msgid "unsupported theme option %r given" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:207 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:228 +#: config.py:599 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:275 +#: config.py:611 #, python-format msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:282 +#: config.py:633 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:310 +#: config.py:651 config.py:659 #, python-format -msgid "no theme configuration file found in %r" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:665 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:339 +#: config.py:686 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "Section %s" msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:687 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "Fig. %s" msgstr "" -#: theming.py:347 +#: config.py:688 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "Table %s" msgstr "" -#: theming.py:366 +#: config.py:689 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "Listing %s" msgstr "" -#: config.py:309 -#, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:318 +#: config.py:829 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." msgstr "" -#: config.py:341 -#, python-format +#: config.py:846 +#, python-brace-format msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." msgstr "" -#: config.py:350 +#: config.py:858 #, python-format -msgid "invalid number %r for config value %r, ignoring" +msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: config.py:430 -#, python-format -msgid "No such config value: %r" +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: config.py:453 -#, python-format -msgid "Config value %r already present" +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: config.py:537 +#: environment/__init__.py:350 #, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: config.py:560 +#: environment/__init__.py:355 #, python-format -msgid "Failed to convert %r to a set or tuple" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: config.py:581 config.py:586 +#: environment/__init__.py:361 #, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: config.py:589 -#, python-format +#: environment/__init__.py:404 msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: config.py:608 +#: environment/__init__.py:518 #, python-format -msgid "Section %s" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: config.py:609 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "Fig. %s" +msgid "Domain %r is not registered" +msgstr "" + +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "" + +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: config.py:610 +#: environment/__init__.py:952 #, python-format -msgid "Table %s" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: config.py:611 +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Huom" + +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Varoitus" + +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Vaara" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Virhe" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Vihje" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Tärkeä" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Muista" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Katso myös" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Vihje" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Varoitus" + +#: builders/texinfo.py:41 #, python-format -msgid "Listing %s" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: config.py:718 +#: builders/texinfo.py:44 msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: config.py:742 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: config.py:755 -msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: config.py:766 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "primary_domain %r not found, ignored." +msgid "processing %s" msgstr "" -#: config.py:778 -msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "" + +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "" + +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "" + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: domains/rst.py:128 domains/rst.py:185 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "%s (directive)" +msgid "cannot copy image file %r: %s" +msgstr "" + +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: domains/rst.py:186 domains/rst.py:190 +#: builders/texinfo.py:218 #, python-format -msgid ":%s: (directive option)" +msgid "error writing file Makefile: %s" msgstr "" -#: domains/rst.py:214 +#: builders/manpage.py:37 #, python-format -msgid "%s (role)" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: domains/rst.py:224 -msgid "directive" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: domains/rst.py:225 -msgid "directive-option" +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: domains/rst.py:226 -msgid "role" +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." +msgstr "" + +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "" + +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: domains/rst.py:248 +#: builders/gettext.py:243 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: domains/javascript.py:165 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "%s() (built-in function)" +msgid "building [%s]: " msgstr "" -#: domains/javascript.py:166 domains/python/__init__.py:253 +#: builders/gettext.py:265 #, python-format -msgid "%s() (%s method)" +msgid "targets for %d template files" +msgstr "" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "" + +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: domains/javascript.py:168 +#: builders/linkcheck.py:87 #, python-format -msgid "%s() (class)" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: domains/javascript.py:170 +#: builders/linkcheck.py:159 #, python-format -msgid "%s (global variable or constant)" +msgid "broken link: %s (%s)" msgstr "" -#: domains/javascript.py:172 domains/python/__init__.py:338 +#: builders/linkcheck.py:561 #, python-format -msgid "%s (%s attribute)" +msgid "Anchor '%s' not found" msgstr "" -#: domains/javascript.py:255 -msgid "Arguments" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" -msgstr "%s (moduuli)" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "" -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "moduuli" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "Muutettu versiossa %s" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" -#: domains/changeset.py:27 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Deprecated since version %s" -msgstr "Poistettu versiosta %s alkaen" +msgid "invalid css_file: %r, ignored" +msgstr "" -#: domains/changeset.py:28 +#: builders/xml.py:29 #, python-format -msgid "Removed in version %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/__init__.py:299 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "%s %s" +msgid "error writing file %s: %s" msgstr "" -#: domains/citation.py:73 +#: builders/xml.py:103 #, python-format -msgid "duplicate citation %s, other instance in %s" +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: domains/citation.py:84 +#: builders/_epub_base.py:223 #, python-format -msgid "Citation [%s] is not referenced." +msgid "duplicated ToC entry found: %s" msgstr "" -#: domains/math.py:63 +#: builders/_epub_base.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: domains/math.py:119 writers/latex.py:2479 +#: builders/_epub_base.py:467 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: environment/__init__.py:81 -msgid "new config" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: environment/__init__.py:82 -msgid "config changed" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: environment/__init__.py:83 -msgid "extensions changed" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: environment/__init__.py:249 -msgid "build environment version not current" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: environment/__init__.py:251 -msgid "source directory has changed" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: environment/__init__.py:313 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: environment/__init__.py:318 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: environment/__init__.py:324 +#: builders/_epub_base.py:802 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "writing %s file..." msgstr "" -#: environment/__init__.py:366 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: environment/__init__.py:473 +#: builders/__init__.py:229 #, python-format -msgid "Failed to scan documents in %s: %r" +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: environment/__init__.py:626 +#: builders/__init__.py:237 #, python-format -msgid "Domain %r is not registered" +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: environment/__init__.py:777 -msgid "document isn't included in any toctree" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: environment/__init__.py:810 -msgid "self referenced toctree found. Ignored." +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: environment/__init__.py:839 +#: builders/__init__.py:280 #, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgid "all of %d po files" msgstr "" -#: locale/__init__.py:229 -msgid "Attention" -msgstr "Huom" - -#: locale/__init__.py:230 -msgid "Caution" -msgstr "Varoitus" +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" -#: locale/__init__.py:231 -msgid "Danger" -msgstr "Vaara" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" -#: locale/__init__.py:232 -msgid "Error" -msgstr "Virhe" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" -#: locale/__init__.py:233 -msgid "Hint" -msgstr "Vihje" - -#: locale/__init__.py:234 -msgid "Important" -msgstr "Tärkeä" - -#: locale/__init__.py:235 -msgid "Note" -msgstr "Muista" - -#: locale/__init__.py:236 -msgid "See also" -msgstr "Katso myös" - -#: locale/__init__.py:237 -msgid "Tip" -msgstr "Vihje" - -#: locale/__init__.py:238 -msgid "Warning" -msgstr "Varoitus" - -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:117 +#: builders/__init__.py:499 #, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:215 +#: builders/__init__.py:545 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:219 +#: builders/__init__.py:556 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:227 +#: builders/__init__.py:563 #, python-format -msgid "Selected root path: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" +#: builders/__init__.py:743 +msgid "copying assets" msgstr "" -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." msgstr "" -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: builders/changes.py:67 +msgid "writing summary file..." msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: builders/changes.py:79 +msgid "Builtins" msgstr "" -#: cmd/quickstart.py:282 -msgid "" -"The project name will occur in several places in the built documentation." +#: builders/changes.py:81 +msgid "Module level" +msgstr "Moduulitaso" + +#: builders/changes.py:137 +msgid "copying source files..." msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" msgstr "" -#: cmd/quickstart.py:293 -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" -"just set both to the same value." +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/quickstart.py:308 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/quickstart.py:324 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" msgstr "" -#: cmd/quickstart.py:334 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: cmd/quickstart.py:352 +#: ext/extlinks.py:82 #, python-format msgid "" -"Error: the master file %s has already been found in the selected root path." +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: ext/todo.py:61 +msgid "Todo" +msgstr "Tehtävä vielä" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" msgstr "" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: ext/todo.py:152 +msgid "<>" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" msgstr "" -#: cmd/quickstart.py:381 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: ext/todo.py:166 +msgid "original entry" msgstr "" -#: cmd/quickstart.py:391 +#: ext/imgconverter.py:44 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 -#, python-format -msgid "Creating file %s." +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: ext/graphviz.py:153 #, python-format -msgid "File %s already exists, skipping." +msgid "External Graphviz file %r not found or reading it failed" msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." msgstr "" -#: cmd/quickstart.py:504 +#: ext/graphviz.py:287 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/quickstart.py:512 +#: ext/graphviz.py:328 +#, python-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" msgstr "" -#: cmd/quickstart.py:515 +#: ext/graphviz.py:339 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:522 +#: ext/graphviz.py:344 +#, python-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: cmd/quickstart.py:646 -msgid "use epub" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: ext/duration.py:47 #, python-format -msgid "enable %s extension" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:795 +#: domains/math.py:73 #, python-format -msgid "Invalid template variable: %s" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "" + +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid "%s (%s attribute)" msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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.:" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" +msgstr "%s (moduuli)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "moduuli" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "" + +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "" + +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr "" + +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "" + +#: domains/rst.py:234 +msgid "directive" +msgstr "" + +#: domains/rst.py:235 +msgid "directive-option" +msgstr "" + +#: domains/rst.py:236 +msgid "role" +msgstr "" + +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "" + +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "Muutettu versiossa %s" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "Poistettu versiosta %s alkaen" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "" + +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" msgstr "" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1340,767 +1641,772 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "" -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "" -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "" -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/singlehtml.py:191 -msgid "writing additional files" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "" - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/texinfo.py:90 +#: cmd/quickstart.py:242 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +msgid "Selected root path: %s" msgstr "" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr "" - -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "" - -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/gettext.py:252 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/gettext.py:257 -msgid "reading templates... " +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/gettext.py:292 -msgid "writing message catalogs... " +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/__init__.py:220 -#, python-format -msgid "a suitable image for %s builder not found: %s" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/__init__.py:243 -msgid "building [mo]: " +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: builders/__init__.py:307 -msgid "all source files" +#: cmd/quickstart.py:340 +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 "" -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/__init__.py:325 -#, python-format +#: cmd/quickstart.py:350 msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "" - -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/__init__.py:351 -#, python-format -msgid "%d source files given on command line" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: builders/__init__.py:366 +#: cmd/quickstart.py:368 #, python-format -msgid "targets for %d source files that are out of date" +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: builders/__init__.py:483 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Creating file %s." msgstr "" -#: builders/__init__.py:519 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "File %s already exists, skipping." msgstr "" -#: builders/__init__.py:528 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: builders/__init__.py:539 +#: cmd/quickstart.py:520 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: builders/__init__.py:698 +#: cmd/quickstart.py:531 #, python-format -msgid "docnames to write: %s" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/_epub_base.py:465 +#: cmd/quickstart.py:671 #, python-format -msgid "cannot write image file %r: %s" +msgid "enable %s extension" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: builders/changes.py:33 -#, python-format -msgid "The overview file is in %(outdir)s." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: builders/changes.py:74 -msgid "Builtins" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: builders/changes.py:76 -msgid "Module level" -msgstr "Moduulitaso" - -#: builders/changes.py:128 -msgid "copying source files..." +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: builders/changes.py:137 +#: cmd/quickstart.py:810 #, python-format -msgid "could not read %r for changelog creation" +msgid "Invalid template variable: %s" msgstr "" -#: util/rst.py:72 +#: directives/other.py:119 #, python-format -msgid "default role %s not found" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/docfields.py:95 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/osutil.py:130 +#: directives/other.py:156 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/nodes.py:419 +#: directives/other.py:169 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Luvun kirjoittaja: " -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Moduulin kirjoittaja: " + +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: util/fileutil.py:74 -#, python-format +#: directives/other.py:209 +msgid "Author: " +msgstr "Tekijä: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" + +#: directives/code.py:87 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Invalid caption: %s" msgstr "" -#: util/inventory.py:170 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/inventory.py:185 +#: directives/code.py:216 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/docutils.py:284 +#: directives/code.py:231 #, python-format -msgid "unknown directive or role name: %s:%s" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/docutils.py:747 +#: directives/code.py:235 #, python-format -msgid "unknown node type: %r" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/display.py:81 -msgid "skipped" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" msgstr "" -#: util/display.py:86 -msgid "failed" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: util/i18n.py:103 +#: directives/code.py:314 #, python-format -msgid "reading error: %s, %s" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: util/i18n.py:110 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "writing error: %s, %s" +msgid "%b %d, %Y" +msgstr "%d.%m.%Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Sisällysluettelo" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: util/i18n.py:138 +#: writers/texinfo.py:1303 #, python-format -msgid "locale_dir %s does not exist" +msgid "unimplemented node type: %r" msgstr "" -#: util/i18n.py:230 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +msgid "[image: %s]" msgstr "" -#: directives/patches.py:66 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: directives/code.py:87 +#: writers/html5.py:431 #, python-format -msgid "Invalid caption: %s" +msgid "numfig_format is not defined for %s" msgstr "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: writers/html5.py:441 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "Any IDs not assigned for %s node" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: directives/code.py:234 -#, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: directives/code.py:276 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "Object named %r not found in include file %r" +msgid "unsupported rubric heading level: %s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: directives/code.py:314 -#, python-format -msgid "Line spec %r: no lines pulled from include file %r" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: writers/latex.py:386 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: directives/other.py:171 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "no Babel option known for language %r" msgstr "" -#: directives/other.py:204 -msgid "Section author: " -msgstr "Luvun kirjoittaja: " +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" -#: directives/other.py:206 -msgid "Module author: " -msgstr "Moduulin kirjoittaja: " +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: directives/other.py:208 -msgid "Code author: " +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: directives/other.py:210 -msgid "Author: " -msgstr "Tekijä: " +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" #: _cli/__init__.py:73 @@ -2108,6 +2414,7 @@ msgid "Usage:" msgstr "" #: _cli/__init__.py:75 +#, python-brace-format msgid "{0} [OPTIONS] []" msgstr "" @@ -2123,1992 +2430,1876 @@ msgstr "" msgid "Options" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 +#: _cli/__init__.py:113 _cli/__init__.py:181 msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: _cli/__init__.py:172 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" "{0}: error: {1}\n" "Run '{0} --help' for information" msgstr "" -#: _cli/__init__.py:182 +#: _cli/__init__.py:179 msgid " Manage documentation with Sphinx." msgstr "" -#: _cli/__init__.py:194 +#: _cli/__init__.py:191 msgid "Show the version and exit." msgstr "" -#: _cli/__init__.py:202 +#: _cli/__init__.py:199 msgid "Show this message and exit." msgstr "" -#: _cli/__init__.py:206 +#: _cli/__init__.py:203 msgid "Logging" msgstr "" -#: _cli/__init__.py:213 +#: _cli/__init__.py:210 msgid "Increase verbosity (can be repeated)" msgstr "" -#: _cli/__init__.py:221 +#: _cli/__init__.py:218 msgid "Only print errors and warnings." msgstr "" -#: _cli/__init__.py:228 +#: _cli/__init__.py:225 msgid "No output at all" msgstr "" -#: _cli/__init__.py:234 +#: _cli/__init__.py:231 msgid "" msgstr "" -#: _cli/__init__.py:265 +#: _cli/__init__.py:263 msgid "See 'sphinx --help'.\n" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 -#, python-format -msgid "%b %d, %Y" -msgstr "%d.%m.%Y" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "" - -#: transforms/i18n.py:228 transforms/i18n.py:303 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" "inconsistent footnote references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:273 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" "inconsistent references in translated message. original: {0}, translated: " "{1}" msgstr "" -#: transforms/i18n.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" "inconsistent citation references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:345 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" "inconsistent term references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 +#: transforms/__init__.py:258 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/imgconverter.py:68 +#: transforms/__init__.py:299 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/viewcode.py:286 -msgid "[docs]" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/viewcode.py:306 -msgid "Module code" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/viewcode.py:312 +#: util/inventory.py:147 #, python-format -msgid "

Source code for %s

" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/viewcode.py:338 -msgid "Overview: module code" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: ext/coverage.py:47 +#: util/i18n.py:113 #, python-format -msgid "invalid regex %r in %s" +msgid "writing error: %s, %s" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 +#: util/i18n.py:146 #, python-format -msgid "module %s could not be imported: %s" +msgid "locale_dir %s does not exist" msgstr "" -#: ext/coverage.py:141 +#: util/i18n.py:244 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: ext/coverage.py:149 +#: util/i18n.py:253 +#, python-format msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: ext/coverage.py:163 +#: util/osutil.py:131 #, python-format msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: ext/coverage.py:177 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: ext/coverage.py:245 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" +#: util/display.py:87 +msgid "failed" msgstr "" -#: ext/coverage.py:429 +#: util/docutils.py:325 #, python-format -msgid "undocumented python function: %s :: %s" +msgid "unknown directive name: %s" msgstr "" -#: ext/coverage.py:445 +#: util/docutils.py:361 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "unknown role name: %s" msgstr "" -#: ext/coverage.py:458 +#: util/docutils.py:805 #, python-format -msgid "undocumented python method: %s :: %s :: %s" +msgid "unknown node type: %r" msgstr "" -#: ext/todo.py:71 -msgid "Todo" -msgstr "Tehtävä vielä" - -#: ext/todo.py:104 +#: util/fileutil.py:76 #, python-format -msgid "TODO entry found: %s" +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: ext/todo.py:163 -msgid "<>" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: ext/todo.py:165 +#: util/docfields.py:103 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: ext/todo.py:175 -msgid "original entry" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: ext/extlinks.py:82 +#: util/nodes.py:462 #, python-format msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: ext/doctest.py:115 +#: util/nodes.py:523 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: ext/doctest.py:120 +#: util/nodes.py:739 #, python-format -msgid "'%s' is not a valid option." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: ext/doctest.py:134 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: ext/doctest.py:220 -msgid "invalid TestCode type" -msgstr "" - -#: ext/doctest.py:281 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: ext/doctest.py:434 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: ext/doctest.py:522 -#, python-format -msgid "ignoring invalid doctest code: %r" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: ext/graphviz.py:268 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "graphviz_dot executable path must be set! %r" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: ext/graphviz.py:303 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: ext/graphviz.py:310 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +msgid "Unknown image format: %s..." msgstr "" -#: ext/graphviz.py:313 -#, python-format +#: transforms/post_transforms/__init__.py:88 msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: ext/graphviz.py:329 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "dot code %r: %s" +msgid "%s:%s reference target not found: %s" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "[graph: %s]" -msgstr "" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" +msgid "%r reference target not found: %s" msgstr "" -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: ext/apidoc.py:85 -#, python-format -msgid "Would create file %s." +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: ext/apidoc.py:392 -msgid "path to module to document" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: ext/apidoc.py:396 +#: _cli/util/errors.py:207 msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: ext/apidoc.py:407 -msgid "directory to place all output" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: ext/apidoc.py:429 -msgid "overwrite existing files" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: ext/apidoc.py:437 +#: _cli/util/errors.py:246 msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: ext/apidoc.py:446 -msgid "run the script without creating files" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navikointi" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" msgstr "" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Tietoja tästä documentistä" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Etsi" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: ext/apidoc.py:481 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." msgstr "" -#: ext/apidoc.py:498 +#: themes/basic/layout.html:204 +#, python-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "<<" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "<<" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr ">>" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" -msgstr "" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr ">>" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" -msgstr "" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Hakemisto yhtenä luettelona" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" -msgstr "" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Tämä sivu" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Näytä lähdekoodina" -#: ext/apidoc.py:564 -msgid "extension options" -msgstr "" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Pikahaku" -#: ext/apidoc.py:638 -#, python-format -msgid "%s is not a directory." -msgstr "" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Siirry" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 -#, python-format -msgid "Failed to remove %s: %s" -msgstr "" +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "Yhteenveto" -#: ext/autosectionlabel.py:48 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: themes/basic/defindex.html:9 +msgid "the documentation for" msgstr "" -#: ext/duration.py:85 -msgid "" -"====================== slowest reading durations =======================" +#: themes/basic/defindex.html:10 +msgid "last updated" msgstr "" -#: ext/imgmath.py:159 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" msgstr "" -#: ext/imgmath.py:174 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" msgstr "" -#: ext/imgmath.py:328 -#, python-format -msgid "display latex %r: %s" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" msgstr "" -#: ext/imgmath.py:362 -#, python-format -msgid "inline latex %r: %s" -msgstr "" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Etsi sivu" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" +#: themes/basic/defindex.html:19 +msgid "search this documentation" msgstr "" -#: writers/manpage.py:309 writers/text.py:936 -#, python-format -msgid "[image: %s]" -msgstr "" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Yleinen moduulien sisällysluettelo" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" msgstr "" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Yleinen sisällysluettelo" + +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" msgstr "" -#: writers/html5.py:415 -#, python-format -msgid "numfig_format is not defined for %s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: writers/html5.py:427 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Any IDs not assigned for %s node" +msgid "Search %(docstitle)s" msgstr "" -#: writers/html5.py:482 -msgid "Link to this term" -msgstr "" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Hakemisto aakkostus sivuttain" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" -msgstr "" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "voi olla iso" -#: writers/html5.py:535 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:549 writers/latex.py:1099 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/html5.py:613 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:615 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:617 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "Sisällysluettelo" - -#: writers/latex.py:743 writers/texinfo.py:644 +#: themes/basic/search.html:20 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" - -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." -msgstr "" - -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:360 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "Javascript pitää olla sallittu, jotta etsintä toimii." -#: builders/latex/__init__.py:223 writers/latex.py:410 -#, python-format -msgid "no Babel option known for language %r" +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." -msgstr "" +#: themes/basic/search.html:35 +msgid "search" +msgstr "etsi" -#: writers/latex.py:590 -#, python-format -msgid "template %s not found; loading from legacy %s instead" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: writers/latex.py:708 -msgid "document title is not a single Text node" -msgstr "" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "Etsinnän tulos" -#: writers/latex.py:1175 +#: themes/basic/static/searchtools.js:134 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." msgstr "" -#: writers/latex.py:1931 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 -#, python-format -msgid "environment variable; %s" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" msgstr "" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: themes/basic/static/searchtools.js:526 +msgid ", in " msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Piilota löydetyt" -#: domains/std/__init__.py:235 +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:306 +#: themes/basic/changes/rstsource.html:5 #, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:308 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:604 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:607 -msgid "environment variable" +msgid "%(filename)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:608 -msgid "program option" -msgstr "" +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "Automaattisesti luotu muutoshistoria alkaen versiosta %(version)s" -#: domains/std/__init__.py:609 -msgid "document" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" -msgstr "Moduuli sisällysluettelo" - -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Etsi sivu" - -#: domains/std/__init__.py:722 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" msgstr "" -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" msgstr "" -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" msgstr "" -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" msgstr "" -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" +#: domains/python/_object.py:206 +msgid "Variables" msgstr "" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduulit" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Poistettu" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (poistettu)" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:173 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/c/__init__.py:199 -#, python-format -msgid "%s (C %s)" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:302 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." +msgid "%s (C++ %s)" msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" -msgstr "" - -#: domains/c/__init__.py:680 -msgid "variable" +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" msgstr "" -#: domains/c/__init__.py:682 -msgid "macro" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" msgstr "" -#: domains/c/__init__.py:683 -msgid "struct" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" msgstr "" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" +#: domains/cpp/__init__.py:946 +msgid "concept" msgstr "" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" +#: domains/cpp/__init__.py:954 +msgid "template parameter" msgstr "" -#: domains/cpp/__init__.py:277 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "%s (C++ %s)" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: domains/c/__init__.py:211 #, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +msgid "%s (C %s)" msgstr "" -#: domains/cpp/__init__.py:862 -msgid "concept" +#: domains/c/__init__.py:778 +msgid "variable" msgstr "" -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/c/__init__.py:780 +msgid "macro" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Etsi" - -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Siirry" +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Näytä lähdekoodina" +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navikointi" +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "" -#: themes/basic/layout.html:115 +#: domains/std/__init__.py:319 #, python-format -msgid "Search within %(docstitle)s" +msgid "%s command line option" msgstr "" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Tietoja tästä documentistä" +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Hakemisto yhtenä luettelona" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Hakemisto aakkostus sivuttain" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "voi olla iso" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Tämä sivu" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Moduuli sisällysluettelo" -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "Yhteenveto" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" +msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" msgstr "" -#: themes/basic/defindex.html:19 -msgid "search this documentation" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Yleinen moduulien sisällysluettelo" +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Yleinen sisällysluettelo" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Pikahaku" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "Javascript pitää olla sallittu, jotta etsintä toimii." +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: themes/basic/search.html:35 -msgid "search" -msgstr "etsi" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "<<" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "<<" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr ">>" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr ">>" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "A mocked object is detected: %r" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "Automaattisesti luotu muutoshistoria alkaen versiosta %(version)s" - -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" +msgid "alias of %s" msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" msgstr "" -#: themes/basic/changes/rstsource.html:5 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "%(filename)s — %(docstitle)s" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Piilota löydetyt" - -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "Etsinnän tulos" - -#: themes/basic/static/searchtools.js:119 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" msgstr "" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" - -#: themes/basic/static/searchtools.js:253 -msgid "Searching" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: environment/collectors/asset.py:124 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "image file %s not readable: %s" +msgid "Failed to remove %s: %s" msgstr "" -#: environment/collectors/asset.py:161 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "download file not readable: %s" +msgid "Would create file %s." msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format +#: ext/apidoc/_cli.py:50 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:382 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "hakemisto" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr ">" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "<" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:695 -msgid "generating indices" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/__init__.py:793 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:817 -#, python-format -msgid "cannot copy downloadable file %r: %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:863 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:881 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "cannot copy static file %r" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/html/__init__.py:948 -#, python-format -msgid "cannot copy extra file %r" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "dumping search index in %s" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:1344 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Unknown math_renderer %r is given." +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1358 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1363 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1378 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:630 #, python-format -msgid "logo file %r does not exist" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/generate.py:634 #, python-format -msgid "favicon file %r does not exist" +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/generate.py:679 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1430 +#: ext/autosummary/generate.py:877 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1447 -#, python-format -msgid "%s %s documentation" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/generate.py:915 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/generate.py:923 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/generate.py:931 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/latex/__init__.py:119 +#: ext/autosummary/generate.py:940 +#, python-format msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: builders/latex/__init__.py:540 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/theming.py:87 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/theming.py:90 +#: ext/intersphinx/_load.py:61 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: _cli/util/errors.py:172 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:122 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: transforms/post_transforms/__init__.py:185 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "%r reference target not found: %s" +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Unknown image format: %s..." +msgid "(in %s %s)" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "failed to parse name %s" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "failed to import object %s" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:827 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/generate.py:526 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/generate.py:530 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "[autosummary] writing to %s" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:572 -#, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:805 +#: builders/html/__init__.py:337 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Failed to read build info file: %r" msgstr "" -#: ext/autosummary/generate.py:813 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:829 +#: builders/html/__init__.py:372 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:47 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "hakemisto" + +#: builders/html/__init__.py:549 #, python-format -msgid "(in %s v%s)" +msgid "Logo of %s" msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr ">" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "<" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/intersphinx/_resolve.py:103 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:367 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:378 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "" + +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:585 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1385 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1412 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1425 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:807 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:902 +#: builders/html/__init__.py:1454 #, python-format -msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +msgid "%s %s documentation" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/latex/theming.py:87 #, python-format -msgid "A mocked object is detected: %r" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1760 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1774 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fr/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/fr/LC_MESSAGES/sphinx.mo index 3bf81a9c898ef734aab1c12302b05d8c55c3eca7..b6356cecaea70d2f0fdf66327fc54834d2ab5647 100644 GIT binary patch delta 19816 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 delta 15748 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 N-dfh@Zu|SV{|9WS5w!pS diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fr/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/fr/LC_MESSAGES/sphinx.po index 896a1190c..b30bba597 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/fr/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/fr/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -10,7 +10,7 @@ # cyrille gachot , 2019 # David Georges, 2021 # Larlet David , 2008 -# Denis Bitouzé , 2020-2024 +# Denis Bitouzé , 2020-2025 # fgallaire , 2010 # fgallaire , 2010 # François Poirotte , 2016-2017,2020 @@ -35,153 +35,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-04 06:45+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" -"Last-Translator: Denis Bitouzé , 2020-2024\n" +"Last-Translator: Denis Bitouzé , 2020-2025\n" "Language-Team: French (http://app.transifex.com/sphinx-doc/sphinx-1/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: fr\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "Vulnérabilités et expositions communes ; CVE %s" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "numéro CVE non valide %s" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "Énumération des faiblesses communes ; CWE %s" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "numéro de CWE non valide %s" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "numéro PEP %s non valide" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "numéro RFC %snon valide" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "Les sections de configuration autres que [theme] et [options] ne sont pas acceptées (on a essayé d'obtenir une valeur à partir de %r)." + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "le paramètre %s.%s n'apparaît dans aucune des configurations de thème recherchées" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "l'option %r n'est pas supportée pour ce thème" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "le fichier %r dans le dossier des thèmes n'est pas une archive zip valide ou ne contient aucun thème" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "aucun thème nommé %r trouvé (theme.toml manquant ?)" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "Le thème %r a un héritage circulaire" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "Le thème %r hérite de %r, qui n'est pas un thème chargé. Les thèmes chargés sont : %s" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "Le thème %r a trop d'ancêtres" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "aucun fichier de configuration de thème n'a été trouvé dans %r" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "Le thème %r n'a pas la table « thème »" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "La table thème « [theme] » %r n'est pas une table" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "Le thème %r doit définir la clé \"theme.inherit\" dans les paramètres" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "La table thème « [options » %r n'est pas une table" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "Le paramètre « theme.pygments_style » doit être une table. Conseil : « %s »" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "plusieurs fichiers trouvés pour le document « %s » : %s\nUtilisez %r pour la compilation." + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "Document illisible %r ignoré." + +#: extension.py:58 +#, python-format +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." + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "Ce projet nécessite que l'extension %s soit au minimum en version %s et par conséquent il ne peut pas être construit avec la version chargée (%s)." + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Le nom du l'analyseur Pygments %r est inconnu" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "Le lexème du bloc_littéral %r en tant que \"%s\" a entraîné une erreur au niveau du jeton : %r. Réessayer en mode relaxé." + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "Évènement %r déjà présent" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "Nom d'évènement inconnu : %s" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "Le gestionnaire %r de l'évènement %r a créé une exception." -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Impossible de trouver le répertoire source (%s)" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Le répertoire de sortie (%s) n'est pas un répertoire" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Les dossiers source et destination ne doivent pas être identiques" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx v%s en cours d'exécution" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Ce projet nécessite au minimum Sphinx v%s et ne peut donc être construit avec cette version." -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "création du répertoire de sortie" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "lors de l'initialisation de l'extension %s :" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' tel que défini dans conf.py n'est pas un objet Python appelable. Veuillez modifier sa définition pour en faire une fonction appelable. Ceci est nécessaire pour que conf.py se comporte comme une extension Sphinx." -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "chargement des traductions [%s]... " -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "fait" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "traductions indisponibles" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "chargement de l'environnement pickled" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "échec : %s" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Aucun constructeur sélectionné, utilisation du défaut : html" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "La compilation s'est terminée avec des problèmes." -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "La compilation a réussi." -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "La compilation s'est terminée avec des problèmes, 1 avertissement (avec les avertissements considérés comme des erreurs)." -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "La compilation s'est terminée avec des problèmes, 1 avertissement." -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "La compilation a réussi, 1 avertissement." -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "La compilation s'est terminée avec des problèmes, %s avertissements (avec les avertissements considérés comme des erreurs)." -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "La compilation s'est terminée avec des problèmes, %s avertissements." -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "La compilation a réussi, %s avertissements." -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "la classe de nœud %r est déjà enregistrée, ses visiteurs seront écrasés" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" -msgstr "la directive %r est déjà enregistrée, elle sera écrasée" +msgid "directive %r is already registered and will not be overridden" +msgstr "la directive %r est déjà enregistrée et ne sera pas remplacé." -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" -msgstr "le rôle %r est déjà enregistré, il sera écrasé" +msgid "role %r is already registered and will not be overridden" +msgstr "le rôle %r est déjà enregistré et ne sera pas remplacé." -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -189,12 +336,12 @@ msgid "" "explicit" msgstr "l’extension %s ne se déclare pas compatible à la lecture en parallèle, on supposera qu’elle ne l'est pas - merci de demander à l'auteur de l’extension de vérifier ce qu’il en est et de le préciser explicitement" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "l'extension %s n'est pas compatible avec les lectures parallèles" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -202,645 +349,357 @@ msgid "" "explicit" msgstr "l’extension %s ne se déclare pas compatible à l’écriture en parallèle, on supposera qu’elle ne l’est pas - merci de demander à l'auteur de l’extension de vérifier ce qu’il en est et de le préciser explicitement" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "l'extension %s n'est pas compatible avec les écritures parallèles" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "sérialisation en cours %s" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "Vulnérabilités et expositions communes ; CVE %s" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "numéro CVE non valide %s" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "Énumération des faiblesses communes ; CWE %s" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "numéro de CWE non valide %s" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "numéro PEP %s non valide" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "numéro RFC %snon valide" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "La classe Builder %s n'a pas d'attribut « name »" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "Le constructeur %r existe déjà (dans le module %s)" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "Le nom de Constructeur %s n'est ni enregistré ni accessible par point d'entrée" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "Constructeur %s non enregistré" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "le domaine %s a déjà été enregistré" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "le domaine %s n'a pas encore été enregistré" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "La directive %r est déjà enregistrée sur le domaine %s" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "Le rôle %r est déjà enregistré sur le domaine %s" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "L'index %r est déjà enregistré sur le domaine %s" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "Le type de l'objet %r est déjà enregistré" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "Le type %r crossref_type est déjà enregistré" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "L'extension source %r est déjà enregistrée" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "source_parser pour %r est déjà enregistré" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "source_parser pour %s non enregistré" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "Il existe déjà un traducteur pour %r" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "Les kwargs pour add_node() doivent être un tuple de fonction (visite, départ) : %r=%r" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "enumerable_node %r est déjà enregistré" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "le moteur de rendu mathématique %s est déjà enregistré" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "l'extension %r a été intégrée à Sphinx depuis la version %s ; cette extension est ignorée." -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "Exception initiale :\n" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "L'extension %s ne peut pas être importée" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "l'extension %r n'a pas de fonction setup(); est-elle réellement un module d'extension de Sphinx ?" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "L'extension %s utilisée par ce projet nécessite au moins Sphinx v%s ; il ne peut donc pas être construit avec la version courante." -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "l'extension %r a renvoyé par sa fonction setup() un type d'objet non supporté ; elle devrait renvoyer None ou un dictionnaire de méta-données" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "`None` n'est pas un type de fichier valide pour %r." -#: project.py:71 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "plusieurs fichiers trouvés pour le document « %s » : %s\nUtilisez %r pour la compilation." - -#: project.py:87 +#: config.py:351 #, python-format -msgid "Ignored unreadable document %r." -msgstr "Document illisible %r ignoré." +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "Le dossier de configuration ne contient pas de fichier conf.py (%s)" -#: highlighting.py:168 +#: config.py:374 #, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Le nom du l'analyseur Pygments %r est inconnu" +msgid "'%s' must be '0' or '1', got '%s'" +msgstr "'%s' doit être '0' ou '1', a '%s'" -#: highlighting.py:202 +#: config.py:379 #, python-format msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "Le lexème du bloc_littéral %r en tant que \"%s\" a entraîné une erreur au niveau du jeton : %r. Réessayer en mode relaxé." +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "impossible d'écraser le dictionnaire de configuration %r ; ignoré (utilisez %r pour modifier les éléments individuellement)" -#: extension.py:55 +#: config.py:391 #, python-format -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." +msgid "invalid number %r for config value %r, ignoring" +msgstr "nombre non valide %r pour l'option de configuration %r ; ignoré" -#: extension.py:76 +#: config.py:399 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." -msgstr "Ce projet nécessite que l'extension %s soit au minimum en version %s et par conséquent il ne peut pas être construit avec la version chargée (%s)." +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "impossible de remplacer le paramètre de configuration %r par un type non-supporté ; ignoré" -#: theming.py:114 +#: config.py:422 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "Les sections de configuration autres que [theme] et [options] ne sont pas acceptées (on a essayé d'obtenir une valeur à partir de %r)." +msgid "unknown config value %r in override, ignoring" +msgstr "paramètre de configuration %r inconnu dans override ; ignoré" -#: theming.py:120 +#: config.py:476 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "le paramètre %s.%s n'apparaît dans aucune des configurations de thème recherchées" +msgid "No such config value: %r" +msgstr "Aucune valeur de configuration du type : %r" -#: theming.py:135 +#: config.py:504 #, python-format -msgid "unsupported theme option %r given" -msgstr "l'option %r n'est pas supportée pour ce thème" +msgid "Config value %r already present" +msgstr "L'option de configuration %r est déjà présente" -#: theming.py:207 +#: config.py:541 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "le fichier %r dans le dossier des thèmes n'est pas une archive zip valide ou ne contient aucun thème" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" +msgstr "ne peut pas mettre en cache une valeur de configuration non piquable : %r (parce qu'il contient une fonction, une classe ou un objet de module)" -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "aucun thème nommé %r trouvé (theme.toml manquant ?)" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "Valeur de configuration non valide trouvée: 'language = None'. Mettez à jour la configuration avec un code de langage valide. Utilisation de 'en' (English) comme substitut." -#: theming.py:268 +#: config.py:599 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "Le thème %r a un héritage circulaire" +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "Votre fichier de configuration comporte une erreur de syntaxe : %s\n" -#: theming.py:275 -#, python-format +#: config.py:603 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "Le thème %r hérite de %r, qui n'est pas un thème chargé. Les thèmes chargés sont : %s" +"The configuration file (or one of the modules it imports) called sys.exit()" +msgstr "Le fichier de configuration (ou un des modules qu'il utilise) génère un sys.exit()" -#: theming.py:282 +#: config.py:611 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "Le thème %r a trop d'ancêtres" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" +msgstr "Votre fichier de configuration comporte une erreur de programmation : \n\n%s" -#: theming.py:310 +#: config.py:633 #, python-format -msgid "no theme configuration file found in %r" -msgstr "aucun fichier de configuration de thème n'a été trouvé dans %r" +msgid "Failed to convert %r to a frozenset" +msgstr "Échec de la conversion %r à un ensemble fixé" -#: theming.py:335 theming.py:388 +#: config.py:651 config.py:659 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "Le thème %r n'a pas la table « thème »" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgstr "Conversion de `source_suffix = %r` en `source_suffix = %r`." -#: theming.py:339 +#: config.py:665 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "La table thème « [theme] » %r n'est pas une table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." +msgstr "La valeur de configuration `source_suffix' attend un dictionnaire, une chaîne ou une liste de chaînes. Obtenu à la place : `%r' (type %s)." -#: theming.py:343 theming.py:391 +#: config.py:686 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "Le thème %r doit définir la clé \"theme.inherit\" dans les paramètres" +msgid "Section %s" +msgstr "Section %s" -#: theming.py:347 +#: config.py:687 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "La table thème « [options » %r n'est pas une table" +msgid "Fig. %s" +msgstr "Fig. %s" -#: theming.py:366 +#: config.py:688 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "Le paramètre « theme.pygments_style » doit être une table. Conseil : « %s »" +msgid "Table %s" +msgstr "Tableau %s" -#: config.py:309 -#, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "Le dossier de configuration ne contient pas de fichier conf.py (%s)" - -#: config.py:318 -msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "Valeur de configuration non valide trouvée: 'language = None'. Mettez à jour la configuration avec un code de langage valide. Utilisation de 'en' (English) comme substitut." - -#: config.py:341 -#, python-format -msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" -msgstr "impossible d'écraser le dictionnaire de configuration %r ; ignoré (utilisez %r pour modifier les éléments individuellement)" - -#: config.py:350 -#, python-format -msgid "invalid number %r for config value %r, ignoring" -msgstr "nombre non valide %r pour l'option de configuration %r ; ignoré" - -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" -msgstr "impossible de remplacer le paramètre de configuration %r par un type non-supporté ; ignoré" - -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" -msgstr "paramètre de configuration %r inconnu dans override ; ignoré" - -#: config.py:430 -#, python-format -msgid "No such config value: %r" -msgstr "Aucune valeur de configuration du type : %r" - -#: config.py:453 -#, python-format -msgid "Config value %r already present" -msgstr "L'option de configuration %r est déjà présente" - -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" -msgstr "ne peut pas mettre en cache une valeur de configuration non sélectionnable : %r (parce qu'il contient une fonction, une classe ou un objet de module)" - -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" -msgstr "Votre fichier de configuration comporte une erreur de syntaxe : %s\n" - -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "Le fichier de configuration (ou un des modules qu'il utilise) génère un sys.exit()" - -#: config.py:537 -#, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" -msgstr "Votre fichier de configuration comporte une erreur de programmation : \n\n%s" - -#: config.py:560 -#, python-format -msgid "Failed to convert %r to a set or tuple" -msgstr "Échec de la conversion de %r en un ensemble ou un tuple " - -#: config.py:581 config.py:586 -#, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." -msgstr "Conversion de `source_suffix = %r` en `source_suffix = %r`." - -#: config.py:589 -#, python-format -msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." -msgstr "La valeur de configuration `source_suffix' attend un dictionnaire, une chaîne ou une liste de chaînes. Obtenu à la place : `%r' (type %s)." - -#: config.py:608 -#, python-format -msgid "Section %s" -msgstr "Section %s" - -#: config.py:609 -#, python-format -msgid "Fig. %s" -msgstr "Fig. %s" - -#: config.py:610 -#, python-format -msgid "Table %s" -msgstr "Tableau %s" - -#: config.py:611 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Code source %s" -#: config.py:718 +#: config.py:798 +#, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "La valeur « {current} » du paramètre « {name} » ne figure pas dans la liste des possibilités valables « {candidates} »." -#: config.py:742 +#: config.py:829 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "Le type du paramètre de configuration « {name} » doit être {permitted} et non « {current.__name__} »." -#: config.py:755 +#: config.py:846 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "Le paramètre de configuration « {name} » a pour type « {current.__name__} », tandis que le type par défaut est « {default.__name__} »." -#: config.py:766 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r non trouvé; ignoré." -#: config.py:778 +#: config.py:878 msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." -msgstr "Depuis sa version 2.0, Sphinx utilise \"index\" comme root_doc par défaut. Veuillez ajouter \"root_doc = 'contents'\" à votre conf.py." - -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" -msgstr "%s (directive)" - -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (option de directive)" - -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" -msgstr "%s (role)" - -#: domains/rst.py:224 -msgid "directive" -msgstr "directive" - -#: domains/rst.py:225 -msgid "directive-option" -msgstr "option de directive" - -#: domains/rst.py:226 -msgid "role" -msgstr "role" - -#: domains/rst.py:248 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "description dupliquée pour %s %s; l'autre instance se trouve dans %s" - -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (fonction de base)" - -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (méthode %s)" - -#: domains/javascript.py:168 -#, python-format -msgid "%s() (class)" -msgstr "%s() (classe)" - -#: domains/javascript.py:170 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variable globale ou constante)" - -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (attribut %s)" - -#: domains/javascript.py:255 -msgid "Arguments" -msgstr "Arguments" - -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" -msgstr "Déclenche" - -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" -msgstr "Renvoie" - -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" -msgstr "Type renvoyé" - -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" -msgstr "%s (module)" - -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" -msgstr "fonction" - -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" -msgstr "méthode" - -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" -msgstr "classe" - -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" -msgstr "données" - -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" -msgstr "attribut" - -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "module" - -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "description de %s dupliquée pour%s; l'autre %s se trouve dans %s" - -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" -msgstr "Ajouté dans la version %s" - -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "Modifié dans la version %s" - -#: domains/changeset.py:27 -#, python-format -msgid "Deprecated since version %s" -msgstr "Obsolète depuis la version %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Removed in version %s" -msgstr "Supprimé dans la version %s" - -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "citation dupliquée %s, une autre instance dans %s" - -#: domains/citation.py:84 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "La citation [%s] n'est pas référencée" - -#: domains/math.py:63 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "Libellé dupliqué pour l'équation %s, autre instance dans %s" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." +msgstr "Sphinx utilise désormais \"index\" comme document maître par défaut. Pour conserver le comportement antérieur à la version 2.0, définissez \"master_doc = 'contents'\"." -#: domains/math.py:119 writers/latex.py:2479 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "math_eqref_format invalide : %r" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "La prise en charge des encodages source autres que UTF-8 est obsolète et sera supprimée dans Sphinx 10. Veuillez signaler tout problème à l'adresse https://github.com/sphinx-doc/sphinx/issues/13665." -#: environment/__init__.py:81 +#: environment/__init__.py:89 msgid "new config" msgstr "nouvelle configuration" -#: environment/__init__.py:82 +#: environment/__init__.py:90 msgid "config changed" msgstr "la configuration a changé" -#: environment/__init__.py:83 +#: environment/__init__.py:91 msgid "extensions changed" msgstr "les extensions ont changé" -#: environment/__init__.py:249 +#: environment/__init__.py:261 msgid "build environment version not current" msgstr "version non à jour de l’environnement de construction" -#: environment/__init__.py:251 +#: environment/__init__.py:263 msgid "source directory has changed" msgstr "le répertoire racine a changé" -#: environment/__init__.py:313 +#: environment/__init__.py:350 #, python-format msgid "The configuration has changed (1 option: %r)" msgstr "La configuration a changé (1 option : %r)" -#: environment/__init__.py:318 +#: environment/__init__.py:355 #, python-format msgid "The configuration has changed (%d options: %s)" msgstr "La configuration a changé (%d options : %s)" -#: environment/__init__.py:324 +#: environment/__init__.py:361 #, python-format msgid "The configuration has changed (%d options: %s, ...)" msgstr "La configuration a changé (%d options : %s, ...)" -#: environment/__init__.py:366 +#: environment/__init__.py:404 msgid "" "This environment is incompatible with the selected builder, please choose " "another doctree directory." msgstr "Cet environnement est incompatible avec le constructeur sélectionné, veuillez choisir un autre répertoire doctree." -#: environment/__init__.py:473 +#: environment/__init__.py:518 #, python-format msgid "Failed to scan documents in %s: %r" msgstr "Échec du scan des documents dans %s : %r" -#: environment/__init__.py:626 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format msgid "Domain %r is not registered" msgstr "le domaine %r n'est pas enregistré." -#: environment/__init__.py:777 +#: environment/__init__.py:811 msgid "document isn't included in any toctree" msgstr "Le document n'est inclus dans aucune toctree." -#: environment/__init__.py:810 +#: environment/__init__.py:922 msgid "self referenced toctree found. Ignored." msgstr "une table des matières auto-référencée a été trouvée. Elle sera ignorée." -#: environment/__init__.py:839 +#: environment/__init__.py:952 #, python-format msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "document référencé dans plusieurs arborescences : %s, sélectionnant : %s <- %s" @@ -885,470 +744,912 @@ msgstr "Astuce" msgid "Warning" msgstr "Avertissement" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" -msgstr "insère automatiquement les docstrings des modules" +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Les fichiers Texinfo se trouvent dans %(outdir)s." -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" -msgstr "tester automatiquement des extraits de code dans des blocs doctest" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nExécuter 'make' dans ce répertoire pour les soumettre à makeinfo\n(ou 'make info' directement ici pour l'automatiser)." -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" -msgstr "lien entre la documentation Sphinx de différents projets" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "aucun paramètre de configuration \"texinfo_documents\" trouvé: aucun document ne sera écrit" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "entrées \"todo\" pouvant être montrées ou cachées à la compilation" +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "La valeur du paramètre \"texinfo_documents\" référence un document inconnu %s" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" -msgstr "vérification de la couverture de la documentation" +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" +msgstr "traitement de %s en cours" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" -msgstr "expressions mathématiques, traduites en images PNG ou SVG" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "enregistrement" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" -msgstr "expressions mathématiques, transmises dans le navigateur à MathJax" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "résolution des références..." -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" -msgstr "inclusion conditionnelle du contenu basé sur la valeur de configuration" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(dans" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" -msgstr "inclure des liens vers le code source documenté des objets Python" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "copie des images... " -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "crée un fichier .nojekyll pour publier le document sur GitHub pages" +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" +msgstr "impossible de copier le fichier image %r: %s" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." -msgstr "Merci de saisir un chemin valide." +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "copie des fichiers de support Texinfo" -#: cmd/quickstart.py:110 -msgid "Please enter some text." -msgstr "Merci de saisir du texte." +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" +msgstr "erreur lors l'écriture du fichier Makefile : %s" -#: cmd/quickstart.py:117 +#: builders/manpage.py:37 #, python-format -msgid "Please enter one of %s." -msgstr "Merci de saisir un des %s." +msgid "The manual pages are in %(outdir)s." +msgstr "Le manuel se trouve dans %(outdir)s." -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." -msgstr "Merci de saisir 'y' ou 'n'." +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "aucun valeur de configuration \"man_pages\" trouvée; aucun page du manuel ne sera enregistrée" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Merci de saisir l'extension du fichier, par exemple '.rst' ou '.txt'." +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" +msgstr "le paramètre de configuration \"man_pages\" référence un document inconnu %s" -#: cmd/quickstart.py:215 +#: builders/singlehtml.py:35 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Bienvenue dans le kit de démarrage rapide de Sphinx %s." +msgid "The HTML page is in %(outdir)s." +msgstr "Les pages HTML sont dans %(outdir)s." + +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "création du document unique" + +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "Enregistrement des fichiers supplémentaires" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Le constructeur factice ne génère aucun fichier." + +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." +msgstr "La liste des messages se trouve dans %(outdir)s." + +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " +msgstr "construction [%s] : " + +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" +msgstr "cibles pour les modèles de fichiers %d" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "lecture des gabarits... " + +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "écriture des catalogues de messages... " + +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Recherchez les éventuelles erreurs dans la sortie ci-dessus ou dans %(outdir)s/output.txt" + +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" +msgstr "lien mort: %s (%s)" + +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" +msgstr "Ancre '%s' non trouvée" + +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "linkcheck_allowed_redirects. Un dictionnaire est attendu." + +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "Échec de la compilation de la regex dans linkcheck_allowed_redirects : %r%s" + +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." +msgstr "Le fichier ePub se trouve dans %(outdir)s ." + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "Enregistrement du fichier nav.xhtml..." + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "la variable de configuration \"epub_language\" (ou \"language\") ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "le paramètre de configuration \"epub_uid\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_title\" (ou \"html_title\") ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_author\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_contributor\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_description\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_publisher\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_copyright\" (ou \"copyright\") ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "le paramètre de configuration \"epub_identifier\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "le paramètre de configuration \"version\" ne peut pas être vide pour EPUB3" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "Fichier CSS non valide : %r, il sera ignoré" + +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "Les fichiers XML se trouvent dans %(outdir)s." + +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "erreur lors l'écriture du fichier %s : %s" + +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Le fichier pseudo-XML se trouve dans %(outdir)s." + +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" +msgstr "entrées dupliquées de la table des matières trouvées : %s" + +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "impossible de lire le fichier image %r: il sera copié à la place" -#: cmd/quickstart.py:219 +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "impossible d'écrire le fichier image %r: %s" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow n'a pas été trouvé - copie des fichiers image" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "écriture du type MIME du fichier ..." + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "écriture du fichier META-INF/container.xml..." + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "Enregistrement du fichier content.opf..." + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "type MIME inconnu pour %s, il sera ignoré" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "nœud de niveau invalide" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "Enregistrement du fichier toc.ncx..." + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "fichier %s en cours d'écriture..." + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "Les fichiers texte se trouvent dans %(outdir)s." + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "l'image appropriée pour le constructeur %s n'a pas été trouvée : %s (%s)" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "l'image appropriée pour le constructeur %s n'a pas été trouvée : %s" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "construction en cours [mo] : " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "écriture... " + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "tous les %d fichiers po" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "cibles spécifiées pour les fichiers po %d" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "cibles périmées pour les fichiers po %d" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "tous les fichiers source" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "le fichier %r passé dans la ligne de commande n'existe pas, " + +#: builders/__init__.py:342 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Veuillez saisir des valeurs pour les paramètres suivants (tapez Entrée pour accepter la valeur par défaut, lorsque celle-ci est indiquée entre crochets)." +"file %r given on command line is not under the source directory, ignoring" +msgstr "le fichier %r saisi en ligne de commande n'est pas présent dans le dossier source, il sera ignoré" -#: cmd/quickstart.py:227 +#: builders/__init__.py:353 #, python-format -msgid "Selected root path: %s" -msgstr "Chemin racine sélectionné : %s" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "le fichier %r passé dans la ligne de commande n'est pas un document valide, ignoré" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." -msgstr "Saisissez le répertoire racine de la documentation." +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "%d fichiers source saisis en ligne de commande" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" -msgstr "racine de la documentation." +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "cibles périmées pour les fichiers sources %d" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Erreur : un fichier conf.py a été trouvé dans le répertoire racine." +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "recherche des fichiers périmés... " -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart n'écrasera pas un projet Sphinx existant." +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "%d trouvé" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Merci de saisir un nouveau répertoire racine (ou tapez juste Entrée)" +#: builders/__init__.py:417 +msgid "none found" +msgstr "aucun résultat trouvé" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "Environnement de sérialisation" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "vérification de la cohérence" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "aucune cible n'est périmée." -#: cmd/quickstart.py:258 +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "mise à jour de l'environnement : " + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "%s ajouté(s), %s modifié(s), %s supprimé(s)" + +#: builders/__init__.py:536 +#, python-format msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Vous avez deux options pour l'emplacement du répertoire de construction de la sortie de Sphinx.\nSoit vous utilisez un répertoire \"_build\" dans le chemin racine, soit vous séparez les répertoires \"source\" et \"build\" dans le chemin racine." +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "Sphinx ne peut pas charger le document maître (%s) parce qu'il correspond à un motif d'exclusion intégré %r. Veuillez déplacer votre document principal vers un autre emplacement." -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" -msgstr "Séparer les répertoires source et de sortie (y/n)" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "Sphinx ne peut pas charger le document maître (%s) parce qu'il correspond à un motif d'exclusion spécifié dans conf.py, %r. Veuillez supprimer ce motif de conf.py." -#: cmd/quickstart.py:271 +#: builders/__init__.py:556 +#, python-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Dans le répertoire racine, deux autres répertoires seront créés : \"_templates\" pour les modèles HTML personnalisés et \"_static\" pour les feuilles de style personnalisées et autres fichiers statiques. Vous pouvez entrer un autre préfixe (p. ex. \".\") pour remplacer le tiret bas (\"_\")." +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "Sphinx ne peut pas charger le document maître (%s) parce qu'il n'est pas inclus dans le motif personnalisé include_patterns = %r. Assurez-vous qu'un motif dans include_patterns correspond au document maître." -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" -msgstr "Préfixe de nom pour les répertoires static et de gabarits (templates)" +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "Sphinx ne parvient pas à charger le document maître (%s). Le document maître doit se trouver dans le répertoire source ou dans un sous-répertoire de celui-ci." + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "lecture des sources... " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "documents à écrire : %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "pas de noms de documents à écrire !" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "documents en préparation" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "copie des ressources" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "Le fichier d'aperçu se trouve dans %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "aucun changement dans la version %s" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "écriture du fichier de résumé..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Fonctions de base" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Module" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "copie des fichiers sources..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "impossible de lire %r pour la création du changelog" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "regex invalide %r dans %s" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "le module %s ne pas être importé : %s" -#: cmd/quickstart.py:282 +#: ext/coverage.py:148 +#, python-format msgid "" -"The project name will occur in several places in the built documentation." -msgstr "Le nom du projet apparaîtra à plusieurs endroits dans la documentation construite." +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "les modules suivants sont documentés mais n'ont pas été spécifiés dans coverage_modules : %s" -#: cmd/quickstart.py:286 -msgid "Project name" -msgstr "Nom du projet" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "Les modules suivants sont spécifiés dans coverage_modules mais n'ont pas été documentés : %s" -#: cmd/quickstart.py:288 -msgid "Author name(s)" -msgstr "Nom(s) de(s) l'auteur(s)" +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "Les tests de couverture dans les sources sont terminés. %(outdir)s{sep}python.txt." + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "regex invalide %r dans coverage_c_regexes" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "API C non documentée : %s [%s] dans le fichier %s" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "fonction python non documentée: %s :: %s" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "classe python non documentée: %s :: %s" -#: cmd/quickstart.py:293 +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "méthode python non documentée: %s :: %s :: %s" + +#: ext/extlinks.py:82 +#, python-format 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" -"just set both to the same value." -msgstr "Sphinx a la notion de « version » et de « release » pour le\nlogiciel. Chaque version peut avoir plusieurs « releases ». Par exemple, pour\nPython, la version est quelque chose comme 2.5 ou 3.0, tandis que la « release » est\nquelque chose comme 2.5.1 ou 3.0a1. Si vous n'avez pas besoin de cette double structure,\nmettez simplement la même valeur aux deux." +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "le lien %r codé en dur pourrait être remplacé par un extlink (essayez d'utiliser %r à la place)" -#: cmd/quickstart.py:301 -msgid "Project version" -msgstr "Version du projet" +#: ext/todo.py:61 +msgid "Todo" +msgstr "À faire" -#: cmd/quickstart.py:303 -msgid "Project release" -msgstr "Version du projet" +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "Entrée TODO trouvée : %s" -#: cmd/quickstart.py:308 +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(l'<> se trouve dans %s, à la ligne %d)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "entrée originale" + +#: ext/imgconverter.py:44 +#, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" "\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Si les documents doivent être rédigés dans une langue autre que l’anglais, vous pouvez sélectionner une langue ici grâce à son identifiant. Sphinx utilisera ensuite cette langue pour traduire les textes que lui-même génère.\n\nPour une liste des identifiants supportés, voir\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"Traceback: %s" +msgstr "Impossible d’exécuter la commande de conversion d'image %r. 'sphinx.ext.imgconverter' nécessite par défaut ImageMagick. Assurez-vous que ce dernier est installé, ou configurez l’option 'image_converter' pour faire référence à une commande de conversion ad hoc.\n\nTrace d’appels : %s" -#: cmd/quickstart.py:317 -msgid "Project language" -msgstr "Langue du projet" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "convert a terminé avec une erreur :\n[stderr]\n%r\n[stdout]\n%r" -#: cmd/quickstart.py:324 +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "la commande convert %r ne peut pas être exécutée; vérifiez le paramètre image_converter" + +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "La directive Graphviz ne peut pas avoir simultanément du contenu et un argument de nom de fichier" + +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" +msgstr "Fichier externe Graphviz %r non trouvé ou échec de sa lecture" + +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "Directive « graphviz » sans contenu ignorée." + +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" +msgstr "Le chemin de l'exécutable de graphviz_dot doit être défini ! %r" + +#: ext/graphviz.py:328 +#, python-format 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 "L'extension de fichier pour les fichiers sources. En général : \".txt\" ou \".rst\". Seuls les fichiers avec cette extension sont considérés." +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "la commande dot %r ne peut pas être exécutée (nécessaire pour le rendu graphviz). Vérifiez le paramètre graphviz_dot" -#: cmd/quickstart.py:329 -msgid "Source file suffix" -msgstr "Extension des fichiers sources" +#: ext/graphviz.py:339 +#, python-format +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot a terminé avec une erreur :\n[stderr]\n%r\n[stdout]\n%r" -#: cmd/quickstart.py:334 +#: ext/graphviz.py:344 +#, python-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "Un document est particulier en ce sens qu'il est considéré comme le nœud supérieur de \"l'arbre des contenus\", c'est-à-dire la racine de la structure hiérarchique des documents. Normalement, il s'agit d'un \"index\", mais si votre \"index\" est un modèle personnalisé, vous pouvez également le définir sous un autre nom de fichier." +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot n'a pas produit de fichier de sortie : \n[stderr]\n%r\n[stdout]\n%r" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" -msgstr "Non du fichier principal (sans extension)" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "graphviz_output_format doit être soit \"png\", soit \"svg\", mais il est %r" + +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "dot code %r: %s" -#: cmd/quickstart.py:352 +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "[graphe: %s]" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[graphe]" + +#: ext/imgmath.py:148 #, python-format msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Erreur : le fichier principal %s est déjà présent dans le répertoire racine du projet." +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "La commande LaTeX %r (nécessaire pour le rendu des équations mathématiques), ne peut pas être exécutée, vérifier le paramètre imgmath_latex" + +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "La commande de %s, %r, ne pas être exécuté (nécessaire pour display mathématique), vérifier la configuration imgmath_%s" + +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "latex de type display %r : %s" + +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "latex en ligne %r : %s" + +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "Lien vers cette équation" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart n'écrasera pas les fichiers existants." +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "option '+' ou '-' manquante dans %s." -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Merci de saisir un nouveau nom de fichier, ou de renommer le fichier existant et valider avec Entrée" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "'%s' n'est pas une option valide." -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Indiquer lesquelles de ces extensions Sphinx doivent être activées :" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "%s n'est pas une option pyversion valide" -#: cmd/quickstart.py:381 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Note : imgmath et mathjax ne peuvent pas être activés en même temps. imgmath a été désactivé." +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "type invalide de TestCode" -#: cmd/quickstart.py:391 +#: ext/doctest.py:297 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Un fichier Makefile et un fichier de commandes Windows peuvent être générés pour vous, afin que vous puissiez exécuter par exemple `make html' au lieu d'appeler directement sphinx-build." - -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" -msgstr "Création du Makefile ? (y/n)" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Exécution des doctests des sources achevée, voir les résultats dans %(outdir)s/output.txt." -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" -msgstr "Création du fichier de commandes Windows ? (y/n)" +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" +msgstr "pas de code ou sortie dans le bloc %s en %s : %s" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: ext/doctest.py:568 #, python-format -msgid "Creating file %s." -msgstr "Fichier en cours de création %s." +msgid "ignoring invalid doctest code: %r" +msgstr "code doctest invalide sera ignoré : %r" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: ext/autosectionlabel.py:52 #, python-format -msgid "File %s already exists, skipping." -msgstr "Le fichier %s existe déjà, il ne sera pas remplacé" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "la section \"%s\" est étiquettée \"%s\"" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." -msgstr "Terminé : la structure initiale a été créée." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "libellé dupliqué %s, l'autre instance se trouve dans %s" -#: cmd/quickstart.py:504 +#: ext/duration.py:47 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Vous devez maintenant compléter votre fichier principal %s et créer d'autres fichiers sources de documentation. " +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "La durée de lecture %.3fs a dépassé la limite de durée %.3fs" -#: cmd/quickstart.py:512 +#: ext/duration.py:117 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Utilisez le Makefile pour construire la documentation comme ceci :\n make builder" +"====================== total reading duration ==========================" +msgstr "====================== durée totale de lecture ==========================" -#: cmd/quickstart.py:515 +#: ext/duration.py:124 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Utilisez sphinx-build pour construire la documentation comme ceci : \n sphinx-build -b builder %s %s" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "Temps total de lecture %d fichier%s: %dm %.3fs" -#: cmd/quickstart.py:522 +#: ext/duration.py:136 msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "où « builder » est l'un des constructeurs disponibles, tel que html, latex, ou linkcheck." - -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nEngendre les fichiers requis pour un projet Sphinx.\n\nsphinx-quickstart est un outil interactif qui pose des questions à propos de votre projet et génère un répertoire avec la structure complète nécessaire ainsi qu'un Makefile qui peut être utilisé comme alternative à sphinx-build.\n" - -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." -msgstr "Pour plus d'informations, visitez le site ." +"====================== slowest reading durations =======================" +msgstr "====================== durées de lecture les plus lentes =======================" -#: cmd/quickstart.py:577 -msgid "quiet mode" -msgstr "mode silencieux" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" +msgstr "%.3fs %s" -#: cmd/quickstart.py:587 -msgid "project root" -msgstr "racine du projet" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[source]" -#: cmd/quickstart.py:590 -msgid "Structure options" -msgstr "Options de structure" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "Coloration syntaxique du code du module..." -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" -msgstr "si spécifié, les répertoires source et build seront séparés" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" -msgstr "si spécifié, créé le dossier build dans le dossier source" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Code du module" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." -msgstr "remplace le point dans _templates etc." +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Code source de %s

" -#: cmd/quickstart.py:611 -msgid "Project basic options" -msgstr "Options basiques du projet." +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Vue d'ensemble : code du module" -#: cmd/quickstart.py:613 -msgid "project name" -msgstr "nom du projet" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Modules pour lesquels le code est disponible

" -#: cmd/quickstart.py:616 -msgid "author names" -msgstr "nom de l'auteur" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "citation dupliquée %s, une autre instance dans %s" -#: cmd/quickstart.py:623 -msgid "version of project" -msgstr "version du projet" +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "La citation [%s] n'est pas référencée" -#: cmd/quickstart.py:630 -msgid "release of project" -msgstr "version du projet" +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "Libellé dupliqué pour l'équation %s, autre instance dans %s" -#: cmd/quickstart.py:637 -msgid "document language" -msgstr "langue du document" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "math_eqref_format invalide : %r" -#: cmd/quickstart.py:640 -msgid "source file suffix" -msgstr "préfixe des fichiers source" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (fonction de base)" -#: cmd/quickstart.py:643 -msgid "master document name" -msgstr "nom du document principal" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (méthode %s)" -#: cmd/quickstart.py:646 -msgid "use epub" -msgstr "utilisé epub" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (classe)" -#: cmd/quickstart.py:649 -msgid "Extension options" -msgstr "Options d'extension" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "%s (variable globale ou constante)" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "enable %s extension" -msgstr "autoriser l'extension %s" +msgid "%s (%s attribute)" +msgstr "%s (attribut %s)" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" -msgstr "active l'emploi d'extensions quelconques" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Arguments" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" -msgstr "Création des fichiers Batchfile et Makefile" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Déclenche" -#: cmd/quickstart.py:672 -msgid "create makefile" -msgstr "créer un fichier makefile" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Renvoie" -#: cmd/quickstart.py:678 -msgid "do not create makefile" -msgstr "ne pas créer un fichier makefile" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Type renvoyé" -#: cmd/quickstart.py:685 -msgid "create batchfile" -msgstr "créer un fichier batch" +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" +msgstr "%s (module)" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" -msgstr "ne pas créer un fichier batch" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "fonction" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" -msgstr "utiliser make-mode pour Makefile/make.bat" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "méthode" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" -msgstr "Gabarits de projet" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "classe" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" -msgstr "répertoire des templates" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "données" -#: cmd/quickstart.py:716 -msgid "define a template variable" -msgstr "définissez une variable de template" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attribut" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "vous avez spécifiez \"quit\" , mais \"project\" ou \"author\" ne sont pas spécifiés." +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "module" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Erreur : le chemin spécifié n'est pas un répertoire, ou les fichiers Sphinx existent déjà." +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "description de %s dupliquée pour%s; l'autre %s se trouve dans %s" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart peut générer ces fichiers seulement dans un répertoire vide. Merci de spécifier un nouveau répertoire racine." +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "%s (directive)" -#: cmd/quickstart.py:795 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "Invalid template variable: %s" -msgstr "Variable de template invalide : %s" +msgid ":%s: (directive option)" +msgstr ":%s: (option de directive)" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" -msgstr "Une exception a été levée lors de la génération, démarrage du débogueur :" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (role)" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" -msgstr "Interrompu !" +#: domains/rst.py:234 +msgid "directive" +msgstr "directive" -#: cmd/build.py:67 -msgid "reST markup error:" -msgstr "Erreur de balise reST :" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "option de directive" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" -msgstr "Erreur d'encodage :" +#: domains/rst.py:236 +msgid "role" +msgstr "role" -#: cmd/build.py:78 cmd/build.py:108 +#: domains/rst.py:262 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." -msgstr "La trace d’appels complète a été sauvegardée dans %s, au cas où vous souhaiteriez signaler le problème aux développeurs." +msgid "duplicate description of %s %s, other instance in %s" +msgstr "description dupliquée pour %s %s; l'autre instance se trouve dans %s" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" -msgstr "Erreur de récursion :" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "Ajouté dans la version %s" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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 augmenter avec attention la limite de récursivité par défaut de Python de 1000 dans conf.py avec p. ex. :" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "Modifié dans la version %s" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" -msgstr "Une exception a été levée :" +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "Obsolète depuis la version %s" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Merci de rapporter ceci s'il s'agit d'une erreur utilisateur, afin d'améliorer le message d'erreur à l'avenir." +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "Supprimé dans la version %s" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" -msgstr "Un rapport d'erreur peut être déposé dans le système de tickets à . Merci !" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "Le numéro du job doit être strictement positif" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "Pour plus d'informations, visitez le site ." + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1367,675 +1668,589 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "\nGénération de la documentation à partir des fichiers sources.\n\nsphinx-build génère de la documentation à partir des fichiers de SOURCEDIR et la place\ndans OUTPUTDIR. Il recherche 'conf.py' dans SOURCEDIR pour les paramètres de configuration.\nL'outil 'sphinx-quickstart' peut être utilisé pour générer des fichiers modèles,\ny compris 'conf.py'.\n\nsphinx-build peut créer de la documentation dans différents formats. Un format est\nsélectionné en spécifiant le nom du constructeur sur la ligne de commande ; le format par défaut est\nHTML. Les constructeurs peuvent également effectuer d'autres tâches liées au traitement de la documentation.\n\nPar défaut, tout ce qui est obsolète est construit. La sortie pour les fichiers sélectionnés seulement\npeut être construite en spécifiant des noms de fichiers individuels.\n" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "chemin des fichiers sources de la documentation" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "chemin du répertoire de sortie" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "(optionnel) une liste de fichiers spécifiques à reconstruire. Ignoré si --write-all est spécifié" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "options générales" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "constructeur à utiliser (par défaut: 'html')" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "exécuter en parallèle avec N processus, lorsque cela est possible. 'auto' utilise le nombre de cœurs du processeur" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "enregistrer tous les fichiers (par défaut : enregistrer seulement les fichiers nouveaux ou modifiés)" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "ne pas utiliser un environnement sauvegardé, relire toujours tous les fichiers" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "options de chemin" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "répertoire pour les doctree et les fichiers d'environnement (par défaut : OUTPUT_DIR/.doctrees)" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "répertoire du fichier de configuration (conf.py) (par défaut : SOURCE_DIR)" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "n'utilise pas de fichier de configuration, utilise uniquement les paramètres des options -D" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "outre passer un paramètre du fichier de configuration" -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "passer une valeur aux templates HTML" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "définit une balise : seules les blocs \"only\" avec TAG seront inclus" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "mode tatillon : avertir de toutes les références manquantes" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "options de la console de sortie" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "augmenter la verbosité (peut être répété)" -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "aucune sortie vers stdout, seulement les avertissements vers stderr" -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "aucune sortie du tout, même pas les avertissements" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "émettre une sortie de couleur (par défaut : auto-détection)" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "ne pas émettre une sortie de couleur (par défaut : auto-détection)" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "options de contrôle des avertissements" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "écrire les avertissements (et les erreurs) vers le fichier spécifié" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "modifier les avertissements en erreurs" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "montrer la trace d’appels complète si une exception est levée" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "exécuter Pdb si une exception se produit." -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "lever une exception en cas d'avertissement" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "impossible de combiner l'option -a avec le nom du fichier" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "impossible d'ouvrir le fichier d'avertissement '%s' : %s" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "l'option -D doit être sous la forme nom=valeur" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "l'option -A doit être sous la forme nom=valeur" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "Le constructeur factice ne génère aucun fichier." - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Recherchez les éventuelles erreurs dans la sortie ci-dessus ou dans %(outdir)s/output.txt" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "insère automatiquement les docstrings des modules" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" -msgstr "lien mort: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "tester automatiquement des extraits de code dans des blocs doctest" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" -msgstr "Ancre '%s' non trouvée" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "lien entre la documentation Sphinx de différents projets" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "Échec de la compilation de la regex dans linkcheck_allowed_redirects : %r%s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "entrées \"todo\" pouvant être montrées ou cachées à la compilation" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Les pages HTML sont dans %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "vérification de la couverture de la documentation" -#: builders/singlehtml.py:173 -msgid "assembling single document" -msgstr "création du document unique" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "expressions mathématiques, traduites en images PNG ou SVG" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" -msgstr "enregistrement" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "expressions mathématiques, transmises dans le navigateur à MathJax" -#: builders/singlehtml.py:191 -msgid "writing additional files" -msgstr "Enregistrement des fichiers supplémentaires" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "inclusion conditionnelle du contenu basé sur la valeur de configuration" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Le manuel se trouve dans %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "inclure des liens vers le code source documenté des objets Python" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "aucun valeur de configuration \"man_pages\" trouvée; aucun page du manuel ne sera enregistrée" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "crée un fichier .nojekyll pour publier le document sur GitHub pages" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "le paramètre de configuration \"man_pages\" référence un document inconnu %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Merci de saisir un chemin valide." -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Les fichiers texte se trouvent dans %(outdir)s." +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Merci de saisir du texte." -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" -msgstr "erreur lors l'écriture du fichier %s : %s" +msgid "Please enter one of %s." +msgstr "Merci de saisir un des %s." -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Les fichiers XML se trouvent dans %(outdir)s." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Merci de saisir 'y' ou 'n'." -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Le fichier pseudo-XML se trouve dans %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Merci de saisir l'extension du fichier, par exemple '.rst' ou '.txt'." -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Les fichiers Texinfo se trouvent dans %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Bienvenue dans le kit de démarrage rapide de Sphinx %s." -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nExécuter 'make' dans ce répertoire pour les soumettre à makeinfo\n(ou 'make info' directement ici pour l'automatiser)." - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "aucun paramètre de configuration \"texinfo_documents\" trouvé: aucun document ne sera écrit" - -#: builders/texinfo.py:90 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "La valeur du paramètre \"texinfo_documents\" référence un document inconnu %s" - -#: builders/latex/__init__.py:324 builders/texinfo.py:115 -#, python-format -msgid "processing %s" -msgstr "traitement de %s en cours" - -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." -msgstr "résolution des références..." - -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr "(dans" - -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "copie des images... " - -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "impossible de copier le fichier image %r: %s" - -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "copie des fichiers de support Texinfo" - -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "erreur lors l'écriture du fichier Makefile : %s" - -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "La liste des messages se trouve dans %(outdir)s." - -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " -msgstr "construction [%s] : " +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Veuillez saisir des valeurs pour les paramètres suivants (tapez Entrée pour accepter la valeur par défaut, lorsque celle-ci est indiquée entre crochets)." -#: builders/gettext.py:252 +#: cmd/quickstart.py:242 #, python-format -msgid "targets for %d template files" -msgstr "cibles pour les modèles de fichiers %d" - -#: builders/gettext.py:257 -msgid "reading templates... " -msgstr "lecture des gabarits... " - -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "écriture des catalogues de messages... " +msgid "Selected root path: %s" +msgstr "Chemin racine sélectionné : %s" -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "l'image appropriée pour le constructeur %s n'a pas été trouvée : %s (%s)" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Saisissez le répertoire racine de la documentation." -#: builders/__init__.py:220 -#, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "l'image appropriée pour le constructeur %s n'a pas été trouvée : %s" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "racine de la documentation." -#: builders/__init__.py:243 -msgid "building [mo]: " -msgstr "construction en cours [mo] : " +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Erreur : un fichier conf.py a été trouvé dans le répertoire racine." -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " -msgstr "écriture... " +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart n'écrasera pas un projet Sphinx existant." -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" -msgstr "tous les %d fichiers po" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Merci de saisir un nouveau répertoire racine (ou tapez juste Entrée)" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "cibles spécifiées pour les fichiers po %d" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Vous avez deux options pour l'emplacement du répertoire de construction de la sortie de Sphinx.\nSoit vous utilisez un répertoire \"_build\" dans le chemin racine, soit vous séparez les répertoires \"source\" et \"build\" dans le chemin racine." -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" -msgstr "cibles périmées pour les fichiers po %d" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Séparer les répertoires source et de sortie (y/n)" -#: builders/__init__.py:307 -msgid "all source files" -msgstr "tous les fichiers source" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Dans le répertoire racine, deux autres répertoires seront créés : \"_templates\" pour les modèles HTML personnalisés et \"_static\" pour les feuilles de style personnalisées et autres fichiers statiques. Vous pouvez entrer un autre préfixe (p. ex. \".\") pour remplacer le tiret bas (\"_\")." -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "le fichier %r passé dans la ligne de commande n'existe pas, " +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Préfixe de nom pour les répertoires static et de gabarits (templates)" -#: builders/__init__.py:325 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "le fichier %r saisi en ligne de commande n'est pas présent dans le dossier source, il sera ignoré" +"The project name will occur in several places in the built documentation." +msgstr "Le nom du projet apparaîtra à plusieurs endroits dans la documentation construite." -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "le fichier %r passé dans la ligne de commande n'est pas un document valide, ignoré" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Nom du projet" -#: builders/__init__.py:351 -#, python-format -msgid "%d source files given on command line" -msgstr "%d fichiers source saisis en ligne de commande" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Nom(s) de(s) l'auteur(s)" -#: builders/__init__.py:366 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "cibles périmées pour les fichiers sources %d" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx a la notion de « version » et de « release » pour le\nlogiciel. Chaque version peut avoir plusieurs « releases ». Par exemple, pour\nPython, la version est quelque chose comme 2.5 ou 3.0, tandis que la « release » est\nquelque chose comme 2.5.1 ou 3.0a1. Si vous n'avez pas besoin de cette double structure,\nmettez simplement la même valeur aux deux." -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " -msgstr "recherche des fichiers périmés... " +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Version du projet" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" -msgstr "%d trouvé" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Version du projet" -#: builders/__init__.py:400 -msgid "none found" -msgstr "aucun résultat trouvé" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Si les documents doivent être rédigés dans une langue autre que l’anglais, vous pouvez sélectionner une langue ici grâce à son identifiant. Sphinx utilisera ensuite cette langue pour traduire les textes que lui-même génère.\n\nPour une liste des identifiants supportés, voir\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: builders/__init__.py:407 -msgid "pickling environment" -msgstr "Environnement de sérialisation" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Langue du projet" -#: builders/__init__.py:414 -msgid "checking consistency" -msgstr "vérification de la cohérence" +#: cmd/quickstart.py:340 +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 "L'extension de fichier pour les fichiers sources. En général : \".txt\" ou \".rst\". Seuls les fichiers avec cette extension sont considérés." -#: builders/__init__.py:418 -msgid "no targets are out of date." -msgstr "aucune cible n'est périmée." +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Extension des fichiers sources" -#: builders/__init__.py:458 -msgid "updating environment: " -msgstr "mise à jour de l'environnement : " +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Un document est particulier en ce sens qu'il est considéré comme le nœud supérieur de \"l'arbre des contenus\", c'est-à-dire la racine de la structure hiérarchique des documents. Normalement, il s'agit d'un \"index\", mais si votre \"index\" est un modèle personnalisé, vous pouvez également le définir sous un autre nom de fichier." -#: builders/__init__.py:483 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s ajouté(s), %s modifié(s), %s supprimé(s)" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Non du fichier principal (sans extension)" -#: builders/__init__.py:519 +#: cmd/quickstart.py:368 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "Sphinx ne peut pas charger le document maître (%s) parce qu'il correspond à un motif d'exclusion intégré %r. Veuillez déplacer votre document principal vers un autre emplacement." +"Error: the master file %s has already been found in the selected root path." +msgstr "Erreur : le fichier principal %s est déjà présent dans le répertoire racine du projet." -#: builders/__init__.py:528 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "Sphinx ne peut pas charger le document maître (%s) parce qu'il correspond à un motif d'exclusion spécifié dans conf.py, %r. Veuillez supprimer ce motif de conf.py." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart n'écrasera pas les fichiers existants." -#: builders/__init__.py:539 -#, python-format +#: cmd/quickstart.py:378 msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "Sphinx ne peut pas charger le document maître (%s) parce qu'il n'est pas inclus dans le motif personnalisé include_patterns = %r. Assurez-vous qu'un motif dans include_patterns correspond au document maître." +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Merci de saisir un nouveau nom de fichier, ou de renommer le fichier existant et valider avec Entrée" -#: builders/__init__.py:546 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "Sphinx ne parvient pas à charger le document maître (%s). Le document maître doit se trouver dans le répertoire source ou dans un sous-répertoire de celui-ci." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Indiquer lesquelles de ces extensions Sphinx doivent être activées :" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " -msgstr "lecture des sources... " +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Note : imgmath et mathjax ne peuvent pas être activés en même temps. imgmath a été désactivé." -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" -msgstr "documents à écrire : %s" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Un fichier Makefile et un fichier de commandes Windows peuvent être générés pour vous, afin que vous puissiez exécuter par exemple `make html' au lieu d'appeler directement sphinx-build." -#: builders/__init__.py:711 -msgid "preparing documents" -msgstr "documents en préparation" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Création du Makefile ? (y/n)" -#: builders/__init__.py:714 -msgid "copying assets" -msgstr "copie des ressources" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Création du fichier de commandes Windows ? (y/n)" -#: builders/__init__.py:866 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "le caractère source est indécodable, il sera remplacé par \"?\" : %r" +msgid "Creating file %s." +msgstr "Fichier en cours de création %s." -#: builders/epub3.py:83 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "Le fichier ePub se trouve dans %(outdir)s ." - -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "Enregistrement du fichier nav.xhtml..." +msgid "File %s already exists, skipping." +msgstr "Le fichier %s existe déjà, il ne sera pas remplacé" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "la variable de configuration \"epub_language\" (ou \"language\") ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Terminé : la structure initiale a été créée." -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "le paramètre de configuration \"epub_uid\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Vous devez maintenant compléter votre fichier principal %s et créer d'autres fichiers sources de documentation. " -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_title\" (ou \"html_title\") ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Utilisez le Makefile pour construire la documentation comme ceci :\n make builder" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_author\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Utilisez sphinx-build pour construire la documentation comme ceci : \n sphinx-build -b builder %s %s" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_contributor\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "où « builder » est l'un des constructeurs disponibles, tel que html, latex, ou linkcheck." -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_description\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nEngendre les fichiers requis pour un projet Sphinx.\n\nsphinx-quickstart est un outil interactif qui pose des questions à propos de votre projet et génère un répertoire avec la structure complète nécessaire ainsi qu'un Makefile qui peut être utilisé comme alternative à sphinx-build.\n" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_publisher\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "mode silencieux" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_copyright\" (ou \"copyright\") ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "racine du projet" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "le paramètre de configuration \"epub_identifier\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Options de structure" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "le paramètre de configuration \"version\" ne peut pas être vide pour EPUB3" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "si spécifié, les répertoires source et build seront séparés" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "Fichier CSS non valide : %r, il sera ignoré" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "si spécifié, créé le dossier build dans le dossier source" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "entrées dupliquées de la table des matières trouvées : %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "remplace le point dans _templates etc." -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "impossible de lire le fichier image %r: il sera copié à la place" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Options basiques du projet." -#: builders/_epub_base.py:465 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "impossible d'écrire le fichier image %r: %s" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "nom du projet" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" -msgstr "Pillow n'a pas été trouvé - copie des fichiers image" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "nom de l'auteur" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." -msgstr "écriture du type MIME du fichier ..." +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "version du projet" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." -msgstr "écriture du fichier META-INF/container.xml..." +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "version du projet" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "Enregistrement du fichier content.opf..." +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "langue du document" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "type MIME inconnu pour %s, il sera ignoré" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "préfixe des fichiers source" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "nœud de niveau invalide" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "nom du document principal" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." -msgstr "Enregistrement du fichier toc.ncx..." +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "utilisé epub" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." -msgstr "fichier %s en cours d'écriture..." +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Options d'extension" -#: builders/changes.py:33 +#: cmd/quickstart.py:671 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "Le fichier d'aperçu se trouve dans %(outdir)s." +msgid "enable %s extension" +msgstr "autoriser l'extension %s" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." -msgstr "aucun changement dans la version %s" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "active l'emploi d'extensions quelconques" -#: builders/changes.py:62 -msgid "writing summary file..." -msgstr "écriture du fichier de résumé..." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Création des fichiers Batchfile et Makefile" -#: builders/changes.py:74 -msgid "Builtins" -msgstr "Fonctions de base" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "créer un fichier makefile" -#: builders/changes.py:76 -msgid "Module level" -msgstr "Module" +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "ne pas créer un fichier makefile" -#: builders/changes.py:128 -msgid "copying source files..." -msgstr "copie des fichiers sources..." +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "créer un fichier batch" -#: builders/changes.py:137 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "impossible de lire %r pour la création du changelog" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "ne pas créer un fichier batch" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" -msgstr "rôle par défaut %s introuvable" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "utiliser make-mode pour Makefile/make.bat" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "Problème dans le domaine %s : le champ est censé utiliser le rôle '%s', mais ce rôle ne figure pas dans le domaine." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Gabarits de projet" -#: util/osutil.py:130 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "Tentative de copie interrompue de %s vers %s (le chemin de destination contient des données existantes)." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "répertoire des templates" -#: util/nodes.py:419 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r est obsolète pour les entrées d'index (à partir de l'entrée %r). Utilisez plutôt 'pair:%s'." +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "définissez une variable de template" -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "la table des matières contient des références à des fichiers inexistants %r" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "vous avez spécifiez \"quit\" , mais \"project\" ou \"author\" ne sont pas spécifiés." -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "exception pendant l’évaluation de l'expression de la directive only : %s" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Erreur : le chemin spécifié n'est pas un répertoire, ou les fichiers Sphinx existent déjà." -#: util/fileutil.py:74 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "Tentative de copie interrompue du modèle rendu %s vers %s (le chemin de destination contient des données existantes)." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart peut générer ces fichiers seulement dans un répertoire vide. Merci de spécifier un nouveau répertoire racine." -#: util/fileutil.py:89 +#: cmd/quickstart.py:810 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "Écriture du résultat du modèle évalué dans %s" +msgid "Invalid template variable: %s" +msgstr "Variable de template invalide : %s" -#: util/inventory.py:170 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "l'inventaire <%s> contient des définitions dupliquées de %s" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "le motif global toctree %r ne correspond à aucun document" -#: util/inventory.py:185 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "l'inventaire <%s> contient des définitions multiples de %s" +msgid "toctree contains reference to excluded document %r" +msgstr "le toctree contient une référence à des documents exclus %r" -#: util/docutils.py:284 +#: directives/other.py:156 #, python-format -msgid "unknown directive or role name: %s:%s" -msgstr "nom de rôle ou de directive inconnu: %s:%s" +msgid "toctree contains reference to nonexisting document %r" +msgstr "la table des matières contient des références à des documents inexistants %r" -#: util/docutils.py:747 +#: directives/other.py:169 #, python-format -msgid "unknown node type: %r" -msgstr "type de node inconnu : %r" +msgid "duplicated entry found in toctree: %s" +msgstr "entrée dupliquée trouvée dans toctree: %s" -#: util/display.py:81 -msgid "skipped" -msgstr "ignoré" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Auteur de la section : " -#: util/display.py:86 -msgid "failed" -msgstr "échoué" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Auteur du module : " -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" -msgstr "erreur de lecture : %s,%s" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Auteur du code : " -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" -msgstr "erreur d'écriture : %s,%s" +#: directives/other.py:209 +msgid "Author: " +msgstr "Auteur : " -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "locale_dir %s n'existe pas" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "... le contenu de acks n'est pas une liste" -#: util/i18n.py:230 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Format de date invalide. Insérez la chaîne de caractères entre des guillemets simples si vous voulez l'afficher telle quelle : %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "... le contenu de hlist n'est pas une liste" -#: directives/patches.py:66 +#: directives/patches.py:70 msgid "" "\":file:\" option for csv-table directive now recognizes an absolute path as" " a relative path from source directory. Please update your document." @@ -2050,7 +2265,7 @@ msgstr "les espaces non blancs sont supprimés par dedent" msgid "Invalid caption: %s" msgstr "Légende invalide: %s" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format msgid "line number spec is out of range(1-%d): %r" msgstr "le numéro de ligne spécifiée est en dehors des limites (1-%d):%r" @@ -2065,7 +2280,7 @@ msgstr "Impossible d'utiliser les options \"%s\" et \"%s\" en même temps." msgid "Include file '%s' not found or reading it failed" msgstr "fichier inclus '%s' pas trouvé ou dont la lecture a échoué" -#: directives/code.py:234 +#: directives/code.py:235 #, python-format msgid "" "Encoding %r used for reading included file '%s' seems to be wrong, try " @@ -2086,55 +2301,147 @@ msgstr "On ne peut pas utiliser \"lineno-match\" avec un \"lines\" non contigu " msgid "Line spec %r: no lines pulled from include file %r" msgstr "Spécification de lignes %r : aucune ligne extraite du fichier inclus %r" -#: directives/other.py:122 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "le motif global toctree %r ne correspond à aucun document" +msgid "%b %d, %Y" +msgstr "%d %B %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Index" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "le titre de node rencontré n'est apparenté à aucun parmi section, topic, table, admonition ou sidebar" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Notes de bas de page" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "la légende n'est pas à l'intérieur de la figure." -#: directives/other.py:155 environment/adapters/toctree.py:355 +#: writers/texinfo.py:1303 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "le toctree contient une référence à des documents exclus %r" +msgid "unimplemented node type: %r" +msgstr "type de node non-implémenté : %r" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "la table des matières contient des références à des documents inexistants %r" +msgid "[image: %s]" +msgstr "[image: %s]" -#: directives/other.py:171 +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[image]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "Lien vers cette définition" + +#: writers/html5.py:431 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "entrée dupliquée trouvée dans toctree: %s" +msgid "numfig_format is not defined for %s" +msgstr "numfig_format n'est pas défini %s" -#: directives/other.py:204 -msgid "Section author: " -msgstr "Auteur de la section : " +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "Aucun ID assigné au node %s" -#: directives/other.py:206 -msgid "Module author: " -msgstr "Auteur du module : " +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "Lien vers ce terme" -#: directives/other.py:208 -msgid "Code author: " -msgstr "Auteur du code : " +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "Lien vers cette rubrique" -#: directives/other.py:210 -msgid "Author: " -msgstr "Auteur : " +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "Lien vers ce tableau" -#: directives/other.py:284 -msgid ".. acks content is not a list" -msgstr "... le contenu de acks n'est pas une liste" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "niveau de rubrique non pris en charge : %s" -#: directives/other.py:309 -msgid ".. hlist content is not a list" -msgstr "... le contenu de hlist n'est pas une liste" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "Lien vers ce code" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "Lien vers cette image" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "Lien vers cette table des matières" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "impossible d'obtenir la taille de l'image. L'option :scale: est ignorée." + +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "toplevel_sectioning %r inconnu pour la classe %r" + +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "Aucune option Babel disponible pour la langue %r" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: trop grand, ignoré." + +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "modèle %s introuvable ; chargement à partir de l'ancien %s à la place" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "le titre du document n'est pas un unique node de type Text" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "options tabularcolumns et :widths: simultanément présentes. :widths: sera ignoré." + +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "colspec %s a été donné, qui semble utiliser la syntaxe tabulary. Mais ce tableau ne peut pas être rendu comme un tabulary ; le colspec donné sera ignoré." + +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "%s est invalide comme unité de dimension. Ignoré." + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "le type inconnu d’entrée d’index %s a été trouvé" #: _cli/__init__.py:73 msgid "Usage:" msgstr "Usage :" #: _cli/__init__.py:75 +#, python-brace-format msgid "{0} [OPTIONS] []" msgstr "{0} [OPTIONS] []" @@ -2150,1993 +2457,1877 @@ msgstr "Commandes:" msgid "Options" msgstr "Options" -#: _cli/__init__.py:112 _cli/__init__.py:183 +#: _cli/__init__.py:113 _cli/__init__.py:181 msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "Pour plus d'informations, consultez le site https://www.sphinx-doc.org/en/master/man/." -#: _cli/__init__.py:172 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" "{0}: error: {1}\n" "Run '{0} --help' for information" msgstr "{0}: erreur : {1}\nExécuter '{0} --help' pour information" -#: _cli/__init__.py:182 +#: _cli/__init__.py:179 msgid " Manage documentation with Sphinx." msgstr " Gérer la documentation avec Sphinx." -#: _cli/__init__.py:194 +#: _cli/__init__.py:191 msgid "Show the version and exit." msgstr "Afficher la version et quitter." -#: _cli/__init__.py:202 +#: _cli/__init__.py:199 msgid "Show this message and exit." msgstr "Afficher ce message et quitter." -#: _cli/__init__.py:206 +#: _cli/__init__.py:203 msgid "Logging" msgstr "Journalisation" -#: _cli/__init__.py:213 +#: _cli/__init__.py:210 msgid "Increase verbosity (can be repeated)" msgstr "Augmenter la verbosité (peut être répété)" -#: _cli/__init__.py:221 +#: _cli/__init__.py:218 msgid "Only print errors and warnings." msgstr "N'imprimez que les erreurs et les avertissements." -#: _cli/__init__.py:228 +#: _cli/__init__.py:225 msgid "No output at all" msgstr "Pas de sortie du tout" -#: _cli/__init__.py:234 +#: _cli/__init__.py:231 msgid "" msgstr "" -#: _cli/__init__.py:265 +#: _cli/__init__.py:263 msgid "See 'sphinx --help'.\n" msgstr "Voir 'sphinx --help'.\n" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %B %Y" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "impossible de calculer l'avancement de la traduction !" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "pas d'éléments traduits !" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "index trouvé avec style ancien à 4 colonnes. Possiblement un bogue d’extensions que vous utilisez : %r" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "La note de bas de page [%s] n'est pas référencée." - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "La note de bas de page [*] n'est pas référencée." - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "La note de bas de page [#] n'est pas référencée." - -#: transforms/i18n.py:228 transforms/i18n.py:303 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" "inconsistent footnote references in translated message. original: {0}, " "translated: {1}" msgstr "incohérences de références de notes de bas de page dans le message traduit. Original : {0}, traduit : {1} " -#: transforms/i18n.py:273 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" "inconsistent references in translated message. original: {0}, translated: " "{1}" msgstr "incohérences de références dans le message traduit. Original : {0}, traduit : {1}" -#: transforms/i18n.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" "inconsistent citation references in translated message. original: {0}, " "translated: {1}" msgstr "incohérences de références de citation dans le message traduit. Original : {0}, traduit : {1}" -#: transforms/i18n.py:345 -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "incohérences de références de terme dans le message traduit. Original : {0}, traduit : {1}" - -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" -msgstr "[source]" - -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "Impossible d’exécuter la commande de conversion d'image %r. 'sphinx.ext.imgconverter' nécessite par défaut ImageMagick. Assurez-vous que ce dernier est installé, ou configurez l’option 'image_converter' pour faire référence à une commande de conversion ad hoc.\n\nTrace d’appels : %s" - -#: ext/imgconverter.py:49 ext/imgconverter.py:73 -#, python-format -msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "convert a terminé avec une erreur :\n[stderr]\n%r\n[stdout]\n%r" - -#: ext/imgconverter.py:68 -#, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "la commande convert %r ne peut pas être exécutée; vérifiez le paramètre image_converter" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " -msgstr "Coloration syntaxique du code du module..." - -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "[docs]" - -#: ext/viewcode.py:306 -msgid "Module code" -msgstr "Code du module" - -#: ext/viewcode.py:312 -#, python-format -msgid "

Source code for %s

" -msgstr "

Code source de %s

" - -#: ext/viewcode.py:338 -msgid "Overview: module code" -msgstr "Vue d'ensemble : code du module" - -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" -msgstr "

Modules pour lesquels le code est disponible

" - -#: ext/coverage.py:47 -#, python-format -msgid "invalid regex %r in %s" -msgstr "regex invalide %r dans %s" - -#: ext/coverage.py:134 ext/coverage.py:280 -#, python-format -msgid "module %s could not be imported: %s" -msgstr "le module %s ne pas être importé : %s" - -#: ext/coverage.py:141 -#, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "les modules suivants sont documentés mais n'ont pas été spécifiés dans coverage_modules : %s" - -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "les modules suivants sont spécifiés dans coverage_modules mais n'ont pas été documentés" - -#: ext/coverage.py:163 -#, python-format +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." -msgstr "Vérification du taux de couverture documentaire dans les sources achevée, voir les résultats dans %(outdir)spython.txt." +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "incohérences de références de terme dans le message traduit. Original : {0}, traduit : {1}" -#: ext/coverage.py:177 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "regex invalide %r dans coverage_c_regexes" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "impossible de calculer l'avancement de la traduction !" -#: ext/coverage.py:245 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "API C non documentée : %s [%s] dans le fichier %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "pas d'éléments traduits !" -#: ext/coverage.py:429 +#: transforms/__init__.py:258 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "fonction python non documentée: %s :: %s" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "index trouvé avec style ancien à 4 colonnes. Possiblement un bogue d’extensions que vous utilisez : %r" -#: ext/coverage.py:445 +#: transforms/__init__.py:299 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "classe python non documentée: %s :: %s" +msgid "Footnote [%s] is not referenced." +msgstr "La note de bas de page [%s] n'est pas référencée." -#: ext/coverage.py:458 -#, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "méthode python non documentée: %s :: %s :: %s" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "La note de bas de page [*] n'est pas référencée." -#: ext/todo.py:71 -msgid "Todo" -msgstr "À faire" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "La note de bas de page [#] n'est pas référencée." -#: ext/todo.py:104 +#: util/inventory.py:147 #, python-format -msgid "TODO entry found: %s" -msgstr "Entrée TODO trouvée : %s" - -#: ext/todo.py:163 -msgid "<>" -msgstr "<>" +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "l'inventaire <%s> contient des définitions dupliquées de %s" -#: ext/todo.py:165 +#: util/inventory.py:166 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(l'<> se trouve dans %s, à la ligne %d)" - -#: ext/todo.py:175 -msgid "original entry" -msgstr "entrée originale" +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "l'inventaire <%s> contient des définitions multiples de %s" -#: ext/extlinks.py:82 +#: util/i18n.py:100 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "le lien %r codé en dur pourrait être remplacé par un extlink (essayez d'utiliser %r à la place)" +msgid "reading error: %s, %s" +msgstr "erreur de lecture : %s,%s" -#: ext/doctest.py:115 +#: util/i18n.py:113 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "option '+' ou '-' manquante dans %s." +msgid "writing error: %s, %s" +msgstr "erreur d'écriture : %s,%s" -#: ext/doctest.py:120 +#: util/i18n.py:146 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' n'est pas une option valide." +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s n'existe pas" -#: ext/doctest.py:134 +#: util/i18n.py:244 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "%s n'est pas une option pyversion valide" - -#: ext/doctest.py:220 -msgid "invalid TestCode type" -msgstr "type invalide de TestCode" +msgid "Invalid Babel locale: %r." +msgstr "Locale Babel non valide : %r." -#: ext/doctest.py:281 +#: util/i18n.py:253 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Exécution des doctests des sources achevée, voir les résultats dans %(outdir)s/output.txt." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Format de date invalide. Insérez la chaîne de caractères entre des guillemets simples si vous voulez l'afficher telle quelle : %s" -#: ext/doctest.py:434 +#: util/osutil.py:131 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "pas de code ou sortie dans le bloc %s en %s : %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "Tentative de copie interrompue de %s vers %s (le chemin de destination contient des données existantes)." -#: ext/doctest.py:522 -#, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "code doctest invalide sera ignoré : %r" +#: util/display.py:82 +msgid "skipped" +msgstr "ignoré" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "La directive Graphviz ne peut pas avoir simultanément du contenu et un argument de nom de fichier" +#: util/display.py:87 +msgid "failed" +msgstr "échoué" -#: ext/graphviz.py:145 +#: util/docutils.py:325 #, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "Fichier externe Graphviz %r non trouvé ou échec de sa lecture" +msgid "unknown directive name: %s" +msgstr "nom de directive inconnu : %s" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "Directive « graphviz » sans contenu ignorée." +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "nom de rôle inconnu : %s" -#: ext/graphviz.py:268 +#: util/docutils.py:805 #, python-format -msgid "graphviz_dot executable path must be set! %r" -msgstr "Le chemin de l'exécutable de graphviz_dot doit être défini ! %r" +msgid "unknown node type: %r" +msgstr "type de node inconnu : %r" -#: ext/graphviz.py:303 +#: util/fileutil.py:76 #, python-format msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "la commande dot %r ne peut pas être exécutée (nécessaire pour le rendu graphviz). Vérifiez le paramètre graphviz_dot" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "Tentative de copie interrompue du modèle rendu %s vers %s (le chemin de destination contient des données existantes)." -#: ext/graphviz.py:310 +#: util/fileutil.py:89 #, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot a terminé avec une erreur :\n[stderr]\n%r\n[stdout]\n%r" +msgid "Writing evaluated template result to %s" +msgstr "Écriture du résultat du modèle évalué dans %s" -#: ext/graphviz.py:313 +#: util/docfields.py:103 #, python-format msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot n'a pas produit de fichier de sortie : \n[stderr]\n%r\n[stdout]\n%r" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Problème dans le domaine %s : le champ est censé utiliser le rôle '%s', mais ce rôle ne figure pas dans le domaine." -#: ext/graphviz.py:329 +#: util/rst.py:73 #, 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" +msgid "default role %s not found" +msgstr "rôle par défaut %s introuvable" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: util/nodes.py:462 #, python-format -msgid "dot code %r: %s" -msgstr "dot code %r: %s" +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "%r n'est plus pris en charge pour les entrées d'index (à partir de l'entrée %r). Utilisez 'pair: %s' à la place." -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: util/nodes.py:523 #, python-format -msgid "[graph: %s]" -msgstr "[graphe: %s]" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "[graphe]" - -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" -msgstr "Lien vers cette équation" +msgid "toctree contains ref to nonexisting file %r" +msgstr "la table des matières contient des références à des fichiers inexistants %r" -#: ext/apidoc.py:85 +#: util/nodes.py:739 #, python-format -msgid "Would create file %s." -msgstr "Créerait le fichier %s." - -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nCherche récursivement dans des modules et packages Python et crée\ndans un fichier reST par package avec des directives automodule.\n\nLes s peuvent être tout pattern de fichiers et/ou de répertoires à exclure.\n\nNote : par défaut ce script n'écrasera pas des fichiers déjà créés." - -#: ext/apidoc.py:392 -msgid "path to module to document" -msgstr "chemin vers le module à documenter" - -#: ext/apidoc.py:396 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "patterns de fichier fnmatch-style et/ou répertoire à exclure" - -#: ext/apidoc.py:407 -msgid "directory to place all output" -msgstr "répertoire où placer toutes les sorties" +msgid "exception while evaluating only directive expression: %s" +msgstr "exception pendant l’évaluation de l'expression de la directive only : %s" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "Nombre maximum de sous-modules visibles dans la table des matières (par défaut : 4)" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "suite de la page précédente" -#: ext/apidoc.py:429 -msgid "overwrite existing files" -msgstr "remplacer les fichiers existants" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "suite sur la page suivante" -#: ext/apidoc.py:437 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "suivre les liens symboliques. Très utile en combinaison avec collective.recipe.omelette." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Non alphabétique" -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "exécuter le script sans créer les fichiers" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Symboles" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "afficher la documentation de chaque module sur sa propre page" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Chiffres" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" -msgstr "inclure le module \"_private\"" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "page" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "nom du fichier de table des matières (défaut : modules)" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Version" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" -msgstr "ne pas créer de fichier de table des matières" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "impossible d'atteindre l'image distante %s[%s]" -#: ext/apidoc.py:481 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "ne pas créer de titres pour le module ou package (e.g. lorsque les doctrings en fournissent déjà)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "impossible d'atteindre l'image distante %s[%d]" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" -msgstr "mettre la documentation du module avant celle du sous-module" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Format d'image inconnu : %s..." -#: ext/apidoc.py:498 +#: transforms/post_transforms/__init__.py:88 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "interprète les chemins de module selon la spécification PEP-0420 des espaces implicites de noms" - -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" -msgstr "extension du fichier (par défaut : rst)" - -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" -msgstr "Supprimer les fichiers existants dans le répertoire de sortie qui n'ont pas été générés" - -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" -msgstr "générer un projet complet avec sphinx-quickstart" - -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" -msgstr "ajoute module_path à la fin de sys.path, utilisé lorsque --full est présent" - -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" -msgstr "nom du projet (par défaut : nom du module principal)" - -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" -msgstr "auteur(s) du projet, utilisé quand l'option -full est précisée" - -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" -msgstr "version du projet, utilisé quand l'option -full est précisée" - -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "révision du projet, utilisé lorsque --full est présent, par défaut reprend --doc-version" - -#: ext/apidoc.py:564 -msgid "extension options" -msgstr "options relatives aux extensions" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "Impossible de déterminer le texte de remplacement pour le renvoi. Il peut s'agir d'un bogue." -#: ext/apidoc.py:638 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "%s is not a directory." -msgstr "%s n'est pas un répertoire" +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "plus d'une cible trouvée pour la référence %r de type 'any' : pourrait être %s" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "Failed to remove %s: %s" -msgstr "Échec de la suppression de %s: %s" +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s cible de référence non trouvée : %s" -#: ext/autosectionlabel.py:48 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "la section \"%s\" est étiquettée \"%s\"" +msgid "%r reference target not found: %s" +msgstr "%r cible de référence non trouvée : %s" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 -#, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "libellé dupliqué %s, l'autre instance se trouve dans %s" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Interrompu !" + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "erreur de balisage reStructuredText !" + +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "Erreur d'encodage !" -#: ext/duration.py:85 +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "Erreur de récursivité !" + +#: _cli/util/errors.py:207 msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== durées de lecture les plus lentes =======================" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "Cela peut se produire dans le cas de fichiers sources très volumineux ou profondément imbriqués. Vous pouvez soigneusement augmenter la limite de récursivité de 1 000 par défaut de Python dans conf.py avec par exemple :" -#: ext/imgmath.py:159 -#, python-format +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "Démarrage du débogueur :" + +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "La trace complète a été sauvegardée dans :" + +#: _cli/util/errors.py:240 msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "La commande LaTeX %r (nécessaire pour le rendu des équations mathématiques), ne peut pas être exécutée, vérifier le paramètre imgmath_latex" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "Pour signaler cette erreur aux développeurs, veuillez ouvrir un ticket à l'adresse . Merci !" -#: ext/imgmath.py:174 -#, python-format +#: _cli/util/errors.py:246 msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "La commande de %s, %r, ne pas être exécuté (nécessaire pour display mathématique), vérifier la configuration imgmath_%s" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Merci de rapporter ceci s'il s'agit d'une erreur utilisateur, afin d'améliorer le message d'erreur à l'avenir." -#: ext/imgmath.py:328 -#, python-format -msgid "display latex %r: %s" -msgstr "latex de type display %r : %s" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Réduire la barre latérale" -#: ext/imgmath.py:362 +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigation" + +#: themes/basic/layout.html:115 #, python-format -msgid "inline latex %r: %s" -msgstr "latex en ligne %r : %s" +msgid "Search within %(docstitle)s" +msgstr "Recherchez dans %(docstitle)s" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" -msgstr "Notes de bas de page" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "À propos de ces documents" -#: writers/manpage.py:309 writers/text.py:936 -#, python-format -msgid "[image: %s]" -msgstr "[image: %s]" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Recherche" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[image]" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" -msgstr "Lien vers cette définition" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." -#: writers/html5.py:415 +#: themes/basic/layout.html:201 #, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format n'est pas défini %s" +msgid "Last updated on %(last_updated)s." +msgstr "Mis à jour le %(last_updated)s." -#: writers/html5.py:427 +#: themes/basic/layout.html:204 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "Aucun ID assigné au node %s" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Créé en utilisant Sphinx %(sphinx_version)s." -#: writers/html5.py:482 -msgid "Link to this term" -msgstr "Lien vers ce terme" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Sujet précédent" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" -msgstr "Lien vers cette rubrique" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "Chapitre précédent" -#: writers/html5.py:535 -msgid "Link to this table" -msgstr "Lien vers ce tableau" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Sujet suivant" -#: writers/html5.py:549 writers/latex.py:1099 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "niveau de rubrique non pris en charge : %s" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "Chapitre suivant" -#: writers/html5.py:613 -msgid "Link to this code" -msgstr "Lien vers ce code" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "Index – %(key)s" -#: writers/html5.py:615 -msgid "Link to this image" -msgstr "Lien vers cette image" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Index complet sur une seule page" -#: writers/html5.py:617 -msgid "Link to this toctree" -msgstr "Lien vers cette table des matières" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Cette page" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "impossible d'obtenir la taille de l'image. L'option :scale: est ignorée." +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Montrer le code source" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "Index" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Recherche rapide" -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "le titre de node rencontré n'est apparenté à aucun parmi section, topic, table, admonition ou sidebar" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Go" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." -msgstr "la légende n'est pas à l'intérieur de la figure." +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "Résumé" -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" -msgstr "type de node non-implémenté : %r" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "Bienvenue ! Ceci est" -#: writers/latex.py:360 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "toplevel_sectioning %r inconnu pour la classe %r" +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "la documentation pour" -#: builders/latex/__init__.py:223 writers/latex.py:410 -#, python-format -msgid "no Babel option known for language %r" -msgstr "Aucune option Babel disponible pour la langue %r" +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "dernière modification" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: trop grand, ignoré." +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "Index et tables :" -#: writers/latex.py:590 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "modèle %s introuvable ; chargement à partir de l'ancien %s à la place" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "Table des matières complète" -#: writers/latex.py:708 -msgid "document title is not a single Text node" -msgstr "le titre du document n'est pas un unique node de type Text" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "lister l'ensemble des sections et sous-sections" -#: writers/latex.py:1175 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "options tabularcolumns et :widths: simultanément présentes. :widths: sera ignoré." +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Page de recherche" -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "%s est invalide comme unité de dimension. Ignoré." +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "rechercher dans cette documentation" -#: writers/latex.py:1931 -#, python-format -msgid "unknown index entry type %s found" -msgstr "le type inconnu d’entrée d’index %s a été trouvé" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Index général des modules" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 -#, python-format -msgid "environment variable; %s" -msgstr "variable d'environnement; %s" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "accès rapide à l'ensemble des modules" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" -msgstr "%s; valeur de configuration" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Index général" -#: domains/std/__init__.py:166 -msgid "Type" -msgstr "Type" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "toutes les fonctions, classes, termes" -#: domains/std/__init__.py:176 -msgid "Default" -msgstr "Défaut" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Table des matières" -#: domains/std/__init__.py:235 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "description de l'option malformée, elle doit ressembler à \nMalformed option description %r, should look like \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" or \"+opt args\"" +msgid "Search %(docstitle)s" +msgstr "Rechercher %(docstitle)s" -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" -msgstr "option de ligne de commande %s" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Indexer les pages par lettre" -#: domains/std/__init__.py:308 -msgid "command line option" -msgstr "option de ligne de commande" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "peut être énorme" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" -msgstr "le terme du glossaire doit être précédé d'une ligne vide" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "Veuillez activer le JavaScript pour que la recherche fonctionne." -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" -msgstr "les termes du glossaire ne doivent pas être séparés par des lignes vides" +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "Une recherche sur plusieurs mots ne retourne que les résultats contenant tous les mots." -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "le glossaire semble être mal formaté; vérifiez l'indentation" +#: themes/basic/search.html:35 +msgid "search" +msgstr "rechercher" -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "terme du glossaire" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Contenu" -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "élément de grammaire" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "Résultats de la recherche" -#: domains/std/__init__.py:604 -msgid "reference label" -msgstr "étiquette de référence" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "Votre recherche ne correspond à aucun document. Veuillez vérifier que les mots sont correctement orthographiés et que vous avez sélectionné assez de catégories." -#: domains/std/__init__.py:607 -msgid "environment variable" -msgstr "variable d'environnement" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "La recherche est terminée, une page correspondant à la requête a été trouvée." +msgstr[1] "Recherche terminée, ${resultCount} pages trouvées correspondant à la requête." +msgstr[2] "Recherche terminée, ${resultCount} pages trouvées correspondant à la requête." -#: domains/std/__init__.py:608 -msgid "program option" -msgstr "option du programme" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "Recherche en cours" -#: domains/std/__init__.py:609 -msgid "document" -msgstr "document" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "Préparation de la recherche..." -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" -msgstr "Index du module" +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr ", dans " -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Page de recherche" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Cacher les résultats de la recherche" -#: domains/std/__init__.py:722 +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "description %s dupliquée pour %s; l'autre instance se trouve dans %s" - -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." -msgstr "le paramètre numfig est désactivé : le paramètre :numref: est ignoré" +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "Changements dans la version %(version)s — %(docstitle)s" -#: domains/std/__init__.py:940 +#: themes/basic/changes/rstsource.html:5 #, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "Impossible de créer une référence croisée. Aucun nombre n'est attribué: %s" +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" -#: domains/std/__init__.py:952 +#: themes/basic/changes/versionchanges.html:17 #, python-format -msgid "the link has no caption: %s" -msgstr "le lien n'a pas de légende : %s" +msgid "Automatically generated list of changes in version %(version)s" +msgstr "Liste auto-générée des modifications dans la version %(version)s" -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "numfig_format invalide : %s (%r)" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "Modifications de la bibliothèque" -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "numfig_format invalide : %s" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "Modifications de l'API C" -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" -msgstr "label non défini: %r" +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "Autres modifications" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "Échec de création d'une référence. Ni titre ni légende trouvé : %r" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "Agrandir la barre latérale" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "Séparateur de paramètres positionnels uniquement (PEP 570)" + +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "Séparateur de paramètres par mot-clé uniquement (PEP 3102)" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Paramètres" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variables" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Lève" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (dans le module %s)" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (dans le module %s)" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variable de base)" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (classe de base)" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (classe dans %s)" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (méthode de la classe %s)" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (méthode statique %s)" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (propriété %s)" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "%s (type alias dans %s)" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Index des modules Python" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modules" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Obsolète" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "exception" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "méthode de classe" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "méthode statique" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "propriété" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "type alias" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "description dupliquée de l'objet %s, autre instance dans %s, utiliser :no-index: pour l'un d'eux" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "plusieurs cibles trouvées pour le renvoi %r : %s" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (obsolète)" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "Paramètres" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "Variables" - -#: domains/python/_object.py:173 -msgid "Raises" -msgstr "Lève" - -#: domains/c/__init__.py:199 +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 #, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Déclaration C++ dupliquée, également définie à %s:%s.\nLa déclaration est '.. cpp:%s:: %s'." + +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "Paramètres du modèle" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:302 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "Déclaration C dupliquée, également définie à %s:%s.\nLa déclaration est '.. c:%s:: %s'." +msgid "%s (C++ %s)" +msgstr "%s (C++ %s)" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Valeurs retournées" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "union" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "membre" -#: domains/c/__init__.py:680 -msgid "variable" -msgstr "variable" - -#: domains/c/__init__.py:682 -msgid "macro" -msgstr "macro" - -#: domains/c/__init__.py:683 -msgid "struct" -msgstr "structure" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "type" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" -msgstr "union" +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "concept" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "énumération" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "énumérateur" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "type" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "paramètre de fonction" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" -msgstr "Paramètres du modèle" - -#: domains/cpp/__init__.py:277 -#, python-format -msgid "%s (C++ %s)" -msgstr "%s (C++ %s)" - -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Déclaration C++ dupliquée, également définie à %s:%s.\nLa déclaration est '.. cpp:%s:: %s'." - -#: domains/cpp/__init__.py:862 -msgid "concept" -msgstr "concept" - -#: domains/cpp/__init__.py:867 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "paramètre du modèle" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Contenu" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Table des matières" - -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Recherche" - -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Go" - -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Montrer le code source" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Réduire la barre latérale" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigation" - -#: themes/basic/layout.html:115 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "Search within %(docstitle)s" -msgstr "Recherchez dans %(docstitle)s" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "Déclaration C dupliquée, également définie à %s:%s.\nLa déclaration est '.. c:%s:: %s'." -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "À propos de ces documents" +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "variable" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "macro" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Mis à jour le %(last_updated)s." +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "structure" -#: themes/basic/layout.html:204 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Créé en utilisant Sphinx %(sphinx_version)s." +msgid "environment variable; %s" +msgstr "variable d'environnement; %s" -#: themes/basic/genindex-single.html:26 +#: domains/std/__init__.py:116 #, python-format -msgid "Index – %(key)s" -msgstr "Index – %(key)s" +msgid "%s; configuration value" +msgstr "%s; valeur de configuration" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Index complet sur une seule page" +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "Type" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Indexer les pages par lettre" +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "Défaut" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "peut être énorme" +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "description de l'option malformée, elle doit ressembler à \nMalformed option description %r, should look like \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" or \"+opt args\"" -#: themes/basic/opensearch.xml:4 +#: domains/std/__init__.py:319 #, python-format -msgid "Search %(docstitle)s" -msgstr "Rechercher %(docstitle)s" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Cette page" - -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "Résumé" +msgid "%s command line option" +msgstr "option de ligne de commande %s" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "Bienvenue ! Ceci est" +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "option de ligne de commande" -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "la documentation pour" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "le terme du glossaire doit être précédé d'une ligne vide" -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "dernière modification" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "les termes du glossaire ne doivent pas être séparés par des lignes vides" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "Index et tables :" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "le glossaire semble être mal formaté; vérifiez l'indentation" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "Table des matières complète" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "terme du glossaire" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "lister l'ensemble des sections et sous-sections" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "élément de grammaire" -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "rechercher dans cette documentation" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "étiquette de référence" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Index général des modules" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "variable d'environnement" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "accès rapide à l'ensemble des modules" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "option du programme" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Index général" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "document" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "toutes les fonctions, classes, termes" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Index du module" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Recherche rapide" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" +msgstr "description %s dupliquée pour %s; l'autre instance se trouve dans %s" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "Veuillez activer le JavaScript pour que la recherche fonctionne." +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "le paramètre numfig est désactivé : le paramètre :numref: est ignoré" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." -msgstr "Une recherche sur plusieurs mots ne retourne que les résultats contenant tous les mots." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "Impossible de créer une référence croisée. Aucun nombre n'est attribué: %s" -#: themes/basic/search.html:35 -msgid "search" -msgstr "rechercher" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" +msgstr "le lien n'a pas de légende : %s" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Sujet précédent" +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" +msgstr "numfig_format invalide : %s (%r)" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "Chapitre précédent" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "numfig_format invalide : %s" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Sujet suivant" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "label non défini: %r" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "Chapitre suivant" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "Échec de création d'une référence. Ni titre ni légende trouvé : %r" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "Agrandir la barre latérale" +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "ensemble invalide de valeurs (accolade fermante manquante) : %s" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" -msgstr "Changements dans la version %(version)s — %(docstitle)s" +msgid "invalid value set (missing opening brace): %s" +msgstr "ensemble invalide de valeurs (accolade ouvrante manquante) :%s" -#: themes/basic/changes/versionchanges.html:17 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "Liste auto-générée des modifications dans la version %(version)s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "chaîne littérale malformée (guillemet fermant manquant) : %s" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" -msgstr "Modifications de la bibliothèque" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "chaîne littérale malformée (guillemet ouvrant manquant) : %s" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" -msgstr "Modifications de l'API C" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Exemple" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "Autres modifications" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Exemples" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Arguments de mots-clés" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Cacher les résultats de la recherche" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Notes" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "Résultats de la recherche" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Autres paramètres" -#: themes/basic/static/searchtools.js:119 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "Votre recherche ne correspond à aucun document. Veuillez vérifier que les mots sont correctement orthographiés et que vous avez sélectionné assez de catégories." +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "Reçoit" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "La recherche est terminée, une page correspondant à la requête a été trouvée." -msgstr[1] "Recherche terminée, ${resultCount} pages trouvées correspondant à la requête." -msgstr[2] "Recherche terminée, ${resultCount} pages trouvées correspondant à la requête." +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Références" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "Recherche en cours" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Avertissements" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "Préparation de la recherche..." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "Yields" -#: themes/basic/static/searchtools.js:474 -msgid ", in " -msgstr ", dans " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "Un faux objet a été détecté : %r" -#: environment/collectors/asset.py:96 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "image file not readable: %s" -msgstr "fichier image %s illisible " +msgid "alias of %s" +msgstr "alias de %s" -#: environment/collectors/asset.py:124 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "image file %s not readable: %s" -msgstr "fichier image %s illisible : %s" +msgid "Bases: %s" +msgstr "Bases : %s" -#: environment/collectors/asset.py:161 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "download file not readable: %s" -msgstr "le fichier téléchargé n’est pas lisible: %s" +msgid "invalid value for member-order option: %s" +msgstr "valeur invalide pour l'option member-order : %s" -#: environment/collectors/toctree.py:258 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s a déjà des numéros de section attribués (toctree numérotés emboîtés ?)" +msgid "invalid value for class-doc-from option: %s" +msgstr "valeur invalide pour l'option class-doc-from : %s" -#: environment/adapters/toctree.py:318 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "table des matières avec une référence circulaire détectée, elle sera ignorée : %s <- %s" +msgid "invalid signature for auto%s (%r)" +msgstr "signature invalide pour auto%s (%r)" -#: environment/adapters/toctree.py:342 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "la table des matières contient une référence à un document %r qui n'a pas de titre : aucun lien ne sera généré" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "module à importer pour auto-documenter %r est inconnu (essayer de placer une directive \"module\" ou \"currentmodule\" dans le document, ou de donner un nom de module explicite)" -#: environment/adapters/toctree.py:357 +#: ext/autodoc/_names.py:89 #, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "toctree contient une référence au document non inclu %r" +msgid "signature arguments given for automodule: '%s'" +msgstr "Arguments de signature fournis pour automodule : '%s'" + +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "Annotation de retour fournie pour automodule : '%s'" + +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" dans le nom d'automodule n'a pas de sens" + +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "Échec de la suppression de %s: %s" + +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "Créerait le fichier %s." + +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nCherche récursivement dans des modules et packages Python et crée\ndans un fichier reST par package avec des directives automodule.\n\nLes s peuvent être tout pattern de fichiers et/ou de répertoires à exclure.\n\nNote : par défaut ce script n'écrasera pas des fichiers déjà créés." + +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "chemin vers le module à documenter" + +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "patterns de fichier fnmatch-style et/ou répertoire à exclure" + +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "répertoire où placer toutes les sorties" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "voir %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "Nombre maximum de sous-modules visibles dans la table des matières (par défaut : 4)" -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" -msgstr "voir aussi %s" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "remplacer les fichiers existants" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" -msgstr "type d'index saisie inconnu %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "suivre les liens symboliques. Très utile en combinaison avec collective.recipe.omelette." -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Symboles" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "exécuter le script sans créer les fichiers" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" -msgstr "échec de la lecture d'un fichier cassé d'informations de compilation (version inconnue)" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "afficher la documentation de chaque module sur sa propre page" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "échec de la lecture d'un fichier cassé d'informations de compilation (entrée de configuration manquante)" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "inclure le module \"_private\"" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" -msgstr "échec de la lecture d'un fichier cassé d'informations de compilation (entrée de tags manquante)" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "nom du fichier de table des matières (défaut : modules)" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Les pages HTML sont dans %(outdir)s." +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "ne pas créer de fichier de table des matières" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" -msgstr "Échec de lecture du fichier de configuration de construction : %r" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "ne pas créer de titres pour le module ou package (e.g. lorsque les doctrings en fournissent déjà)" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "non-concordance de build_info, copie de .buildinfo vers .buildinfo.bak" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "mettre la documentation du module avant celle du sous-module" -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "compilation [html] :" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "interprète les chemins de module selon la spécification PEP-0420 des espaces implicites de noms" -#: builders/html/__init__.py:382 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "le modèle %s a été modifié depuis la compilation précédente, tous les documents seront reconstruits." +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "Liste d'options séparées par des virgules à passer à la directive automodule (ou utiliser SPHINX_APIDOC_OPTIONS)." -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "extension du fichier (par défaut : rst)" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "Logo de %s" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "Supprimer les fichiers existants dans le répertoire de sortie qui n'ont pas été générés" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "suivant" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "générer un projet complet avec sphinx-quickstart" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "précédent" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "ajoute module_path à la fin de sys.path, utilisé lorsque --full est présent" -#: builders/html/__init__.py:695 -msgid "generating indices" -msgstr "génération des index" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "nom du projet (par défaut : nom du module principal)" -#: builders/html/__init__.py:710 -msgid "writing additional pages" -msgstr "Écriture des pages additionnelles" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "auteur(s) du projet, utilisé quand l'option -full est précisée" -#: builders/html/__init__.py:793 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "Impossible de copier le fichier image '%s' : %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "version du projet, utilisé quand l'option -full est précisée" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " -msgstr "Copie des fichiers téléchargeables... " +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "révision du projet, utilisé lorsque --full est présent, par défaut reprend --doc-version" -#: builders/html/__init__.py:817 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "impossible de copier le fichier téléchargeable %r: %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "options relatives aux extensions" -#: builders/html/__init__.py:863 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "Échec de la copie du fichier dans le répertoire 'static' du thème : %s : %r" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "permet des extensions arbitraires, utilisé lorsque --full est donné" -#: builders/html/__init__.py:881 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "Échec de la copie du fichier dans html_static_file : %s : %r" - -#: builders/html/__init__.py:916 -msgid "copying static files" -msgstr "Copie des fichiers statiques" +msgid "enable %s extension, used when --full is given" +msgstr "permettre l'extension %s, utilisée lorsque --full est donné" -#: builders/html/__init__.py:933 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "cannot copy static file %r" -msgstr "impossible de copier le fichier static %r" +msgid "%s is not a directory." +msgstr "%s n'est pas un répertoire" -#: builders/html/__init__.py:938 -msgid "copying extra files" -msgstr "copie des fichiers complémentaires" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "Exécution de l'apidoc" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy extra file %r" -msgstr "copie des fichiers supplémentaires impossible %r" +msgid "apidoc_modules item %i must be a dict" +msgstr "l'item apidoc_modules %i doit être un dict" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Failed to write build info file: %r" -msgstr "Échec d'écriture du fichier de configuration de construction : %r" - -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "L'index de recherche n'a pas pu être chargé, mais tous les documents ne seront pas construits: l'index sera incomplet." +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "l'item apidoc_modules %i doit avoir une clé \"path\"." -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "La page %s correspond à deux motifs dans html_sidebars: %r et %r" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "l'item apidoc_modules %i 'path' doit être une chaîne de caractères" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "une erreur Unicode est survenue lors du rendu de la page %s. Veuillez vous assurer que toutes les valeurs de configuration comportant des caractères non-ASCII sont des chaînes Unicode." +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "l'item apidoc_modules %i 'path' n'est pas un dossier existant : %s" -#: builders/html/__init__.py:1222 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Un erreur est survenue lors de la génération de la page: %s.\nLa raison est: %r" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "l'item apidoc_modules %i doit avoir une clé 'destination'" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" -msgstr "Export de l'inventaire des objets" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "l'item apidoc_modules %i 'destination' doit être une chaîne de caractères" -#: builders/html/__init__.py:1263 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "dumping search index in %s" -msgstr "Export de l'index de recherche en %s" +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "l'item apidoc_modules %i 'destination' doit être un chemin relatif" -#: builders/html/__init__.py:1306 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "invalid js_file: %r, ignored" -msgstr "Fichier js_file : %r invalide, sera ignoré" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "l'item apidoc_modules %i ne peut pas créer de répertoire de destination : %s" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Plusieurs math_renderers sont enregistrés. Mais aucun n'est sélectionné." +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "l'item apidoc_modules %i '%s' doit être un entier" -#: builders/html/__init__.py:1344 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Unknown math_renderer %r is given." -msgstr "math_renderer inconnu %r saisi." +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "l'item apidoc_modules %i '%s' doit être un booléen" -#: builders/html/__init__.py:1358 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "L’entrée %r de html_extra_path se trouve à l’intérieur de outdir" +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "l'item apidoc_modules %i a des clés inattendues : %s" -#: builders/html/__init__.py:1363 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "L’entrée %r de html_extra_path n’existe pas" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "l'item apidoc_modules %i '%s' doit être une séquence" -#: builders/html/__init__.py:1378 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "L’entrée %r de html_static_path se trouve à l’intérieur de outdir" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "l'item apidoc_modules %i '%s' doit contenir des chaînes de caractères" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "L’entrée %r de html_static_path n’existe pas" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary : impossible de déterminer si %r est documenté; l'exception suivante a été levée :\n%s" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:630 #, python-format -msgid "logo file %r does not exist" -msgstr "Le fichier de logo %r n’existe pas" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] engendrement d’un auto-sommaire pour : %s" -#: builders/html/__init__.py:1405 +#: ext/autosummary/generate.py:634 #, python-format -msgid "favicon file %r does not exist" -msgstr "Le fichier de favicon %r n’existe pas " +msgid "[autosummary] writing to %s" +msgstr "[autosummary] écriture dans %s" -#: builders/html/__init__.py:1417 +#: ext/autosummary/generate.py:679 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "Les valeurs de \"html_sidebars\" doivent être une liste de chaînes. Au moins un motif a une valeur de chaîne : %s. Remplacé par `html_sidebars = %r`." +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] échec de l'importation de %s.\nIndications possibles :\n%s" -#: builders/html/__init__.py:1430 +#: ext/autosummary/generate.py:877 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "HTML 4 n'est plus pris en charge par Sphinx. (\"html4_writer=True\" détecté dans les options de configuration)" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nEngendre du ReStructuredText par les directives autosummary.\n\nsphinx-autogen est une interface à sphinx.ext.autosummary.generate. Il\nengendre les fichiers reStructuredText à partir des directives autosummary\ncontenues dans les fichiers donnés en entrée.\n\nLe format de la directive autosummary est documentée dans le module\nPython \"sphinx.ext.autosummary\" et peut être lu via : ::\n\npydoc sphinx.ext.autosummary\n" + +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "fichiers sources pour lesquels il faut produire des fichiers rST" + +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "répertoire où placer toutes les sorties" -#: builders/html/__init__.py:1447 +#: ext/autosummary/generate.py:915 #, python-format -msgid "%s %s documentation" -msgstr "Documentation %s %s" +msgid "default suffix for files (default: %(default)s)" +msgstr "extension par défaut pour les fichiers (par défaut : %(default)s)" -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" -msgstr "Échec de l'obtention d'un nom de document !" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "répertoire des templates spécifiques (par défaut : %(default)s)" -#: builders/latex/transforms.py:119 +#: ext/autosummary/generate.py:931 #, python-format -msgid "Failed to get a docname for source %r!" -msgstr "Échec de l'obtention d'un nom de document pour la source %r !" +msgid "document imported members (default: %(default)s)" +msgstr "membres importés du document (défaut : %(default)s)" -#: builders/latex/transforms.py:485 +#: ext/autosummary/generate.py:940 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "Aucune note de bas de page n'a été trouvée pour la référence de nœud %r donnée" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "documenter exactement les membres dans l'attribut __all__ du module. (par défaut : %(default)s)" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:235 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Les fichiers LaTeX se trouvent dans %(outdir)s." +msgid "autosummary references excluded document %r. Ignored." +msgstr "autosummary fait référence au document exclu %r. Ignoré" -#: builders/latex/__init__.py:119 +#: ext/autosummary/__init__.py:239 +#, python-format msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nExécuter 'make' dans ce répertoire pour les soumettre à (pdf)latex\n(ou 'make latexpdf' directement ici pour l’automatiser)." +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "autosummary : fichier stub non trouvé %r. Vérifiez votre paramètre autosummary_generate." -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "aucune valeur de configuration \"latex_documents\" trouvée; aucun document de sera généré" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "Un résumé automatique sous-titré nécessite l'option :toctree:. Ignoré." -#: builders/latex/__init__.py:169 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "La valeur du paramètre \"latex_documents\" référence un document inconnu %s" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "autosummary : échec de l'importation de %s.\nIndications possibles :\n%s" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Version" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "échec d’importation de l'object %s" + +#: ext/autosummary/__init__.py:652 +#, python-format +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "Les éléments résumés ne doivent pas inclure le module actuel. Remplacer %r par %r." + +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "autosummary_generate : fichier nontrouvé : %s" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "autosummary génère des fichiers .rst en interne. Mais votre source_suffix ne contient pas .rst. Ignoré." -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" -msgstr "copie des fichiers de support TeX" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "Identifiant de projet intersphinx `%r` invalide dans intersphinx_mapping. Les identifiants de projet doivent être des chaînes non vides." -#: builders/latex/__init__.py:466 -msgid "copying additional files" -msgstr "copie de fichiers supplémentaires" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "Valeur `%r` invalide dans intersphinx_mapping[%r]. Un tuple ou une liste à deux éléments attendus." -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Clé de configuration inconnue : latex_elements[%r]; ignorée." +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "Valeur `%r` invalide dans intersphinx_mapping[%r]. Les valeurs doivent être une paire (URI cible, lieux d'inventaire)." -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Option de thème inconnue : latex_theme_options[%r], ignoré." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "Valeur URI cible `%r` invalide dans intersphinx_mapping[%r][0]. Les URI cibles doivent être des chaînes uniques non vides." -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r n'a pas d'option « theme »" +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "Valeur URI cible `%r` invalide dans intersphinx_mapping[%r][0]. Les URI cibles doivent être uniques (autre instance dans intersphinx_mapping[%r])." -#: builders/latex/theming.py:90 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r n'a pas d'option « %s »" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "Valeur d'emplacement d'inventaire `%r` invalide dans intersphinx_mapping[%r][1]. Les emplacements d'inventaire doivent être des chaînes non vides ou None." -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" -msgstr "Une exception s'est produite, démarrage du débogueur :" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "Configuration `intersphinx_mapping` invalide (1 erreur)." -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" -msgstr "erreur de balisage reStructuredText :" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "Configuration `intersphinx_mapping` invalide (%s erreurs)." -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" -msgstr "La trace complète a été sauvegardée dans :" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "Une entrée intersphinx_mapping non valide a été ajoutée après normalisation." + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "chargement de l'inventaire intersphinx '%s' de %s ..." -#: _cli/util/errors.py:172 +#: ext/intersphinx/_load.py:324 msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "Pour signaler cette erreur aux développeurs, veuillez ouvrir un ticket à l'adresse . Merci !" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "quelques problèmes ont été rencontrés avec quelques uns des inventaires, mais ils disposaient d'alternatives fonctionnelles :" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "Impossible de déterminer le texte de remplacement pour le renvoi. Il peut s'agir d'un bogue." +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "n'a réussi à atteindre aucun des inventaires en raison des problèmes suivants :\n%s" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "plus d'une cible trouvée pour la référence %r de type 'any' : pourrait être %s" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "l’inventaire intersphinx a bougé : %s -> %s" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s cible de référence non trouvée : %s" +msgid "(in %s %s)" +msgstr "(dans %s %s)" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r cible de référence non trouvée : %s" +msgid "(in %s)" +msgstr "(dans %s)" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "impossible d'atteindre l'image distante %s[%s]" +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "inventaire '%s' : doublons trouvés pour %s:%s" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "impossible d'atteindre l'image distante %s[%d]" +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "inventaire '%s' : plusieurs correspondances trouvées pour %s:%s" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Unknown image format: %s..." -msgstr "Format d'image inconnu : %s..." +msgid "inventory for external cross-reference not found: %r" +msgstr "inventaire des références croisées externes non trouvé : %r" -#: ext/napoleon/docstring.py:707 -msgid "Example" -msgstr "Exemple" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "suffixe de référence croisée externe non valide : %r" -#: ext/napoleon/docstring.py:708 -msgid "Examples" -msgstr "Exemples" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "domaine pour la référence croisée externe non trouvé : %r" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" -msgstr "Arguments de mots-clés" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "%sexterne :%s cible de référence non trouvée : %s" -#: ext/napoleon/docstring.py:768 -msgid "Notes" -msgstr "Notes" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "erreur lors du formatage de la signature pour %s : %s" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" -msgstr "Autres paramètres" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "Ignorer __all__ invalide dans le module %s: %r" -#: ext/napoleon/docstring.py:813 -msgid "Receives" -msgstr "Reçoit" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "Échec pour obtenir la signature de la fonction pour %s : %s" -#: ext/napoleon/docstring.py:817 -msgid "References" -msgstr "Références" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "Échec de la mise à jour de la signature pour %r : paramètre non trouvé : %s" -#: ext/napoleon/docstring.py:849 -msgid "Warns" -msgstr "Avertissements" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "Échec de l'analyse de type_comment pour %r : %s" -#: ext/napoleon/docstring.py:853 -msgid "Yields" -msgstr "Yields" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "Invalide __slots__ trouvé sur %s. Ignoré." -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "ensemble invalide de valeurs (accolade fermante manquante) : %s" +msgid "error while formatting arguments for %s: %s" +msgstr "erreur pendant la mise en forme de l'argument %s:%s" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "ensemble invalide de valeurs (accolade ouvrante manquante) :%s" +msgid "Failed to get a constructor signature for %s: %s" +msgstr "Échec pour obtenir la signature du constructeur pour %s : %s" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "chaîne littérale malformée (guillemet fermant manquant) : %s" +msgid "Failed to get a method signature for %s: %s" +msgstr "Échec pour obtenir la signature de la méthode pour %s : %s" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "chaîne littérale malformée (guillemet ouvrant manquant) : %s" +msgid "Failed to get a signature for %s: %s" +msgstr "Impossible d'obtenir une signature pour %s: %s" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "autosummary references excluded document %r. Ignored." -msgstr "autosummary fait référence au document exclu %r. Ignoré" +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Impossible d'analyser une valeur d'argument par défaut pour %r : %s" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "autosummary : fichier stub non trouvé %r. Vérifiez votre paramètre autosummary_generate." - -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "Un résumé automatique sous-titré nécessite l'option :toctree:. Ignoré." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "attribut %s est répertorié dans :members: mais il manque car il n'a pas été trouvé dans l'objet %r" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" -msgstr "autosummary : échec de l'importation de %s.\nIndications possibles :\n%s" - -#: ext/autosummary/__init__.py:344 -#, python-format -msgid "failed to parse name %s" -msgstr "échec de l’analyse du nom %s" +msgstr "autodoc : n'a pas réussi à déterminer %s.%s (%r) devait être documenté, l'exception suivante a été levée :\n%s" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to import object %s" -msgstr "échec d’importation de l'object %s" +msgid "signature arguments or return annotation given for automodule %s" +msgstr "arguments de signature ou annotation de return donnés pour l’automodule %s" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." -msgstr "Les éléments résumés ne doivent pas inclure le module actuel. Remplacer %r par %r." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ devrait être une liste de chaînes, pas %r (dans module %s) -- __all__ sera ignoré" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "autosummary_generate: file not found: %s" -msgstr "autosummary_generate : fichier nontrouvé : %s" - -#: ext/autosummary/__init__.py:827 msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." -msgstr "autosummary génère des fichiers .rst en interne. Mais votre source_suffix ne contient pas .rst. Ignoré." +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "attribut manquant mentionné dans l'option :members: : module %s, attribut %s" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary : impossible de déterminer si %r est documenté; l'exception suivante a été levée :\n%s" +msgid "missing attribute %s in object %s" +msgstr "attribut manquant %s dans l'objet %s" -#: ext/autosummary/generate.py:526 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] engendrement d’un auto-sommaire pour : %s" +msgid "alias of TypeVar(%s)" +msgstr "alias de TypeVar(%s)" -#: ext/autosummary/generate.py:530 -#, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] écriture dans %s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "échec de la lecture d'un fichier cassé d'informations de compilation (version inconnue)" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "échec de la lecture d'un fichier cassé d'informations de compilation (entrée de configuration manquante)" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "échec de la lecture d'un fichier cassé d'informations de compilation (entrée de tags manquante)" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:114 #, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] échec de l'importation de %s.\nIndications possibles :\n%s" +msgid "The HTML pages are in %(outdir)s." +msgstr "Les pages HTML sont dans %(outdir)s." -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nEngendre du ReStructuredText par les directives autosummary.\n\nsphinx-autogen est une interface à sphinx.ext.autosummary.generate. Il\nengendre les fichiers reStructuredText à partir des directives autosummary\ncontenues dans les fichiers donnés en entrée.\n\nLe format de la directive autosummary est documentée dans le module\nPython \"sphinx.ext.autosummary\" et peut être lu via : ::\n\npydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" +msgstr "Échec de lecture du fichier de configuration de construction : %r" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" -msgstr "fichiers sources pour lesquels il faut produire des fichiers rST" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "non-concordance de build_info, copie de .buildinfo vers .buildinfo.bak" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" -msgstr "répertoire où placer toutes les sorties" +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "compilation [html] :" -#: ext/autosummary/generate.py:805 +#: builders/html/__init__.py:372 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "extension par défaut pour les fichiers (par défaut : %(default)s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "le modèle %s a été modifié depuis la compilation précédente, tous les documents seront reconstruits." -#: ext/autosummary/generate.py:813 -#, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "répertoire des templates spécifiques (par défaut : %(default)s)" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" -#: ext/autosummary/generate.py:821 +#: builders/html/__init__.py:549 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "membres importés du document (défaut : %(default)s)" +msgid "Logo of %s" +msgstr "Logo de %s" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "suivant" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "précédent" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "génération des index" -#: ext/autosummary/generate.py:829 -#, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "documenter exactement les membres dans l'attribut __all__ du module. (par défaut : %(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "Écriture des pages additionnelles" -#: ext/intersphinx/_resolve.py:47 +#: builders/html/__init__.py:783 #, python-format -msgid "(in %s v%s)" -msgstr "(disponible dans %s v%s)" +msgid "cannot copy image file '%s': %s" +msgstr "Impossible de copier le fichier image '%s' : %s" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s)" -msgstr "(dans %s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "Copie des fichiers téléchargeables... " -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "inventaire '%s' : doublons trouvés pour %s:%s" +msgid "cannot copy downloadable file %r: %s" +msgstr "impossible de copier le fichier téléchargeable %r: %s" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "inventaire '%s' : plusieurs correspondances trouvées pour %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "Échec de la copie du fichier dans le répertoire 'static' du thème : %s : %r" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "inventaire des références croisées externes non trouvé : %r" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Échec de la copie du fichier dans html_static_file : %s : %r" -#: ext/intersphinx/_resolve.py:367 -#, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "suffixe de référence croisée externe non valide : %r" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "Copie des fichiers statiques" -#: ext/intersphinx/_resolve.py:378 +#: builders/html/__init__.py:923 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "domaine pour la référence croisée externe non trouvé : %r" +msgid "cannot copy static file %r" +msgstr "impossible de copier le fichier static %r" -#: ext/intersphinx/_resolve.py:585 -#, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "%sexterne :%s cible de référence non trouvée : %s" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "copie des fichiers complémentaires" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "Identifiant de projet intersphinx `%r` invalide dans intersphinx_mapping. Les identifiants de projet doivent être des chaînes non vides." +msgid "cannot copy extra file %r" +msgstr "copie des fichiers supplémentaires impossible %r" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "Échec d'écriture du fichier de configuration de construction : %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "Valeur `%r` invalide dans intersphinx_mapping[%r]. Un tuple ou une liste à deux éléments attendus." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "L'index de recherche n'a pas pu être chargé, mais tous les documents ne seront pas construits: l'index sera incomplet." -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "Valeur `%r` invalide dans intersphinx_mapping[%r]. Les valeurs doivent être une paire (URI cible, lieux d'inventaire)." +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "La page %s correspond à deux motifs dans html_sidebars: %r et %r" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "Valeur URI cible `%r` invalide dans intersphinx_mapping[%r][0]. Les URI cibles doivent être des chaînes uniques non vides." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "une erreur Unicode est survenue lors du rendu de la page %s. Veuillez vous assurer que toutes les valeurs de configuration comportant des caractères non-ASCII sont des chaînes Unicode." -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "Valeur URI cible `%r` invalide dans intersphinx_mapping[%r][0]. Les URI cibles doivent être uniques (autre instance dans intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "Le thème '%s' n'est pas compatible avec cette version de Sphinx, car il utilise le champ \"style\" dans les modèles HTML, qui a été déprécié dans Sphinx 5.1 et supprimé dans Sphinx 7.0. Le thème doit être mis à jour pour utiliser le champ \"styles\" à la place. Voir https://www.sphinx-doc.org/en/master/development/html_themes/templating.html#styles" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "Valeur d'emplacement d'inventaire `%r` invalide dans intersphinx_mapping[%r][1]. Les emplacements d'inventaire doivent être des chaînes non vides ou None." +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Un erreur est survenue lors de la génération de la page: %s.\nLa raison est: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "Configuration `intersphinx_mapping` invalide (1 erreur)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "Export de l'inventaire des objets" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "Configuration `intersphinx_mapping` invalide (%s erreurs)." - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "Une entrée intersphinx_mapping non valide a été ajoutée après normalisation." +msgid "dumping search index in %s" +msgstr "Export de l'index de recherche en %s" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "chargement de l'inventaire intersphinx '%s' de %s ..." - -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "quelques problèmes ont été rencontrés avec quelques uns des inventaires, mais ils disposaient d'alternatives fonctionnelles :" +msgid "invalid js_file: %r, ignored" +msgstr "Fichier js_file : %r invalide, sera ignoré" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "échec d'accès à un quelconque inventaire, messages de contexte suivants :" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Plusieurs math_renderers sont enregistrés. Mais aucun n'est sélectionné." -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "l’inventaire intersphinx a bougé : %s -> %s" +msgid "Unknown math_renderer %r is given." +msgstr "math_renderer inconnu %r saisi." -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1365 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "Échec de la mise à jour de la signature pour %r : paramètre non trouvé : %s" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "L’entrée %r de html_extra_path se trouve à l’intérieur de outdir" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "Échec de l'analyse de type_comment pour %r : %s" +msgid "html_extra_path entry %r does not exist" +msgstr "L’entrée %r de html_extra_path n’existe pas" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "valeur invalide pour l'option member-order : %s" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "L’entrée %r de html_static_path se trouve à l’intérieur de outdir" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "valeur invalide pour l'option class-doc-from : %s" +msgid "html_static_path entry %r does not exist" +msgstr "L’entrée %r de html_static_path n’existe pas" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "signature invalide pour auto%s (%r)" +msgid "logo file %r does not exist" +msgstr "Le fichier de logo %r n’existe pas" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "erreur pendant la mise en forme de l'argument %s:%s" +msgid "favicon file %r does not exist" +msgstr "Le fichier de favicon %r n’existe pas " -#: ext/autodoc/__init__.py:807 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc : n'a pas réussi à déterminer %s.%s (%r) devait être documenté, l'exception suivante a été levée :\n%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "Les valeurs de \"html_sidebars\" doivent être une liste de chaînes. Au moins un motif a une valeur de chaîne : %s. Remplacé par `html_sidebars = %r`." -#: ext/autodoc/__init__.py:902 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "module à importer pour auto-documenter %r est inconnu (essayer de placer une directive \"module\" ou \"currentmodule\" dans le document, ou de donner un nom de module explicite)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 n'est plus pris en charge par Sphinx. (\"html4_writer=True\" détecté dans les options de configuration)" -#: ext/autodoc/__init__.py:946 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "Un faux objet a été détecté : %r" +msgid "%s %s documentation" +msgstr "Documentation %s %s" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:87 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "erreur lors du formatage de la signature pour %s : %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r n'a pas d'option « theme »" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" dans le nom d'automodule n'a pas de sens" +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "%r n'a pas d'option « %s »" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "Échec de l'obtention d'un nom de document !" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "arguments de signature ou annotation de return donnés pour l’automodule %s" +msgid "Failed to get a docname for source %r!" +msgstr "Échec de l'obtention d'un nom de document pour la source %r !" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ devrait être une liste de chaînes, pas %r (dans module %s) -- __all__ sera ignoré" +msgid "No footnote was found for given reference node %r" +msgstr "Aucune note de bas de page n'a été trouvée pour la référence de nœud %r donnée" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Les fichiers LaTeX se trouvent dans %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "attribut manquant mentionné dans l'option :members: : module %s, attribut %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nExécuter 'make' dans ce répertoire pour les soumettre à (pdf)latex\n(ou 'make latexpdf' directement ici pour l’automatiser)." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "aucune valeur de configuration \"latex_documents\" trouvée; aucun document de sera généré" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "Échec pour obtenir la signature de la fonction pour %s : %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "La valeur du paramètre \"latex_documents\" référence un document inconnu %s" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "copie des fichiers de support TeX" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "copie de fichiers supplémentaires" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "Échec pour obtenir la signature du constructeur pour %s : %s" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Clé de configuration inconnue : latex_elements[%r]; ignorée." -#: ext/autodoc/__init__.py:1760 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" -msgstr "Bases : %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Option de thème inconnue : latex_theme_options[%r], ignoré." -#: ext/autodoc/__init__.py:1774 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" -msgstr "attribut manquant %s dans l'objet %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s a déjà des numéros de section attribués (toctree numérotés emboîtés ?)" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" -msgstr "alias de %s" +msgid "image file not readable: %s" +msgstr "fichier image %s illisible " -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "alias de TypeVar(%s)" +msgid "image file %s not readable: %s" +msgstr "fichier image %s illisible : %s" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "Échec pour obtenir la signature de la méthode pour %s : %s" +msgid "download file not readable: %s" +msgstr "le fichier téléchargé n’est pas lisible: %s" -#: ext/autodoc/__init__.py:2448 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "Invalide __slots__ trouvé sur %s. Ignoré." +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "table des matières avec une référence circulaire détectée, elle sera ignorée : %s <- %s" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "Impossible d'analyser une valeur d'argument par défaut pour %r : %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "la table des matières contient une référence à un document %r qui n'a pas de titre : aucun lien ne sera généré" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "suite de la page précédente" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" +msgstr "toctree contient une référence au document non inclu %r" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "suite sur la page suivante" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" +msgstr "toctree contient une référence à un document inexistant %r" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Non alphabétique" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "voir %s" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Chiffres" +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "voir aussi %s" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "page" +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "type d'index saisie inconnu %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fr_FR/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/fr_FR/LC_MESSAGES/sphinx.mo index 2f589d2d81fb316b81fbdfc13653c840c0d9a2b5..e5ea6bba555f70870a0b7a583fae4d37d7452bcd 100644 GIT binary patch delta 26 hcmZo;Z)4ve%E)V~YiOivV5nedW@TuyS&1=)2>?&T1)~4} delta 26 hcmZo;Z)4ve%E)V?YiOivWT{|eWMyo*S&1=)2>?(&1+V}B diff --git a/addons/source-python/packages/site-packages/sphinx/locale/fr_FR/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/fr_FR/LC_MESSAGES/sphinx.po index 730edca85..7ca291f6b 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/fr_FR/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/fr_FR/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -7,153 +7,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: French (France) (http://app.transifex.com/sphinx-doc/sphinx-1/language/fr_FR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: fr_FR\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" +msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,1153 +321,1307 @@ msgid "" "explicit" msgstr "" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "" -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "" -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 +#: config.py:351 #, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: project.py:87 +#: config.py:374 #, python-format -msgid "Ignored unreadable document %r." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: highlighting.py:168 +#: config.py:379 #, python-format -msgid "Pygments lexer name %r is not known" +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" msgstr "" -#: highlighting.py:202 +#: config.py:391 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: extension.py:55 +#: config.py:399 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." +msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: extension.py:76 +#: config.py:422 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." +msgid "unknown config value %r in override, ignoring" msgstr "" -#: theming.py:114 +#: config.py:476 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +msgid "No such config value: %r" msgstr "" -#: theming.py:120 +#: config.py:504 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +msgid "Config value %r already present" msgstr "" -#: theming.py:135 +#: config.py:541 #, python-format -msgid "unsupported theme option %r given" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:207 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:228 +#: config.py:599 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:275 +#: config.py:611 #, python-format msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:282 +#: config.py:633 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:310 +#: config.py:651 config.py:659 #, python-format -msgid "no theme configuration file found in %r" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:665 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:339 +#: config.py:686 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "Section %s" msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:687 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "Fig. %s" msgstr "" -#: theming.py:347 +#: config.py:688 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "Table %s" msgstr "" -#: theming.py:366 +#: config.py:689 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "Listing %s" msgstr "" -#: config.py:309 -#, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:318 +#: config.py:829 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." msgstr "" -#: config.py:341 -#, python-format +#: config.py:846 +#, python-brace-format msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." msgstr "" -#: config.py:350 +#: config.py:858 #, python-format -msgid "invalid number %r for config value %r, ignoring" +msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: config.py:430 -#, python-format -msgid "No such config value: %r" +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: config.py:453 -#, python-format -msgid "Config value %r already present" +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: config.py:537 +#: environment/__init__.py:350 #, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: config.py:560 +#: environment/__init__.py:355 #, python-format -msgid "Failed to convert %r to a set or tuple" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: config.py:581 config.py:586 +#: environment/__init__.py:361 #, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: config.py:589 -#, python-format +#: environment/__init__.py:404 msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: config.py:608 +#: environment/__init__.py:518 #, python-format -msgid "Section %s" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: config.py:609 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "Fig. %s" +msgid "Domain %r is not registered" msgstr "" -#: config.py:610 -#, python-format -msgid "Table %s" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: config.py:611 -#, python-format -msgid "Listing %s" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: config.py:718 -msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." +#: environment/__init__.py:952 +#, python-format +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: config.py:742 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: config.py:755 -msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: config.py:766 -#, python-format -msgid "primary_domain %r not found, ignored." +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: config.py:778 -msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: domains/rst.py:224 -msgid "directive" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: domains/rst.py:225 -msgid "directive-option" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: domains/rst.py:226 -msgid "role" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: domains/rst.py:248 +#: builders/texinfo.py:41 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: domains/javascript.py:168 +#: builders/texinfo.py:85 #, python-format -msgid "%s() (class)" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: domains/javascript.py:170 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "%s (global variable or constant)" +msgid "processing %s" msgstr "" -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: domains/javascript.py:255 -msgid "Arguments" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" msgstr "" -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" msgstr "" -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" +#: builders/manpage.py:37 +#, python-format +msgid "The manual pages are in %(outdir)s." msgstr "" -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." msgstr "" -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: domains/changeset.py:26 +#: builders/gettext.py:243 #, python-format -msgid "Changed in version %s" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: domains/changeset.py:27 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "Deprecated since version %s" +msgid "building [%s]: " msgstr "" -#: domains/changeset.py:28 +#: builders/gettext.py:265 #, python-format -msgid "Removed in version %s" +msgid "targets for %d template files" msgstr "" -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: domains/citation.py:84 +#: builders/linkcheck.py:87 #, python-format -msgid "Citation [%s] is not referenced." +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: domains/math.py:63 +#: builders/linkcheck.py:159 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "broken link: %s (%s)" msgstr "" -#: domains/math.py:119 writers/latex.py:2479 +#: builders/linkcheck.py:561 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "Anchor '%s' not found" msgstr "" -#: environment/__init__.py:81 -msgid "new config" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: environment/__init__.py:82 -msgid "config changed" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: environment/__init__.py:83 -msgid "extensions changed" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: environment/__init__.py:249 -msgid "build environment version not current" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: environment/__init__.py:251 -msgid "source directory has changed" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:313 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: environment/__init__.py:318 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:324 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:366 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:473 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:626 -#, python-format -msgid "Domain %r is not registered" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:777 -msgid "document isn't included in any toctree" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:810 -msgid "self referenced toctree found. Ignored." +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:839 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: locale/__init__.py:229 -msgid "Attention" +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" msgstr "" -#: locale/__init__.py:230 -msgid "Caution" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." msgstr "" -#: locale/__init__.py:231 -msgid "Danger" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: locale/__init__.py:232 -msgid "Error" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: locale/__init__.py:233 -msgid "Hint" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: locale/__init__.py:234 -msgid "Important" +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" msgstr "" -#: locale/__init__.py:235 -msgid "Note" +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" msgstr "" -#: locale/__init__.py:236 -msgid "See also" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: locale/__init__.py:237 -msgid "Tip" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: locale/__init__.py:238 -msgid "Warning" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" msgstr "" -#: cmd/quickstart.py:117 +#: builders/__init__.py:314 #, python-format -msgid "Please enter one of %s." +msgid "targets for %d po files that are out of date" msgstr "" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +#: builders/__init__.py:324 +msgid "all source files" msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: cmd/quickstart.py:215 +#: builders/__init__.py:342 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "" +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: cmd/quickstart.py:219 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: cmd/quickstart.py:227 +#: builders/__init__.py:366 #, python-format -msgid "Selected root path: %s" +msgid "%d source files given on command line" msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:282 +#: builders/__init__.py:536 +#, python-format msgid "" -"The project name will occur in several places in the built documentation." +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:293 +#: builders/__init__.py:563 +#, python-format 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" -"just set both to the same value." +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" msgstr "" -#: cmd/quickstart.py:308 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/quickstart.py:324 +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/quickstart.py:334 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/quickstart.py:352 +#: ext/coverage.py:260 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" msgstr "" -#: cmd/quickstart.py:362 +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" msgstr "" -#: cmd/quickstart.py:381 +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + +#: ext/imgconverter.py:44 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/quickstart.py:391 +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: ext/graphviz.py:153 #, python-format -msgid "Creating file %s." +msgid "External Graphviz file %r not found or reading it failed" msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "" + +#: ext/graphviz.py:287 #, python-format -msgid "File %s already exists, skipping." +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" msgstr "" -#: cmd/quickstart.py:504 +#: ext/graphviz.py:339 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:512 +#: ext/graphviz.py:344 +#, python-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "" + +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "" + +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" msgstr "" -#: cmd/quickstart.py:515 +#: ext/imgmath.py:148 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: cmd/quickstart.py:522 +#: ext/imgmath.py:167 +#, python-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" + +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "" + +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" + +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" + +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "" + +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "" + +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" msgstr "" -#: cmd/quickstart.py:557 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "" + +#: ext/doctest.py:297 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: cmd/quickstart.py:646 -msgid "use epub" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "" + +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "" + +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "" + +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "" + +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "" + +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "" + +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "enable %s extension" +msgid "%s (%s attribute)" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: cmd/quickstart.py:795 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "Invalid template variable: %s" +msgid ":%s: (directive option)" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: domains/rst.py:236 +msgid "role" msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: domains/rst.py:262 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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.:" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" msgstr "" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" msgstr "" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" msgstr "" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1339,675 +1640,589 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "" -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "" -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "" -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/singlehtml.py:191 -msgid "writing additional files" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "" - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:90 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:324 builders/texinfo.py:115 -#, python-format -msgid "processing %s" -msgstr "" - -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." -msgstr "" - -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr "" - -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "" - -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "" - -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "" - -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "" - -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "" - -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " -msgstr "" - -#: builders/gettext.py:252 -#, python-format -msgid "targets for %d template files" -msgstr "" - -#: builders/gettext.py:257 -msgid "reading templates... " -msgstr "" - -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "" - -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/__init__.py:220 +#: cmd/quickstart.py:242 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "Selected root path: %s" msgstr "" -#: builders/__init__.py:243 -msgid "building [mo]: " +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/__init__.py:307 -msgid "all source files" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/__init__.py:325 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"file %r given on command line is not under the source directory, ignoring" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/__init__.py:351 -#, python-format -msgid "%d source files given on command line" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/__init__.py:366 -#, python-format -msgid "targets for %d source files that are out of date" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/quickstart.py:340 +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 "" -#: builders/__init__.py:483 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/__init__.py:519 -#, python-format +#: cmd/quickstart.py:350 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/__init__.py:528 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: builders/__init__.py:539 +#: cmd/quickstart.py:368 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "" + +#: cmd/quickstart.py:378 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: builders/epub3.py:83 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "The ePub file is in %(outdir)s." +msgid "Creating file %s." msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: builders/_epub_base.py:465 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/changes.py:33 +#: cmd/quickstart.py:671 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "enable %s extension" msgstr "" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: builders/changes.py:74 -msgid "Builtins" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: builders/changes.py:76 -msgid "Module level" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: builders/changes.py:128 -msgid "copying source files..." +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: builders/changes.py:137 -#, python-format -msgid "could not read %r for changelog creation" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/osutil.py:130 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: util/nodes.py:419 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:74 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/fileutil.py:89 +#: cmd/quickstart.py:810 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:170 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:185 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/docutils.py:284 +#: directives/other.py:156 #, python-format -msgid "unknown directive or role name: %s:%s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/docutils.py:747 +#: directives/other.py:169 #, python-format -msgid "unknown node type: %r" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/display.py:81 -msgid "skipped" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/display.py:86 -msgid "failed" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/i18n.py:230 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: directives/patches.py:66 +#: directives/patches.py:70 msgid "" "\":file:\" option for csv-table directive now recognizes an absolute path as" " a relative path from source directory. Please update your document." @@ -2022,7 +2237,7 @@ msgstr "" msgid "Invalid caption: %s" msgstr "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format msgid "line number spec is out of range(1-%d): %r" msgstr "" @@ -2037,7 +2252,7 @@ msgstr "" msgid "Include file '%s' not found or reading it failed" msgstr "" -#: directives/code.py:234 +#: directives/code.py:235 #, python-format msgid "" "Encoding %r used for reading included file '%s' seems to be wrong, try " @@ -2058,48 +2273,139 @@ msgstr "" msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "" + +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" + +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "" + +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "" + +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" + +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" + +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" + +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 +#: writers/latex.py:386 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "no Babel option known for language %r" msgstr "" -#: directives/other.py:171 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: directives/other.py:204 -msgid "Section author: " +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: directives/other.py:206 -msgid "Module author: " +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: directives/other.py:208 -msgid "Code author: " +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: directives/other.py:210 -msgid "Author: " +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" #: _cli/__init__.py:73 @@ -2107,6 +2413,7 @@ msgid "Usage:" msgstr "" #: _cli/__init__.py:75 +#, python-brace-format msgid "{0} [OPTIONS] []" msgstr "" @@ -2122,1993 +2429,1877 @@ msgstr "" msgid "Options" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 +#: _cli/__init__.py:113 _cli/__init__.py:181 msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: _cli/__init__.py:172 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" "{0}: error: {1}\n" "Run '{0} --help' for information" msgstr "" -#: _cli/__init__.py:182 +#: _cli/__init__.py:179 msgid " Manage documentation with Sphinx." msgstr "" -#: _cli/__init__.py:194 +#: _cli/__init__.py:191 msgid "Show the version and exit." msgstr "" -#: _cli/__init__.py:202 +#: _cli/__init__.py:199 msgid "Show this message and exit." msgstr "" -#: _cli/__init__.py:206 +#: _cli/__init__.py:203 msgid "Logging" msgstr "" -#: _cli/__init__.py:213 +#: _cli/__init__.py:210 msgid "Increase verbosity (can be repeated)" msgstr "" -#: _cli/__init__.py:221 +#: _cli/__init__.py:218 msgid "Only print errors and warnings." msgstr "" -#: _cli/__init__.py:228 +#: _cli/__init__.py:225 msgid "No output at all" msgstr "" -#: _cli/__init__.py:234 +#: _cli/__init__.py:231 msgid "" msgstr "" -#: _cli/__init__.py:265 +#: _cli/__init__.py:263 msgid "See 'sphinx --help'.\n" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "" - -#: transforms/i18n.py:228 transforms/i18n.py:303 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" "inconsistent footnote references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:273 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" "inconsistent references in translated message. original: {0}, translated: " "{1}" msgstr "" -#: transforms/i18n.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" "inconsistent citation references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:345 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" "inconsistent term references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 +#: transforms/__init__.py:258 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "" - -#: ext/imgconverter.py:68 -#, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " -msgstr "" - -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "" - -#: ext/viewcode.py:306 -msgid "Module code" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/viewcode.py:312 +#: transforms/__init__.py:299 #, python-format -msgid "

Source code for %s

" +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/viewcode.py:338 -msgid "Overview: module code" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/coverage.py:47 +#: util/inventory.py:147 #, python-format -msgid "invalid regex %r in %s" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 +#: util/inventory.py:166 #, python-format -msgid "module %s could not be imported: %s" +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: ext/coverage.py:141 +#: util/i18n.py:100 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "" - -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +msgid "reading error: %s, %s" msgstr "" -#: ext/coverage.py:163 +#: util/i18n.py:113 #, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." +msgid "writing error: %s, %s" msgstr "" -#: ext/coverage.py:177 +#: util/i18n.py:146 #, python-format -msgid "invalid regex %r in coverage_c_regexes" +msgid "locale_dir %s does not exist" msgstr "" -#: ext/coverage.py:245 +#: util/i18n.py:244 #, python-format -msgid "undocumented c api: %s [%s] in file %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: ext/coverage.py:429 +#: util/i18n.py:253 #, python-format -msgid "undocumented python function: %s :: %s" +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: ext/coverage.py:445 +#: util/osutil.py:131 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: ext/coverage.py:458 -#, python-format -msgid "undocumented python method: %s :: %s :: %s" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: ext/todo.py:71 -msgid "Todo" +#: util/display.py:87 +msgid "failed" msgstr "" -#: ext/todo.py:104 +#: util/docutils.py:325 #, python-format -msgid "TODO entry found: %s" -msgstr "" - -#: ext/todo.py:163 -msgid "<>" +msgid "unknown directive name: %s" msgstr "" -#: ext/todo.py:165 +#: util/docutils.py:361 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "unknown role name: %s" msgstr "" -#: ext/todo.py:175 -msgid "original entry" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: ext/extlinks.py:82 +#: util/fileutil.py:76 #, python-format msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: ext/doctest.py:115 +#: util/fileutil.py:89 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "Writing evaluated template result to %s" msgstr "" -#: ext/doctest.py:120 +#: util/docfields.py:103 #, python-format -msgid "'%s' is not a valid option." +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: ext/doctest.py:134 +#: util/rst.py:73 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "" - -#: ext/doctest.py:220 -msgid "invalid TestCode type" +msgid "default role %s not found" msgstr "" -#: ext/doctest.py:281 +#: util/nodes.py:462 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: ext/doctest.py:434 +#: util/nodes.py:523 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: ext/doctest.py:522 +#: util/nodes.py:739 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "" - -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: ext/graphviz.py:268 -#, python-format -msgid "graphviz_dot executable path must be set! %r" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: ext/graphviz.py:303 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: ext/graphviz.py:310 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: ext/graphviz.py:313 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "dot code %r: %s" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "[graph: %s]" -msgstr "" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "" - -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: ext/apidoc.py:85 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "Would create file %s." -msgstr "" - -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "" - -#: ext/apidoc.py:392 -msgid "path to module to document" -msgstr "" - -#: ext/apidoc.py:396 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "" - -#: ext/apidoc.py:407 -msgid "directory to place all output" -msgstr "" - -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "" - -#: ext/apidoc.py:429 -msgid "overwrite existing files" +msgid "Unknown image format: %s..." msgstr "" -#: ext/apidoc.py:437 +#: transforms/post_transforms/__init__.py:88 msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "" - -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "" - -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "" - -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" -msgstr "" - -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "" - -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: ext/apidoc.py:481 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: ext/apidoc.py:498 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: ext/apidoc.py:564 -msgid "extension options" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: ext/apidoc.py:638 -#, python-format -msgid "%s is not a directory." +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 -#, python-format -msgid "Failed to remove %s: %s" +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: ext/autosectionlabel.py:48 +#: themes/basic/layout.html:115 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "Search within %(docstitle)s" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: ext/duration.py:85 -msgid "" -"====================== slowest reading durations =======================" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: ext/imgmath.py:159 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: ext/imgmath.py:174 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: ext/imgmath.py:328 +#: themes/basic/layout.html:201 #, python-format -msgid "display latex %r: %s" +msgid "Last updated on %(last_updated)s." msgstr "" -#: ext/imgmath.py:362 +#: themes/basic/layout.html:204 #, python-format -msgid "inline latex %r: %s" -msgstr "" - -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: writers/manpage.py:309 writers/text.py:936 -#, python-format -msgid "[image: %s]" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: writers/html5.py:415 -#, python-format -msgid "numfig_format is not defined for %s" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: writers/html5.py:427 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:482 -msgid "Link to this term" +msgid "Index – %(key)s" msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 -#, python-format -msgid "unsupported rubric heading level: %s" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" msgstr "" -#: writers/html5.py:613 -msgid "Link to this code" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: themes/basic/defindex.html:4 +msgid "Overview" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" +#: themes/basic/defindex.html:9 +msgid "the documentation for" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +#: themes/basic/defindex.html:10 +msgid "last updated" msgstr "" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" msgstr "" -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" msgstr "" -#: writers/latex.py:360 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 -#, python-format -msgid "no Babel option known for language %r" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" msgstr "" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." +#: themes/basic/defindex.html:19 +msgid "search this documentation" msgstr "" -#: writers/latex.py:590 -#, python-format -msgid "template %s not found; loading from legacy %s instead" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" msgstr "" -#: writers/latex.py:708 -msgid "document title is not a single Text node" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" msgstr "" -#: writers/latex.py:1175 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" msgstr "" -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" msgstr "" -#: writers/latex.py:1931 -#, python-format -msgid "unknown index entry type %s found" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "environment variable; %s" +msgid "Search %(docstitle)s" msgstr "" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." msgstr "" -#: domains/std/__init__.py:235 -#, python-format +#: themes/basic/search.html:28 msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" +#: themes/basic/search.html:35 +msgid "search" msgstr "" -#: domains/std/__init__.py:308 -msgid "command line option" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" msgstr "" -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." msgstr "" -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" -#: domains/std/__init__.py:602 -msgid "glossary term" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" msgstr "" -#: domains/std/__init__.py:603 -msgid "grammar token" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." msgstr "" -#: domains/std/__init__.py:604 -msgid "reference label" +#: themes/basic/static/searchtools.js:526 +msgid ", in " msgstr "" -#: domains/std/__init__.py:607 -msgid "environment variable" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" -#: domains/std/__init__.py:608 -msgid "program option" +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:609 -msgid "document" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" msgstr "" -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" msgstr "" -#: domains/std/__init__.py:722 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" msgstr "" -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" msgstr "" -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" msgstr "" -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" msgstr "" -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" +#: domains/python/_object.py:206 +msgid "Variables" msgstr "" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:173 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/c/__init__.py:199 -#, python-format -msgid "%s (C %s)" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:302 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." +msgid "%s (C++ %s)" msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" -msgstr "" - -#: domains/c/__init__.py:680 -msgid "variable" +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" msgstr "" -#: domains/c/__init__.py:682 -msgid "macro" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" msgstr "" -#: domains/c/__init__.py:683 -msgid "struct" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" msgstr "" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" +#: domains/cpp/__init__.py:946 +msgid "concept" msgstr "" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" +#: domains/cpp/__init__.py:954 +msgid "template parameter" msgstr "" -#: domains/cpp/__init__.py:277 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "%s (C++ %s)" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: domains/c/__init__.py:211 #, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +msgid "%s (C %s)" msgstr "" -#: domains/cpp/__init__.py:862 -msgid "concept" +#: domains/c/__init__.py:778 +msgid "variable" msgstr "" -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/c/__init__.py:780 +msgid "macro" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: themes/basic/layout.html:18 -msgid "Navigation" +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" msgstr "" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: themes/basic/layout.html:124 -msgid "About these documents" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: themes/basic/defindex.html:4 -msgid "Overview" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" msgstr "" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: themes/basic/defindex.html:19 -msgid "search this documentation" +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: themes/basic/search.html:35 -msgid "search" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "alias of %s" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Automatically generated list of changes in version %(version)s" +msgid "Bases: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" msgstr "" -#: themes/basic/changes/rstsource.html:5 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "%(filename)s — %(docstitle)s" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: themes/basic/static/searchtools.js:119 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/__init__.py:382 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:695 -msgid "generating indices" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:793 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "%s is not a directory." msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "cannot copy static file %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "cannot copy extra file %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "dumping search index in %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:630 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1344 +#: ext/autosummary/generate.py:679 #, python-format -msgid "Unknown math_renderer %r is given." +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1363 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/html/__init__.py:1378 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:923 #, python-format -msgid "logo file %r does not exist" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/generate.py:931 #, python-format -msgid "favicon file %r does not exist" +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/generate.py:940 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "%s %s documentation" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "failed to import object %s" msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "" - -#: builders/latex/__init__.py:119 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/latex/theming.py:90 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:172 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:324 msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "(in %s)" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Unknown image format: %s..." +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:526 +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:530 +#: builders/html/__init__.py:337 #, python-format -msgid "[autosummary] writing to %s" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:372 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/autosummary/generate.py:805 -#, python-format -msgid "default suffix for files (default: %(default)s)" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/autosummary/generate.py:813 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/autosummary/generate.py:829 +#: builders/html/__init__.py:783 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:47 -#, python-format -msgid "(in %s v%s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:807 #, python-format -msgid "(in %s)" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:359 -#, python-format -msgid "inventory for external cross-reference not found: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:367 +#: builders/html/__init__.py:923 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "cannot copy static file %r" msgstr "" -#: ext/intersphinx/_resolve.py:378 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_resolve.py:585 +#: builders/html/__init__.py:938 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:944 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_load.py:70 -#, python-format +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1385 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1412 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1425 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:807 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:902 +#: builders/html/__init__.py:1454 #, python-format -msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +msgid "%s %s documentation" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/latex/theming.py:87 #, python-format -msgid "A mocked object is detected: %r" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1760 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1774 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/he/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/he/LC_MESSAGES/sphinx.mo index e9be342b78f6052d3a2112ab29659cf0baf84669..72013c5703ce7c2507863f07148f55efe2bad7ed 100644 GIT binary patch delta 26 hcmX@7eolSEelA{9T|*;X149KvGb=-r&1blnI01Bk2Yvtm delta 26 hcmX@7eolSEelA`UT|*;XBTEG%BP(Oe&1blnI01C}2a5mz diff --git a/addons/source-python/packages/site-packages/sphinx/locale/he/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/he/LC_MESSAGES/sphinx.po index 704aa34cd..374ef9369 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/he/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/he/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -8,153 +8,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: FIRST AUTHOR , 2011\n" "Language-Team: Hebrew (http://app.transifex.com/sphinx-doc/sphinx-1/language/he/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: he\n" "Plural-Forms: nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" +msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,1153 +322,1307 @@ msgid "" "explicit" msgstr "" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "" -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "" -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 +#: config.py:351 #, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: project.py:87 +#: config.py:374 #, python-format -msgid "Ignored unreadable document %r." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: highlighting.py:168 +#: config.py:379 #, python-format -msgid "Pygments lexer name %r is not known" +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" msgstr "" -#: highlighting.py:202 +#: config.py:391 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: extension.py:55 +#: config.py:399 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." +msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: extension.py:76 +#: config.py:422 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." +msgid "unknown config value %r in override, ignoring" msgstr "" -#: theming.py:114 +#: config.py:476 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +msgid "No such config value: %r" msgstr "" -#: theming.py:120 +#: config.py:504 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +msgid "Config value %r already present" msgstr "" -#: theming.py:135 +#: config.py:541 #, python-format -msgid "unsupported theme option %r given" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:207 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:228 +#: config.py:599 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:275 +#: config.py:611 #, python-format msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:282 +#: config.py:633 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:310 +#: config.py:651 config.py:659 #, python-format -msgid "no theme configuration file found in %r" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:665 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:339 +#: config.py:686 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "Section %s" msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:687 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "Fig. %s" msgstr "" -#: theming.py:347 +#: config.py:688 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "Table %s" msgstr "" -#: theming.py:366 +#: config.py:689 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "Listing %s" msgstr "" -#: config.py:309 -#, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:318 +#: config.py:829 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." msgstr "" -#: config.py:341 -#, python-format +#: config.py:846 +#, python-brace-format msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." msgstr "" -#: config.py:350 +#: config.py:858 #, python-format -msgid "invalid number %r for config value %r, ignoring" +msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: config.py:430 -#, python-format -msgid "No such config value: %r" +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: config.py:453 -#, python-format -msgid "Config value %r already present" +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: config.py:537 +#: environment/__init__.py:350 #, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: config.py:560 +#: environment/__init__.py:355 #, python-format -msgid "Failed to convert %r to a set or tuple" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: config.py:581 config.py:586 +#: environment/__init__.py:361 #, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: config.py:589 -#, python-format +#: environment/__init__.py:404 msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: config.py:608 +#: environment/__init__.py:518 #, python-format -msgid "Section %s" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: config.py:609 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "Fig. %s" +msgid "Domain %r is not registered" +msgstr "" + +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "" + +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: config.py:610 +#: environment/__init__.py:952 #, python-format -msgid "Table %s" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: config.py:611 +#: locale/__init__.py:229 +msgid "Attention" +msgstr "תשומת לב" + +#: locale/__init__.py:230 +msgid "Caution" +msgstr "זהירות" + +#: locale/__init__.py:231 +msgid "Danger" +msgstr "סכנה" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "שגיאה" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "רמז" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "חשוב" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "הערה" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "ראה גם" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "טיפ" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "אזהרה" + +#: builders/texinfo.py:41 #, python-format -msgid "Listing %s" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: config.py:718 +#: builders/texinfo.py:44 msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: config.py:742 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: config.py:755 -msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: config.py:766 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "primary_domain %r not found, ignored." +msgid "processing %s" msgstr "" -#: config.py:778 -msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "" + +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "" + +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(בתוך" + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: domains/rst.py:128 domains/rst.py:185 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "%s (directive)" +msgid "cannot copy image file %r: %s" +msgstr "" + +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: domains/rst.py:186 domains/rst.py:190 +#: builders/texinfo.py:218 #, python-format -msgid ":%s: (directive option)" +msgid "error writing file Makefile: %s" msgstr "" -#: domains/rst.py:214 +#: builders/manpage.py:37 #, python-format -msgid "%s (role)" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: domains/rst.py:224 -msgid "directive" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: domains/rst.py:225 -msgid "directive-option" +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: domains/rst.py:226 -msgid "role" +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." +msgstr "" + +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "" + +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: domains/rst.py:248 +#: builders/gettext.py:243 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: domains/javascript.py:165 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "%s() (built-in function)" +msgid "building [%s]: " msgstr "" -#: domains/javascript.py:166 domains/python/__init__.py:253 +#: builders/gettext.py:265 #, python-format -msgid "%s() (%s method)" +msgid "targets for %d template files" +msgstr "" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "" + +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: domains/javascript.py:168 +#: builders/linkcheck.py:87 #, python-format -msgid "%s() (class)" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: domains/javascript.py:170 +#: builders/linkcheck.py:159 #, python-format -msgid "%s (global variable or constant)" +msgid "broken link: %s (%s)" msgstr "" -#: domains/javascript.py:172 domains/python/__init__.py:338 +#: builders/linkcheck.py:561 #, python-format -msgid "%s (%s attribute)" +msgid "Anchor '%s' not found" msgstr "" -#: domains/javascript.py:255 -msgid "Arguments" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" -msgstr "פונקציה" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "" -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" -msgstr "מחלקה" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "" -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "מודול" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "השתנה בגרסה %s" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" -#: domains/changeset.py:27 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Deprecated since version %s" -msgstr " לא מומלץ לשימוש מגרסה %s" +msgid "invalid css_file: %r, ignored" +msgstr "" -#: domains/changeset.py:28 +#: builders/xml.py:29 #, python-format -msgid "Removed in version %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/__init__.py:299 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "%s %s" +msgid "error writing file %s: %s" msgstr "" -#: domains/citation.py:73 +#: builders/xml.py:103 #, python-format -msgid "duplicate citation %s, other instance in %s" +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: domains/citation.py:84 +#: builders/_epub_base.py:223 #, python-format -msgid "Citation [%s] is not referenced." +msgid "duplicated ToC entry found: %s" msgstr "" -#: domains/math.py:63 +#: builders/_epub_base.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: domains/math.py:119 writers/latex.py:2479 +#: builders/_epub_base.py:467 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: environment/__init__.py:81 -msgid "new config" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: environment/__init__.py:82 -msgid "config changed" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: environment/__init__.py:83 -msgid "extensions changed" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: environment/__init__.py:249 -msgid "build environment version not current" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: environment/__init__.py:251 -msgid "source directory has changed" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: environment/__init__.py:313 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: environment/__init__.py:318 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: environment/__init__.py:324 +#: builders/_epub_base.py:802 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "writing %s file..." msgstr "" -#: environment/__init__.py:366 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: environment/__init__.py:473 +#: builders/__init__.py:229 #, python-format -msgid "Failed to scan documents in %s: %r" +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: environment/__init__.py:626 +#: builders/__init__.py:237 #, python-format -msgid "Domain %r is not registered" +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: environment/__init__.py:777 -msgid "document isn't included in any toctree" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: environment/__init__.py:810 -msgid "self referenced toctree found. Ignored." +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: environment/__init__.py:839 +#: builders/__init__.py:280 #, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgid "all of %d po files" msgstr "" -#: locale/__init__.py:229 -msgid "Attention" -msgstr "תשומת לב" +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" -#: locale/__init__.py:230 -msgid "Caution" -msgstr "זהירות" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" -#: locale/__init__.py:231 -msgid "Danger" -msgstr "סכנה" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" -#: locale/__init__.py:232 -msgid "Error" -msgstr "שגיאה" - -#: locale/__init__.py:233 -msgid "Hint" -msgstr "רמז" +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" -#: locale/__init__.py:234 -msgid "Important" -msgstr "חשוב" +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" -#: locale/__init__.py:235 -msgid "Note" -msgstr "הערה" +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" -#: locale/__init__.py:236 -msgid "See also" -msgstr "ראה גם" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" -#: locale/__init__.py:237 -msgid "Tip" -msgstr "טיפ" +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" -#: locale/__init__.py:238 -msgid "Warning" -msgstr "אזהרה" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:117 +#: builders/__init__.py:725 #, python-format -msgid "Please enter one of %s." +msgid "docnames to write: %s" msgstr "" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/quickstart.py:215 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: builders/__init__.py:743 +msgid "copying assets" msgstr "" -#: cmd/quickstart.py:219 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:227 +#: builders/changes.py:65 #, python-format -msgid "Selected root path: %s" +msgid "no changes in version %s." msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/changes.py:67 +msgid "writing summary file..." msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/changes.py:79 +msgid "Builtins" msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" +#: builders/changes.py:81 +msgid "Module level" +msgstr "רמת המודול" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: builders/changes.py:137 +msgid "copying source files..." msgstr "" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" msgstr "" -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" msgstr "" -#: cmd/quickstart.py:271 +#: ext/coverage.py:148 +#, python-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/quickstart.py:282 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"The project name will occur in several places in the built documentation." +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/quickstart.py:293 -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" -"just set both to the same value." +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: cmd/quickstart.py:308 +#: ext/extlinks.py:82 +#, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: ext/todo.py:61 +msgid "Todo" +msgstr "לעשות" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" msgstr "" -#: cmd/quickstart.py:324 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: ext/todo.py:152 +msgid "<>" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" msgstr "" -#: cmd/quickstart.py:334 +#: ext/todo.py:166 +msgid "original entry" +msgstr "הטקסט המקורי" + +#: ext/imgconverter.py:44 +#, python-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:352 +#: ext/imgconverter.py:83 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" msgstr "" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "" + +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/quickstart.py:381 +#: ext/graphviz.py:328 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" msgstr "" -#: cmd/quickstart.py:391 +#: ext/graphviz.py:339 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 #, python-format -msgid "Creating file %s." +msgid "dot code %r: %s" msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format -msgid "File %s already exists, skipping." +msgid "[graph: %s]" msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" msgstr "" -#: cmd/quickstart.py:504 +#: ext/imgmath.py:148 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: cmd/quickstart.py:512 +#: ext/imgmath.py:167 +#, python-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: cmd/quickstart.py:515 +#: ext/imgmath.py:326 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +msgid "display latex %r: %s" msgstr "" -#: cmd/quickstart.py:522 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" -msgstr "" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[מקור]" -#: cmd/quickstart.py:646 -msgid "use epub" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[תיעוד]" + +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: ext/viewcode.py:359 #, python-format -msgid "enable %s extension" +msgid "

Source code for %s

" +msgstr "

הראה קוד מקור ל %s

" + +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

כל המודולים שיש להם קוד זמין

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: cmd/quickstart.py:795 +#: domains/javascript.py:374 #, python-format -msgid "Invalid template variable: %s" +msgid "%s (module)" +msgstr "" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "פונקציה" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "מחלקה" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "מודול" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid ":%s: (directive option)" msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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.:" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "" + +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "השתנה בגרסה %s" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr " לא מומלץ לשימוש מגרסה %s" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "" + +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" msgstr "" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1340,675 +1641,589 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "" -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "" -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "" -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/singlehtml.py:191 -msgid "writing additional files" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "" - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/texinfo.py:90 +#: cmd/quickstart.py:242 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +msgid "Selected root path: %s" msgstr "" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr "(בתוך" - -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "" - -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/gettext.py:252 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/gettext.py:257 -msgid "reading templates... " +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/gettext.py:292 -msgid "writing message catalogs... " +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/__init__.py:220 -#, python-format -msgid "a suitable image for %s builder not found: %s" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/__init__.py:243 -msgid "building [mo]: " +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: builders/__init__.py:307 -msgid "all source files" +#: cmd/quickstart.py:340 +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 "" -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/__init__.py:325 -#, python-format +#: cmd/quickstart.py:350 msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "" - -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/__init__.py:351 -#, python-format -msgid "%d source files given on command line" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: builders/__init__.py:366 +#: cmd/quickstart.py:368 #, python-format -msgid "targets for %d source files that are out of date" +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: builders/__init__.py:483 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Creating file %s." msgstr "" -#: builders/__init__.py:519 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "File %s already exists, skipping." msgstr "" -#: builders/__init__.py:528 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: builders/__init__.py:539 +#: cmd/quickstart.py:520 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: builders/__init__.py:698 +#: cmd/quickstart.py:531 #, python-format -msgid "docnames to write: %s" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/_epub_base.py:465 +#: cmd/quickstart.py:671 #, python-format -msgid "cannot write image file %r: %s" +msgid "enable %s extension" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: builders/changes.py:33 -#, python-format -msgid "The overview file is in %(outdir)s." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: builders/changes.py:74 -msgid "Builtins" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: builders/changes.py:76 -msgid "Module level" -msgstr "רמת המודול" - -#: builders/changes.py:128 -msgid "copying source files..." +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: builders/changes.py:137 +#: cmd/quickstart.py:810 #, python-format -msgid "could not read %r for changelog creation" +msgid "Invalid template variable: %s" msgstr "" -#: util/rst.py:72 +#: directives/other.py:119 #, python-format -msgid "default role %s not found" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/docfields.py:95 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/osutil.py:130 +#: directives/other.py:156 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/nodes.py:419 +#: directives/other.py:169 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" +#: directives/other.py:203 +msgid "Section author: " +msgstr "מחבר הקטע:" -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" +#: directives/other.py:205 +msgid "Module author: " +msgstr "מחבר המודול:" -#: util/fileutil.py:74 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +#: directives/other.py:207 +msgid "Code author: " +msgstr "מחבר הקוד:" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" - -#: util/inventory.py:170 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" - -#: util/inventory.py:185 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" - -#: util/docutils.py:284 -#, python-format -msgid "unknown directive or role name: %s:%s" -msgstr "" - -#: util/docutils.py:747 -#, python-format -msgid "unknown node type: %r" -msgstr "" - -#: util/display.py:81 -msgid "skipped" -msgstr "" - -#: util/display.py:86 -msgid "failed" -msgstr "" - -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" -msgstr "" - -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" -msgstr "" +#: directives/other.py:209 +msgid "Author: " +msgstr "מחבר:" -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/i18n.py:230 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: directives/patches.py:66 +#: directives/patches.py:70 msgid "" "\":file:\" option for csv-table directive now recognizes an absolute path as" " a relative path from source directory. Please update your document." @@ -2023,7 +2238,7 @@ msgstr "" msgid "Invalid caption: %s" msgstr "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format msgid "line number spec is out of range(1-%d): %r" msgstr "" @@ -2038,7 +2253,7 @@ msgstr "" msgid "Include file '%s' not found or reading it failed" msgstr "" -#: directives/code.py:234 +#: directives/code.py:235 #, python-format msgid "" "Encoding %r used for reading included file '%s' seems to be wrong, try " @@ -2059,48 +2274,139 @@ msgstr "" msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: directives/other.py:122 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "אינדקס" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "הערות שוליים" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "unimplemented node type: %r" msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[תמונה]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: directives/other.py:171 +#: writers/html5.py:431 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "numfig_format is not defined for %s" msgstr "" -#: directives/other.py:204 -msgid "Section author: " -msgstr "מחבר הקטע:" +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "" -#: directives/other.py:206 -msgid "Module author: " -msgstr "מחבר המודול:" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: directives/other.py:208 -msgid "Code author: " -msgstr "מחבר הקוד:" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: directives/other.py:210 -msgid "Author: " -msgstr "מחבר:" +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "" + +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" + +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" + +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" + +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" + +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" #: _cli/__init__.py:73 @@ -2108,6 +2414,7 @@ msgid "Usage:" msgstr "" #: _cli/__init__.py:75 +#, python-brace-format msgid "{0} [OPTIONS] []" msgstr "" @@ -2123,1993 +2430,1877 @@ msgstr "" msgid "Options" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 +#: _cli/__init__.py:113 _cli/__init__.py:181 msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: _cli/__init__.py:172 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" "{0}: error: {1}\n" "Run '{0} --help' for information" msgstr "" -#: _cli/__init__.py:182 +#: _cli/__init__.py:179 msgid " Manage documentation with Sphinx." msgstr "" -#: _cli/__init__.py:194 +#: _cli/__init__.py:191 msgid "Show the version and exit." msgstr "" -#: _cli/__init__.py:202 +#: _cli/__init__.py:199 msgid "Show this message and exit." msgstr "" -#: _cli/__init__.py:206 +#: _cli/__init__.py:203 msgid "Logging" msgstr "" -#: _cli/__init__.py:213 +#: _cli/__init__.py:210 msgid "Increase verbosity (can be repeated)" msgstr "" -#: _cli/__init__.py:221 +#: _cli/__init__.py:218 msgid "Only print errors and warnings." msgstr "" -#: _cli/__init__.py:228 +#: _cli/__init__.py:225 msgid "No output at all" msgstr "" -#: _cli/__init__.py:234 +#: _cli/__init__.py:231 msgid "" msgstr "" -#: _cli/__init__.py:265 +#: _cli/__init__.py:263 msgid "See 'sphinx --help'.\n" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "" - -#: transforms/i18n.py:228 transforms/i18n.py:303 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" "inconsistent footnote references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:273 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" "inconsistent references in translated message. original: {0}, translated: " "{1}" msgstr "" -#: transforms/i18n.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" "inconsistent citation references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:345 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" "inconsistent term references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" -msgstr "[מקור]" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 +#: transforms/__init__.py:258 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/imgconverter.py:68 +#: transforms/__init__.py:299 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/viewcode.py:258 -msgid "highlighting module code... " +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "[תיעוד]" - -#: ext/viewcode.py:306 -msgid "Module code" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/viewcode.py:312 +#: util/inventory.py:147 #, python-format -msgid "

Source code for %s

" -msgstr "

הראה קוד מקור ל %s

" - -#: ext/viewcode.py:338 -msgid "Overview: module code" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" -msgstr "

כל המודולים שיש להם קוד זמין

" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: ext/coverage.py:47 +#: util/i18n.py:100 #, python-format -msgid "invalid regex %r in %s" +msgid "reading error: %s, %s" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 +#: util/i18n.py:113 #, python-format -msgid "module %s could not be imported: %s" +msgid "writing error: %s, %s" msgstr "" -#: ext/coverage.py:141 +#: util/i18n.py:146 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "locale_dir %s does not exist" msgstr "" -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: ext/coverage.py:163 +#: util/i18n.py:253 #, python-format msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: ext/coverage.py:177 +#: util/osutil.py:131 #, python-format -msgid "invalid regex %r in coverage_c_regexes" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: ext/coverage.py:245 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: ext/coverage.py:429 -#, python-format -msgid "undocumented python function: %s :: %s" +#: util/display.py:87 +msgid "failed" msgstr "" -#: ext/coverage.py:445 +#: util/docutils.py:325 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "unknown directive name: %s" msgstr "" -#: ext/coverage.py:458 +#: util/docutils.py:361 #, python-format -msgid "undocumented python method: %s :: %s :: %s" +msgid "unknown role name: %s" msgstr "" -#: ext/todo.py:71 -msgid "Todo" -msgstr "לעשות" - -#: ext/todo.py:104 +#: util/docutils.py:805 #, python-format -msgid "TODO entry found: %s" +msgid "unknown node type: %r" msgstr "" -#: ext/todo.py:163 -msgid "<>" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: ext/todo.py:165 +#: util/fileutil.py:89 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "Writing evaluated template result to %s" msgstr "" -#: ext/todo.py:175 -msgid "original entry" -msgstr "הטקסט המקורי" - -#: ext/extlinks.py:82 +#: util/docfields.py:103 #, python-format msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: ext/doctest.py:115 +#: util/rst.py:73 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "default role %s not found" msgstr "" -#: ext/doctest.py:120 +#: util/nodes.py:462 #, python-format -msgid "'%s' is not a valid option." +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: ext/doctest.py:134 +#: util/nodes.py:523 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: ext/doctest.py:220 -msgid "invalid TestCode type" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: ext/doctest.py:281 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "המשך מעמוד קודם" -#: ext/doctest.py:434 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: ext/doctest.py:522 -#, python-format -msgid "ignoring invalid doctest code: %r" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: ext/graphviz.py:268 +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "מהדורה" + +#: transforms/post_transforms/images.py:79 #, python-format -msgid "graphviz_dot executable path must be set! %r" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: ext/graphviz.py:303 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: ext/graphviz.py:310 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +msgid "Unknown image format: %s..." msgstr "" -#: ext/graphviz.py:313 -#, python-format +#: transforms/post_transforms/__init__.py:88 msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: ext/graphviz.py:329 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "dot code %r: %s" +msgid "%s:%s reference target not found: %s" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "[graph: %s]" -msgstr "" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" +msgid "%r reference target not found: %s" msgstr "" -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: ext/apidoc.py:85 -#, python-format -msgid "Would create file %s." +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: ext/apidoc.py:392 -msgid "path to module to document" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: ext/apidoc.py:396 +#: _cli/util/errors.py:207 msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: ext/apidoc.py:407 -msgid "directory to place all output" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: ext/apidoc.py:429 -msgid "overwrite existing files" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: ext/apidoc.py:437 +#: _cli/util/errors.py:246 msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "כווץ סרגל צד" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "ניווט" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" -msgstr "" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "חפש בתוך %(docstitle)s" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "על מסמכים אלו" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "חיפוש" -#: ext/apidoc.py:481 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "זכויות שמורות" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: ext/apidoc.py:498 +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "עודכן לאחרונה ב %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "נושא קודם" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "פרק קודם" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "נושא הבא" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" -msgstr "" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "פרק הבא" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" -msgstr "" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "אינדקס מלא בעמוד אחד" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" -msgstr "" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "עמוד זה" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "הצג מקור" -#: ext/apidoc.py:564 -msgid "extension options" -msgstr "" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "חיפוש מהיר" -#: ext/apidoc.py:638 -#, python-format -msgid "%s is not a directory." -msgstr "" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "לך" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 -#, python-format -msgid "Failed to remove %s: %s" -msgstr "" +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "סקירה כללית" -#: ext/autosectionlabel.py:48 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: themes/basic/defindex.html:9 +msgid "the documentation for" msgstr "" -#: ext/duration.py:85 -msgid "" -"====================== slowest reading durations =======================" +#: themes/basic/defindex.html:10 +msgid "last updated" msgstr "" -#: ext/imgmath.py:159 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" msgstr "" -#: ext/imgmath.py:174 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "תוכן עניינים מלא" -#: ext/imgmath.py:328 -#, python-format -msgid "display latex %r: %s" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" msgstr "" -#: ext/imgmath.py:362 -#, python-format -msgid "inline latex %r: %s" -msgstr "" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "דף חיפוש" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" -msgstr "הערות שוליים" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "חפש בתיעוד זה" -#: writers/manpage.py:309 writers/text.py:936 -#, python-format -msgid "[image: %s]" -msgstr "" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "אינדקס מודולים גלובלי" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[תמונה]" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "גישה מהירה לכל המודולים" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" msgstr "" -#: writers/html5.py:415 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "כל הפונקציות, המחלקות, המושגים" -#: writers/html5.py:427 +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "" + +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Any IDs not assigned for %s node" +msgid "Search %(docstitle)s" +msgstr "חפש %(docstitle)s" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "עמודי אינדקס לפי אותיות" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "עשוי להיות עצום" + +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "אנא הפעל ג'אואסקריפט ע\"מ לאפשר את\n החיפוש." + +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: writers/html5.py:482 -msgid "Link to this term" +#: themes/basic/search.html:35 +msgid "search" +msgstr "חיפוש" + +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "תוכן" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "תוצאות החיפוש" + +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "" + +#: themes/basic/static/searchtools.js:526 +msgid ", in " msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "הסתר תוצאות חיפוש" + +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" -#: writers/html5.py:613 -msgid "Link to this code" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "יצר אוטומטית רשימה של שינויים בגרסה %(version)s" + +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "שינויים אחרים" + +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "הרחב סרגל צד" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "אינדקס" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "פרמטרים" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "משתנים" + +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." +#: domains/python/__init__.py:105 domains/python/__init__.py:270 +#, python-format +msgid "%s() (in module %s)" msgstr "" -#: writers/texinfo.py:1302 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format -msgid "unimplemented node type: %r" +msgid "%s (in module %s)" msgstr "" -#: writers/latex.py:360 +#: domains/python/__init__.py:174 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "%s (built-in variable)" msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 +#: domains/python/__init__.py:209 #, python-format -msgid "no Babel option known for language %r" +msgid "%s (built-in class)" msgstr "" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." +#: domains/python/__init__.py:210 +#, python-format +msgid "%s (class in %s)" msgstr "" -#: writers/latex.py:590 +#: domains/python/__init__.py:275 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "%s() (%s class method)" msgstr "" -#: writers/latex.py:708 -msgid "document title is not a single Text node" +#: domains/python/__init__.py:277 +#, python-format +msgid "%s() (%s static method)" +msgstr "" + +#: domains/python/__init__.py:430 +#, python-format +msgid "%s (%s property)" +msgstr "" + +#: domains/python/__init__.py:470 +#, python-format +msgid "%s (type alias in %s)" +msgstr "" + +#: domains/python/__init__.py:624 +msgid "Python Module Index" +msgstr "" + +#: domains/python/__init__.py:625 +msgid "modules" +msgstr "" + +#: domains/python/__init__.py:703 +msgid "Deprecated" +msgstr "" + +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "" + +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "" + +#: domains/python/__init__.py:732 +msgid "static method" +msgstr "" + +#: domains/python/__init__.py:734 +msgid "property" msgstr "" -#: writers/latex.py:1175 +#: domains/python/__init__.py:735 +msgid "type alias" +msgstr "" + +#: domains/python/__init__.py:804 +#, python-format msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" msgstr "" -#: writers/latex.py:1573 +#: domains/python/__init__.py:974 #, python-format -msgid "dimension unit %s is invalid. Ignored." +msgid "more than one target found for cross-reference %r: %s" +msgstr "" + +#: domains/python/__init__.py:1048 +msgid " (deprecated)" msgstr "" -#: writers/latex.py:1931 +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 #, python-format -msgid "unknown index entry type %s found" +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" + +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "" + +#: domains/cpp/__init__.py:302 +#, python-format +msgid "%s (C++ %s)" +msgstr "" + +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "" + +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "" + +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "" + +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "" + +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "" + +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "" + +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 +#, python-format +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "משתנה" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "מאקרו" + +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "" + +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "משתנה סביבה; %s" -#: domains/std/__init__.py:112 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:166 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:176 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:235 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" "--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: domains/std/__init__.py:306 +#: domains/std/__init__.py:319 #, python-format msgid "%s command line option" msgstr "" -#: domains/std/__init__.py:308 +#: domains/std/__init__.py:321 msgid "command line option" msgstr "" -#: domains/std/__init__.py:430 +#: domains/std/__init__.py:461 msgid "glossary term must be preceded by empty line" msgstr "" -#: domains/std/__init__.py:438 +#: domains/std/__init__.py:474 msgid "glossary terms must not be separated by empty lines" msgstr "" -#: domains/std/__init__.py:444 domains/std/__init__.py:457 +#: domains/std/__init__.py:486 domains/std/__init__.py:504 msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:602 +#: domains/std/__init__.py:729 msgid "glossary term" msgstr "" -#: domains/std/__init__.py:603 +#: domains/std/__init__.py:730 msgid "grammar token" msgstr "" -#: domains/std/__init__.py:604 +#: domains/std/__init__.py:731 msgid "reference label" msgstr "" -#: domains/std/__init__.py:607 +#: domains/std/__init__.py:733 msgid "environment variable" msgstr "משתנה סביבה" -#: domains/std/__init__.py:608 +#: domains/std/__init__.py:734 msgid "program option" msgstr "" -#: domains/std/__init__.py:609 +#: domains/std/__init__.py:735 msgid "document" msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 +#: domains/std/__init__.py:772 domains/std/__init__.py:785 msgid "Module Index" msgstr "מודול אינדקס" -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "דף חיפוש" - -#: domains/std/__init__.py:722 +#: domains/std/__init__.py:857 #, python-format msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: domains/std/__init__.py:932 +#: domains/std/__init__.py:1113 msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: domains/std/__init__.py:940 +#: domains/std/__init__.py:1124 #, python-format msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: domains/std/__init__.py:952 +#: domains/std/__init__.py:1138 #, python-format msgid "the link has no caption: %s" msgstr "" -#: domains/std/__init__.py:966 +#: domains/std/__init__.py:1153 #, python-format msgid "invalid numfig_format: %s (%r)" msgstr "" -#: domains/std/__init__.py:969 +#: domains/std/__init__.py:1157 #, python-format msgid "invalid numfig_format: %s" msgstr "" -#: domains/std/__init__.py:1200 +#: domains/std/__init__.py:1453 #, python-format msgid "undefined label: %r" msgstr "" -#: domains/std/__init__.py:1202 +#: domains/std/__init__.py:1456 #, python-format msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "%s() (in module %s)" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "%s (in module %s)" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: domains/python/__init__.py:169 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "%s (built-in variable)" +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: domains/python/__init__.py:194 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s (built-in class)" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: domains/python/__init__.py:195 -#, python-format -msgid "%s (class in %s)" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: domains/python/__init__.py:249 -#, python-format -msgid "%s() (%s class method)" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: domains/python/__init__.py:251 -#, python-format -msgid "%s() (%s static method)" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: domains/python/__init__.py:389 -#, python-format -msgid "%s (%s property)" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: domains/python/__init__.py:428 -#, python-format -msgid "%s (type alias in %s)" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: domains/python/__init__.py:559 -msgid "Python Module Index" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: domains/python/__init__.py:560 -msgid "modules" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: domains/python/__init__.py:637 -msgid "Deprecated" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: domains/python/__init__.py:663 -msgid "exception" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: domains/python/__init__.py:665 -msgid "class method" -msgstr "" - -#: domains/python/__init__.py:666 -msgid "static method" -msgstr "" - -#: domains/python/__init__.py:668 -msgid "property" -msgstr "" - -#: domains/python/__init__.py:669 -msgid "type alias" -msgstr "" - -#: domains/python/__init__.py:729 -#, python-format -msgid "" -"duplicate object description of %s, other instance in %s, use :no-index: for" -" one of them" -msgstr "" - -#: domains/python/__init__.py:858 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "more than one target found for cross-reference %r: %s" -msgstr "" - -#: domains/python/__init__.py:920 -msgid " (deprecated)" -msgstr "" - -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "פרמטרים" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "משתנים" - -#: domains/python/_object.py:173 -msgid "Raises" +msgid "A mocked object is detected: %r" msgstr "" -#: domains/c/__init__.py:199 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "%s (C %s)" +msgid "alias of %s" msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 -msgid "Return values" -msgstr "" - -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" -msgstr "" - -#: domains/c/__init__.py:680 -msgid "variable" -msgstr "משתנה" - -#: domains/c/__init__.py:682 -msgid "macro" -msgstr "מאקרו" - -#: domains/c/__init__.py:683 -msgid "struct" -msgstr "" - -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" -msgstr "" - -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 -msgid "enum" -msgstr "" - -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 -msgid "enumerator" -msgstr "" - -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 -msgid "function parameter" -msgstr "" - -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" +msgid "Bases: %s" msgstr "" -#: domains/cpp/__init__.py:277 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "%s (C++ %s)" +msgid "invalid value for member-order option: %s" msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/cpp/__init__.py:862 -msgid "concept" -msgstr "" - -#: domains/cpp/__init__.py:867 -msgid "template parameter" -msgstr "" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "תוכן" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "חיפוש" - -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "לך" - -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "הצג מקור" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "כווץ סרגל צד" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "ניווט" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "חפש בתוך %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "על מסמכים אלו" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "זכויות שמורות" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "עודכן לאחרונה ב %(last_updated)s." - -#: themes/basic/layout.html:204 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: themes/basic/genindex-single.html:26 +#: ext/autodoc/_names.py:89 #, python-format -msgid "Index – %(key)s" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "אינדקס מלא בעמוד אחד" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "עמודי אינדקס לפי אותיות" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "עשוי להיות עצום" - -#: themes/basic/opensearch.xml:4 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Search %(docstitle)s" -msgstr "חפש %(docstitle)s" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "עמוד זה" - -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "סקירה כללית" - -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "" - -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "" - -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "" - -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "" - -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "תוכן עניינים מלא" - -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "" - -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "חפש בתיעוד זה" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "אינדקס מודולים גלובלי" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "גישה מהירה לכל המודולים" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "כל הפונקציות, המחלקות, המושגים" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "חיפוש מהיר" - -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "אנא הפעל ג'אואסקריפט ע\"מ לאפשר את\n החיפוש." - -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: themes/basic/search.html:35 -msgid "search" -msgstr "חיפוש" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "נושא קודם" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "פרק קודם" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "נושא הבא" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "פרק הבא" - -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "הרחב סרגל צד" - -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "Failed to remove %s: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "יצר אוטומטית רשימה של שינויים בגרסה %(version)s" - -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" +msgid "Would create file %s." msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "שינויים אחרים" - -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "הסתר תוצאות חיפוש" - -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "תוצאות החיפוש" - -#: themes/basic/static/searchtools.js:119 +#: ext/apidoc/_cli.py:50 msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" - -#: themes/basic/static/searchtools.js:253 -msgid "Searching" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format +#: ext/apidoc/_cli.py:135 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "ראה %s" - -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" -msgstr "ראה גם %s" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:382 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "אינדקס" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:560 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Logo of %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "הבא" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "הקודם" - -#: builders/html/__init__.py:695 -msgid "generating indices" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:793 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "cannot copy static file %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:634 #, python-format -msgid "dumping search index in %s" +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:679 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1344 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/html/__init__.py:1363 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1378 +#: ext/autosummary/generate.py:923 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:931 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:940 #, python-format -msgid "logo file %r does not exist" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/__init__.py:235 #, python-format -msgid "favicon file %r does not exist" +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "%s %s documentation" -msgstr "תיעוד %s %s" - -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "failed to import object %s" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/__init__.py:119 +#: ext/autosummary/__init__.py:860 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/intersphinx/_load.py:61 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "מהדורה" - -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: builders/latex/theming.py:90 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: _cli/util/errors.py:172 +#: ext/intersphinx/_load.py:324 msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Unknown image format: %s..." +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "" - -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:526 -#, python-format -msgid "[autosummary] generating autosummary for: %s" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/autosummary/generate.py:530 -#, python-format -msgid "[autosummary] writing to %s" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:114 #, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:805 +#: builders/html/__init__.py:372 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:813 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "אינדקס" + +#: builders/html/__init__.py:549 #, python-format -msgid "custom template directory (default: %(default)s)" +msgid "Logo of %s" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "הבא" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "הקודם" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/autosummary/generate.py:829 -#, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:47 +#: builders/html/__init__.py:783 #, python-format -msgid "(in %s v%s)" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:367 -#, python-format -msgid "invalid external cross-reference suffix: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:378 +#: builders/html/__init__.py:923 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "cannot copy static file %r" msgstr "" -#: ext/intersphinx/_resolve.py:585 -#, python-format -msgid "external %s:%s reference target not found: %s" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_load.py:81 -#, python-format +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" - -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1225 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1266 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1365 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:807 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:902 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "תיעוד %s %s" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 -#, python-format -msgid "Failed to get a function signature for %s: %s" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1760 -#, python-format -msgid "Bases: %s" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1774 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "missing attribute %s in object %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: builders/latex/__init__.py:537 #, python-format -msgid "alias of %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/toctree.py:259 #, python-format -msgid "alias of TypeVar(%s)" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/collectors/asset.py:126 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "download file not readable: %s" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "המשך מעמוד קודם" +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: environment/adapters/toctree.py:360 +#, python-format +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "ראה %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "ראה גם %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hi/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/hi/LC_MESSAGES/sphinx.mo index d90ff11c0b5f11298a25a9ff9c46083ebf472270..3b51a7c0e1f1ffc0179060900c61957deac26111 100644 GIT binary patch delta 9549 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 delta 11413 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 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hi/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/hi/LC_MESSAGES/sphinx.po index 7e954fc3e..4a712f502 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/hi/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/hi/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -11,153 +11,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Sumanjali Damarla , 2020\n" "Language-Team: Hindi (http://app.transifex.com/sphinx-doc/sphinx-1/language/hi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: hi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "पाइथन अभिवृद्धि प्रस्ताव; पी.ई.पी. %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "विन्यास मान %s.%s खोजे गए किसी भी रूप विन्यास में नहीं दिखा" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "विन्यास का असमर्थित रूप विकल्प %r दिया गया" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "रुपविन्यास के पथ में फाइल %r कोई प्रमाणिक ज़िप फाइल नहीं है या इसमें कोई रुपविन्यास नहीं सहेजा गया है" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "आयाम %s की needs_extensions मान में आवश्कता है, पर यह नहीं चढ़ाया गया है." + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "इस परियोजना में आयाम %s का कम से कम %s संस्करण चाहिए इसलिए उपलब्ध संस्करण (%s) से बनाना संभव नहीं है." + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "पिगमेंटस लेक्सर नाम %r अज्ञात है" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "%r घटना पहले से विद्यमान है" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "अज्ञात घटना नाम: %s" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "स्रोत निर्देशिका (%s) नहीं मिली" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "स्रोत निर्देशिका और गंतव्य निर्देशिका समरूप नहीं हो सकतीं" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "स्फिंक्स %s संस्करण चल रहा है" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "इस परियोजना में स्फिंक्स का कम से कम %s संस्करण चाहिए और इसलिए इस संस्करण से बनाना संभव नहीं है." -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "परिणाम निर्देशिका बनाई जा रही है" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "%s आयाम को स्थापित करते हुए:" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'स्थापना' को जैसा कि अभी कोन्फ़.पाई में परिभाषित किया गया है, पाइथन से निर्देशित नहीं है. कृपया इसकी परिभाषा में परिवर्तन करके इसे निर्देश योग्य कर्म बनाएं. कोन्फ़.पाई को स्फिंक्स के आयाम की तरह व्यवहार के लिए इसकी आवश्कयता है." -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "[%s] अनुवाद पढ़ा जा रहा है..." -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "संपन्न" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "अंतर्निर्मित संदेशों में उपलब्ध नहीं है" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "रक्षित स्थिति को लागू किया जा रहा है" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "असफल: %s" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "किसी निर्माता को नहीं चुना गया, मानक उपयोग: एच्.टी.ऍम.एल." -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "निर्देशक कक्षा #node class# %r पहले से पंजीकृत है, इसके अभ्यागत निरस्त हो जाएंगे " -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" -msgstr "निर्देश %r पहले से पंजीकृत है, यह निरस्त हो जाएगा" +msgid "directive %r is already registered and will not be overridden" +msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" -msgstr "भूमिका %r पहले से पंजीकृत है, यह निरस्त हो जाएगी" +msgid "role %r is already registered and will not be overridden" +msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -165,12 +312,12 @@ msgid "" "explicit" msgstr "%s आयाम यह घोषित नहीं करता कि यह समानांतर पाठन के लिए सुरक्षित है. यह मानते हुए की ऐसा नहीं है - कृपया आयाम के लेखक को जांच करने और स्पष्ट व्यक्त करने के लिए कहें." -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "समानांतर पठन के लिए यह %s विस्तार अथवा आयाम सुरक्षित नहीं है | " -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -178,645 +325,357 @@ msgid "" "explicit" msgstr "%s आयाम यह घोषित नहीं करता कि यह समानांतर लेखन के लिए सुरक्षित है. यह मानते हुए की ऐसा नहीं है - कृपया आयाम के लेखक को जांच करने और स्पष्ट व्यक्त करने के लिए कहें." -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "समानांतर लेखन के लिए %s विस्तार अथवा आयाम सुरक्षित नहीं है | " -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "%s पर काम कर रहे हैं" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "पाइथन अभिवृद्धि प्रस्ताव; पी.ई.पी. %s" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "निर्माण वर्ग %s का कोई \"नाम\" भाव नहीं है" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "निर्माता %r पहले से (%s प्रभाग में) उपलब्ध है" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "निर्माता नाम %s पंजीकृत नहीं है अथवा प्रवेश स्थान पर उपलब्ध नहीं है." -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "निर्माता नाम %s पंजीकृत नहीं है" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "अधिकारक्षेत्र %s पहले से पंजीकृत है" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "अधिकारक्षेत्र %s अभी पंजीकृत नहीं है" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "%r निर्देश पहले से अधिकार-क्षेत्र %s में पंजीकृत है, " -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "%r भूमिका पहले से अधिकार-क्षेत्र %s में पंजीकृत है, " -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "%r अनुक्रमणिका पहले से अधिकार-क्षेत्र %s में पंजीकृत है" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "%r object_type पहले से पंजीकृत है" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "%r crossref_type पहले से पंजीकृत है" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "source_suffix %r पहले से पंजीकृत है" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "%r का source_parser पहले से पंजीकृत है" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "%s का स्रोत व्याख्याता पंजीकृत नहीं है" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "%r के लिए अनुवादक पहले से विद्यमान है" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "add_node() के kwargs एक (visit, depart) फंक्शन टपल #function tuple# होने चाहिए: %r=%r" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "enumerable_node %r पहले से पंजीकृत है" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "%r आयाम को %sसंस्करण से स्फिंक्स में सम्मिलित किया जा चुका है; आयाम की उपेक्षा की गयी." -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "मौलिक अपवाद:\n" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "%s आयाम का आयात नहीं किया जा सका" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "आयाम %r में कोई सेटअप #setup()# कारक नहीं है; क्या यह वास्तव में स्फिंक्स का परिवर्धक प्रभाग है?" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "इस परियोजना में प्रयुक्त %s परिवर्धक को स्फिंक्स का कम से कम %s संस्करण चाहिए; इसलिए इस संस्करण से बनाना संभव नहीं है." -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "परिवर्धक %r के सेटअप() कर्म से एक असहाय वस्तु वापस मिली है; इसको 'कुछ नहीं' अथवा मेटाडाटा कोश भेजना चाहिए था" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" - -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" - -#: highlighting.py:168 +#: config.py:351 #, python-format -msgid "Pygments lexer name %r is not known" -msgstr "पिगमेंटस लेक्सर नाम %r अज्ञात है" +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "विन्यास निर्देशिका में कोन्फ़.पाय #conf.py# फाइल (%s) नहीं है " -#: highlighting.py:202 +#: config.py:374 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: extension.py:55 +#: config.py:379 #, python-format msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." -msgstr "आयाम %s की needs_extensions मान में आवश्कता है, पर यह नहीं चढ़ाया गया है." +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "शब्दकोष विन्यास मान %r की उल्लंघन नहीं किया जा सकता, अनदेखा किया गया (प्रत्येक अवयव का मान रखने के लिए %r का उपयोग करें)" -#: extension.py:76 +#: config.py:391 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." -msgstr "इस परियोजना में आयाम %s का कम से कम %s संस्करण चाहिए इसलिए उपलब्ध संस्करण (%s) से बनाना संभव नहीं है." +msgid "invalid number %r for config value %r, ignoring" +msgstr "विन्यास मान %r के लिए अमान्य संख्या %r, अनदेखा किया गया" -#: theming.py:114 +#: config.py:399 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "असमर्थित प्रकार के साथ विन्यास मान %r का उल्लंघन नहीं किया जा सकता, अनदेखा किया गया" -#: theming.py:120 +#: config.py:422 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "विन्यास मान %s.%s खोजे गए किसी भी रूप विन्यास में नहीं दिखा" +msgid "unknown config value %r in override, ignoring" +msgstr "आरोहण में अज्ञात विन्यास मान %r, अनदेखा किया गया" -#: theming.py:135 +#: config.py:476 #, python-format -msgid "unsupported theme option %r given" -msgstr "विन्यास का असमर्थित रूप विकल्प %r दिया गया" +msgid "No such config value: %r" +msgstr "" -#: theming.py:207 +#: config.py:504 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "रुपविन्यास के पथ में फाइल %r कोई प्रमाणिक ज़िप फाइल नहीं है या इसमें कोई रुपविन्यास नहीं सहेजा गया है" +msgid "Config value %r already present" +msgstr "विन्यास मान %r पहले से विद्यमान है" -#: theming.py:228 +#: config.py:541 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:275 +#: config.py:599 #, python-format +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "आपकी विन्यास फाइल में रचनाक्रम की त्रुटि है: %s\n" + +#: config.py:603 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "" +"The configuration file (or one of the modules it imports) called sys.exit()" +msgstr "विन्यास फाइल (अथवा इसके द्वारा आयातित प्रभागों) द्वारा sys.exit() का आह्वान किया गया" -#: theming.py:282 +#: config.py:611 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" +msgstr "विन्यास फाइल में प्रोग्राम के योग्य त्रुटि है:\n\n%s" -#: theming.py:310 +#: config.py:633 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:651 config.py:659 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:339 +#: config.py:665 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:686 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "Section %s" +msgstr "भाग %s" -#: theming.py:347 +#: config.py:687 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +msgid "Fig. %s" +msgstr "चित्र %s" -#: theming.py:366 +#: config.py:688 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +msgid "Table %s" +msgstr "सारणी %s" -#: config.py:309 +#: config.py:689 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "विन्यास निर्देशिका में कोन्फ़.पाय #conf.py# फाइल (%s) नहीं है " +msgid "Listing %s" +msgstr "सूची %s" -#: config.py:318 -msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "" - -#: config.py:341 -#, python-format -msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" -msgstr "शब्दकोष विन्यास मान %r की उल्लंघन नहीं किया जा सकता, अनदेखा किया गया (प्रत्येक अवयव का मान रखने के लिए %r का उपयोग करें)" - -#: config.py:350 -#, python-format -msgid "invalid number %r for config value %r, ignoring" -msgstr "विन्यास मान %r के लिए अमान्य संख्या %r, अनदेखा किया गया" - -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" -msgstr "असमर्थित प्रकार के साथ विन्यास मान %r का उल्लंघन नहीं किया जा सकता, अनदेखा किया गया" - -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" -msgstr "आरोहण में अज्ञात विन्यास मान %r, अनदेखा किया गया" - -#: config.py:430 -#, python-format -msgid "No such config value: %r" -msgstr "" - -#: config.py:453 -#, python-format -msgid "Config value %r already present" -msgstr "विन्यास मान %r पहले से विद्यमान है" - -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" -msgstr "" - -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" -msgstr "आपकी विन्यास फाइल में रचनाक्रम की त्रुटि है: %s\n" - -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "विन्यास फाइल (अथवा इसके द्वारा आयातित प्रभागों) द्वारा sys.exit() का आह्वान किया गया" - -#: config.py:537 -#, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" -msgstr "विन्यास फाइल में प्रोग्राम के योग्य त्रुटि है:\n\n%s" - -#: config.py:560 -#, python-format -msgid "Failed to convert %r to a set or tuple" -msgstr "" - -#: config.py:581 config.py:586 -#, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." -msgstr "" - -#: config.py:589 -#, python-format -msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." -msgstr "" - -#: config.py:608 -#, python-format -msgid "Section %s" -msgstr "भाग %s" - -#: config.py:609 -#, python-format -msgid "Fig. %s" -msgstr "चित्र %s" - -#: config.py:610 -#, python-format -msgid "Table %s" -msgstr "सारणी %s" - -#: config.py:611 -#, python-format -msgid "Listing %s" -msgstr "सूची %s" - -#: config.py:718 +#: config.py:798 +#, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "`{name}` विन्यास मान, {candidates} में से एक होना चाहिए, परन्तु `{current}` दिया गया है." -#: config.py:742 +#: config.py:829 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "विन्यास मान `{name}' का प्रकार `{current.__name__}' है; अपेक्षित {permitted}." -#: config.py:755 +#: config.py:846 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "विन्यास मान `{name}' का प्रकार `{current.__name__}' है; मानक `{default.__name__}' का प्रयोग किया गया." -#: config.py:766 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r नहीं मिला, अनदेखा किया गया." -#: config.py:778 +#: config.py:878 msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." -msgstr "" - -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" -msgstr "%s (निर्देश)" - -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" -msgstr "%s (भूमिका)" - -#: domains/rst.py:224 -msgid "directive" -msgstr "निर्देश" - -#: domains/rst.py:225 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:226 -msgid "role" -msgstr "भूमिका" - -#: domains/rst.py:248 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (अंतर्निर्मित फंक्शन)" - -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s विधि)" - -#: domains/javascript.py:168 -#, python-format -msgid "%s() (class)" -msgstr "%s() (वर्ग)" - -#: domains/javascript.py:170 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (वैश्विक चरपद अथवा अचर) " - -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s लक्षण)" - -#: domains/javascript.py:255 -msgid "Arguments" -msgstr "चर " - -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" -msgstr "देता है " - -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" -msgstr "प्रदत्त " - -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" -msgstr "प्रदत्त प्रकार " - -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" -msgstr "%s (प्रभाग)" - -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" -msgstr "फंक्शन" - -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" -msgstr "पद्धति" - -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" -msgstr "वर्ग" - -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" -msgstr "आंकड़े " - -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" -msgstr "लक्षण" - -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "प्रभाग" - -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "संस्करण %s से अलग " - -#: domains/changeset.py:27 -#, python-format -msgid "Deprecated since version %s" -msgstr "संस्करण %s से प्रतिबंधित " - -#: domains/changeset.py:28 -#, python-format -msgid "Removed in version %s" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "प्रतिरूप उद्धरण %s, दूसरी प्रतिकृति %s में है " - -#: domains/citation.py:84 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "उद्धरण [%s] सन्दर्भ कहीं नहीं है" - -#: domains/math.py:63 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "समीकरण का प्रतिरूप शीर्षक %s, दूसरी प्रतिकृति %s में है " - -#: domains/math.py:119 writers/latex.py:2479 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "अमान्य math_eqref_format: %r" - -#: environment/__init__.py:81 +#: environment/__init__.py:89 msgid "new config" msgstr "नव विन्यास" -#: environment/__init__.py:82 +#: environment/__init__.py:90 msgid "config changed" msgstr "विन्यास परिवर्तित" -#: environment/__init__.py:83 +#: environment/__init__.py:91 msgid "extensions changed" msgstr "आयाम परिवर्तित" -#: environment/__init__.py:249 +#: environment/__init__.py:261 msgid "build environment version not current" msgstr "निर्मित परिस्थिति वर्तमान संस्करण नहीं है " -#: environment/__init__.py:251 +#: environment/__init__.py:263 msgid "source directory has changed" msgstr "स्रोत निर्देशिका परिवर्तित हो चुकी है " -#: environment/__init__.py:313 +#: environment/__init__.py:350 #, python-format msgid "The configuration has changed (1 option: %r)" msgstr "" -#: environment/__init__.py:318 +#: environment/__init__.py:355 #, python-format msgid "The configuration has changed (%d options: %s)" msgstr "" -#: environment/__init__.py:324 +#: environment/__init__.py:361 #, python-format msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: environment/__init__.py:366 +#: environment/__init__.py:404 msgid "" "This environment is incompatible with the selected builder, please choose " "another doctree directory." msgstr "यह परिस्थिति चुने गए निर्माता से मेल नहीं खाती, कृपया दूसरी डॉक-ट्री निर्देशिका चुनें. " -#: environment/__init__.py:473 +#: environment/__init__.py:518 #, python-format msgid "Failed to scan documents in %s: %r" msgstr "लेखपत्रों के पर्यवेक्षण में असफलता %s: %r" -#: environment/__init__.py:626 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format msgid "Domain %r is not registered" msgstr "अधिकारक्षेत्र %r पंजीकृत नहीं है" -#: environment/__init__.py:777 +#: environment/__init__.py:811 msgid "document isn't included in any toctree" msgstr "लेखपत्र किसी भी विषय-सूची-संरचना में सम्मिलित नहीं है" -#: environment/__init__.py:810 +#: environment/__init__.py:922 msgid "self referenced toctree found. Ignored." msgstr "स्वयं-संदर्भित विषय-सूची-संरचना मिली है. उपेक्षा की गई." -#: environment/__init__.py:839 +#: environment/__init__.py:952 #, python-format msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" @@ -861,470 +720,912 @@ msgstr "सलाह" msgid "Warning" msgstr "चेतावनी" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" -msgstr "प्रभागों में से डॉक्-स्ट्रिंग स्वतःसम्मिलित करें" +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "टेक्सइन्फो पृष्ठ %(outdir)sमें हैं." -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" -msgstr "डॉक्-टेस्ट अंशों के निर्देश भाग की स्वतः जाँच करें" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nइन्हें मेकइन्फो से चलाने के लिए उस निर्देशिका में 'मेक' आदेश चलायें\n(ऐसा स्वचालित रूप से करने के लिए यहाँ 'मेक इन्फो' आदेश का उपयोग करें)" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" -msgstr "भिन्न परियोजनाओं के स्फिंक्स प्रलेखों का पारस्परिक सम्बन्ध करने दें" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "कोई \"texinfo_documents\" विन्यास मान नहीं मिला; कोई लेखपत्र नहीं लिखे जाएंगे" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "वह \"शेष\" प्रविष्टियाँ लिख लें, जिन्हें निर्माण के समय दिखाया या छिपाया जा सकता है" +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "\"texinfo_documents\" विन्यास मान अज्ञात लेखपत्र %s का सन्दर्भ है" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" -msgstr "प्रलेखों की व्याप्ति की जाँच करें" +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" +msgstr "%s की प्रक्रिया जारी" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" -msgstr "गणित को सम्मिलित करें, पी.एन.जी. अथवा एस.वी.जी. में चित्रित" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "लिखा जा रहा है" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" -msgstr "गणित को सम्मिलित करें, दिग्दर्शक में मैथजाक्स #MathJax# द्वारा प्रदर्शित" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "सन्दर्भों का विश्लेषण किया जा रहा है..." -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" -msgstr "विन्यास मान के आधार पर सामिग्री का सशर्त समावेश" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (में" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" -msgstr "पाइथन विषयवस्तुओं के प्रलेखों के स्रोत निर्देश की कड़ी जोड़ें" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "चित्रों की प्रतिलिपि बनाई जा रही है..." -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "गिटहब GitHub पर लेखपत्र प्रकाशित करने के लिए .nojekyll फाइल बनाएं" +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" +msgstr "चित्रलेख फाइल %r की प्रतिलिपि नहीं की जा सकी:%s" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." -msgstr "कृपया एक मान्य पथ का नाम दें" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "टेक्सइन्फो सहायक फाइलों की प्रतिलिपि की जा रही है..." -#: cmd/quickstart.py:110 -msgid "Please enter some text." -msgstr "कृपया कुछ वाक्यांश लिखें" +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" +msgstr "मेकफाइल लिखने में त्रुटि: %s" -#: cmd/quickstart.py:117 +#: builders/manpage.py:37 #, python-format -msgid "Please enter one of %s." -msgstr "%s में से एक चुनें" +msgid "The manual pages are in %(outdir)s." +msgstr "पुस्तिका पृष्ठ %(outdir)sमें हैं." -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." -msgstr "कृपया हाँ के लिए 'y' अथवा नहीं के लिए 'n' मात्र दें. " +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "कोई \"man_pages\" विन्यास मान नहीं मिला; कोई नियमावली पृष्ठ नहीं लिखे जाएंगे" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "कृपया एक फाइल प्रत्यय दें, जैसे कि '.rst' अथवा '.txt'." +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" विन्यास मान अज्ञात लेखपत्र %s का सन्दर्भ है" -#: cmd/quickstart.py:215 +#: builders/singlehtml.py:35 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "स्फिंक्स %s त्वरित-आरंभ #sphinx-quickstart# उपकरण के लिए अभिनन्दन" +msgid "The HTML page is in %(outdir)s." +msgstr "एच.टी.एम्.एल. पृष्ठ %(outdir)sमें है." + +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "एकल लेखपत्र संकलन किया जा रहा है" + +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "अतिरिक्त फाइलों को लिखा जा रहा है" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "मूक निर्माता से किसी फाइलों की उत्पत्ति नहीं होती." + +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." +msgstr "सन्देश सूचीपत्र %(outdir)s में हैं." + +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " +msgstr "निर्माणाधीन [%s]: " + +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" +msgstr "%d नमूना फाइलों के लक्ष्य" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "नमूनों को पढ़ा जा रहा है..." + +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "सन्देश सूचीपत्रों को लिखा जा रहा है..." + +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "उपरोक्त परिणाम में अथवा %(outdir)s /output.txt में त्रुटियाँ ढूँढने का प्रयास " + +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" +msgstr "खंडित कड़ी: %s (%s)" + +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" +msgstr "लक्ष्य '%s' नहीं मिला" + +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" + +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "" + +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." +msgstr "ई-पब फाइल %(outdir)s में है." + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "" + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_language\" (अथवा \"language\") खाली नहीं होना चाहिए" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_uid\" एक्स.एम्.एल. नाम होना चाहिए" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_title\" (अथवा \"html_title\") खाली नहीं होना चाहिए" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_author\" खाली नहीं होना चाहिए" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_contributor\" खाली नहीं होना चाहिए" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_description\" खाली नहीं होना चाहिए" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_publisher\" खाली नहीं होना चाहिए" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_copyright\" (अथवा \"copyright\") खाली नहीं होना चाहिए" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"epub_identifier\" खाली नहीं होना चाहिए" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "ई-पब3 के लिए विन्यास मान \"version\" खाली नहीं होना चाहिए" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "अमान्य css_file: %r, उपेक्षित" + +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "एक्स.एम्.एल. लेखपत्र %(outdir)s में हैं." + +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "%s फाइल लिखने में व्यवधान: %s" + +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "छद्म-एक्स.एम्.एल. लेखपत्र %(outdir)s में हैं." + +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" +msgstr "विषय-सूची प्रविष्टि की प्रतिलिपि पायी गई: %s" -#: cmd/quickstart.py:219 +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "चित्रलेख फाइल %r नहीं पढ़ा जा सका: इसकी प्रतिलिपि बनाई जा रही है" + +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "चित्रलेख फाइल %r नहीं लिखा जा सका:%s" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "पिलो नहीं मिला - चित्र फाइलों की प्रतिलिपि बनाई जा रही है" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "%s के लिए अज्ञात लेख प्रकार, छोड़ा गया" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "%s फाइल को लिखा जा रहा है..." + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "पाठ फाइल %(outdir)s में हैं." + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "%s निर्माता के लिए योग्य चित्र नहीं मिला: %s.(%s)" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "%s निर्माता के लिए योग्य चित्र नहीं मिला: %s" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "निर्माणाधीन [mo]: " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "परिणाम लिखा जा रहा है..." + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "सभी %d पी.ओ. फाइलें" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "निर्दिष्ट %d पी.ओ. फाइलों के लक्ष्य" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "%d पी.ओ. फाइलों के लक्ष्य कालातीत है" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "सभी स्रोत फाइलें" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "कृपया निम्न विन्यासों के लिए मान प्रदान करें (मानक मान, यदि कोष्ठक में हो तो, स्वीकार करने के लिए एन्टर दबाएँ)" +"file %r given on command line is not under the source directory, ignoring" +msgstr "आदेश स्थान में दी गयी फाइल %r स्रोत निर्देशिका में नहीं है, उपेक्षा की जा रही है" -#: cmd/quickstart.py:227 +#: builders/__init__.py:353 #, python-format -msgid "Selected root path: %s" -msgstr "चुना हुआ बुनियादी तथा मूल स्थान: %s" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." -msgstr "आलेख का बुनियादी स्थान बताएं." +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "%d स्रोत फाइलें आदेश स्थान में दी " -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" -msgstr "आलेख का बुनियादी पथ" +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "%d फाइलों के लक्ष्य कालातीत है" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "त्रुटि: एक मौजूदा conf.py फाइल दिए गए मूल पथ में प्राप्त हुई है." +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "अप्रचलित फाइलों को चिन्हित किया जा रहा है..." -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "स्फिंक्स-त्वरित-आरम्भ #sphinx-quickstart# मौजूदा स्फिंक्स परियोजनाओं पर पुनर्लेखन नहीं करेगा." +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "%d मिला" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "कृपया एक नया मूल पथ दें (अथवा निकलने हेतु सिर्फ एन्टर #Enter# कर दें)" +#: builders/__init__.py:417 +msgid "none found" +msgstr "एक भी नहीं मिला" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "स्थिति को परिरक्षित किया जा रहा है" -#: cmd/quickstart.py:258 +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "संगतता की जांच की जा रही है" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "कोई प्रयोजन कालातीत नहीं है" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "स्थिति का नवीनीकरण किया जा रहा है" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "%s जोड़ा गया, %s बदला गया, %s हटाया गया" + +#: builders/__init__.py:536 +#, python-format msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "आपके पास Sphinx द्वारा बनाई गई फाइलों को सहेजने के लिए दो विकल्प हैं.\nया तो आप मूल स्थान में ही \"_build\" निर्देशिका प्रयोग करें, अथवा\nमूल पथ में भिन्न \"स्रोत\" और \"build\" निर्देशिका प्रयोग करें." +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" -msgstr "विभिन्न स्रोत और निर्माण डायरेक्टरी (y/n)" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" -#: cmd/quickstart.py:271 +#: builders/__init__.py:556 +#, python-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "मूल निर्देशिका के अन्दर, दो और निर्देशिका बनाई जाएँगी;\nपरिवर्धित एच.टी.एम्.एल. नमूनों के लिए \"_templates\" और परिवर्धित रुपपत्रों और अन्य स्थैतिक फाइलों के लिए \"_static\"\nआप अधोरेखा के स्थान पर अन्य पूर्व-प्रत्यय (जैसे कि \".\") का प्रयोग कर सकते हैं." +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" -msgstr "नमूने और स्थैतिक डायरेक्टरी के लिए पूर्व-प्रत्यय" +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "स्रोतों को पढ़ा जा रहा है..." + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "लेखन के लिए शेष लेखपत्र: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "लेखपत्र बनाए जा रहे हैं" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "संक्षिप्त विवरण फाइल %(outdir)s में है." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "%s संस्करण में कोई परिवर्तन नहीं हैं." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "सार फाइल को लिखा जा रहा है..." -#: cmd/quickstart.py:282 +#: builders/changes.py:79 +msgid "Builtins" +msgstr "अंतर्निर्मित" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "प्रभाग स्तर" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "स्रोत फाइलों की प्रतिलिपि बनाई जा रही है..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "परिवर्तन सूची बनाने के लिए %r को नहीं पढ़ा जा सका" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "अमान्य रेगएक्स #regex# %r, %s में " + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "प्रभाग %s का आयत नहीं किया जा सका: %s" + +#: ext/coverage.py:148 +#, python-format msgid "" -"The project name will occur in several places in the built documentation." -msgstr "परियोजना का नाम बनाये गए प्रपत्रों में बहुत से स्थानों पर प्रयुक्त होगा." +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" -msgstr "परियोजना का नाम" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" -msgstr "लेखक(कों) का नाम" +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "अमान्य रेगएक्स #regex# %r, coverage_c_regexes में " + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" -#: cmd/quickstart.py:293 +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format 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" -"just set both to the same value." +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" -msgstr "परियोजना संस्करण" +#: ext/todo.py:61 +msgid "Todo" +msgstr "अपूर्ण " -#: cmd/quickstart.py:303 -msgid "Project release" -msgstr "परियोजना आवृत्ति" +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "अपूर्ण प्रविष्टि मिली: %s " + +#: ext/todo.py:152 +msgid "<>" +msgstr "<<मूल प्रविष्टि>>" -#: cmd/quickstart.py:308 +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<<मूल प्रविष्टि>> %s, पंक्ति %d में उपस्थित है.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "मौलिक प्रविष्टि" + +#: ext/imgconverter.py:44 +#, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" "\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "यदि प्रलेखों को अंग्रेजी के अलावा अन्य किसी भाषा में लिखा जाना है,\nतो यहाँ पर आप भाषा का कूटशब्द दे सकते हैं. स्फिंक्स तदपुरांत,\nजो वाक्यांश बनाता है उसे उस भाषा में अनुवादित करेगा.\n\nमान्य भाषा कूटशब्द सूची यहाँ पर देखें\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." - -#: cmd/quickstart.py:317 -msgid "Project language" -msgstr "परियोजना की भाषा" +"Traceback: %s" +msgstr "" -#: cmd/quickstart.py:324 +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "परिवर्तक त्रुटि के साथ बहार आ गया:\n[stderr]\n%r\n[stdout]\n%r" + +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" -msgstr "स्रोत फाइल का प्रत्यय" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "ग्राफविज़ निर्देश में दोनों मापदंड, विषय-वस्तु और फाइल का नाम, नहीं हो सकते" + +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" +msgstr "बाहरी ग्राफविज़ फाइल %r नहीं मिली अथवा पढने में असफलता मिली" + +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "विषय-वस्तु के बिना ग्राफविज़ निर्देश की उपेक्षा की जा रही है. " -#: cmd/quickstart.py:334 +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" +msgstr "" + +#: ext/graphviz.py:328 +#, python-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "डॉट निर्देश %r नहीं चलाया जा सकता (ग्राफविज़ परिणाम के लिए आवश्यक), ग्राफविज़_डॉट मान की जांच करें" + +#: ext/graphviz.py:339 +#, python-format +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "डॉट त्रुटि के साथ बहार आ गया:\n[stderr]\n%r\n[stdout]\n%r" + +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "डॉट ने किसी परिणाम फाइल का नहीं बनाया:\n[stderr]\n%r\n[stdout]\n%r" + +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" -msgstr "आपने मुख्य लेखपत्र का नाम दें (प्रत्यय रहित)" +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "डॉट निर्देश %r: %s" + +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "[graph: %s]" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[graph]" + +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "लाटेक्स आदेश %r नहीं चलाया जा सकता (गणित दिखाने के लिए आवश्यक). आई.एम्.जी.मैथ_लाटेक्स मान की जाँच करें" + +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s आदेश %r नहीं चलाया जा सकता (गणित दिखाने के लिए आवश्यक). imgmath_%s मान की जाँच करें" + +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "लाटेक्स दिखाएँ %r: %s" -#: cmd/quickstart.py:352 +#: ext/imgmath.py:362 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "त्रुटि: मुख्य फाइल %s चुने हुए मूल पथ में पहले से उपलब्ध है." +msgid "inline latex %r: %s" +msgstr "पंक्तिबद्ध लाटेक्स %r: %s" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "स्फिंक्स-त्वरित-आरम्भ मौजूदा फाइलों पर पुनर्लेखन नहीं करेगा." +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "कृपया एक नया फाइल नाम दें, अथवा मौजूदा फाइल का पुनर्नामकरण करें और एन्टर दबाएँ" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "'%s' विकल्प में अनुपस्थित '+' या '-'." -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "इनमें से कौन सा स्फिंक्स आयाम प्रयोग करना है, इंगित करें:" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "'%s' एक मान्य विकल्प नहीं है." -#: cmd/quickstart.py:381 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "टिप्पणी: imgmath और mathjax एक साथ समर्थ नहीं हो सकते. imgmath को अचिन्हित कर दिया गया है." +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' एक मान्य पाईवर्शन #pyversion# विकल्प नहीं है. " -#: cmd/quickstart.py:391 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "अमान्य टेस्टकोड का प्रकार " -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" -msgstr "मेकफाइल बनाएं? (हाँ के लिए y/ ना के लिए n)" +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "स्रोतों में डॉकटेस्ट्स की जांच पूरी, परिणाम %(outdir)s/output.txt में देखें. " -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" -msgstr "विंडोज़ कमांड फाइल बनाएं? (हाँ के लिए y/ ना के लिए n)" +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" +msgstr "%s भाग में %s पर कोई निर्देश / परिणाम नहीं: %s" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: ext/doctest.py:568 #, python-format -msgid "Creating file %s." -msgstr "फाइल बनाई जा रही है ...%s" +msgid "ignoring invalid doctest code: %r" +msgstr "अमान्य डॉकटेस्ट निर्देश की उपेक्षा की जा रही है: %r" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: ext/autosectionlabel.py:52 #, python-format -msgid "File %s already exists, skipping." -msgstr "फाइल %s पहले से उपस्थित है, छोड़ दी गई." +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." -msgstr "समाप्त: एक प्रारंभिक निर्देशिका का ढांचा बना दिया गया है." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "प्रतिरूप शीर्षक %s, दूसरी प्रतिकृति %s में है " -#: cmd/quickstart.py:504 +#: ext/duration.py:47 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: cmd/quickstart.py:512 +#: ext/duration.py:117 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"====================== total reading duration ==========================" msgstr "" -#: cmd/quickstart.py:515 +#: ext/duration.py:124 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: cmd/quickstart.py:522 +#: ext/duration.py:136 msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +"====================== slowest reading durations =======================" msgstr "" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nस्फिंक्स परियोजना के लिए आवश्यक फाइल बनाएं.\n\nस्फिंक्स-त्वरित-आरम्भ एक संवादपूर्ण उपकरण है जो आपकी परियोजना के \nबारे में कुछ प्रश्न पूछकर पूरी प्रलेखों की निर्देशिका और नमूना मेकफाइल \nबना देता है जिसे स्फिंक्स-बिल्ड में प्रयोग किया जा सकता है.\n" - -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" -msgstr "शांत ढंग " - -#: cmd/quickstart.py:587 -msgid "project root" -msgstr "" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[स्रोत]" -#: cmd/quickstart.py:590 -msgid "Structure options" -msgstr "ढांचे के विकल्प" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "प्रभाग निर्देश विशिष्ट रूप से दर्शाया जा रहा है..." -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" -msgstr "यदि निर्दिष्ट हो तो विभिन्न स्रोत और निर्माण पथ" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" -msgstr "" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "प्रभाग निर्देश" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." -msgstr "_templates आदि में बिंदु का बदलाव" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s का स्रोत निर्देश

" -#: cmd/quickstart.py:611 -msgid "Project basic options" -msgstr "परोयोजना के मूलभूत विकल्प" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "सिंहावलोकन: प्रभाग निर्देश" -#: cmd/quickstart.py:613 -msgid "project name" -msgstr "परियोजना का नाम" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

सभी प्रभाग जिनके लिए निर्देश उपलब्ध है

" -#: cmd/quickstart.py:616 -msgid "author names" -msgstr "लेखकों के नाम" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "प्रतिरूप उद्धरण %s, दूसरी प्रतिकृति %s में है " -#: cmd/quickstart.py:623 -msgid "version of project" -msgstr "परियोजना का संस्करण" +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "उद्धरण [%s] सन्दर्भ कहीं नहीं है" -#: cmd/quickstart.py:630 -msgid "release of project" -msgstr "परियोजना की आवृत्ति" +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "समीकरण का प्रतिरूप शीर्षक %s, दूसरी प्रतिकृति %s में है " -#: cmd/quickstart.py:637 -msgid "document language" -msgstr "लेखपत्र की भाषा" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "अमान्य math_eqref_format: %r" -#: cmd/quickstart.py:640 -msgid "source file suffix" -msgstr "स्रोत फाइल का प्रत्यय" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (अंतर्निर्मित फंक्शन)" -#: cmd/quickstart.py:643 -msgid "master document name" -msgstr "मुख्य लेखपत्र का नाम" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s विधि)" -#: cmd/quickstart.py:646 -msgid "use epub" -msgstr "ई-पब प्रयोग करें" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (वर्ग)" -#: cmd/quickstart.py:649 -msgid "Extension options" -msgstr "आयाम के विकल्प" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "%s (वैश्विक चरपद अथवा अचर) " -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "enable %s extension" -msgstr "आयाम %s सक्षम करें" +msgid "%s (%s attribute)" +msgstr "%s (%s लक्षण)" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" -msgstr "स्वेच्छित आयाम सक्षम करें" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "चर " -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" -msgstr "मेकफाइल और बैचफाइल का सर्जन" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "देता है " -#: cmd/quickstart.py:672 -msgid "create makefile" -msgstr "मेकफाइल बनाएं" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "प्रदत्त " -#: cmd/quickstart.py:678 -msgid "do not create makefile" -msgstr "मेकफाइल नहीं बनाएं" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "प्रदत्त प्रकार " -#: cmd/quickstart.py:685 -msgid "create batchfile" -msgstr "बैचफाइल बनाएं" +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" +msgstr "%s (प्रभाग)" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" -msgstr "बैचफाइल नहीं बनाएं" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "फंक्शन" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" -msgstr "Makefile/make.bat के लिए make-mode का प्रयोग करें" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "पद्धति" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" -msgstr "परियोजना नमूनावृत्ति" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "वर्ग" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" -msgstr "नमूना फाइलों के लिए नमूना निर्देशिका" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "आंकड़े " -#: cmd/quickstart.py:716 -msgid "define a template variable" -msgstr "नमूना चर-पद का निरूपण करें" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "लक्षण" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"शांत\" निर्दिष्ट है, परन्तु कोई भी \"परियोजना\" अथवा \"लेखक\" निर्दिष्ट नहीं है." +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "प्रभाग" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "त्रुटि: दिया गया पथ निर्देशिका नहीं है, अथवा स्फिंक्स फाइलें पहले से उपस्थित हैं." +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "स्फिंक्स-त्वरित-आरम्भ केवल एक खाली निर्देशिका में कार्यशील हो सकती है. कृपया एक नया मूल पथ निर्दिष्ट करें." +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "%s (निर्देश)" -#: cmd/quickstart.py:795 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "Invalid template variable: %s" -msgstr "अमान्य नमूना चर-पद: %s" +msgid ":%s: (directive option)" +msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" -msgstr "निर्माण के दौरान अपवाद घटित हुआ है, दोष-मुक्तक चालू किया जा रहा " +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (भूमिका)" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" -msgstr "कार्य खंडित " +#: domains/rst.py:234 +msgid "directive" +msgstr "निर्देश" -#: cmd/build.py:67 -msgid "reST markup error:" -msgstr "रेस्ट सुसज्जा त्रुटि:" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "" + +#: domains/rst.py:236 +msgid "role" +msgstr "भूमिका" + +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" -msgstr "कूटलेखन त्रुटि:" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "संस्करण %s से अलग " -#: cmd/build.py:78 cmd/build.py:108 +#: domains/changeset.py:34 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." -msgstr "यदि आप इस विषय को कूटलिपिकारों के संज्ञान में लाना चाहते है तो पिछला पूरा विवरण %s में सहेज दिया गया है" - -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" -msgstr "पुनरावर्तन त्रुटि:" +msgid "Deprecated since version %s" +msgstr "संस्करण %s से प्रतिबंधित " -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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.:" +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" -msgstr "अपवाद घटित:" - -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "यदि यह प्रयोक्ता की गलती थी तो कृपया इसको भी रिपोर्ट करें ताकि अगली बार गलती होने पर अधिक अर्थपूर्ण सन्देश दिया जा सके." - -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" -msgstr "त्रुटि की सूचना पर उपस्थित पंजिका में दर्ज की जा सकती है. धन्यवाद!" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "कार्य संख्या एक धनात्मक संख्या होनी चाहिए" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1343,675 +1644,589 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "अभिलेख की स्रोत फाइलों का पथ" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "परिणाम निर्देशिका का पथ" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "सामान्य विकल्प" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "सभी फाइलें लिखें (मानक: केवल नई और परिवर्तित फाइलें लिखें)" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "सहेजी गयी परिस्थिति का प्रयोग न करें, सदैव सभी फाइलों को पढ़ें" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "विन्यास फाइल के एक मान का उल्लंघन करें " -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "एच.टी.एम्.एल. के नमूने में राशि प्रेषित करें" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "नाम-पत्र परिभाषित करें: केवल नाम-पत्र वाले खण्डों का समावेश करें" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "प्रदर्शित परिणामों के विकल्प" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "शब्द-प्रयोग बढ़ाएं (पुनरावृत्ति की जा सकती है) " -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "एस.टी.डी आउट #stdout# पर कोई परिणाम नहीं, एस.टी.डी एरर #stderr# पर चेतावनियाँ " -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "कुछ भी निर्गमित नहीं, यहाँ तक कि चेतावनी भी नहीं" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "रंगीन परिणाम ही दिखाएँ (मानक: स्वतः अनुमानित)" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "रंगीन परिणाम नहीं दिखाएँ (मानक: स्वतः अनुमानित)" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "चेतावनियाँ (और त्रुटियाँ) दी गई फाइल में लिखें" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "चेतावनियों को अशुद्धि मानें" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "अपवाद होने पर पूरा विलोम-अनुगमन देखें" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "अपवाद होने पर पी.डी.बी. चलाएं" -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "-a विकल्प और फाइल के नामों को सम्मिलित नहीं किया जा सकता" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "-D विकल्प का मान नाम = मान के रूप में होना आवश्यक है" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "-A विकल्प का मान नाम = मान के रूप में होना आवश्यक है" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "मूक निर्माता से किसी फाइलों की उत्पत्ति नहीं होती." - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "उपरोक्त परिणाम में अथवा %(outdir)s /output.txt में त्रुटियाँ ढूँढने का प्रयास " +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "प्रभागों में से डॉक्-स्ट्रिंग स्वतःसम्मिलित करें" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" -msgstr "खंडित कड़ी: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "डॉक्-टेस्ट अंशों के निर्देश भाग की स्वतः जाँच करें" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" -msgstr "लक्ष्य '%s' नहीं मिला" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "भिन्न परियोजनाओं के स्फिंक्स प्रलेखों का पारस्परिक सम्बन्ध करने दें" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "वह \"शेष\" प्रविष्टियाँ लिख लें, जिन्हें निर्माण के समय दिखाया या छिपाया जा सकता है" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "एच.टी.एम्.एल. पृष्ठ %(outdir)sमें है." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "प्रलेखों की व्याप्ति की जाँच करें" -#: builders/singlehtml.py:173 -msgid "assembling single document" -msgstr "एकल लेखपत्र संकलन किया जा रहा है" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "गणित को सम्मिलित करें, पी.एन.जी. अथवा एस.वी.जी. में चित्रित" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" -msgstr "लिखा जा रहा है" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "गणित को सम्मिलित करें, दिग्दर्शक में मैथजाक्स #MathJax# द्वारा प्रदर्शित" -#: builders/singlehtml.py:191 -msgid "writing additional files" -msgstr "अतिरिक्त फाइलों को लिखा जा रहा है" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "विन्यास मान के आधार पर सामिग्री का सशर्त समावेश" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "पुस्तिका पृष्ठ %(outdir)sमें हैं." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "पाइथन विषयवस्तुओं के प्रलेखों के स्रोत निर्देश की कड़ी जोड़ें" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "कोई \"man_pages\" विन्यास मान नहीं मिला; कोई नियमावली पृष्ठ नहीं लिखे जाएंगे" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "गिटहब GitHub पर लेखपत्र प्रकाशित करने के लिए .nojekyll फाइल बनाएं" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" विन्यास मान अज्ञात लेखपत्र %s का सन्दर्भ है" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "कृपया एक मान्य पथ का नाम दें" -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "पाठ फाइल %(outdir)s में हैं." +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "कृपया कुछ वाक्यांश लिखें" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" -msgstr "%s फाइल लिखने में व्यवधान: %s" +msgid "Please enter one of %s." +msgstr "%s में से एक चुनें" -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "एक्स.एम्.एल. लेखपत्र %(outdir)s में हैं." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "कृपया हाँ के लिए 'y' अथवा नहीं के लिए 'n' मात्र दें. " -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "छद्म-एक्स.एम्.एल. लेखपत्र %(outdir)s में हैं." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "कृपया एक फाइल प्रत्यय दें, जैसे कि '.rst' अथवा '.txt'." -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "टेक्सइन्फो पृष्ठ %(outdir)sमें हैं." +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "स्फिंक्स %s त्वरित-आरंभ #sphinx-quickstart# उपकरण के लिए अभिनन्दन" -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nइन्हें मेकइन्फो से चलाने के लिए उस निर्देशिका में 'मेक' आदेश चलायें\n(ऐसा स्वचालित रूप से करने के लिए यहाँ 'मेक इन्फो' आदेश का उपयोग करें)" - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "कोई \"texinfo_documents\" विन्यास मान नहीं मिला; कोई लेखपत्र नहीं लिखे जाएंगे" - -#: builders/texinfo.py:90 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "\"texinfo_documents\" विन्यास मान अज्ञात लेखपत्र %s का सन्दर्भ है" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "कृपया निम्न विन्यासों के लिए मान प्रदान करें (मानक मान, यदि कोष्ठक में हो तो, स्वीकार करने के लिए एन्टर दबाएँ)" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 +#: cmd/quickstart.py:242 #, python-format -msgid "processing %s" -msgstr "%s की प्रक्रिया जारी" - -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." -msgstr "सन्दर्भों का विश्लेषण किया जा रहा है..." - -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr " (में" +msgid "Selected root path: %s" +msgstr "चुना हुआ बुनियादी तथा मूल स्थान: %s" -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "चित्रों की प्रतिलिपि बनाई जा रही है..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "आलेख का बुनियादी स्थान बताएं." -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "चित्रलेख फाइल %r की प्रतिलिपि नहीं की जा सकी:%s" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "आलेख का बुनियादी पथ" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "टेक्सइन्फो सहायक फाइलों की प्रतिलिपि की जा रही है..." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "त्रुटि: एक मौजूदा conf.py फाइल दिए गए मूल पथ में प्राप्त हुई है." -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "मेकफाइल लिखने में त्रुटि: %s" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "स्फिंक्स-त्वरित-आरम्भ #sphinx-quickstart# मौजूदा स्फिंक्स परियोजनाओं पर पुनर्लेखन नहीं करेगा." -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "सन्देश सूचीपत्र %(outdir)s में हैं." +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "कृपया एक नया मूल पथ दें (अथवा निकलने हेतु सिर्फ एन्टर #Enter# कर दें)" -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " -msgstr "निर्माणाधीन [%s]: " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "आपके पास Sphinx द्वारा बनाई गई फाइलों को सहेजने के लिए दो विकल्प हैं.\nया तो आप मूल स्थान में ही \"_build\" निर्देशिका प्रयोग करें, अथवा\nमूल पथ में भिन्न \"स्रोत\" और \"build\" निर्देशिका प्रयोग करें." -#: builders/gettext.py:252 -#, python-format -msgid "targets for %d template files" -msgstr "%d नमूना फाइलों के लक्ष्य" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "विभिन्न स्रोत और निर्माण डायरेक्टरी (y/n)" -#: builders/gettext.py:257 -msgid "reading templates... " -msgstr "नमूनों को पढ़ा जा रहा है..." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "मूल निर्देशिका के अन्दर, दो और निर्देशिका बनाई जाएँगी;\nपरिवर्धित एच.टी.एम्.एल. नमूनों के लिए \"_templates\" और परिवर्धित रुपपत्रों और अन्य स्थैतिक फाइलों के लिए \"_static\"\nआप अधोरेखा के स्थान पर अन्य पूर्व-प्रत्यय (जैसे कि \".\") का प्रयोग कर सकते हैं." -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "सन्देश सूचीपत्रों को लिखा जा रहा है..." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "नमूने और स्थैतिक डायरेक्टरी के लिए पूर्व-प्रत्यय" -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "%s निर्माता के लिए योग्य चित्र नहीं मिला: %s.(%s)" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "परियोजना का नाम बनाये गए प्रपत्रों में बहुत से स्थानों पर प्रयुक्त होगा." -#: builders/__init__.py:220 -#, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "%s निर्माता के लिए योग्य चित्र नहीं मिला: %s" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "परियोजना का नाम" -#: builders/__init__.py:243 -msgid "building [mo]: " -msgstr "निर्माणाधीन [mo]: " +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "लेखक(कों) का नाम" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " -msgstr "परिणाम लिखा जा रहा है..." +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "" -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" -msgstr "सभी %d पी.ओ. फाइलें" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "परियोजना संस्करण" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "निर्दिष्ट %d पी.ओ. फाइलों के लक्ष्य" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "परियोजना आवृत्ति" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" -msgstr "%d पी.ओ. फाइलों के लक्ष्य कालातीत है" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "यदि प्रलेखों को अंग्रेजी के अलावा अन्य किसी भाषा में लिखा जाना है,\nतो यहाँ पर आप भाषा का कूटशब्द दे सकते हैं. स्फिंक्स तदपुरांत,\nजो वाक्यांश बनाता है उसे उस भाषा में अनुवादित करेगा.\n\nमान्य भाषा कूटशब्द सूची यहाँ पर देखें\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: builders/__init__.py:307 -msgid "all source files" -msgstr "सभी स्रोत फाइलें" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "परियोजना की भाषा" -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " +#: cmd/quickstart.py:340 +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 "" -#: builders/__init__.py:325 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "आदेश स्थान में दी गयी फाइल %r स्रोत निर्देशिका में नहीं है, उपेक्षा की जा रही है" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "स्रोत फाइल का प्रत्यय" -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/__init__.py:351 +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "आपने मुख्य लेखपत्र का नाम दें (प्रत्यय रहित)" + +#: cmd/quickstart.py:368 #, python-format -msgid "%d source files given on command line" -msgstr "%d स्रोत फाइलें आदेश स्थान में दी " +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "त्रुटि: मुख्य फाइल %s चुने हुए मूल पथ में पहले से उपलब्ध है." -#: builders/__init__.py:366 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "%d फाइलों के लक्ष्य कालातीत है" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "स्फिंक्स-त्वरित-आरम्भ मौजूदा फाइलों पर पुनर्लेखन नहीं करेगा." -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " -msgstr "अप्रचलित फाइलों को चिन्हित किया जा रहा है..." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "कृपया एक नया फाइल नाम दें, अथवा मौजूदा फाइल का पुनर्नामकरण करें और एन्टर दबाएँ" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" -msgstr "%d मिला" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "इनमें से कौन सा स्फिंक्स आयाम प्रयोग करना है, इंगित करें:" -#: builders/__init__.py:400 -msgid "none found" -msgstr "एक भी नहीं मिला" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "टिप्पणी: imgmath और mathjax एक साथ समर्थ नहीं हो सकते. imgmath को अचिन्हित कर दिया गया है." -#: builders/__init__.py:407 -msgid "pickling environment" -msgstr "स्थिति को परिरक्षित किया जा रहा है" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" -msgstr "संगतता की जांच की जा रही है" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "मेकफाइल बनाएं? (हाँ के लिए y/ ना के लिए n)" -#: builders/__init__.py:418 -msgid "no targets are out of date." -msgstr "कोई प्रयोजन कालातीत नहीं है" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "विंडोज़ कमांड फाइल बनाएं? (हाँ के लिए y/ ना के लिए n)" -#: builders/__init__.py:458 -msgid "updating environment: " -msgstr "स्थिति का नवीनीकरण किया जा रहा है" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." +msgstr "फाइल बनाई जा रही है ...%s" -#: builders/__init__.py:483 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s जोड़ा गया, %s बदला गया, %s हटाया गया" +msgid "File %s already exists, skipping." +msgstr "फाइल %s पहले से उपस्थित है, छोड़ दी गई." + +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "समाप्त: एक प्रारंभिक निर्देशिका का ढांचा बना दिया गया है." -#: builders/__init__.py:519 +#: cmd/quickstart.py:520 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: builders/__init__.py:528 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: builders/__init__.py:539 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/quickstart.py:538 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " -msgstr "स्रोतों को पढ़ा जा रहा है..." - -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" -msgstr "लेखन के लिए शेष लेखपत्र: %s" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nस्फिंक्स परियोजना के लिए आवश्यक फाइल बनाएं.\n\nस्फिंक्स-त्वरित-आरम्भ एक संवादपूर्ण उपकरण है जो आपकी परियोजना के \nबारे में कुछ प्रश्न पूछकर पूरी प्रलेखों की निर्देशिका और नमूना मेकफाइल \nबना देता है जिसे स्फिंक्स-बिल्ड में प्रयोग किया जा सकता है.\n" -#: builders/__init__.py:711 -msgid "preparing documents" -msgstr "लेखपत्र बनाए जा रहे हैं" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "शांत ढंग " -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "असाधनीय स्रोत अक्षर, \"?\" द्वारा बदले जा रहे हैं: %r" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "ढांचे के विकल्प" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "ई-पब फाइल %(outdir)s में है." +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "यदि निर्दिष्ट हो तो विभिन्न स्रोत और निर्माण पथ" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_language\" (अथवा \"language\") खाली नहीं होना चाहिए" - -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_uid\" एक्स.एम्.एल. नाम होना चाहिए" - -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_title\" (अथवा \"html_title\") खाली नहीं होना चाहिए" - -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_author\" खाली नहीं होना चाहिए" - -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_contributor\" खाली नहीं होना चाहिए" - -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_description\" खाली नहीं होना चाहिए" - -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_publisher\" खाली नहीं होना चाहिए" - -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_copyright\" (अथवा \"copyright\") खाली नहीं होना चाहिए" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "_templates आदि में बिंदु का बदलाव" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"epub_identifier\" खाली नहीं होना चाहिए" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "परोयोजना के मूलभूत विकल्प" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "ई-पब3 के लिए विन्यास मान \"version\" खाली नहीं होना चाहिए" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "परियोजना का नाम" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "अमान्य css_file: %r, उपेक्षित" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "लेखकों के नाम" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "विषय-सूची प्रविष्टि की प्रतिलिपि पायी गई: %s" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "परियोजना का संस्करण" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "चित्रलेख फाइल %r नहीं पढ़ा जा सका: इसकी प्रतिलिपि बनाई जा रही है" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "परियोजना की आवृत्ति" -#: builders/_epub_base.py:465 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "चित्रलेख फाइल %r नहीं लिखा जा सका:%s" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "लेखपत्र की भाषा" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" -msgstr "पिलो नहीं मिला - चित्र फाइलों की प्रतिलिपि बनाई जा रही है" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "स्रोत फाइल का प्रत्यय" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." -msgstr "" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "मुख्य लेखपत्र का नाम" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." -msgstr "" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "ई-पब प्रयोग करें" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "आयाम के विकल्प" -#: builders/_epub_base.py:590 +#: cmd/quickstart.py:671 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "%s के लिए अज्ञात लेख प्रकार, छोड़ा गया" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +msgid "enable %s extension" +msgstr "आयाम %s सक्षम करें" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." -msgstr "" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "स्वेच्छित आयाम सक्षम करें" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." -msgstr "%s फाइल को लिखा जा रहा है..." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "मेकफाइल और बैचफाइल का सर्जन" -#: builders/changes.py:33 -#, python-format -msgid "The overview file is in %(outdir)s." -msgstr "संक्षिप्त विवरण फाइल %(outdir)s में है." +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "मेकफाइल बनाएं" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." -msgstr "%s संस्करण में कोई परिवर्तन नहीं हैं." +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "मेकफाइल नहीं बनाएं" -#: builders/changes.py:62 -msgid "writing summary file..." -msgstr "सार फाइल को लिखा जा रहा है..." +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "बैचफाइल बनाएं" -#: builders/changes.py:74 -msgid "Builtins" -msgstr "अंतर्निर्मित" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "बैचफाइल नहीं बनाएं" -#: builders/changes.py:76 -msgid "Module level" -msgstr "प्रभाग स्तर" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "Makefile/make.bat के लिए make-mode का प्रयोग करें" -#: builders/changes.py:128 -msgid "copying source files..." -msgstr "स्रोत फाइलों की प्रतिलिपि बनाई जा रही है..." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "परियोजना नमूनावृत्ति" -#: builders/changes.py:137 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "परिवर्तन सूची बनाने के लिए %r को नहीं पढ़ा जा सका" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "नमूना फाइलों के लिए नमूना निर्देशिका" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" -msgstr "मानक भूमिका '%s' नहीं मिली" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "नमूना चर-पद का निरूपण करें" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"शांत\" निर्दिष्ट है, परन्तु कोई भी \"परियोजना\" अथवा \"लेखक\" निर्दिष्ट नहीं है." -#: util/osutil.py:130 -#, python-format +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "त्रुटि: दिया गया पथ निर्देशिका नहीं है, अथवा स्फिंक्स फाइलें पहले से उपस्थित हैं." -#: util/nodes.py:419 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "विषय-सूची-संरचना में अविद्यमान फाइल %r का सन्दर्भ है" - -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "केवल निर्देशक भाव का मूल्यांकन करते समय अपवाद: %s" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "स्फिंक्स-त्वरित-आरम्भ केवल एक खाली निर्देशिका में कार्यशील हो सकती है. कृपया एक नया मूल पथ निर्दिष्ट करें." -#: util/fileutil.py:74 +#: cmd/quickstart.py:810 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +msgid "Invalid template variable: %s" +msgstr "अमान्य नमूना चर-पद: %s" -#: util/fileutil.py:89 +#: directives/other.py:119 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:170 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +msgid "toctree contains reference to excluded document %r" +msgstr "विषय-सूची-संरचना में छोड़े गए लेखपत्र %r का सन्दर्भ है" -#: util/inventory.py:185 +#: directives/other.py:156 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +msgid "toctree contains reference to nonexisting document %r" +msgstr "विषय-सूची-संरचना में अविद्यमान लेखपत्र %r का सन्दर्भ है" -#: util/docutils.py:284 +#: directives/other.py:169 #, python-format -msgid "unknown directive or role name: %s:%s" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/docutils.py:747 -#, python-format -msgid "unknown node type: %r" -msgstr "अज्ञात बिंदु प्रकार: %r" - -#: util/display.py:81 -msgid "skipped" -msgstr "छोड़ा " +#: directives/other.py:203 +msgid "Section author: " +msgstr "भाग के लेखक:" -#: util/display.py:86 -msgid "failed" -msgstr "असफल" +#: directives/other.py:205 +msgid "Module author: " +msgstr "प्रभाग लेखक:" -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" -msgstr "अशुद्धि पाठन: %s, %s" +#: directives/other.py:207 +msgid "Code author: " +msgstr "निर्देश लेखक:" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" -msgstr "अशुद्धि लेखन: %s, %s" +#: directives/other.py:209 +msgid "Author: " +msgstr "लेखक:" -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/i18n.py:230 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "अमान्य तिथि प्रारूप. यदि आप सीधे परिणाम में दर्शाना चाहते हैं तो अक्षरमाला को एकाकी उद्धरण चिन्ह द्वारा चिन्हित करें: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" -#: directives/patches.py:66 +#: directives/patches.py:70 msgid "" "\":file:\" option for csv-table directive now recognizes an absolute path as" " a relative path from source directory. Please update your document." @@ -2026,7 +2241,7 @@ msgstr "" msgid "Invalid caption: %s" msgstr "अमान्य शीर्षक: %s" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format msgid "line number spec is out of range(1-%d): %r" msgstr "पंक्ति संख्या का ब्यौरा सीमा से बाहर है (1-%d): %r" @@ -2041,7 +2256,7 @@ msgstr "दोनों \"%s\" और \"%s\" विकल्पों का प msgid "Include file '%s' not found or reading it failed" msgstr "" -#: directives/code.py:234 +#: directives/code.py:235 #, python-format msgid "" "Encoding %r used for reading included file '%s' seems to be wrong, try " @@ -2062,2056 +2277,2032 @@ msgstr "\"lineno-match\" का प्रयोग बिना जुडी \"l msgid "Line spec %r: no lines pulled from include file %r" msgstr "लाइन ब्यौरा %r: सम्मिलित फाइल %r से कोई लाइन नहीं ली जा सकीं" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "" - -#: directives/other.py:155 environment/adapters/toctree.py:355 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "विषय-सूची-संरचना में छोड़े गए लेखपत्र %r का सन्दर्भ है" - -#: directives/other.py:158 environment/adapters/toctree.py:359 -#, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "विषय-सूची-संरचना में अविद्यमान लेखपत्र %r का सन्दर्भ है" - -#: directives/other.py:171 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:204 -msgid "Section author: " -msgstr "भाग के लेखक:" - -#: directives/other.py:206 -msgid "Module author: " -msgstr "प्रभाग लेखक:" - -#: directives/other.py:208 -msgid "Code author: " -msgstr "निर्देश लेखक:" - -#: directives/other.py:210 -msgid "Author: " -msgstr "लेखक:" - -#: directives/other.py:284 -msgid ".. acks content is not a list" -msgstr "" - -#: directives/other.py:309 -msgid ".. hlist content is not a list" -msgstr "" - -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" - -#: _cli/__init__.py:75 -msgid "{0} [OPTIONS] []" -msgstr "" - -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" - -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" - -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" - -#: _cli/__init__.py:112 _cli/__init__.py:183 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" - -#: _cli/__init__.py:172 -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:182 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:194 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:202 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:206 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:213 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:221 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:228 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:234 -msgid "" -msgstr "" - -#: _cli/__init__.py:265 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format msgid "%b %d, %Y" msgstr "%b %d, %Y" -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "4 पंक्तिबद्ध सूचियाँ मिलीं. यह आपके द्वारा उपयोग किए गए आयाम की त्रुटि हो सकती है: %r" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "पाद-टिप्पणी [%s] का कोई सन्दर्भ नहीं है." - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "पाद-टिप्पणी [#] सन्दर्भ कहीं नहीं है" - -#: transforms/i18n.py:228 transforms/i18n.py:303 -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "अनुवादित संदेश में असंगत पाद-टिप्पणी के प्रसंग. मूल: {0}, अनुवादित: {1}" - -#: transforms/i18n.py:273 -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "अनुवादित संदेश में असंगत प्रसंग. मूल: {0}, अनुवादित: {1}" - -#: transforms/i18n.py:323 -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "अनुवादित संदेश में असंगत उद्धरण के प्रसंग. मूल: {0}, अनुवादित: {1}" - -#: transforms/i18n.py:345 -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "अनुवादित संदेश में असंगत शब्द के प्रसंग. मूल: {0}, अनुवादित: {1}" - -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" -msgstr "[स्रोत]" - -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "अनुक्रमणिका" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 -#, python-format +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "परिवर्तक त्रुटि के साथ बहार आ गया:\n[stderr]\n%r\n[stdout]\n%r" - -#: ext/imgconverter.py:68 -#, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " -msgstr "प्रभाग निर्देश विशिष्ट रूप से दर्शाया जा रहा है..." - -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "[docs]" - -#: ext/viewcode.py:306 -msgid "Module code" -msgstr "प्रभाग निर्देश" - -#: ext/viewcode.py:312 -#, python-format -msgid "

Source code for %s

" -msgstr "

%s का स्रोत निर्देश

" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "पाया गया शीर्ष बिंदु किसी भाग, प्रसंग, तालिका, विषय-प्रबोध अथवा पार्श्व-स्थान में नहीं है" -#: ext/viewcode.py:338 -msgid "Overview: module code" -msgstr "सिंहावलोकन: प्रभाग निर्देश" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "पाद टिप्पणियां" -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" -msgstr "

सभी प्रभाग जिनके लिए निर्देश उपलब्ध है

" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "शीर्षक रेखाचित्र के भीतर नहीं है" -#: ext/coverage.py:47 +#: writers/texinfo.py:1303 #, python-format -msgid "invalid regex %r in %s" -msgstr "अमान्य रेगएक्स #regex# %r, %s में " +msgid "unimplemented node type: %r" +msgstr "अकार्यान्वित बिंदु प्रकार: %r" -#: ext/coverage.py:134 ext/coverage.py:280 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "module %s could not be imported: %s" -msgstr "प्रभाग %s का आयत नहीं किया जा सका: %s" +msgid "[image: %s]" +msgstr "[चित्र: %s]" -#: ext/coverage.py:141 -#, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[चित्र]" -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: ext/coverage.py:163 +#: writers/html5.py:431 #, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." -msgstr "स्रोतों की व्यापकता की जांच पूरी, परिणाम %(outdir)spython.txt में देखें. " +msgid "numfig_format is not defined for %s" +msgstr "%s के लिए नमफिग_फॉर्मेट नहीं बताया गया है" -#: ext/coverage.py:177 +#: writers/html5.py:441 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "अमान्य रेगएक्स #regex# %r, coverage_c_regexes में " +msgid "Any IDs not assigned for %s node" +msgstr "%s बिंदु के लिए कोई पहचान-चिन्ह नहीं दिया गया" + +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: ext/coverage.py:245 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: ext/coverage.py:429 -#, python-format -msgid "undocumented python function: %s :: %s" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: ext/coverage.py:445 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "unsupported rubric heading level: %s" msgstr "" -#: ext/coverage.py:458 -#, python-format -msgid "undocumented python method: %s :: %s :: %s" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: ext/todo.py:71 -msgid "Todo" -msgstr "अपूर्ण " +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: ext/todo.py:104 -#, python-format -msgid "TODO entry found: %s" -msgstr "अपूर्ण प्रविष्टि मिली: %s " +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: ext/todo.py:163 -msgid "<>" -msgstr "<<मूल प्रविष्टि>>" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "चित्र का आकार नहीं मिल सका. :scale: विकल्प की उपेक्षा की जा रही है." -#: ext/todo.py:165 +#: writers/latex.py:386 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<<मूल प्रविष्टि>> %s, पंक्ति %d में उपस्थित है.)" - -#: ext/todo.py:175 -msgid "original entry" -msgstr "मौलिक प्रविष्टि" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "अज्ञात %r उच्चतमस्तर_विभाजन #toplevel_sectioning# %r वर्ग के लिए" -#: ext/extlinks.py:82 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +msgid "no Babel option known for language %r" +msgstr "%r भाषा के लिए कोई बाबेल विकल्प नहीं " -#: ext/doctest.py:115 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "'%s' विकल्प में अनुपस्थित '+' या '-'." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "अत्याधिक अधिकतम गहराई # :maxdepth: #, उपेक्षित किया गया." -#: ext/doctest.py:120 +#: writers/latex.py:616 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' एक मान्य विकल्प नहीं है." +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: ext/doctest.py:134 -#, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' एक मान्य पाईवर्शन #pyversion# विकल्प नहीं है. " +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "लेखपत्र का शीर्षक एकल पाठ बिंदु नहीं है" -#: ext/doctest.py:220 -msgid "invalid TestCode type" -msgstr "अमान्य टेस्टकोड का प्रकार " +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "दोनों तालिका-स्तंभ और :चौड़ाई: विकल्प दिए गए हैं. :चौड़ाई: मान की उपेक्षा की जाएगी." -#: ext/doctest.py:281 +#: writers/latex.py:1228 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "स्रोतों में डॉकटेस्ट्स की जांच पूरी, परिणाम %(outdir)s/output.txt में देखें. " +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: ext/doctest.py:434 +#: writers/latex.py:1615 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "%s भाग में %s पर कोई निर्देश / परिणाम नहीं: %s" +msgid "dimension unit %s is invalid. Ignored." +msgstr "परिमाण मात्रक %s अमान्य है. उपेक्षा की जाएगी." -#: ext/doctest.py:522 +#: writers/latex.py:1950 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "अमान्य डॉकटेस्ट निर्देश की उपेक्षा की जा रही है: %r" +msgid "unknown index entry type %s found" +msgstr "अनुक्रमणिका की प्रविष्टि का प्रकार %s मिला" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "ग्राफविज़ निर्देश में दोनों मापदंड, विषय-वस्तु और फाइल का नाम, नहीं हो सकते" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "बाहरी ग्राफविज़ फाइल %r नहीं मिली अथवा पढने में असफलता मिली" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "विषय-वस्तु के बिना ग्राफविज़ निर्देश की उपेक्षा की जा रही है. " +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: ext/graphviz.py:268 -#, python-format -msgid "graphviz_dot executable path must be set! %r" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: ext/graphviz.py:303 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "डॉट निर्देश %r नहीं चलाया जा सकता (ग्राफविज़ परिणाम के लिए आवश्यक), ग्राफविज़_डॉट मान की जांच करें" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" -#: ext/graphviz.py:310 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "डॉट त्रुटि के साथ बहार आ गया:\n[stderr]\n%r\n[stdout]\n%r" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: ext/graphviz.py:313 -#, python-format +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "डॉट ने किसी परिणाम फाइल का नहीं बनाया:\n[stderr]\n%r\n[stdout]\n%r" - -#: ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" -msgstr "ग्राफविज़_आउटपुट_फॉर्मेट का 'पी.एन.जी', 'एस.वी.जी.', होना आवश्यक है, पर यह %r है" - -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 -#, python-format -msgid "dot code %r: %s" -msgstr "डॉट निर्देश %r: %s" - -#: ext/graphviz.py:436 ext/graphviz.py:444 -#, python-format -msgid "[graph: %s]" -msgstr "[graph: %s]" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "[graph]" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: ext/apidoc.py:85 -#, python-format -msgid "Would create file %s." -msgstr "%s फाइल बन जाएगी." +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\n में पाइथन प्रभाग और पैकेज की पुनरावर्तित खोज करें और\nस्वतःप्रभाग निर्देश द्वारा में प्रति पैकेज एक रेस्ट #reST# फाइल बनाएं.\n\n फाइल और/ अथवा निर्देशिका स्वरुप हो सकते हैं\nजो निर्माण प्रकिया में छोड़ दिए जाएंगे.\n\nनोट: सामान्यतया यह स्क्रिप्ट किसी पहले से बनाई गई फाइल पर पुनर्लेखन नहीं करती." +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: ext/apidoc.py:392 -msgid "path to module to document" -msgstr "प्रभाग से लेखपत्र का पथ" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: ext/apidoc.py:396 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "fnmatch-style फाइल और/ अथवा निर्देशिका स्वरुप जो निर्माण प्रक्रिया से छोड़ने हैं" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: ext/apidoc.py:407 -msgid "directory to place all output" -msgstr "सभी परिणामों को सहेजने के लिए निर्देशिका" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "विषय-सूची में दिखाए जाने वाले उपप्रभागों की अधिकतम गहराई (मानक: 4)" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: ext/apidoc.py:429 -msgid "overwrite existing files" -msgstr "मौजूदा फाइलों पर पुनर्लेखन करें" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: ext/apidoc.py:437 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "सांकेतिक कड़ियों का अनुसरण करें. कलेक्टिव.रेसिपी.ऑमलेट के साथ प्रभावशाली. " +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "अनुवादित संदेश में असंगत पाद-टिप्पणी के प्रसंग. मूल: {0}, अनुवादित: {1}" -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "फाइलों को बनाए बिना स्क्रिप्ट चलाएं " +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "अनुवादित संदेश में असंगत प्रसंग. मूल: {0}, अनुवादित: {1}" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "प्रत्येक प्रभाग के आलेख उसके अपने पृष्ठ में रखें" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "अनुवादित संदेश में असंगत उद्धरण के प्रसंग. मूल: {0}, अनुवादित: {1}" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" -msgstr "\"_private\" प्रभाग को सम्मिलित करें " +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "अनुवादित संदेश में असंगत शब्द के प्रसंग. मूल: {0}, अनुवादित: {1}" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "विषय-सूची की फाइल का नाम (मानक: प्रभाग) " +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" -msgstr "विषय-सूची की फाइल न बनाएं " +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: ext/apidoc.py:481 +#: transforms/__init__.py:258 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "प्रभाग/पैकेज पैकेजों का शीर्षक न बनाएं (उदाहरणार्थ, जब डॉकस्ट्रिंग्स में यह पहले से हों) " +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "4 पंक्तिबद्ध सूचियाँ मिलीं. यह आपके द्वारा उपयोग किए गए आयाम की त्रुटि हो सकती है: %r" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" -msgstr " मुख्य प्रभाग के आलेख को उपप्रभाग के आलेख से पहले रखें" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "पाद-टिप्पणी [%s] का कोई सन्दर्भ नहीं है." -#: ext/apidoc.py:498 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "प्रभाग पथ की व्याख्या 'पी.ई.पी.-0420 निहित नामराशि विवरण' के आधार पर करें " +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" -msgstr "फाइल प्रत्यय (मानक: rst)" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "पाद-टिप्पणी [#] सन्दर्भ कहीं नहीं है" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" -msgstr "स्फिंक्स-त्वरित-आरम्भ के साथ पूर्ण परियोजना उत्पन्न करें " +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" -msgstr "मोड्यूल_पाथ #module_path# को सिस.पाथ #sys.path# में जोड़ें, जब --full दिया जाता है तब इसका प्रयोग होता है " +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "अशुद्धि पाठन: %s, %s" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" -msgstr "परियोजना का नाम (मानक: मूल प्रभाग का नाम) " +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "अशुद्धि लेखन: %s, %s" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" -msgstr "परियोजना लेखक(गण), जब --full दिया जाता है तब इसका प्रयोग होता है " +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" + +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" + +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "अमान्य तिथि प्रारूप. यदि आप सीधे परिणाम में दर्शाना चाहते हैं तो अक्षरमाला को एकाकी उद्धरण चिन्ह द्वारा चिन्हित करें: %s" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" -msgstr "परियोजना संस्करण, जब --full दिया जाता है तब इसका प्रयोग होता है " +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "परियोजना आवृत्ति, जब --full दिया जाता है तब इसका प्रयोग होता है " +#: util/display.py:82 +msgid "skipped" +msgstr "छोड़ा " -#: ext/apidoc.py:564 -msgid "extension options" -msgstr "आयाम विकल्प " +#: util/display.py:87 +msgid "failed" +msgstr "असफल" -#: ext/apidoc.py:638 +#: util/docutils.py:325 #, python-format -msgid "%s is not a directory." -msgstr "%s एक निर्देशिका नहीं है. " +msgid "unknown directive name: %s" +msgstr "" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 +#: util/docutils.py:361 #, python-format -msgid "Failed to remove %s: %s" +msgid "unknown role name: %s" msgstr "" -#: ext/autosectionlabel.py:48 +#: util/docutils.py:805 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "unknown node type: %r" +msgstr "अज्ञात बिंदु प्रकार: %r" + +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 +#: util/fileutil.py:89 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "प्रतिरूप शीर्षक %s, दूसरी प्रतिकृति %s में है " +msgid "Writing evaluated template result to %s" +msgstr "" -#: ext/duration.py:85 +#: util/docfields.py:103 +#, python-format msgid "" -"====================== slowest reading durations =======================" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: ext/imgmath.py:159 +#: util/rst.py:73 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "लाटेक्स आदेश %r नहीं चलाया जा सकता (गणित दिखाने के लिए आवश्यक). आई.एम्.जी.मैथ_लाटेक्स मान की जाँच करें" +msgid "default role %s not found" +msgstr "मानक भूमिका '%s' नहीं मिली" -#: ext/imgmath.py:174 +#: util/nodes.py:462 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s आदेश %r नहीं चलाया जा सकता (गणित दिखाने के लिए आवश्यक). imgmath_%s मान की जाँच करें" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: ext/imgmath.py:328 +#: util/nodes.py:523 #, python-format -msgid "display latex %r: %s" -msgstr "लाटेक्स दिखाएँ %r: %s" +msgid "toctree contains ref to nonexisting file %r" +msgstr "विषय-सूची-संरचना में अविद्यमान फाइल %r का सन्दर्भ है" -#: ext/imgmath.py:362 +#: util/nodes.py:739 #, python-format -msgid "inline latex %r: %s" -msgstr "पंक्तिबद्ध लाटेक्स %r: %s" +msgid "exception while evaluating only directive expression: %s" +msgstr "केवल निर्देशक भाव का मूल्यांकन करते समय अपवाद: %s" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" -msgstr "पाद टिप्पणियां" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "पिछले पृष्ठ से जारी" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "अगले पृष्ठ पर जारी" + +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "अकारादि-क्रमहीन " + +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "संकेत " + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "संख्याएं " -#: writers/manpage.py:309 writers/text.py:936 +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "पृष्ठ" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "आवृत्ति" + +#: transforms/post_transforms/images.py:79 #, python-format -msgid "[image: %s]" -msgstr "[चित्र: %s]" +msgid "Could not fetch remote image: %s [%s]" +msgstr "दूरस्थ चित्र नहीं लाया जा सका: %s [%s]" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[चित्र]" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "दूरस्थ चित्र नहीं लाया जा सका: %s [%d]" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "अज्ञात चित्र प्रारूप: %s..." + +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: writers/html5.py:415 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "numfig_format is not defined for %s" -msgstr "%s के लिए नमफिग_फॉर्मेट नहीं बताया गया है" +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "किसी भी पारस्परिक-सन्दर्भ के लिए एक से अधिक लक्ष्य मिले %r: %s संभव" -#: writers/html5.py:427 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "%s बिंदु के लिए कोई पहचान-चिन्ह नहीं दिया गया" - -#: writers/html5.py:482 -msgid "Link to this term" +msgid "%s:%s reference target not found: %s" msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "कार्य खंडित " + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 -#, python-format -msgid "unsupported rubric heading level: %s" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: writers/html5.py:613 -msgid "Link to this code" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "चित्र का आकार नहीं मिल सका. :scale: विकल्प की उपेक्षा की जा रही है." +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "अनुक्रमणिका" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" -#: writers/latex.py:743 writers/texinfo.py:644 +#: _cli/util/errors.py:246 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "पाया गया शीर्ष बिंदु किसी भाग, प्रसंग, तालिका, विषय-प्रबोध अथवा पार्श्व-स्थान में नहीं है" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "यदि यह प्रयोक्ता की गलती थी तो कृपया इसको भी रिपोर्ट करें ताकि अगली बार गलती होने पर अधिक अर्थपूर्ण सन्देश दिया जा सके." -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." -msgstr "शीर्षक रेखाचित्र के भीतर नहीं है" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "किनारे का स्थान घटाएं" -#: writers/texinfo.py:1302 +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "संचालन" + +#: themes/basic/layout.html:115 #, python-format -msgid "unimplemented node type: %r" -msgstr "अकार्यान्वित बिंदु प्रकार: %r" +msgid "Search within %(docstitle)s" +msgstr "%(docstitle)s में खोजें" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "इन लेखपत्रों के बारे में" + +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "खोज" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "सर्वाधिकार" -#: writers/latex.py:360 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "अज्ञात %r उच्चतमस्तर_विभाजन #toplevel_sectioning# %r वर्ग के लिए" +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 +#: themes/basic/layout.html:201 #, python-format -msgid "no Babel option known for language %r" -msgstr "%r भाषा के लिए कोई बाबेल विकल्प नहीं " +msgid "Last updated on %(last_updated)s." +msgstr "अंतिम बार सम्पादित %(last_updated)s." -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." -msgstr "अत्याधिक अधिकतम गहराई # :maxdepth: #, उपेक्षित किया गया." +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "पिछला प्रकरण" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "पिछला अध्याय" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "अगला प्रकरण" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "अगला अध्याय" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "एक पृष्ठ पर पूरी अनुक्रमणिका" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "यह पृष्ठ " + +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "स्रोत दिखाएँ" + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "त्वरित खोज" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "चलिए" + +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "सिंहावलोकन" + +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "नमस्ते! यह है" + +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "आलेख विषय" + +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "अंतिम परिवर्धन" + +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "सूचियाँ और सारणियाँ:" -#: writers/latex.py:590 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "विस्तृत विषय-सूची" -#: writers/latex.py:708 -msgid "document title is not a single Text node" -msgstr "लेखपत्र का शीर्षक एकल पाठ बिंदु नहीं है" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "सभी अनुभागों एवं उप-अनुभागों की सूची" -#: writers/latex.py:1175 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "दोनों तालिका-स्तंभ और :चौड़ाई: विकल्प दिए गए हैं. :चौड़ाई: मान की उपेक्षा की जाएगी." +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "खोज पृष्ठ" -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "परिमाण मात्रक %s अमान्य है. उपेक्षा की जाएगी." +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "इस आलेख में खोजें" -#: writers/latex.py:1931 -#, python-format -msgid "unknown index entry type %s found" -msgstr "अनुक्रमणिका की प्रविष्टि का प्रकार %s मिला" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "सार्वभौमिक प्रभाग सूची" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 -#, python-format -msgid "environment variable; %s" -msgstr "परिस्थिति चर पद; %s" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "सभी प्रभाग तक तुरंत पहुँच" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" -msgstr "" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "सामान्य अनुक्रमाणिका" -#: domains/std/__init__.py:166 -msgid "Type" -msgstr "" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "सभी कार्ययुक्तियां, वर्ग, शब्द" -#: domains/std/__init__.py:176 -msgid "Default" -msgstr "" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "विषय-सूची" -#: domains/std/__init__.py:235 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "अशुद्ध रूप विकल्प विवरण %r, अपेक्षित प्रारूप \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" अथवा \"+opt args\"" +msgid "Search %(docstitle)s" +msgstr " %(docstitle)s में खोजें" -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" -msgstr "" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "अक्षर द्वारा अनुक्रमित पृष्ठ" -#: domains/std/__init__.py:308 -msgid "command line option" -msgstr "" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "बृहदाकार हो सकता है" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" -msgstr "" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "खोज कार्य के लिए जावा स्क्रिप्ट का होना आवश्यक है. कृपया जावा स्क्रिप्ट को शुरू करें." -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" +#: themes/basic/search.html:35 +msgid "search" +msgstr "खोज" -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "पारिभाषिक पद" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "विषय सामिग्री" -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "व्याकरण संकेत " +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "खोज परीणाम " -#: domains/std/__init__.py:604 -msgid "reference label" -msgstr "सन्दर्भ शीर्षक" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "आपके खोज परिणामों में कोई प्रलेख नहीं मिला. कृपया सुनिश्चित करें कि सभी शब्दों की वर्तनी शुद्ध है और आपने यथेष्ट श्रेणियां चुनी हैं." -#: domains/std/__init__.py:607 -msgid "environment variable" -msgstr "परिस्थिति चर पद " +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" -#: domains/std/__init__.py:608 -msgid "program option" -msgstr "प्रोग्राम विकल्प " +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "खोज जारी" -#: domains/std/__init__.py:609 -msgid "document" -msgstr "लेखपत्र" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "खोज की तैयारी" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" -msgstr "प्रभाग सूची" +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr ", में " -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "खोज पृष्ठ" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "खोजे गए जोड़े छिपाएं" -#: domains/std/__init__.py:722 +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." -msgstr "numfig असमर्थ है. :numref: उपेक्षित है." +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "परिवर्तित संस्करण %(version)s — %(docstitle)s" -#: domains/std/__init__.py:940 +#: themes/basic/changes/rstsource.html:5 #, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" -#: domains/std/__init__.py:952 +#: themes/basic/changes/versionchanges.html:17 #, python-format -msgid "the link has no caption: %s" -msgstr "कड़ी का कोई शीर्षक नहीं है: %s" +msgid "Automatically generated list of changes in version %(version)s" +msgstr "संस्करण %(version)s में स्वतः रचित परिवर्तनों की सूची" -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "अमान्य numfig_format: %s (%r)" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "पुस्तकालय में परिवर्तन" -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "अमान्य numfig_format: %s" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "सी ऐ.पी.आई. परिवर्तन" -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "अन्य परिवर्तन" + +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "किनारे का स्थान बढ़ाएं" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "मापदण्ड" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "चर पद " + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "उभारता है " + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (%s प्रभाग में )" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (%s प्रभाग में )" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (अंतर्निर्मित चर पद)" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (अंतर्निर्मित वर्ग)" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (%s वर्ग में)" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s वर्ग विधि) " -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s स्थैतिक विधि)" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "पाइथन प्रभाग सूची" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "प्रभाग" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "अवमानित " -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "अपवाद " -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "वर्ग विधि" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "स्थैतिक पद्धति" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "पारस्परिक-सन्दर्भों के लिए एक से अधिक लक्ष्य मिले %r: %s" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "(अवमानित)" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "मापदण्ड" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "चर पद " +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" -#: domains/python/_object.py:173 -msgid "Raises" -msgstr "उभारता है " +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "नमूना मानदण्ड " -#: domains/c/__init__.py:199 +#: domains/cpp/__init__.py:302 #, python-format -msgid "%s (C %s)" +msgid "%s (C++ %s)" +msgstr "%s (C++ %s)" + +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "" + +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "युग्म" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "सदस्य" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "प्रकार" + +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "अवधारणा " + +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "गणक" + +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "प्रगणक " + +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 -msgid "Return values" +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" -msgstr "सदस्य" - -#: domains/c/__init__.py:680 +#: domains/c/__init__.py:778 msgid "variable" msgstr "चर पद" -#: domains/c/__init__.py:682 +#: domains/c/__init__.py:780 msgid "macro" msgstr "मैक्रो" -#: domains/c/__init__.py:683 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" -msgstr "युग्म" - -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 -msgid "enum" -msgstr "गणक" - -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 -msgid "enumerator" -msgstr "प्रगणक " +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "परिस्थिति चर पद; %s" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "प्रकार" +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 -msgid "function parameter" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" -msgstr "नमूना मानदण्ड " +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "" -#: domains/cpp/__init__.py:277 +#: domains/std/__init__.py:239 #, python-format -msgid "%s (C++ %s)" -msgstr "%s (C++ %s)" +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "अशुद्ध रूप विकल्प विवरण %r, अपेक्षित प्रारूप \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" अथवा \"+opt args\"" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: domains/std/__init__.py:319 #, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +msgid "%s command line option" msgstr "" -#: domains/cpp/__init__.py:862 -msgid "concept" -msgstr "अवधारणा " - -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "विषय सामिग्री" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "विषय-सूची" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "खोज" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "चलिए" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "पारिभाषिक पद" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "स्रोत दिखाएँ" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "व्याकरण संकेत " -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "किनारे का स्थान घटाएं" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "सन्दर्भ शीर्षक" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "संचालन" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "परिस्थिति चर पद " -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "%(docstitle)s में खोजें" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "प्रोग्राम विकल्प " -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "इन लेखपत्रों के बारे में" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "लेखपत्र" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "सर्वाधिकार" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "प्रभाग सूची" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: domains/std/__init__.py:857 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "अंतिम बार सम्पादित %(last_updated)s." +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "numfig असमर्थ है. :numref: उपेक्षित है." -#: themes/basic/layout.html:204 +#: domains/std/__init__.py:1124 #, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: themes/basic/genindex-single.html:26 +#: domains/std/__init__.py:1138 #, python-format -msgid "Index – %(key)s" -msgstr "" +msgid "the link has no caption: %s" +msgstr "कड़ी का कोई शीर्षक नहीं है: %s" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "एक पृष्ठ पर पूरी अनुक्रमणिका" +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" +msgstr "अमान्य numfig_format: %s (%r)" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "अक्षर द्वारा अनुक्रमित पृष्ठ" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "अमान्य numfig_format: %s" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "बृहदाकार हो सकता है" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "" -#: themes/basic/opensearch.xml:4 +#: domains/std/__init__.py:1456 #, python-format -msgid "Search %(docstitle)s" -msgstr " %(docstitle)s में खोजें" +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "यह पृष्ठ " +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "" -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "सिंहावलोकन" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "नमस्ते! यह है" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "आलेख विषय" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "अंतिम परिवर्धन" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "उदाहरण" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "सूचियाँ और सारणियाँ:" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "कुछ उदाहरण" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "विस्तृत विषय-सूची" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "मुख्य शब्दों के चर-पद" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "सभी अनुभागों एवं उप-अनुभागों की सूची" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "टिप्पणियाँ" -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "इस आलेख में खोजें" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "अन्य मापदण्ड" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "सार्वभौमिक प्रभाग सूची" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "सभी प्रभाग तक तुरंत पहुँच" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "सन्दर्भ" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "सामान्य अनुक्रमाणिका" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "चेतावनी देता है" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "सभी कार्ययुक्तियां, वर्ग, शब्द" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "मिलता है" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "त्वरित खोज" +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "खोज कार्य के लिए जावा स्क्रिप्ट का होना आवश्यक है. कृपया जावा स्क्रिप्ट को शुरू करें." +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "आधार: %s" + +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" msgstr "" -#: themes/basic/search.html:35 -msgid "search" -msgstr "खोज" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "पिछला प्रकरण" +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" +msgstr "स्वतः %s (%r) के लिए अमान्य हस्ताक्षर" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "पिछला अध्याय" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "पता नहीं है कि कौन सा प्रभाग स्वतःप्रलेखन %r के लिए आयात करना है (लेखपत्र में \"प्रभाग\" या \"वर्तमान-प्रभाग\" निर्देश रख कर देखें; अथवा स्पष्ट प्रभाग नाम देकर देखें)" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "अगला प्रकरण" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "अगला अध्याय" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "किनारे का स्थान बढ़ाएं" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "स्वतः प्रभाग नाम में \"::\" विवेकहीन है" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" -msgstr "परिवर्तित संस्करण %(version)s — %(docstitle)s" +msgid "Failed to remove %s: %s" +msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "संस्करण %(version)s में स्वतः रचित परिवर्तनों की सूची" +msgid "Would create file %s." +msgstr "%s फाइल बन जाएगी." -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" -msgstr "पुस्तकालय में परिवर्तन" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\n में पाइथन प्रभाग और पैकेज की पुनरावर्तित खोज करें और\nस्वतःप्रभाग निर्देश द्वारा में प्रति पैकेज एक रेस्ट #reST# फाइल बनाएं.\n\n फाइल और/ अथवा निर्देशिका स्वरुप हो सकते हैं\nजो निर्माण प्रकिया में छोड़ दिए जाएंगे.\n\nनोट: सामान्यतया यह स्क्रिप्ट किसी पहले से बनाई गई फाइल पर पुनर्लेखन नहीं करती." -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" -msgstr "सी ऐ.पी.आई. परिवर्तन" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "प्रभाग से लेखपत्र का पथ" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "अन्य परिवर्तन" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "fnmatch-style फाइल और/ अथवा निर्देशिका स्वरुप जो निर्माण प्रक्रिया से छोड़ने हैं" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "सभी परिणामों को सहेजने के लिए निर्देशिका" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "खोजे गए जोड़े छिपाएं" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "विषय-सूची में दिखाए जाने वाले उपप्रभागों की अधिकतम गहराई (मानक: 4)" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "खोज परीणाम " +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "मौजूदा फाइलों पर पुनर्लेखन करें" -#: themes/basic/static/searchtools.js:119 +#: ext/apidoc/_cli.py:91 msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "आपके खोज परिणामों में कोई प्रलेख नहीं मिला. कृपया सुनिश्चित करें कि सभी शब्दों की वर्तनी शुद्ध है और आपने यथेष्ट श्रेणियां चुनी हैं." - -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "सांकेतिक कड़ियों का अनुसरण करें. कलेक्टिव.रेसिपी.ऑमलेट के साथ प्रभावशाली. " -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "खोज जारी" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "फाइलों को बनाए बिना स्क्रिप्ट चलाएं " -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "खोज की तैयारी" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "प्रत्येक प्रभाग के आलेख उसके अपने पृष्ठ में रखें" -#: themes/basic/static/searchtools.js:474 -msgid ", in " -msgstr ", में " +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "\"_private\" प्रभाग को सम्मिलित करें " -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" -msgstr "चित्र फाइल पठनीय नहीं है: %s" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "विषय-सूची की फाइल का नाम (मानक: प्रभाग) " -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" -msgstr "चित्र फाइल %s पठनीय नहीं है: %s" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "विषय-सूची की फाइल न बनाएं " -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" -msgstr "उतारी गई फाइल पठनीय नहीं है: %s" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "प्रभाग/पैकेज पैकेजों का शीर्षक न बनाएं (उदाहरणार्थ, जब डॉकस्ट्रिंग्स में यह पहले से हों) " -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s में पहले से भाग संख्या नियत है (एक के अन्दर दूसरा अंकित विषय-सूची-संरचना)" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr " मुख्य प्रभाग के आलेख को उपप्रभाग के आलेख से पहले रखें" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "पारस्परिक संदर्भित विषय-सूची-संरचना सन्दर्भ पाए गए, उपेक्षा की जा रही है: %s <- %s" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "प्रभाग पथ की व्याख्या 'पी.ई.पी.-0420 निहित नामराशि विवरण' के आधार पर करें " -#: environment/adapters/toctree.py:342 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "विषय-सूची-संरचना में लेखपत्र %r, जिसका कोई शीर्षक नहीं है, का सन्दर्भ है: कोई सम्बन्ध नहीं बनाया जा सकेगा" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "फाइल प्रत्यय (मानक: rst)" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "%s देखिए" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "स्फिंक्स-त्वरित-आरम्भ के साथ पूर्ण परियोजना उत्पन्न करें " -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" -msgstr "%s भी देखिए" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "मोड्यूल_पाथ #module_path# को सिस.पाथ #sys.path# में जोड़ें, जब --full दिया जाता है तब इसका प्रयोग होता है " -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" -msgstr "अनुक्रमणिका की प्रविष्टि का प्रकार अज्ञात %r" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "परियोजना का नाम (मानक: मूल प्रभाग का नाम) " -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "संकेत " +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "परियोजना लेखक(गण), जब --full दिया जाता है तब इसका प्रयोग होता है " -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" -msgstr "" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "परियोजना संस्करण, जब --full दिया जाता है तब इसका प्रयोग होता है " -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "परियोजना आवृत्ति, जब --full दिया जाता है तब इसका प्रयोग होता है " -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "आयाम विकल्प " + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/html/__init__.py:113 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "एच.टी.एम्.एल. पृष्ठ %(outdir)sमें हैं." +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/html/__init__.py:348 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "Failed to read build info file: %r" -msgstr "निर्माण सूचनापत्र फाइल को नहीं पढ़ा जा सका: %r" +msgid "%s is not a directory." +msgstr "%s एक निर्देशिका नहीं है. " -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:382 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "अनुक्रमणिका" - -#: builders/html/__init__.py:560 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Logo of %s" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "आगामी" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "पूर्ववर्ती" - -#: builders/html/__init__.py:695 -msgid "generating indices" -msgstr "अनुक्रमाणिका निर्मित की जा रही है" - -#: builders/html/__init__.py:710 -msgid "writing additional pages" -msgstr "अतिरिक्त पृष्ठ लिखे जा रहे हैं" - -#: builders/html/__init__.py:793 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " -msgstr "उतारी गई फाइलों की प्रतिलिपि बनाई जा रही है..." - -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "उतारी गई फाइलों %r की प्रतिलिपि नहीं की जा सकी: %s" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "cannot copy static file %r" -msgstr "स्थैतिक फाइल %r की प्रतिलिपि नहीं की जा सकी" - -#: builders/html/__init__.py:938 -msgid "copying extra files" -msgstr "अतिरिक्त फाइलों की प्रतिलिपियां बनाये जा रहे है| " +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "cannot copy extra file %r" -msgstr "अतिरिक्त फाइल %r की प्रतिलिपि नहीं की जा सकी" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "Failed to write build info file: %r" -msgstr "निर्माण फाइल को नहीं लिखा जा सका: %r" - -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "खोज अनुक्रमाणिका नहीं चढाई जा सकी, लेकिन सभी लेखपत्र नहीं बनाए जाएंगे: अनुक्रमणिका अपूर्ण रहेगी." +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "पृष्ठ %s html_sidebars में दो आकृतियों से मिलता है: %r %r" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "पृष्ठ %s की प्रस्तुति करते समय यूनिकोड त्रुटि हुई. कृपया यह सुनिश्चित कर लें कि सभी नॉन-असकी #non-ASCII# विहित विन्यास मान यूनिकोड अक्षरों में हैं." +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: builders/html/__init__.py:1222 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "पृष्ठ %s की प्रस्तुति करते समय एक त्रुटि हुई.\nकारण: %r" - -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" -msgstr "विषयवस्तुओं का भंडार बनाया जा रहा है" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:630 #, python-format -msgid "dumping search index in %s" -msgstr "%s में खोज अनुक्रमाणिका भंडार बनाया जा रहा है" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[ऑटोसमरी] अब इसका स्वतःसारांश बना रहा है: %s" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:634 #, python-format -msgid "invalid js_file: %r, ignored" -msgstr "अमान्य js_file: %r, उपेक्षित" - -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "कई math_renderers पंजीकृत हैं. लेकिन कोई math_renderers नहीं चुना गया है." +msgid "[autosummary] writing to %s" +msgstr "[ऑटोसमरी] %s पर लिख रहा है" -#: builders/html/__init__.py:1344 +#: ext/autosummary/generate.py:679 #, python-format -msgid "Unknown math_renderer %r is given." -msgstr "अज्ञात math_renderer %r दिया गया." +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path का प्रविष्टि %r outdir में है| " +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nस्वतः सारांश #autosummary# निर्देश का प्रयोग करते हुए पुर्नसरंचितपाठ बनाता है.\n\nस्फिंक्स-ऑटोजेन स्फिंक्स.एक्स्ट.ऑटोसमरी.जेनेरेट का मुखड़ा है.\nयह प्रदत्त फाइलों में सम्मिलित ऑटो समरी निर्देशों के अनुसार पुर्नसरंचितपाठ बनाता है\n\nस्वतः सारांश #autosummary# निर्देश का प्रारूप स्फिंक्स.एक्स्ट.ऑटोसमरी \nपाइथन प्रभाग में निबंधित है और इसे आप निम्नलिखित माध्यम से पढ़ सकते हैं:\n\n pydoc sphinx.ext.autosummary\n" -#: builders/html/__init__.py:1363 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path प्रविष्टि %r का अस्तित्व नहीं है" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "आर.एस.टी. फाइलें बनाने के लिए स्रोत फाइलें" -#: builders/html/__init__.py:1378 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path का प्रविष्टि %r outdir में है| " +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "सभी परिणाम रखने के लिए निर्देशिका" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path प्रविष्टि %r का अस्तित्व नहीं है" +msgid "default suffix for files (default: %(default)s)" +msgstr "फाइलों के लिए मानक प्रत्यय (मानक: %(default)s)" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:923 #, python-format -msgid "logo file %r does not exist" -msgstr "प्रतीकचिन्ह फाइल %r का अस्तित्व नहीं है" +msgid "custom template directory (default: %(default)s)" +msgstr "पारंपरिक प्रारूप निर्देशिका (मानक: %(default)s)" -#: builders/html/__init__.py:1405 +#: ext/autosummary/generate.py:931 #, python-format -msgid "favicon file %r does not exist" -msgstr "इष्ट चिन्ह फाइल %r का अस्तित्व नहीं है" +msgid "document imported members (default: %(default)s)" +msgstr "लेखपत्र आयातित सदस्य (मानक: %(default)s)" -#: builders/html/__init__.py:1417 +#: ext/autosummary/generate.py:940 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "%s %s documentation" -msgstr "%s %s दिग्दर्शिका" - -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/latex/transforms.py:119 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "लाटेक्स लेखपत्र %(outdir)s में हैं." +msgid "failed to import object %s" +msgstr "विषय-वस्तु के आयात में असफलता: %s" -#: builders/latex/__init__.py:119 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nइन्हें (pdf)latex से चलाने के लिए उस निर्देशिका में 'मेक' आदेश चलायें\n(ऐसा स्वचालित रूप से करने के लिए यहाँ 'make latexpdf' आदेश का उपयोग करें)" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "कोई \"latex_documents\" विन्यास मान नहीं मिला; कोई नहीं लिखे जाएंगे" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "" -#: builders/latex/__init__.py:169 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "\"latex_documents\" विन्यास मान अज्ञात लेखपत्र %s का सन्दर्भ है" +msgid "autosummary_generate: file not found: %s" +msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "आवृत्ति" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "" -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" -msgstr "टेक्स सहायक फाइलों की प्रतिलिपि की जा रही है..." +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" -msgstr "अतिरिक्त फाइलों की प्रतिकृति बनाई जा रही है" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r में कोई \"रूप\" मान नहीं है" +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" -#: builders/latex/theming.py:90 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r में कोई \"%s \" मान नहीं है" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:172 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:324 msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "कुछ चीजों के साथ कुछ समस्या है, लेकिन काम के दूसरे विकल्प उपलब्ध हैं: " -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "किसी भी पारस्परिक-सन्दर्भ के लिए एक से अधिक लक्ष्य मिले %r: %s संभव" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "इन्टरस्फिंक्स सामान स्थानांतरित हो चुका है: %s -> %s" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "दूरस्थ चित्र नहीं लाया जा सका: %s [%s]" +msgid "(in %s)" +msgstr "(%s में)" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "दूरस्थ चित्र नहीं लाया जा सका: %s [%d]" +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Unknown image format: %s..." -msgstr "अज्ञात चित्र प्रारूप: %s..." - -#: ext/napoleon/docstring.py:707 -msgid "Example" -msgstr "उदाहरण" - -#: ext/napoleon/docstring.py:708 -msgid "Examples" -msgstr "कुछ उदाहरण" - -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" -msgstr "मुख्य शब्दों के चर-पद" - -#: ext/napoleon/docstring.py:768 -msgid "Notes" -msgstr "टिप्पणियाँ" - -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" -msgstr "अन्य मापदण्ड" - -#: ext/napoleon/docstring.py:813 -msgid "Receives" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" -msgstr "सन्दर्भ" - -#: ext/napoleon/docstring.py:849 -msgid "Warns" -msgstr "चेतावनी देता है" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" -msgstr "मिलता है" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/intersphinx/_resolve.py:407 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/intersphinx/_resolve.py:561 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_loader.py:193 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "failed to parse name %s" -msgstr "पद-विच्छेदन में असफलता: %s" +msgid "error while formatting arguments for %s: %s" +msgstr "%s के पदों का प्रारूप बनाने में व्यवधान: %s" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "failed to import object %s" -msgstr "विषय-वस्तु के आयात में असफलता: %s" +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:827 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:526 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[ऑटोसमरी] अब इसका स्वतःसारांश बना रहा है: %s" +msgid "signature arguments or return annotation given for automodule %s" +msgstr "स्वतः-प्रभाग %s के लिए हस्ताक्षर पद अथवा प्रत्युत्तरित टिप्पणी प्रदान की गई" -#: ext/autosummary/generate.py:530 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[ऑटोसमरी] %s पर लिख रहा है" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ अंतिम अक्षरमाला होनी चाहिए, न कि %r (%s प्रभाग में) -- __all__ की उपेक्षा की जाएगी" -#: ext/autosummary/generate.py:572 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nस्वतः सारांश #autosummary# निर्देश का प्रयोग करते हुए पुर्नसरंचितपाठ बनाता है.\n\nस्फिंक्स-ऑटोजेन स्फिंक्स.एक्स्ट.ऑटोसमरी.जेनेरेट का मुखड़ा है.\nयह प्रदत्त फाइलों में सम्मिलित ऑटो समरी निर्देशों के अनुसार पुर्नसरंचितपाठ बनाता है\n\nस्वतः सारांश #autosummary# निर्देश का प्रारूप स्फिंक्स.एक्स्ट.ऑटोसमरी \nपाइथन प्रभाग में निबंधित है और इसे आप निम्नलिखित माध्यम से पढ़ सकते हैं:\n\n pydoc sphinx.ext.autosummary\n" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "%s गुण %s वस्तु में अनुपस्थित" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" -msgstr "आर.एस.टी. फाइलें बनाने के लिए स्रोत फाइलें" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" -msgstr "सभी परिणाम रखने के लिए निर्देशिका" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" -#: ext/autosummary/generate.py:805 -#, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "फाइलों के लिए मानक प्रत्यय (मानक: %(default)s)" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" -#: ext/autosummary/generate.py:813 +#: builders/html/__init__.py:114 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "पारंपरिक प्रारूप निर्देशिका (मानक: %(default)s)" +msgid "The HTML pages are in %(outdir)s." +msgstr "एच.टी.एम्.एल. पृष्ठ %(outdir)sमें हैं." -#: ext/autosummary/generate.py:821 +#: builders/html/__init__.py:337 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "लेखपत्र आयातित सदस्य (मानक: %(default)s)" +msgid "Failed to read build info file: %r" +msgstr "निर्माण सूचनापत्र फाइल को नहीं पढ़ा जा सका: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" -#: ext/autosummary/generate.py:829 +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" + +#: builders/html/__init__.py:372 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:47 -#, python-format -msgid "(in %s v%s)" -msgstr "(%s v%s में)" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "अनुक्रमणिका" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:549 #, python-format -msgid "(in %s)" -msgstr "(%s में)" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "आगामी" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "पूर्ववर्ती" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "अनुक्रमाणिका निर्मित की जा रही है" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "अतिरिक्त पृष्ठ लिखे जा रहे हैं" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "उतारी गई फाइलों की प्रतिलिपि बनाई जा रही है..." + +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "उतारी गई फाइलों %r की प्रतिलिपि नहीं की जा सकी: %s" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:367 +#: builders/html/__init__.py:871 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:378 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:585 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "स्थैतिक फाइल %r की प्रतिलिपि नहीं की जा सकी" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "अतिरिक्त फाइलों की प्रतिलिपियां बनाये जा रहे है| " -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "अतिरिक्त फाइल %r की प्रतिलिपि नहीं की जा सकी" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "निर्माण फाइल को नहीं लिखा जा सका: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "खोज अनुक्रमाणिका नहीं चढाई जा सकी, लेकिन सभी लेखपत्र नहीं बनाए जाएंगे: अनुक्रमणिका अपूर्ण रहेगी." -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "पृष्ठ %s html_sidebars में दो आकृतियों से मिलता है: %r %r" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "पृष्ठ %s की प्रस्तुति करते समय यूनिकोड त्रुटि हुई. कृपया यह सुनिश्चित कर लें कि सभी नॉन-असकी #non-ASCII# विहित विन्यास मान यूनिकोड अक्षरों में हैं." -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "पृष्ठ %s की प्रस्तुति करते समय एक त्रुटि हुई.\nकारण: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "विषयवस्तुओं का भंडार बनाया जा रहा है" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "%s में खोज अनुक्रमाणिका भंडार बनाया जा रहा है" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" - -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "कुछ चीजों के साथ कुछ समस्या है, लेकिन काम के दूसरे विकल्प उपलब्ध हैं: " +msgid "invalid js_file: %r, ignored" +msgstr "अमान्य js_file: %r, उपेक्षित" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "कुछ चीजों पहुँचने में असफलता मिली और यह समस्याएँ मिलीं: " +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "कई math_renderers पंजीकृत हैं. लेकिन कोई math_renderers नहीं चुना गया है." -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "इन्टरस्फिंक्स सामान स्थानांतरित हो चुका है: %s -> %s" +msgid "Unknown math_renderer %r is given." +msgstr "अज्ञात math_renderer %r दिया गया." -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1365 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path का प्रविष्टि %r outdir में है| " -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path प्रविष्टि %r का अस्तित्व नहीं है" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path का प्रविष्टि %r outdir में है| " -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "" +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path प्रविष्टि %r का अस्तित्व नहीं है" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "स्वतः %s (%r) के लिए अमान्य हस्ताक्षर" +msgid "logo file %r does not exist" +msgstr "प्रतीकचिन्ह फाइल %r का अस्तित्व नहीं है" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "%s के पदों का प्रारूप बनाने में व्यवधान: %s" +msgid "favicon file %r does not exist" +msgstr "इष्ट चिन्ह फाइल %r का अस्तित्व नहीं है" -#: ext/autodoc/__init__.py:807 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:902 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "पता नहीं है कि कौन सा प्रभाग स्वतःप्रलेखन %r के लिए आयात करना है (लेखपत्र में \"प्रभाग\" या \"वर्तमान-प्रभाग\" निर्देश रख कर देखें; अथवा स्पष्ट प्रभाग नाम देकर देखें)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "" +msgid "%s %s documentation" +msgstr "%s %s दिग्दर्शिका" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" +msgstr "%r में कोई \"रूप\" मान नहीं है" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r में कोई \"%s \" मान नहीं है" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "स्वतः प्रभाग नाम में \"::\" विवेकहीन है" +#: builders/latex/transforms.py:121 +#, python-format +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:487 #, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "स्वतः-प्रभाग %s के लिए हस्ताक्षर पद अथवा प्रत्युत्तरित टिप्पणी प्रदान की गई" +msgid "No footnote was found for given reference node %r" +msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "लाटेक्स लेखपत्र %(outdir)s में हैं." + +#: builders/latex/__init__.py:118 msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ अंतिम अक्षरमाला होनी चाहिए, न कि %r (%s प्रभाग में) -- __all__ की उपेक्षा की जाएगी" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nइन्हें (pdf)latex से चलाने के लिए उस निर्देशिका में 'मेक' आदेश चलायें\n(ऐसा स्वचालित रूप से करने के लिए यहाँ 'make latexpdf' आदेश का उपयोग करें)" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "कोई \"latex_documents\" विन्यास मान नहीं मिला; कोई नहीं लिखे जाएंगे" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:167 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "\"latex_documents\" विन्यास मान अज्ञात लेखपत्र %s का सन्दर्भ है" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "टेक्स सहायक फाइलों की प्रतिलिपि की जा रही है..." -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "अतिरिक्त फाइलों की प्रतिकृति बनाई जा रही है" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:537 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1760 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Bases: %s" -msgstr "आधार: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s में पहले से भाग संख्या नियत है (एक के अन्दर दूसरा अंकित विषय-सूची-संरचना)" -#: ext/autodoc/__init__.py:1774 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" -msgstr "%s गुण %s वस्तु में अनुपस्थित" +msgid "image file not readable: %s" +msgstr "चित्र फाइल पठनीय नहीं है: %s" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" -msgstr "" +msgid "image file %s not readable: %s" +msgstr "चित्र फाइल %s पठनीय नहीं है: %s" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "" +msgid "download file not readable: %s" +msgstr "उतारी गई फाइल पठनीय नहीं है: %s" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "पारस्परिक संदर्भित विषय-सूची-संरचना सन्दर्भ पाए गए, उपेक्षा की जा रही है: %s <- %s" -#: ext/autodoc/__init__.py:2448 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "विषय-सूची-संरचना में लेखपत्र %r, जिसका कोई शीर्षक नहीं है, का सन्दर्भ है: कोई सम्बन्ध नहीं बनाया जा सकेगा" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "पिछले पृष्ठ से जारी" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "अगले पृष्ठ पर जारी" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "अकारादि-क्रमहीन " +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "%s देखिए" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "संख्याएं " +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "%s भी देखिए" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "पृष्ठ" +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "अनुक्रमणिका की प्रविष्टि का प्रकार अज्ञात %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hi_IN/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/hi_IN/LC_MESSAGES/sphinx.mo index 34d4dd389cf90d3e9a116ac7929e8d590fb5f1b5..17958dd31b67acedb4fbe87b464693995512229d 100644 GIT binary patch delta 26 hcmeBT>tfp=%E)V~YiOivV5nedW@TuyS&8ulBLGoj1}p#o delta 26 hcmeBT>tfp=%E)V?YiOivWT{|eWMyo*S&8ulBLGp|1~~u# diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hi_IN/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/hi_IN/LC_MESSAGES/sphinx.po index 6805e5178..e477a36b2 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/hi_IN/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/hi_IN/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -7,153 +7,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Hindi (India) (http://app.transifex.com/sphinx-doc/sphinx-1/language/hi_IN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: hi_IN\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" +msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,1153 +321,1307 @@ msgid "" "explicit" msgstr "" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "" -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "" -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 +#: config.py:351 #, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: project.py:87 +#: config.py:374 #, python-format -msgid "Ignored unreadable document %r." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: highlighting.py:168 +#: config.py:379 #, python-format -msgid "Pygments lexer name %r is not known" +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" msgstr "" -#: highlighting.py:202 +#: config.py:391 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: extension.py:55 +#: config.py:399 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." +msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: extension.py:76 +#: config.py:422 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." +msgid "unknown config value %r in override, ignoring" msgstr "" -#: theming.py:114 +#: config.py:476 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +msgid "No such config value: %r" msgstr "" -#: theming.py:120 +#: config.py:504 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +msgid "Config value %r already present" msgstr "" -#: theming.py:135 +#: config.py:541 #, python-format -msgid "unsupported theme option %r given" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:207 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:228 +#: config.py:599 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:275 +#: config.py:611 #, python-format msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:282 +#: config.py:633 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:310 +#: config.py:651 config.py:659 #, python-format -msgid "no theme configuration file found in %r" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:665 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:339 +#: config.py:686 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "Section %s" msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:687 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "Fig. %s" msgstr "" -#: theming.py:347 +#: config.py:688 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "Table %s" msgstr "" -#: theming.py:366 +#: config.py:689 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "Listing %s" msgstr "" -#: config.py:309 -#, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:318 +#: config.py:829 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." msgstr "" -#: config.py:341 -#, python-format +#: config.py:846 +#, python-brace-format msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." msgstr "" -#: config.py:350 +#: config.py:858 #, python-format -msgid "invalid number %r for config value %r, ignoring" +msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: config.py:430 -#, python-format -msgid "No such config value: %r" +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: config.py:453 -#, python-format -msgid "Config value %r already present" +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: config.py:537 +#: environment/__init__.py:350 #, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: config.py:560 +#: environment/__init__.py:355 #, python-format -msgid "Failed to convert %r to a set or tuple" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: config.py:581 config.py:586 +#: environment/__init__.py:361 #, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: config.py:589 -#, python-format +#: environment/__init__.py:404 msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: config.py:608 +#: environment/__init__.py:518 #, python-format -msgid "Section %s" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: config.py:609 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "Fig. %s" +msgid "Domain %r is not registered" msgstr "" -#: config.py:610 -#, python-format -msgid "Table %s" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: config.py:611 -#, python-format -msgid "Listing %s" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: config.py:718 -msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." +#: environment/__init__.py:952 +#, python-format +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: config.py:742 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: config.py:755 -msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: config.py:766 -#, python-format -msgid "primary_domain %r not found, ignored." +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: config.py:778 -msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: domains/rst.py:224 -msgid "directive" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: domains/rst.py:225 -msgid "directive-option" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: domains/rst.py:226 -msgid "role" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: domains/rst.py:248 +#: builders/texinfo.py:41 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: domains/javascript.py:168 +#: builders/texinfo.py:85 #, python-format -msgid "%s() (class)" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: domains/javascript.py:170 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "%s (global variable or constant)" +msgid "processing %s" msgstr "" -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: domains/javascript.py:255 -msgid "Arguments" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" msgstr "" -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" msgstr "" -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" +#: builders/manpage.py:37 +#, python-format +msgid "The manual pages are in %(outdir)s." msgstr "" -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." msgstr "" -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: domains/changeset.py:26 +#: builders/gettext.py:243 #, python-format -msgid "Changed in version %s" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: domains/changeset.py:27 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "Deprecated since version %s" +msgid "building [%s]: " msgstr "" -#: domains/changeset.py:28 +#: builders/gettext.py:265 #, python-format -msgid "Removed in version %s" +msgid "targets for %d template files" msgstr "" -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: domains/citation.py:84 +#: builders/linkcheck.py:87 #, python-format -msgid "Citation [%s] is not referenced." +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: domains/math.py:63 +#: builders/linkcheck.py:159 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "broken link: %s (%s)" msgstr "" -#: domains/math.py:119 writers/latex.py:2479 +#: builders/linkcheck.py:561 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "Anchor '%s' not found" msgstr "" -#: environment/__init__.py:81 -msgid "new config" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: environment/__init__.py:82 -msgid "config changed" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: environment/__init__.py:83 -msgid "extensions changed" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: environment/__init__.py:249 -msgid "build environment version not current" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: environment/__init__.py:251 -msgid "source directory has changed" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:313 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: environment/__init__.py:318 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:324 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:366 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:473 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:626 -#, python-format -msgid "Domain %r is not registered" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:777 -msgid "document isn't included in any toctree" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:810 -msgid "self referenced toctree found. Ignored." +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: environment/__init__.py:839 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: locale/__init__.py:229 -msgid "Attention" +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" msgstr "" -#: locale/__init__.py:230 -msgid "Caution" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." msgstr "" -#: locale/__init__.py:231 -msgid "Danger" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: locale/__init__.py:232 -msgid "Error" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: locale/__init__.py:233 -msgid "Hint" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: locale/__init__.py:234 -msgid "Important" +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" msgstr "" -#: locale/__init__.py:235 -msgid "Note" +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" msgstr "" -#: locale/__init__.py:236 -msgid "See also" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: locale/__init__.py:237 -msgid "Tip" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: locale/__init__.py:238 -msgid "Warning" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" msgstr "" -#: cmd/quickstart.py:117 +#: builders/__init__.py:314 #, python-format -msgid "Please enter one of %s." +msgid "targets for %d po files that are out of date" msgstr "" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +#: builders/__init__.py:324 +msgid "all source files" msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: cmd/quickstart.py:215 +#: builders/__init__.py:342 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "" +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: cmd/quickstart.py:219 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: cmd/quickstart.py:227 +#: builders/__init__.py:366 #, python-format -msgid "Selected root path: %s" +msgid "%d source files given on command line" msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:282 +#: builders/__init__.py:536 +#, python-format msgid "" -"The project name will occur in several places in the built documentation." +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:293 +#: builders/__init__.py:563 +#, python-format 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" -"just set both to the same value." +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" msgstr "" -#: cmd/quickstart.py:308 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/quickstart.py:324 +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/quickstart.py:334 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/quickstart.py:352 +#: ext/coverage.py:260 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" msgstr "" -#: cmd/quickstart.py:362 +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" msgstr "" -#: cmd/quickstart.py:381 +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + +#: ext/imgconverter.py:44 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/quickstart.py:391 +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: ext/graphviz.py:153 #, python-format -msgid "Creating file %s." +msgid "External Graphviz file %r not found or reading it failed" msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "" + +#: ext/graphviz.py:287 #, python-format -msgid "File %s already exists, skipping." +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" msgstr "" -#: cmd/quickstart.py:504 +#: ext/graphviz.py:339 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:512 +#: ext/graphviz.py:344 +#, python-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "" + +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "" + +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" msgstr "" -#: cmd/quickstart.py:515 +#: ext/imgmath.py:148 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: cmd/quickstart.py:522 +#: ext/imgmath.py:167 +#, python-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" + +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "" + +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" + +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" + +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "" + +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "" + +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" msgstr "" -#: cmd/quickstart.py:557 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "" + +#: ext/doctest.py:297 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: cmd/quickstart.py:646 -msgid "use epub" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "" + +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "" + +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "" + +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "" + +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "" + +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "" + +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "enable %s extension" +msgid "%s (%s attribute)" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: cmd/quickstart.py:795 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "Invalid template variable: %s" +msgid ":%s: (directive option)" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: domains/rst.py:236 +msgid "role" msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: domains/rst.py:262 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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.:" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" msgstr "" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" msgstr "" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" msgstr "" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1339,675 +1640,589 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "" -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "" -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "" -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/singlehtml.py:191 -msgid "writing additional files" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "" - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:90 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:324 builders/texinfo.py:115 -#, python-format -msgid "processing %s" -msgstr "" - -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." -msgstr "" - -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr "" - -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "" - -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "" - -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "" - -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "" - -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "" - -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " -msgstr "" - -#: builders/gettext.py:252 -#, python-format -msgid "targets for %d template files" -msgstr "" - -#: builders/gettext.py:257 -msgid "reading templates... " -msgstr "" - -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "" - -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/__init__.py:220 +#: cmd/quickstart.py:242 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "Selected root path: %s" msgstr "" -#: builders/__init__.py:243 -msgid "building [mo]: " +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/__init__.py:307 -msgid "all source files" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/__init__.py:325 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"file %r given on command line is not under the source directory, ignoring" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/__init__.py:351 -#, python-format -msgid "%d source files given on command line" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/__init__.py:366 -#, python-format -msgid "targets for %d source files that are out of date" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/quickstart.py:340 +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 "" -#: builders/__init__.py:483 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/__init__.py:519 -#, python-format +#: cmd/quickstart.py:350 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/__init__.py:528 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: builders/__init__.py:539 +#: cmd/quickstart.py:368 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "" + +#: cmd/quickstart.py:378 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: builders/epub3.py:83 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "The ePub file is in %(outdir)s." +msgid "Creating file %s." msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: builders/_epub_base.py:465 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/changes.py:33 +#: cmd/quickstart.py:671 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "enable %s extension" msgstr "" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: builders/changes.py:74 -msgid "Builtins" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: builders/changes.py:76 -msgid "Module level" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: builders/changes.py:128 -msgid "copying source files..." +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: builders/changes.py:137 -#, python-format -msgid "could not read %r for changelog creation" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/osutil.py:130 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: util/nodes.py:419 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:74 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/fileutil.py:89 +#: cmd/quickstart.py:810 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:170 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:185 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/docutils.py:284 +#: directives/other.py:156 #, python-format -msgid "unknown directive or role name: %s:%s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/docutils.py:747 +#: directives/other.py:169 #, python-format -msgid "unknown node type: %r" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/display.py:81 -msgid "skipped" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/display.py:86 -msgid "failed" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/i18n.py:230 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: directives/patches.py:66 +#: directives/patches.py:70 msgid "" "\":file:\" option for csv-table directive now recognizes an absolute path as" " a relative path from source directory. Please update your document." @@ -2022,7 +2237,7 @@ msgstr "" msgid "Invalid caption: %s" msgstr "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format msgid "line number spec is out of range(1-%d): %r" msgstr "" @@ -2037,7 +2252,7 @@ msgstr "" msgid "Include file '%s' not found or reading it failed" msgstr "" -#: directives/code.py:234 +#: directives/code.py:235 #, python-format msgid "" "Encoding %r used for reading included file '%s' seems to be wrong, try " @@ -2058,48 +2273,139 @@ msgstr "" msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "" + +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" + +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "" + +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "" + +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" + +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" + +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" + +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 +#: writers/latex.py:386 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "no Babel option known for language %r" msgstr "" -#: directives/other.py:171 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: directives/other.py:204 -msgid "Section author: " +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: directives/other.py:206 -msgid "Module author: " +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: directives/other.py:208 -msgid "Code author: " +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: directives/other.py:210 -msgid "Author: " +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" #: _cli/__init__.py:73 @@ -2107,6 +2413,7 @@ msgid "Usage:" msgstr "" #: _cli/__init__.py:75 +#, python-brace-format msgid "{0} [OPTIONS] []" msgstr "" @@ -2122,1992 +2429,1876 @@ msgstr "" msgid "Options" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 +#: _cli/__init__.py:113 _cli/__init__.py:181 msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: _cli/__init__.py:172 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" "{0}: error: {1}\n" "Run '{0} --help' for information" msgstr "" -#: _cli/__init__.py:182 +#: _cli/__init__.py:179 msgid " Manage documentation with Sphinx." msgstr "" -#: _cli/__init__.py:194 +#: _cli/__init__.py:191 msgid "Show the version and exit." msgstr "" -#: _cli/__init__.py:202 +#: _cli/__init__.py:199 msgid "Show this message and exit." msgstr "" -#: _cli/__init__.py:206 +#: _cli/__init__.py:203 msgid "Logging" msgstr "" -#: _cli/__init__.py:213 +#: _cli/__init__.py:210 msgid "Increase verbosity (can be repeated)" msgstr "" -#: _cli/__init__.py:221 +#: _cli/__init__.py:218 msgid "Only print errors and warnings." msgstr "" -#: _cli/__init__.py:228 +#: _cli/__init__.py:225 msgid "No output at all" msgstr "" -#: _cli/__init__.py:234 +#: _cli/__init__.py:231 msgid "" msgstr "" -#: _cli/__init__.py:265 +#: _cli/__init__.py:263 msgid "See 'sphinx --help'.\n" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "" - -#: transforms/i18n.py:228 transforms/i18n.py:303 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" "inconsistent footnote references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:273 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" "inconsistent references in translated message. original: {0}, translated: " "{1}" msgstr "" -#: transforms/i18n.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" "inconsistent citation references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:345 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" "inconsistent term references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 +#: transforms/__init__.py:258 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "" - -#: ext/imgconverter.py:68 -#, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " -msgstr "" - -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "" - -#: ext/viewcode.py:306 -msgid "Module code" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/viewcode.py:312 +#: transforms/__init__.py:299 #, python-format -msgid "

Source code for %s

" +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/viewcode.py:338 -msgid "Overview: module code" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/coverage.py:47 +#: util/inventory.py:147 #, python-format -msgid "invalid regex %r in %s" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 +#: util/inventory.py:166 #, python-format -msgid "module %s could not be imported: %s" +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: ext/coverage.py:141 +#: util/i18n.py:100 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "" - -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +msgid "reading error: %s, %s" msgstr "" -#: ext/coverage.py:163 +#: util/i18n.py:113 #, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." +msgid "writing error: %s, %s" msgstr "" -#: ext/coverage.py:177 +#: util/i18n.py:146 #, python-format -msgid "invalid regex %r in coverage_c_regexes" +msgid "locale_dir %s does not exist" msgstr "" -#: ext/coverage.py:245 +#: util/i18n.py:244 #, python-format -msgid "undocumented c api: %s [%s] in file %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: ext/coverage.py:429 +#: util/i18n.py:253 #, python-format -msgid "undocumented python function: %s :: %s" +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: ext/coverage.py:445 +#: util/osutil.py:131 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: ext/coverage.py:458 -#, python-format -msgid "undocumented python method: %s :: %s :: %s" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: ext/todo.py:71 -msgid "Todo" +#: util/display.py:87 +msgid "failed" msgstr "" -#: ext/todo.py:104 +#: util/docutils.py:325 #, python-format -msgid "TODO entry found: %s" -msgstr "" - -#: ext/todo.py:163 -msgid "<>" +msgid "unknown directive name: %s" msgstr "" -#: ext/todo.py:165 +#: util/docutils.py:361 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "unknown role name: %s" msgstr "" -#: ext/todo.py:175 -msgid "original entry" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: ext/extlinks.py:82 +#: util/fileutil.py:76 #, python-format msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: ext/doctest.py:115 +#: util/fileutil.py:89 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "Writing evaluated template result to %s" msgstr "" -#: ext/doctest.py:120 +#: util/docfields.py:103 #, python-format -msgid "'%s' is not a valid option." +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: ext/doctest.py:134 +#: util/rst.py:73 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "" - -#: ext/doctest.py:220 -msgid "invalid TestCode type" +msgid "default role %s not found" msgstr "" -#: ext/doctest.py:281 +#: util/nodes.py:462 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: ext/doctest.py:434 +#: util/nodes.py:523 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: ext/doctest.py:522 +#: util/nodes.py:739 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "" - -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: ext/graphviz.py:268 -#, python-format -msgid "graphviz_dot executable path must be set! %r" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: ext/graphviz.py:303 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: ext/graphviz.py:310 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: ext/graphviz.py:313 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "dot code %r: %s" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "[graph: %s]" -msgstr "" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "" - -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: ext/apidoc.py:85 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "Would create file %s." -msgstr "" - -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "" - -#: ext/apidoc.py:392 -msgid "path to module to document" -msgstr "" - -#: ext/apidoc.py:396 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "" - -#: ext/apidoc.py:407 -msgid "directory to place all output" -msgstr "" - -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "" - -#: ext/apidoc.py:429 -msgid "overwrite existing files" -msgstr "" - -#: ext/apidoc.py:437 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "" - -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "" - -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "" - -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" -msgstr "" - -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" -msgstr "" - -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" +msgid "Unknown image format: %s..." msgstr "" -#: ext/apidoc.py:481 +#: transforms/post_transforms/__init__.py:88 msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: ext/apidoc.py:498 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: ext/apidoc.py:564 -msgid "extension options" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: ext/apidoc.py:638 -#, python-format -msgid "%s is not a directory." +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 -#, python-format -msgid "Failed to remove %s: %s" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: ext/autosectionlabel.py:48 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 +#: themes/basic/layout.html:115 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "Search within %(docstitle)s" msgstr "" -#: ext/duration.py:85 -msgid "" -"====================== slowest reading durations =======================" +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: ext/imgmath.py:159 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: ext/imgmath.py:174 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: ext/imgmath.py:328 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "display latex %r: %s" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: ext/imgmath.py:362 +#: themes/basic/layout.html:201 #, python-format -msgid "inline latex %r: %s" -msgstr "" - -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" +msgid "Last updated on %(last_updated)s." msgstr "" -#: writers/manpage.py:309 writers/text.py:936 +#: themes/basic/layout.html:204 #, python-format -msgid "[image: %s]" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: writers/html5.py:415 -#, python-format -msgid "numfig_format is not defined for %s" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: writers/html5.py:427 -#, python-format -msgid "Any IDs not assigned for %s node" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: writers/html5.py:482 -msgid "Link to this term" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 -#, python-format -msgid "unsupported rubric heading level: %s" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" msgstr "" -#: writers/html5.py:613 -msgid "Link to this code" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: themes/basic/defindex.html:4 +msgid "Overview" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" +#: themes/basic/defindex.html:9 +msgid "the documentation for" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +#: themes/basic/defindex.html:10 +msgid "last updated" msgstr "" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" msgstr "" -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" msgstr "" -#: writers/latex.py:360 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 -#, python-format -msgid "no Babel option known for language %r" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" msgstr "" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." +#: themes/basic/defindex.html:19 +msgid "search this documentation" msgstr "" -#: writers/latex.py:590 -#, python-format -msgid "template %s not found; loading from legacy %s instead" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" msgstr "" -#: writers/latex.py:708 -msgid "document title is not a single Text node" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" msgstr "" -#: writers/latex.py:1175 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" msgstr "" -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" msgstr "" -#: writers/latex.py:1931 -#, python-format -msgid "unknown index entry type %s found" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "environment variable; %s" +msgid "Search %(docstitle)s" msgstr "" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." msgstr "" -#: domains/std/__init__.py:235 -#, python-format +#: themes/basic/search.html:28 msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" +#: themes/basic/search.html:35 +msgid "search" msgstr "" -#: domains/std/__init__.py:308 -msgid "command line option" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" msgstr "" -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." msgstr "" -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" -#: domains/std/__init__.py:602 -msgid "glossary term" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" msgstr "" -#: domains/std/__init__.py:603 -msgid "grammar token" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." msgstr "" -#: domains/std/__init__.py:604 -msgid "reference label" +#: themes/basic/static/searchtools.js:526 +msgid ", in " msgstr "" -#: domains/std/__init__.py:607 -msgid "environment variable" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" -#: domains/std/__init__.py:608 -msgid "program option" +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:609 -msgid "document" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" msgstr "" -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" msgstr "" -#: domains/std/__init__.py:722 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" msgstr "" -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" msgstr "" -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" msgstr "" -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" msgstr "" -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" +#: domains/python/_object.py:206 +msgid "Variables" msgstr "" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:173 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/c/__init__.py:199 -#, python-format -msgid "%s (C %s)" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:302 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." +msgid "%s (C++ %s)" msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" -msgstr "" - -#: domains/c/__init__.py:680 -msgid "variable" +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" msgstr "" -#: domains/c/__init__.py:682 -msgid "macro" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" msgstr "" -#: domains/c/__init__.py:683 -msgid "struct" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" msgstr "" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" +#: domains/cpp/__init__.py:946 +msgid "concept" msgstr "" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" +#: domains/cpp/__init__.py:954 +msgid "template parameter" msgstr "" -#: domains/cpp/__init__.py:277 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "%s (C++ %s)" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: domains/c/__init__.py:211 #, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +msgid "%s (C %s)" msgstr "" -#: domains/cpp/__init__.py:862 -msgid "concept" +#: domains/c/__init__.py:778 +msgid "variable" msgstr "" -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/c/__init__.py:780 +msgid "macro" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: themes/basic/layout.html:18 -msgid "Navigation" +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" msgstr "" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: themes/basic/layout.html:124 -msgid "About these documents" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: themes/basic/defindex.html:4 -msgid "Overview" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" msgstr "" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: themes/basic/defindex.html:19 -msgid "search this documentation" +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: themes/basic/search.html:35 -msgid "search" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "alias of %s" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Automatically generated list of changes in version %(version)s" +msgid "Bases: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" msgstr "" -#: themes/basic/changes/rstsource.html:5 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "%(filename)s — %(docstitle)s" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: themes/basic/static/searchtools.js:119 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/__init__.py:382 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:695 -msgid "generating indices" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:793 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "%s is not a directory." msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "cannot copy static file %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "cannot copy extra file %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "dumping search index in %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:630 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1344 +#: ext/autosummary/generate.py:679 #, python-format -msgid "Unknown math_renderer %r is given." +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1363 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/html/__init__.py:1378 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:923 #, python-format -msgid "logo file %r does not exist" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/generate.py:931 #, python-format -msgid "favicon file %r does not exist" +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/generate.py:940 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "%s %s documentation" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "failed to import object %s" msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "" - -#: builders/latex/__init__.py:119 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/latex/theming.py:90 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:172 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:324 msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "(in %s)" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Unknown image format: %s..." +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:526 +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:530 +#: builders/html/__init__.py:337 #, python-format -msgid "[autosummary] writing to %s" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:372 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/autosummary/generate.py:805 -#, python-format -msgid "default suffix for files (default: %(default)s)" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/autosummary/generate.py:813 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/autosummary/generate.py:829 +#: builders/html/__init__.py:783 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:47 -#, python-format -msgid "(in %s v%s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:807 #, python-format -msgid "(in %s)" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:359 -#, python-format -msgid "inventory for external cross-reference not found: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:367 +#: builders/html/__init__.py:923 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "cannot copy static file %r" msgstr "" -#: ext/intersphinx/_resolve.py:378 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_resolve.py:585 +#: builders/html/__init__.py:938 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:944 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_load.py:70 -#, python-format +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1385 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1412 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1425 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:807 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:902 +#: builders/html/__init__.py:1454 #, python-format -msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +msgid "%s %s documentation" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/latex/theming.py:87 #, python-format -msgid "A mocked object is detected: %r" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1760 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1774 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hr/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/hr/LC_MESSAGES/sphinx.mo index 99c0c40f7783c42b9bf1ec297c966967b78b9a13..5ca40d4685c3e5b239065c1691e8c0426cad15da 100644 GIT binary patch delta 3461 zcmYM$3rv+|9LMn|JSd1<1QbDqgV&RSaNr;pK|`h4@UomIlhiVXIW@edX35diTo=un zhBciR%8az7$3-^NoO6-bMW$P(X^6{9I-R#v()IoEK3fdW=Y5{@y#MF_{GaE2W!>WD zMS-)iuJwkWM*el<-_Evb{r^)KX$-%nh>uV##UA)HhU0wOUxjhBS71lnVB59Wnf3vU z!IKz;f1%r$fVsnkZs<&J1bR?`eW)7;qi*zL0#3y)ScM(18a44J*cHFQUU&lc;eE`; zV6?M)^<@mBy$}cEQrmwJJ+yzc-o#|uU0KZ#EI{42 z7+IrPj;Z)Q=3x+fYyPWTw8L1^QUXcn!%WnT6-aC|50h{Orr>7O1P4(G*JF2VMD5}Y zY>)q-78pXAw1vs23iiT)0u*sUmCTc<%>1Z?)}R7^h}w!RsD$c}Uvq?y5Ilv$@Qm$u z#~b6K?ZW|>kBT!5mB3uoLKnqTe+61Yhunq~!+eb@RXwsz<_c!v1JsJrxm$amhx)z* zb$0x=e+p_`rS((p^;<5EU)I>R`go^NO9F4mF6e_VlQRA*U?SQ#$JG4Ay7=}8<9Z`WZP&ejd zF_vH%u0kEA^Qe+vLIu8qK75FJp=I%*gvX%bjYG{d8N2EEf2s9?!+{#O6(`_!R3K%e z{v1@v3s75Cf)ve^p#smtQMd$O!3Na$VqOYLd?ae(HK?;zE%p3=%7s=E#0=brTG3_H ztM)Du%Ovv9Yg{g}-KGdtTEBH7YJ9nEzlo~IY8;O1Q49GU75^LtbjYsSFIrF;8n?5D z;n8q9$m-bo>>S;3M^iu)3a3pbliIaY@KmCIz)6LopObqE7u-RN_-nTev{) zUzPG5I&^AlP%GVw{F=kI|1xSXAD{w<_Hj;sH0r)S$T>E-s0xflt#BslIbUr1SECaA z3>)!ifQtcKZ0hT*;27$LYjo8nk9UM z;SN;kcVjO+V*9UPd*(N{xKQ9nsEN9;Y&}+PRDgWci)JVe!3nniBh>h9=*C*qeGRDb z7f_XH!4Vje=FC%y>aV~IJ^wRp$41oN*C3C+*@IfqFQ~)PgyDD>*_GB4slE4bGKXV6 zD&Z>ZfU8jP)*&l3H5h?k+V;2lp83rYE{JJPpaML`fzX*~&xaDoN1fVI)QX=&m9!j{ z&_dMSFGD4|A2t3ss^m?!ziozdUsqI|3=AmKTrQO1a8zl=ptj^0+n$XIybv|+UDV;J z#(JzpRcv0Sv*NX=xSKH=ccK=u9~I|k%)w^;{iRG2y-wg%)POX60gF*9+lC$S51fP7 zaW+oLawcp_G_pLg>#aXcpNHzGS0>9Z0fHYx6`4$*@a4IpKTwq?VnIv za}xD9owfb{Vk~W!&w2MJp#ImaK*c?Sszfs??hVu-zK43+@&eRB1IME>os61j8fw5C zbmLl7g1fOCzr#FC9q6pM47I}NF&?L*o`wJ_-Ub|xTX8<#M{P}@GS~UbrV2Ii5XRt9 z)PU30zflvmU>y2r@U}K1P>D`Qy^!8QegB?q*Ps^oIqEQeW&2M${Q+~Di$cCQk4hjV z-wEKsDB6Xn{!-Kg<4`LsL(Y+zg`IH=CSo1xtQ<#;Z$>3>858gZMq(HTE5VH8W-f-& zF#!AGTvP=<#+CSm)jP=PuR}lm_1FfJ$)0MO9;hvxP#7$W+!Ydxi#Zk*?4DBVip)v( dW~FC(-QIx(USIG;&lg?6Voyp;aAV#g*MA3JSZM$N delta 3657 zcmZ|QeN5F=9LMpKa#chS0R>Xwhlm#qP#y%ud_c*ka?>;v^8rwltI0DYwso`ArPIBoVq0@*_zsxiLo|Uy+8Y%t-o@Y`#R_R&hMP>`JQvG?W-Hs z_^*crY&ZP7#NPn^4tG=SzkdsYjp1V!^5wymI0!2+5F2d!E)1u>7yIB>w%&^Us9(oW ze1IX?jW5R-zv)XsFJxj6PDKqo2le72)QdG3i5oBqcVRC)h?@8$_QxwY7(1{9qk9{Z zju%nmcV{pyBpkz--$YXwK|>O1fQ8r>>rjEbZhZ@TQ2zkOVWVxogNf81SYudC4D~5E z9+#os`v_UQ*^hB}1V=HyX`_&UQDH=f<4^%i#tdA5dT|>vhuMvfViU&VDbxgaPyu(~ zK>QoEn*&HsPmD(`Fa?!?>F8G~XHw7rJ|t_V5=Y@$R6vJN10P3i$!SzT?a0U6xK05n<(4hxD6%=wSo-PDISX& z_*vA8#h8N?I3Jr)hbe?#FQq&J6+j$j;85ga7V)KkUqFrb686yj-$a3rskb(vI-bFN zynq@giD=Ybh)Ve~)K*m>$uk>J1MkKe_$k(4C#wG{eiRh=YSaP`VX*H12^H{r9E)wJ z6%FKa565`a%4VZ}dJB*-%`2#WdywN`K1QYZYwI_t{%36ccT{FNF&Fh~Fveba)vem|hzyM+qmHgastJzEdrE^7+nr{!#a%cb^VUx0=$BnU}U^8$(W4_uml6Tuob9rYKc<))*-K$ji{|@L=PT7 zo&LiKemC;-G-xkxpi=n&wc_9*?n+~jCXbjqB}t*Y9%?S7boLmn2(xZy={LF6-YCB@CbIp6R1?T zqRxv>dgv!%KYYe3YzGceQ*tR?S8WLKAbdVA`1B_FkaM(a#3d{ z4+C)}vU{cmbw=LBT-=8W_&)Z+hp6!a+2@|jZ=xs!VZ0h}IEG+05`&qB8lV>W7(ZVM zU?1w*9Yba4JnB?mK?QUdwfBFb0!?LA>OUEk@jUeF!3z}h;#Sl^dr^@#q5^6`rR*ds zQ>SeG7V7=GsD6)(aL-OJ{Em7oDr3K52zpZ8aU-xd^|(~>ua%_Ipn)dgNSucX&u!0QFdj zpP*jspW$xJAXGppww`J06H!|;9d(^%+x7|!qh5zIa5L88HPpDXSfw&N&rd-E7o$$` zD%5rR0@d*}D$^?W9d!2(-<2l<#rzQXYq@+)rsLM^EOX!nOH8})pG zTlbqe6tvR$s8d`(}Kc_Igwx=TQS(MeXr#w*4XMm(Rn&&`N`lb7vgvhqEvm zORx{Vj2_+p1_}ybCr08P48|5){}v}vZ$mG}vutJJNnDQ$tT%0Y3DG`7dmVPgb4a$$ zMbuXI)X%JwxU{&uvUo}J6T$Cy2~G5sItf)yZ9>&hljQhH>(6szz9tfsoWrh4(RvdUG3)y}G#s%odG*eNUJZ<*sQFJ10Ua=cZwqNt|Y@l`nqmCawq zd>#;-k(`>AoHp7?OUq6l-Mk{cC?GJg#!lDV>WvE>^M8|+RTer$zG|O4zT8q N#TCVx;&xVDz`rZ2iFyD4 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hr/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/hr/LC_MESSAGES/sphinx.po index 96a08c526..f13b61fd2 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/hr/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/hr/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -8,153 +8,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Mario Šarić, 2015-2020\n" "Language-Team: Croatian (http://app.transifex.com/sphinx-doc/sphinx-1/language/hr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: hr\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "postavka %s.%s ne pojavljuje se u pretraženim konfiguracijama tema" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "datoteka %r iz teme nije ispravna (zip) arhiva ili ne sadrži temu" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "Ovaj projekt treba proširenje %s najmanje u verziji %si stoga se ne može izraditi s postojećom verzijom (%s)." + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "Događaj %r već postoji" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "Nepoznato ime događaja: %s" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Nema izvornog direktorija (%s)" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Izvorni i odredišni direktorij ne smiju biti jednaki" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Izrada pomoću Sphinx v%s" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Ovaj projekt se ne može izgraditi s instaliranom verzijom, potrebno je instalirati Sphinx v%s ili višu verziju." -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "izrada izlazne mape" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' koji je postavljen u conf.py nije moguće pozvati. Molimo izmijenite definiciju 'setup' funkcije kako bi ju mogli izvršiti iz Pythona. Ovo je potrebno kako bi conf.py imao karakter Sphinx proširenja. " -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "učitavanje prijevoda [%s]... " -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "napravljeno" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "neuspješno: %s" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Nije odabran format, koristi se zadani: html" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" +msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +309,12 @@ msgid "" "explicit" msgstr "%s proširenje nema deklaraciju paralelnog čitanja, uz pretpostavku da nije - zamolite autora za provjeru i postavljanje deklaracije" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,645 +322,357 @@ msgid "" "explicit" msgstr "%s proširenje nema deklaraciju paralelnog čitanja, uz pretpostavku da nije - zamolite autora za provjeru i postavljanje deklaracije" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "Klasa %s nema \"name\" svojstvo" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "Builder %r već postoji (u modulu %s)" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "Builder imena %s nije registriran ili dostupan pomoću poziva" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "Builder %s nije registriran" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "domena %s je već registrirana" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "domena %s nije još registrirana" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "source_parser za %r je već registriran" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "proširenje %r se već nalazi u Sphinxu od verzije %s; ovo proširenje se zanemaruje." -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "Izvorna iznimka:\n" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "Proširenje %s ne može biti uvezena" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "proširenje %r nema funkciju setup(); radi li se o ispravnom Sphinx modulu proširenja?" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "%s proširenje traži Sphinx verzije v%s; stoga projekt ne može biti izgrađen s ovom verzijom." -#: registry.py:480 +#: registry.py:579 #, python-format 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" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" - -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" - -#: highlighting.py:168 +#: config.py:351 #, python-format -msgid "Pygments lexer name %r is not known" -msgstr "" +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "u konfiguracijskom direktoriju ne postoji datoteka conf.py (%s)" -#: highlighting.py:202 +#: config.py:374 #, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: extension.py:55 +#: config.py:379 #, python-format msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." -msgstr "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "ne može se nadjačati osnovna konf. postavka %r, zanemarena je (koristite %r za postavljanje pojedinačnih elemenata)" -#: extension.py:76 +#: config.py:391 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." -msgstr "Ovaj projekt treba proširenje %s najmanje u verziji %si stoga se ne može izraditi s postojećom verzijom (%s)." +msgid "invalid number %r for config value %r, ignoring" +msgstr "nepravilan broj %r za konf. vrijednost %r, zanemaruje se" -#: theming.py:114 +#: config.py:399 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "ne može se nadjačati konf. vrijednost %r zbog nepodržanog tipa, zanemareno" -#: theming.py:120 +#: config.py:422 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "postavka %s.%s ne pojavljuje se u pretraženim konfiguracijama tema" +msgid "unknown config value %r in override, ignoring" +msgstr "nepoznata konfiguracijska vrijednost %r, zanemaruje se" -#: theming.py:135 +#: config.py:476 #, python-format -msgid "unsupported theme option %r given" +msgid "No such config value: %r" msgstr "" -#: theming.py:207 +#: config.py:504 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "datoteka %r iz teme nije ispravna (zip) arhiva ili ne sadrži temu" +msgid "Config value %r already present" +msgstr "Konfiguracijska vrijednost %r već postoji" -#: theming.py:228 +#: config.py:541 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:268 -#, python-format -msgid "The %r theme has circular inheritance" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:275 +#: config.py:599 #, python-format +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "Postoji sintaksna greška u konfiguracijskoj datoteci: %s\n" + +#: config.py:603 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:282 +#: config.py:611 #, python-format -msgid "The %r theme has too many ancestors" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:310 +#: config.py:633 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:651 config.py:659 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:339 +#: config.py:665 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:686 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "Section %s" +msgstr "Poglavlje %s" -#: theming.py:347 +#: config.py:687 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +msgid "Fig. %s" +msgstr "Slika %s" -#: theming.py:366 +#: config.py:688 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +msgid "Table %s" +msgstr "Tablica %s" -#: config.py:309 +#: config.py:689 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "u konfiguracijskom direktoriju ne postoji datoteka conf.py (%s)" +msgid "Listing %s" +msgstr "Ispis %s" -#: config.py:318 +#: config.py:798 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:341 -#, python-format -msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" -msgstr "ne može se nadjačati osnovna konf. postavka %r, zanemarena je (koristite %r za postavljanje pojedinačnih elemenata)" - -#: config.py:350 -#, python-format -msgid "invalid number %r for config value %r, ignoring" -msgstr "nepravilan broj %r za konf. vrijednost %r, zanemaruje se" - -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" -msgstr "ne može se nadjačati konf. vrijednost %r zbog nepodržanog tipa, zanemareno" - -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" -msgstr "nepoznata konfiguracijska vrijednost %r, zanemaruje se" - -#: config.py:430 -#, python-format -msgid "No such config value: %r" -msgstr "" - -#: config.py:453 -#, python-format -msgid "Config value %r already present" -msgstr "Konfiguracijska vrijednost %r već postoji" - -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" -msgstr "" - -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" -msgstr "Postoji sintaksna greška u konfiguracijskoj datoteci: %s\n" - -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "" - -#: config.py:537 -#, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" -msgstr "" - -#: config.py:560 -#, python-format -msgid "Failed to convert %r to a set or tuple" -msgstr "" - -#: config.py:581 config.py:586 -#, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." -msgstr "" - -#: config.py:589 -#, python-format -msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." -msgstr "" - -#: config.py:608 -#, python-format -msgid "Section %s" -msgstr "Poglavlje %s" - -#: config.py:609 -#, python-format -msgid "Fig. %s" -msgstr "Slika %s" - -#: config.py:610 -#, python-format -msgid "Table %s" -msgstr "Tablica %s" - -#: config.py:611 -#, python-format -msgid "Listing %s" -msgstr "Ispis %s" - -#: config.py:718 -msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." -msgstr "" - -#: config.py:742 +#: config.py:829 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:755 +#: config.py:846 +#, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:766 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r nije pronađen, zanemareno je." -#: config.py:778 +#: config.py:878 msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." -msgstr "" - -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" -msgstr "%s (directive)" - -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" -msgstr "%s (role)" - -#: domains/rst.py:224 -msgid "directive" -msgstr "Direktive" - -#: domains/rst.py:225 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:226 -msgid "role" -msgstr "uloga" - -#: domains/rst.py:248 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (ugrađene funkcije)" - -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metoda)" - -#: domains/javascript.py:168 -#, python-format -msgid "%s() (class)" -msgstr "%s() (razred)" - -#: domains/javascript.py:170 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globalna varijabla ili konstanta)" - -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atribut)" - -#: domains/javascript.py:255 -msgid "Arguments" -msgstr "Argumenti" - -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" -msgstr "Baca (iznimke)" - -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" -msgstr "Vraća" - -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" -msgstr "Vraća tip" - -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" - -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" -msgstr "funkcija" - -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" -msgstr "metoda" - -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" -msgstr "razred" - -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" -msgstr "podaci" - -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" -msgstr "atribut" - -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "modul" - -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "Promijenjeno u verziji %s" - -#: domains/changeset.py:27 -#, python-format -msgid "Deprecated since version %s" -msgstr "Zastarijelo od verzije %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:84 -#, python-format -msgid "Citation [%s] is not referenced." +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: domains/math.py:63 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "dvostruka oznaka jednakosti %s, drugo pojavljivanje u %s" - -#: domains/math.py:119 writers/latex.py:2479 -#, python-format -msgid "Invalid math_eqref_format: %r" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: environment/__init__.py:81 +#: environment/__init__.py:89 msgid "new config" msgstr "" -#: environment/__init__.py:82 +#: environment/__init__.py:90 msgid "config changed" msgstr "" -#: environment/__init__.py:83 +#: environment/__init__.py:91 msgid "extensions changed" msgstr "" -#: environment/__init__.py:249 +#: environment/__init__.py:261 msgid "build environment version not current" msgstr "" -#: environment/__init__.py:251 +#: environment/__init__.py:263 msgid "source directory has changed" msgstr "" -#: environment/__init__.py:313 +#: environment/__init__.py:350 #, python-format msgid "The configuration has changed (1 option: %r)" msgstr "" -#: environment/__init__.py:318 +#: environment/__init__.py:355 #, python-format msgid "The configuration has changed (%d options: %s)" msgstr "" -#: environment/__init__.py:324 +#: environment/__init__.py:361 #, python-format msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: environment/__init__.py:366 +#: environment/__init__.py:404 msgid "" "This environment is incompatible with the selected builder, please choose " "another doctree directory." msgstr "" -#: environment/__init__.py:473 +#: environment/__init__.py:518 #, python-format msgid "Failed to scan documents in %s: %r" msgstr "" -#: environment/__init__.py:626 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format msgid "Domain %r is not registered" msgstr "" -#: environment/__init__.py:777 +#: environment/__init__.py:811 msgid "document isn't included in any toctree" msgstr "" -#: environment/__init__.py:810 +#: environment/__init__.py:922 msgid "self referenced toctree found. Ignored." msgstr "" -#: environment/__init__.py:839 +#: environment/__init__.py:952 #, python-format msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" @@ -858,3258 +717,3590 @@ msgstr "Savjet" msgid "Warning" msgstr "Upozorenje" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (u " -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" msgstr "" -#: cmd/quickstart.py:117 +#: builders/manpage.py:37 #, python-format -msgid "Please enter one of %s." +msgid "The manual pages are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: cmd/quickstart.py:215 +#: builders/singlehtml.py:35 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:219 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: cmd/quickstart.py:227 -#, python-format -msgid "Selected root path: %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " msgstr "" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" msgstr "" -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: cmd/quickstart.py:282 -msgid "" -"The project name will occur in several places in the built documentation." +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" msgstr "" -#: cmd/quickstart.py:293 -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" -"just set both to the same value." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:308 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:324 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:334 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:352 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:381 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:391 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: builders/xml.py:103 #, python-format -msgid "Creating file %s." +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: builders/_epub_base.py:223 #, python-format -msgid "File %s already exists, skipping." +msgid "duplicated ToC entry found: %s" msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" msgstr "" -#: cmd/quickstart.py:504 +#: builders/_epub_base.py:467 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "cannot write image file %r: %s" msgstr "" -#: cmd/quickstart.py:512 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: cmd/quickstart.py:515 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: cmd/quickstart.py:522 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: builders/__init__.py:324 +msgid "all source files" msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: cmd/quickstart.py:646 -msgid "use epub" +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: builders/__init__.py:382 #, python-format -msgid "enable %s extension" +msgid "targets for %d source files that are out of date" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:770 +#: builders/__init__.py:563 +#, python-format msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:795 +#: builders/__init__.py:725 #, python-format -msgid "Invalid template variable: %s" +msgid "docnames to write: %s" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: builders/__init__.py:743 +msgid "copying assets" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: builders/changes.py:65 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid "no changes in version %s." msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: builders/changes.py:67 +msgid "writing summary file..." msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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 "" +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Ugrađeni dijelovi" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" -msgstr "" +#: builders/changes.py:81 +msgid "Module level" +msgstr "Nivo modula" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: builders/changes.py:137 +msgid "copying source files..." msgstr "" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" -msgstr "" - -#: cmd/build.py:144 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:154 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" -#: cmd/build.py:180 -msgid "path to documentation source files" +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" msgstr "" -#: cmd/build.py:183 -msgid "path to output directory" +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" msgstr "" -#: cmd/build.py:188 +#: ext/coverage.py:148 +#, python-format msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:194 -msgid "general options" -msgstr "" - -#: cmd/build.py:201 -msgid "builder to use (default: 'html')" +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/build.py:210 +#: ext/coverage.py:158 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:220 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:227 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:230 -msgid "path options" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/build.py:236 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/build.py:246 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/build.py:255 -msgid "use no configuration file, only use settings from -D options" +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/build.py:264 -msgid "override a setting in configuration file" +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" msgstr "" -#: cmd/build.py:273 -msgid "pass a value into HTML templates" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" msgstr "" -#: cmd/build.py:282 -msgid "define tag: include \"only\" blocks with TAG" +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: cmd/build.py:289 -msgid "nitpicky mode: warn about all missing references" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/build.py:292 -msgid "console output options" -msgstr "" +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" -#: cmd/build.py:299 -msgid "increase verbosity (can be repeated)" +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 -msgid "no output on stdout, just warnings on stderr" -msgstr "" +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" -#: cmd/build.py:313 -msgid "no output at all, not even warnings" -msgstr "" +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> se nalazi u %s, redak %d.)" -#: cmd/build.py:321 -msgid "do emit colored output (default: auto-detect)" -msgstr "" +#: ext/todo.py:166 +msgid "original entry" +msgstr "izvorna stavka" -#: cmd/build.py:329 -msgid "do not emit colored output (default: auto-detect)" +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/build.py:332 -msgid "warning control options" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/build.py:338 -msgid "write warnings (and errors) to given file" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/build.py:345 -msgid "turn warnings into errors" -msgstr "" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "Graphviz direktiva ne može imati i sadržaj i ime datoteke za argumente" -#: cmd/build.py:353 -msgid "show full traceback on exception" -msgstr "" +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" +msgstr "Vanjska Graphviz datoteka %r ne postoji ili se ne može čitati" -#: cmd/build.py:356 -msgid "run Pdb on exception" -msgstr "" +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "Ignoriranje \"graphviz\" direktive bez sadržaja." -#: cmd/build.py:362 -msgid "raise an exception on warnings" +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/build.py:405 -msgid "cannot combine -a option and filenames" -msgstr "" +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "dot naredba %r ne može se pokrenuti (potrebna za graphviz izlaz), provjerite postavku graphviz_dot" -#: cmd/build.py:437 +#: ext/graphviz.py:339 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/build.py:456 -msgid "-D option argument must be in the form name=value" +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/build.py:463 -msgid "-A option argument must be in the form name=value" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" msgstr "" -#: builders/linkcheck.py:75 +#: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "" +msgid "[graph: %s]" +msgstr "[graph: %s]" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[graph]" -#: builders/linkcheck.py:146 +#: ext/imgmath.py:148 #, python-format -msgid "broken link: %s (%s)" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: builders/linkcheck.py:540 +#: ext/imgmath.py:167 #, python-format -msgid "Anchor '%s' not found" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: builders/linkcheck.py:742 +#: ext/imgmath.py:326 #, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgid "display latex %r: %s" msgstr "" -#: builders/singlehtml.py:37 +#: ext/imgmath.py:362 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "inline latex %r: %s" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" -msgstr "" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "nedostaje '+' ili '-' u '%s' opciji." -#: builders/singlehtml.py:191 -msgid "writing additional files" -msgstr "" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "'%s' nije valjana opcija." -#: builders/manpage.py:39 +#: ext/doctest.py:139 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' nije valjana pyversion opcija" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: builders/manpage.py:73 +#: ext/doctest.py:297 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: builders/text.py:34 +#: ext/doctest.py:451 #, python-format -msgid "The text files are in %(outdir)s." +msgid "no code/output in %s block at %s:%s" msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: ext/doctest.py:568 #, python-format -msgid "error writing file %s: %s" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: builders/xml.py:38 +#: ext/autosectionlabel.py:52 #, python-format -msgid "The XML files are in %(outdir)s." +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: builders/xml.py:110 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "The pseudo-XML files are in %(outdir)s." +msgid "duplicate label %s, other instance in %s" msgstr "" -#: builders/texinfo.py:47 +#: ext/duration.py:47 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: builders/texinfo.py:49 +#: ext/duration.py:117 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +"====================== total reading duration ==========================" msgstr "" -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: builders/texinfo.py:90 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 +#: ext/duration.py:139 #, python-format -msgid "processing %s" +msgid "%.3fs %s" msgstr "" -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[source]" + +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr " (u " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Kod modula" -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 +#: ext/viewcode.py:359 #, python-format -msgid "cannot copy image file %r: %s" -msgstr "" +msgid "

Source code for %s

" +msgstr "

Izvorni kod za %s

" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Pregled: kod modula" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Svi moduli za koje je dostupan kod

" -#: builders/texinfo.py:234 +#: domains/citation.py:75 #, python-format -msgid "error writing file Makefile: %s" +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/gettext.py:230 +#: domains/citation.py:92 #, python-format -msgid "The message catalogs are in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/__init__.py:383 builders/gettext.py:251 +#: domains/math.py:73 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "dvostruka oznaka jednakosti %s, drugo pojavljivanje u %s" -#: builders/gettext.py:252 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "targets for %d template files" +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/gettext.py:257 -msgid "reading templates... " -msgstr "" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (ugrađene funkcije)" -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metoda)" -#: builders/__init__.py:212 +#: domains/javascript.py:186 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (razred)" -#: builders/__init__.py:220 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (globalna varijabla ili konstanta)" -#: builders/__init__.py:243 -msgid "building [mo]: " -msgstr "" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (%s atribut)" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumenti" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Baca (iznimke)" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Vraća" -#: builders/__init__.py:263 +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Vraća tip" + +#: domains/javascript.py:374 #, python-format -msgid "all of %d po files" -msgstr "" +msgid "%s (module)" +msgstr "%s (modul)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcija" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metoda" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "razred" -#: builders/__init__.py:285 +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "podaci" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribut" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" + +#: domains/javascript.py:458 #, python-format -msgid "targets for %d po files that are specified" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" +msgid "%s (directive)" +msgstr "%s (directive)" -#: builders/__init__.py:307 -msgid "all source files" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 +#: domains/rst.py:224 #, python-format -msgid "file %r given on command line does not exist, " +msgid "%s (role)" +msgstr "%s (role)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "Direktive" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:325 +#: domains/rst.py:236 +msgid "role" +msgstr "uloga" + +#: domains/rst.py:262 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:336 +#: domains/changeset.py:32 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:351 +#: domains/changeset.py:33 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Changed in version %s" +msgstr "Promijenjeno u verziji %s" -#: builders/__init__.py:366 +#: domains/changeset.py:34 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Zastarijelo od verzije %s" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:398 +#: domains/__init__.py:322 #, python-format -msgid "%d found" +msgid "%s %s" +msgstr "%s %s" + +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:483 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:519 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:528 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:539 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:546 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" + +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:465 +#: cmd/build.py:357 #, python-format -msgid "cannot write image file %r: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/changes.py:33 -#, python-format -msgid "The overview file is in %(outdir)s." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/changes.py:74 -msgid "Builtins" -msgstr "Ugrađeni dijelovi" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "" -#: builders/changes.py:76 -msgid "Module level" -msgstr "Nivo modula" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "" -#: builders/changes.py:128 -msgid "copying source files..." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/changes.py:137 +#: cmd/quickstart.py:134 #, python-format -msgid "could not read %r for changelog creation" +msgid "Please enter one of %s." msgstr "" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: util/osutil.py:130 +#: cmd/quickstart.py:230 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: util/nodes.py:419 -#, python-format +#: cmd/quickstart.py:235 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: util/nodes.py:487 +#: cmd/quickstart.py:242 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "Selected root path: %s" msgstr "" -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: util/fileutil.py:74 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: util/inventory.py:170 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: util/inventory.py:185 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: util/docutils.py:284 -#, python-format -msgid "unknown directive or role name: %s:%s" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: util/docutils.py:747 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: util/display.py:81 -msgid "skipped" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: util/display.py:86 -msgid "failed" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: util/i18n.py:230 -#, python-format +#: cmd/quickstart.py:309 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +"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" +"just set both to the same value." msgstr "" -#: directives/patches.py:66 +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "" + +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "" + +#: cmd/quickstart.py:324 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: directives/code.py:87 -#, python-format -msgid "Invalid caption: %s" -msgstr "Neispravan navod: %s" +#: cmd/quickstart.py:340 +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 "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 -#, python-format -msgid "line number spec is out of range(1-%d): %r" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Ne mogu se istovremeno koristiti *%s* i *%s* opcije" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: directives/code.py:234 +#: cmd/quickstart.py:368 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "Objekt %r nije pronađen u include datoteci %r" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Ne može se koristiti \"lineno-match\" sa nespojivom grupom \"lines\"" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "" -#: directives/code.py:314 -#, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Specifikacija retka %r: nema redaka preuzetih iz include datoteke %r" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "" + +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "" + +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Creating file %s." msgstr "" -#: directives/other.py:171 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "File %s already exists, skipping." msgstr "" -#: directives/other.py:204 -msgid "Section author: " -msgstr "Autor sekcije: " +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" -#: directives/other.py:206 -msgid "Module author: " -msgstr "Autor modula: " +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "" -#: directives/other.py:208 -msgid "Code author: " -msgstr "Autor koda:" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "" -#: directives/other.py:210 -msgid "Author: " -msgstr "Autor:" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:75 -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: _cli/__init__.py:172 -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: _cli/__init__.py:182 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: _cli/__init__.py:194 -msgid "Show the version and exit." +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: _cli/__init__.py:202 -msgid "Show this message and exit." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: _cli/__init__.py:206 -msgid "Logging" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: _cli/__init__.py:213 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: _cli/__init__.py:221 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: _cli/__init__.py:228 -msgid "No output at all" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: _cli/__init__.py:234 -msgid "" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: _cli/__init__.py:265 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 +#: cmd/quickstart.py:671 #, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" +msgid "enable %s extension" msgstr "" -#: transforms/__init__.py:148 -msgid "no translated elements!" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: transforms/i18n.py:228 transforms/i18n.py:303 -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: transforms/i18n.py:273 -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: transforms/i18n.py:323 -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: transforms/i18n.py:345 -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" -msgstr "[source]" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" -#: ext/imgconverter.py:40 -#, python-format +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: ext/imgconverter.py:68 +#: cmd/quickstart.py:810 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" +msgid "Invalid template variable: %s" msgstr "" -#: ext/viewcode.py:258 -msgid "highlighting module code... " +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "[docs]" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "" -#: ext/viewcode.py:306 -msgid "Module code" -msgstr "Kod modula" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "" -#: ext/viewcode.py:312 +#: directives/other.py:169 #, python-format -msgid "

Source code for %s

" -msgstr "

Izvorni kod za %s

" +msgid "duplicated entry found in toctree: %s" +msgstr "" -#: ext/viewcode.py:338 -msgid "Overview: module code" -msgstr "Pregled: kod modula" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor sekcije: " -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" -msgstr "

Svi moduli za koje je dostupan kod

" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor modula: " -#: ext/coverage.py:47 -#, python-format -msgid "invalid regex %r in %s" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autor koda:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 -#, python-format -msgid "module %s could not be imported: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: ext/coverage.py:141 -#, python-format +#: directives/patches.py:70 msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: ext/coverage.py:163 +#: directives/code.py:87 #, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." -msgstr "" +msgid "Invalid caption: %s" +msgstr "Neispravan navod: %s" -#: ext/coverage.py:177 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "invalid regex %r in coverage_c_regexes" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: ext/coverage.py:245 +#: directives/code.py:216 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Ne mogu se istovremeno koristiti *%s* i *%s* opcije" -#: ext/coverage.py:429 +#: directives/code.py:231 #, python-format -msgid "undocumented python function: %s :: %s" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: ext/coverage.py:445 +#: directives/code.py:235 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: ext/coverage.py:458 +#: directives/code.py:276 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "" +msgid "Object named %r not found in include file %r" +msgstr "Objekt %r nije pronađen u include datoteci %r" -#: ext/todo.py:71 -msgid "Todo" -msgstr "Todo" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Ne može se koristiti \"lineno-match\" sa nespojivom grupom \"lines\"" -#: ext/todo.py:104 +#: directives/code.py:314 #, python-format -msgid "TODO entry found: %s" -msgstr "" - -#: ext/todo.py:163 -msgid "<>" -msgstr "<>" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Specifikacija retka %r: nema redaka preuzetih iz include datoteke %r" -#: ext/todo.py:165 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> se nalazi u %s, redak %d.)" +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: ext/todo.py:175 -msgid "original entry" -msgstr "izvorna stavka" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Abecedni popis" -#: ext/extlinks.py:82 -#, python-format +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: ext/doctest.py:115 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "nedostaje '+' ili '-' u '%s' opciji." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Fusnote" -#: ext/doctest.py:120 -#, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' nije valjana opcija." +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" -#: ext/doctest.py:134 +#: writers/texinfo.py:1303 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' nije valjana pyversion opcija" - -#: ext/doctest.py:220 -msgid "invalid TestCode type" +msgid "unimplemented node type: %r" msgstr "" -#: ext/doctest.py:281 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "[image: %s]" +msgstr "[slika: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[slika]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: ext/doctest.py:434 +#: writers/html5.py:431 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "numfig_format is not defined for %s" msgstr "" -#: ext/doctest.py:522 +#: writers/html5.py:441 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "Any IDs not assigned for %s node" msgstr "" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "Graphviz direktiva ne može imati i sadržaj i ime datoteke za argumente" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "Vanjska Graphviz datoteka %r ne postoji ili se ne može čitati" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "Ignoriranje \"graphviz\" direktive bez sadržaja." +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: ext/graphviz.py:268 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "graphviz_dot executable path must be set! %r" +msgid "unsupported rubric heading level: %s" msgstr "" -#: ext/graphviz.py:303 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "dot naredba %r ne može se pokrenuti (potrebna za graphviz izlaz), provjerite postavku graphviz_dot" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: ext/graphviz.py:310 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: ext/graphviz.py:313 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" -msgstr "graphviz_output_format mora biti 'png' ili 'svg', ali je %r" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: writers/latex.py:386 #, python-format -msgid "dot code %r: %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "[graph: %s]" -msgstr "[graph: %s]" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "[graph]" - -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +msgid "no Babel option known for language %r" msgstr "" -#: ext/apidoc.py:85 -#, python-format -msgid "Would create file %s." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: ext/apidoc.py:392 -msgid "path to module to document" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: ext/apidoc.py:396 +#: writers/latex.py:1198 msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: ext/apidoc.py:407 -msgid "directory to place all output" +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: ext/apidoc.py:429 -msgid "overwrite existing files" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: ext/apidoc.py:437 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: ext/apidoc.py:446 -msgid "run the script without creating files" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: ext/apidoc.py:481 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: ext/apidoc.py:498 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: ext/apidoc.py:564 -msgid "extension options" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: ext/apidoc.py:638 -#, python-format -msgid "%s is not a directory." +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 -#, python-format -msgid "Failed to remove %s: %s" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: ext/autosectionlabel.py:48 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/duration.py:85 +#: transforms/__init__.py:258 +#, python-format msgid "" -"====================== slowest reading durations =======================" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/imgmath.py:159 +#: transforms/__init__.py:299 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/imgmath.py:174 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/imgmath.py:328 -#, python-format -msgid "display latex %r: %s" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/imgmath.py:362 +#: util/inventory.py:147 #, python-format -msgid "inline latex %r: %s" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" -msgstr "Fusnote" - -#: writers/manpage.py:309 writers/text.py:936 +#: util/inventory.py:166 #, python-format -msgid "[image: %s]" -msgstr "[slika: %s]" - -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[slika]" - -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: writers/html5.py:415 +#: util/i18n.py:100 #, python-format -msgid "numfig_format is not defined for %s" +msgid "reading error: %s, %s" msgstr "" -#: writers/html5.py:427 +#: util/i18n.py:113 #, python-format -msgid "Any IDs not assigned for %s node" +msgid "writing error: %s, %s" msgstr "" -#: writers/html5.py:482 -msgid "Link to this term" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 +#: util/osutil.py:131 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: writers/html5.py:613 -msgid "Link to this code" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: util/display.py:87 +msgid "failed" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "Abecedni popis" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "" -#: writers/latex.py:743 writers/texinfo.py:644 +#: util/fileutil.py:76 +#, python-format msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: writers/texinfo.py:1302 +#: util/docfields.py:103 #, python-format -msgid "unimplemented node type: %r" +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: writers/latex.py:360 +#: util/rst.py:73 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "default role %s not found" msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 +#: util/nodes.py:462 #, python-format -msgid "no Babel option known for language %r" +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: writers/latex.py:590 +#: util/nodes.py:739 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: writers/latex.py:708 -msgid "document title is not a single Text node" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "nastavak sa prethodne stranice" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: writers/latex.py:1175 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Simboli" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: writers/latex.py:1931 +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "stranica" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Distribucija" + +#: transforms/post_transforms/images.py:79 #, python-format -msgid "unknown index entry type %s found" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "environment variable; %s" -msgstr "varijabla okruženja; %s" +msgid "Could not fetch remote image: %s [%d]" +msgstr "" -#: domains/std/__init__.py:112 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "%s; configuration value" +msgid "Unknown image format: %s..." msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" -msgstr "" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "više od jednog targeta za 'any' referencu %r: može biti %s" -#: domains/std/__init__.py:235 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +msgid "%s:%s reference target not found: %s" msgstr "" -#: domains/std/__init__.py:306 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "%s command line option" +msgid "%r reference target not found: %s" msgstr "" -#: domains/std/__init__.py:308 -msgid "command line option" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "termin rječnika" - -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "token gramatike" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" -#: domains/std/__init__.py:604 -msgid "reference label" -msgstr "referentna oznaka" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" -#: domains/std/__init__.py:607 -msgid "environment variable" -msgstr "varijabla okruženja" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "" -#: domains/std/__init__.py:608 -msgid "program option" -msgstr "programske mogućnosti" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" -#: domains/std/__init__.py:609 -msgid "document" -msgstr "dokument" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" -msgstr "Popis modula" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Sakrij pomoćnu traku" -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Tražilica" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigacija" -#: domains/std/__init__.py:722 +#: themes/basic/layout.html:115 #, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" +msgid "Search within %(docstitle)s" +msgstr "Traži između %(docstitle)s" -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "O ovim dokumentima" -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Traži" -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Sva prava zadržana" -#: domains/std/__init__.py:966 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "invalid numfig_format: %s (%r)" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: domains/std/__init__.py:969 +#: themes/basic/layout.html:201 #, python-format -msgid "invalid numfig_format: %s" +msgid "Last updated on %(last_updated)s." +msgstr "Zadnji put ažurirano %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: domains/std/__init__.py:1200 +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Prijašnja tema" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "Prijašnje poglavlje" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Sljedeća tema" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "sljedeće poglavlje" + +#: themes/basic/genindex-single.html:26 #, python-format -msgid "undefined label: %r" +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Potpun indeks na jednoj stranici" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Trenutna stranica" + +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Prikaži izvorni kod" + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Brzo pretraživanje" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Traži" + +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "Pregled" + +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "Dobro došli! Ovo je" + +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "dokumentacija za" + +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "posljednja promjena" + +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "Kazala i tablice:" + +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "Detaljni sadržaj" + +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "prikaži sve sekcije i podsekcije" + +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Tražilica" + +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "traži po dokumentaciji" + +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Općeniti popis modula" + +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "brz dostup do svih modula" + +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Opceniti abecedni indeks" + +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "sve funkcije, razredi, izrazi" + +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: domains/std/__init__.py:1202 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +msgid "Search %(docstitle)s" +msgstr "Traži %(docstitle)s" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Indeksiraj stranice po slovu" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "može biti ogromno" + +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "Molimo omogućite JavaScript\n za djelovanje tražilice." + +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "" + +#: themes/basic/search.html:35 +msgid "search" +msgstr "traži" + +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Sadržaj" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "Rezultati pretrage" + +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "Zadanim uvjetima nije pronađen dokument. Molim provjerite točnost upisanih riječi i odabir označenih kategija." + +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "Pretraživanje" + +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "Priprema pretrage..." + +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr ", u " + +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Sakrij rezultate pretrage" + +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "Promjene u verziji %(version)s — %(docstitle)s" + +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "Automatski generirani popis promjena u verziji %(version)s" + +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "Promjene lib-ova" + +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "C API promjene" + +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "Ostale promjene" + +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "Pokaži pomoćnu traku" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametri" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Varijable" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Podiže" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (u modulu %s)" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (u modulu %s)" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (ugrađene variable)" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (ugrađen razred)" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (razred u %s)" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s metoda klase)" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s statična metoda)" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python indeks modula" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "Moduli" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Zastarjelo" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "izuzetak" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "metoda klase" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statična metoda" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (zastarjelo)" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "Parametri" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "Varijable" - -#: domains/python/_object.py:173 -msgid "Raises" -msgstr "Podiže" - -#: domains/c/__init__.py:199 +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 #, python-format -msgid "%s (C %s)" +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "Parametri predloška" + +#: domains/cpp/__init__.py:302 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." +msgid "%s (C++ %s)" msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "član" -#: domains/c/__init__.py:680 -msgid "variable" -msgstr "varijabla" - -#: domains/c/__init__.py:682 -msgid "macro" -msgstr "makro" - -#: domains/c/__init__.py:683 -msgid "struct" -msgstr "" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "tip" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" -msgstr "" +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "koncept" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "tip" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" -msgstr "Parametri predloška" - -#: domains/cpp/__init__.py:277 +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "%s (C++ %s)" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "varijabla" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "makro" + +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "" + +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "varijabla okruženja; %s" + +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" + +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" + +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "" + +#: domains/std/__init__.py:239 #, python-format msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: domains/cpp/__init__.py:862 -msgid "concept" -msgstr "koncept" +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" +msgstr "" -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Sadržaj" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Traži" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Traži" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "termin rječnika" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Prikaži izvorni kod" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "token gramatike" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Sakrij pomoćnu traku" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "referentna oznaka" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigacija" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "varijabla okruženja" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Traži između %(docstitle)s" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "programske mogućnosti" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "O ovim dokumentima" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "dokument" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Sva prava zadržana" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Popis modula" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: domains/std/__init__.py:857 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: themes/basic/layout.html:201 +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "" + +#: domains/std/__init__.py:1124 #, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Zadnji put ažurirano %(last_updated)s." +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "" -#: themes/basic/layout.html:204 +#: domains/std/__init__.py:1138 #, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +msgid "the link has no caption: %s" msgstr "" -#: themes/basic/genindex-single.html:26 +#: domains/std/__init__.py:1153 #, python-format -msgid "Index – %(key)s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Potpun indeks na jednoj stranici" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Indeksiraj stranice po slovu" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "može biti ogromno" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" -#: themes/basic/opensearch.xml:4 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Search %(docstitle)s" -msgstr "Traži %(docstitle)s" +msgid "invalid value set (missing closing brace): %s" +msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Trenutna stranica" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "" -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "Pregled" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "Dobro došli! Ovo je" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "dokumentacija za" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "posljednja promjena" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Primjeri" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "Kazala i tablice:" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumenti" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "Detaljni sadržaj" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "prikaži sve sekcije i podsekcije" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "traži po dokumentaciji" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Općeniti popis modula" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "brz dostup do svih modula" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Opceniti abecedni indeks" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "sve funkcije, razredi, izrazi" +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Brzo pretraživanje" +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "Molimo omogućite JavaScript\n za djelovanje tražilice." +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "Osnovice: %s" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" msgstr "" -#: themes/basic/search.html:35 -msgid "search" -msgstr "traži" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Prijašnja tema" +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" +msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "Prijašnje poglavlje" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Sljedeća tema" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "sljedeće poglavlje" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "Pokaži pomoćnu traku" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" -msgstr "Promjene u verziji %(version)s — %(docstitle)s" +msgid "Failed to remove %s: %s" +msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "Automatski generirani popis promjena u verziji %(version)s" +msgid "Would create file %s." +msgstr "" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" -msgstr "Promjene lib-ova" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" -msgstr "C API promjene" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "Ostale promjene" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Sakrij rezultate pretrage" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "Rezultati pretrage" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "" -#: themes/basic/static/searchtools.js:119 +#: ext/apidoc/_cli.py:91 msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "Zadanim uvjetima nije pronađen dokument. Molim provjerite točnost upisanih riječi i odabir označenih kategija." - -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "Pretraživanje" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "Priprema pretrage..." +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " -msgstr ", u " +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "pogledajte %s" - -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" -msgstr "Dodatne informacije: %s" - -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Simboli" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:382 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "abecedni indeks" - -#: builders/html/__init__.py:560 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Logo of %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "naprijed" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "nazad" - -#: builders/html/__init__.py:695 -msgid "generating indices" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:793 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "cannot copy static file %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:634 #, python-format -msgid "dumping search index in %s" +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:679 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1344 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/html/__init__.py:1363 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1378 +#: ext/autosummary/generate.py:923 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:931 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:940 #, python-format -msgid "logo file %r does not exist" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/__init__.py:235 #, python-format -msgid "favicon file %r does not exist" +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "%s %s documentation" -msgstr "%s %s dokumentacija" - -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "failed to import object %s" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/__init__.py:119 +#: ext/autosummary/__init__.py:860 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/intersphinx/_load.py:61 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Distribucija" - -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: builders/latex/theming.py:90 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: _cli/util/errors.py:172 +#: ext/intersphinx/_load.py:324 msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "više od jednog targeta za 'any' referencu %r: može biti %s" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Unknown image format: %s..." +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" -msgstr "Primjeri" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" -msgstr "Argumenti" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "" - -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:526 -#, python-format -msgid "[autosummary] generating autosummary for: %s" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/autosummary/generate.py:530 -#, python-format -msgid "[autosummary] writing to %s" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:114 #, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:805 +#: builders/html/__init__.py:372 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:813 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "abecedni indeks" + +#: builders/html/__init__.py:549 #, python-format -msgid "custom template directory (default: %(default)s)" +msgid "Logo of %s" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "naprijed" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "nazad" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/autosummary/generate.py:829 -#, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:47 +#: builders/html/__init__.py:783 #, python-format -msgid "(in %s v%s)" -msgstr "(u %s v%s)" +msgid "cannot copy image file '%s': %s" +msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:367 -#, python-format -msgid "invalid external cross-reference suffix: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:378 +#: builders/html/__init__.py:923 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "cannot copy static file %r" msgstr "" -#: ext/intersphinx/_resolve.py:585 -#, python-format -msgid "external %s:%s reference target not found: %s" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_load.py:81 -#, python-format +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" - -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1225 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1266 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1365 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:807 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:902 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s dokumentacija" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 -#, python-format -msgid "Failed to get a function signature for %s: %s" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1760 -#, python-format -msgid "Bases: %s" -msgstr "Osnovice: %s" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" -#: ext/autodoc/__init__.py:1774 +#: builders/latex/__init__.py:529 #, python-format -msgid "missing attribute %s in object %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: builders/latex/__init__.py:537 #, python-format -msgid "alias of %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/toctree.py:259 #, python-format -msgid "alias of TypeVar(%s)" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/collectors/asset.py:126 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "download file not readable: %s" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "nastavak sa prethodne stranice" +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: environment/adapters/toctree.py:360 +#, python-format +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "stranica" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "pogledajte %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "Dodatne informacije: %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hu/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/hu/LC_MESSAGES/sphinx.mo index 51f44ec0382c67e7b6f7b5e36343349f97b30b0e..1b86a8db88af5a9f21bc2d0fdc4038b190e44963 100644 GIT binary patch delta 2767 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 KMepWSd;SGpCNg6H diff --git a/addons/source-python/packages/site-packages/sphinx/locale/hu/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/hu/LC_MESSAGES/sphinx.po index b341280fa..bbaaf99bb 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/hu/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/hu/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -13,153 +13,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Balázs Úr, 2020\n" "Language-Team: Hungarian (http://app.transifex.com/sphinx-doc/sphinx-1/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: hu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Fejlesztési Javaslatok; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Nem található a forráskönyvtár (%s)" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "A forráskönyvtár és célkönyvtár nem lehet azonos" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx %s verzió futtatása" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Ez a projekt legalább a Sphinx %s verzióját igényli, és emiatt nem állítható össze ezzel a verzióval." -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "kimeneti könyvtár elkészítése" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "a(z) %s kiterjesztés beállításakor:" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "A „setup”, ahogy jelenleg a conf.py fájlban meg van határozva, nem meghívható Python függvény. Módosítsa a meghatározását, hogy meghívható függvénnyé tegye. Ez ahhoz szükséges, hogy a conf.py Sphinx kiterjesztésként viselkedjen." -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "fordítások betöltése [%s]…" -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "kész" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "nem érhető el beépített üzenetekhez" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "pickle-t környezet betöltése" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "sikertelen: %s" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Nincs összeállító kiválasztva, az alapértelmezett használata: html" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "a(z) %r csomópontosztály már regisztrálva van, a látogatói felül lesznek bírálva" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" -msgstr "a(z) %r direktíva már regisztrálva van, felül lesz bírálva" +msgid "directive %r is already registered and will not be overridden" +msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -167,12 +314,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -180,645 +327,357 @@ msgid "" "explicit" msgstr "" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Fejlesztési Javaslatok; PEP %s" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "" -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "" -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" - -#: project.py:87 +#: config.py:351 #, python-format -msgid "Ignored unreadable document %r." -msgstr "" +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "a beállítási könyvtár nem tartalmaz conf.py fájlt (%s)" -#: highlighting.py:168 +#: config.py:374 #, python-format -msgid "Pygments lexer name %r is not known" +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: highlighting.py:202 +#: config.py:379 #, python-format msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" msgstr "" -#: extension.py:55 +#: config.py:391 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." +msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: extension.py:76 +#: config.py:399 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." +msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: theming.py:114 +#: config.py:422 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +msgid "unknown config value %r in override, ignoring" msgstr "" -#: theming.py:120 +#: config.py:476 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +msgid "No such config value: %r" msgstr "" -#: theming.py:135 +#: config.py:504 #, python-format -msgid "unsupported theme option %r given" +msgid "Config value %r already present" msgstr "" -#: theming.py:207 +#: config.py:541 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:268 +#: config.py:599 #, python-format -msgid "The %r theme has circular inheritance" +msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: theming.py:275 -#, python-format +#: config.py:603 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:282 +#: config.py:611 #, python-format -msgid "The %r theme has too many ancestors" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:310 +#: config.py:633 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:651 config.py:659 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:339 +#: config.py:665 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:686 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "Section %s" +msgstr "%s. bekezdés" -#: theming.py:347 +#: config.py:687 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +msgid "Fig. %s" +msgstr "%s. ábra" -#: theming.py:366 +#: config.py:688 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +msgid "Table %s" +msgstr "%s. táblázat" -#: config.py:309 +#: config.py:689 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "a beállítási könyvtár nem tartalmaz conf.py fájlt (%s)" +msgid "Listing %s" +msgstr "%s. felsorlás" -#: config.py:318 +#: config.py:798 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:341 -#, python-format +#: config.py:829 +#, python-brace-format msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." msgstr "" -#: config.py:350 -#, python-format -msgid "invalid number %r for config value %r, ignoring" +#: config.py:846 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." msgstr "" -#: config.py:356 +#: config.py:858 #, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" +msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: config.py:430 -#, python-format -msgid "No such config value: %r" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: config.py:453 -#, python-format -msgid "Config value %r already present" -msgstr "" - -#: config.py:489 -#, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" -msgstr "" - -#: config.py:527 -#, python-format -msgid "There is a syntax error in your configuration file: %s\n" -msgstr "" - -#: config.py:530 -msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "" - -#: config.py:537 -#, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" -msgstr "" - -#: config.py:560 -#, python-format -msgid "Failed to convert %r to a set or tuple" -msgstr "" - -#: config.py:581 config.py:586 -#, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." -msgstr "" - -#: config.py:589 -#, python-format -msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." -msgstr "" - -#: config.py:608 -#, python-format -msgid "Section %s" -msgstr "%s. bekezdés" - -#: config.py:609 -#, python-format -msgid "Fig. %s" -msgstr "%s. ábra" - -#: config.py:610 -#, python-format -msgid "Table %s" -msgstr "%s. táblázat" - -#: config.py:611 -#, python-format -msgid "Listing %s" -msgstr "%s. felsorlás" - -#: config.py:718 -msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." -msgstr "" - -#: config.py:742 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." -msgstr "" - -#: config.py:755 -msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." -msgstr "" - -#: config.py:766 -#, python-format -msgid "primary_domain %r not found, ignored." -msgstr "" - -#: config.py:778 -msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." -msgstr "" - -#: domains/rst.py:128 domains/rst.py:185 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktíva)" - -#: domains/rst.py:186 domains/rst.py:190 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:214 -#, python-format -msgid "%s (role)" -msgstr "%s (szerepkör)" - -#: domains/rst.py:224 -msgid "directive" -msgstr "direktíva" - -#: domains/rst.py:225 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:226 -msgid "role" -msgstr "szerepkör" - -#: domains/rst.py:248 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (beépített függvény)" - -#: domains/javascript.py:166 domains/python/__init__.py:253 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metódus)" - -#: domains/javascript.py:168 -#, python-format -msgid "%s() (class)" -msgstr "%s() (osztály)" - -#: domains/javascript.py:170 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globális változó vagy konstans)" - -#: domains/javascript.py:172 domains/python/__init__.py:338 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attribútum)" - -#: domains/javascript.py:255 -msgid "Arguments" -msgstr "Argumentum" - -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" -msgstr "Dob" - -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" -msgstr "Visszatérési érték" - -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" -msgstr "Visszatérés típusa" - -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" - -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" -msgstr "függvény" - -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" -msgstr "metódus" - -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" -msgstr "osztály" - -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" -msgstr "adat" - -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" -msgstr "attribútum" - -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" -msgstr "modul" - -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" -msgstr "A %s verzióban változott" - -#: domains/changeset.py:27 -#, python-format -msgid "Deprecated since version %s" -msgstr "Elavult a(z) %s verzió óta" - -#: domains/changeset.py:28 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/__init__.py:299 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/citation.py:73 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:84 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: domains/math.py:63 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/math.py:119 writers/latex.py:2479 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: environment/__init__.py:81 +#: environment/__init__.py:89 msgid "new config" msgstr "" -#: environment/__init__.py:82 +#: environment/__init__.py:90 msgid "config changed" msgstr "" -#: environment/__init__.py:83 +#: environment/__init__.py:91 msgid "extensions changed" msgstr "" -#: environment/__init__.py:249 +#: environment/__init__.py:261 msgid "build environment version not current" msgstr "" -#: environment/__init__.py:251 +#: environment/__init__.py:263 msgid "source directory has changed" msgstr "forrás mappa megváltozott" -#: environment/__init__.py:313 +#: environment/__init__.py:350 #, python-format msgid "The configuration has changed (1 option: %r)" msgstr "" -#: environment/__init__.py:318 +#: environment/__init__.py:355 #, python-format msgid "The configuration has changed (%d options: %s)" msgstr "" -#: environment/__init__.py:324 +#: environment/__init__.py:361 #, python-format msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: environment/__init__.py:366 +#: environment/__init__.py:404 msgid "" "This environment is incompatible with the selected builder, please choose " "another doctree directory." msgstr "" -#: environment/__init__.py:473 +#: environment/__init__.py:518 #, python-format msgid "Failed to scan documents in %s: %r" msgstr "" -#: environment/__init__.py:626 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format msgid "Domain %r is not registered" msgstr "" -#: environment/__init__.py:777 +#: environment/__init__.py:811 msgid "document isn't included in any toctree" msgstr "" -#: environment/__init__.py:810 +#: environment/__init__.py:922 msgid "self referenced toctree found. Ignored." msgstr "" -#: environment/__init__.py:839 +#: environment/__init__.py:952 #, python-format msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" @@ -863,3257 +722,3589 @@ msgstr "Javaslat" msgid "Warning" msgstr "Figyelem" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" msgstr "" -#: cmd/quickstart.py:117 +#: builders/manpage.py:37 #, python-format -msgid "Please enter one of %s." +msgid "The manual pages are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: cmd/quickstart.py:215 +#: builders/singlehtml.py:35 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:219 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: cmd/quickstart.py:227 -#, python-format -msgid "Selected root path: %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " msgstr "" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" msgstr "" -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: cmd/quickstart.py:282 -msgid "" -"The project name will occur in several places in the built documentation." +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" msgstr "" -#: cmd/quickstart.py:293 -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" -"just set both to the same value." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:308 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:324 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:334 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:352 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:381 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: cmd/quickstart.py:391 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: builders/xml.py:103 #, python-format -msgid "Creating file %s." +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 +#: builders/_epub_base.py:223 #, python-format -msgid "File %s already exists, skipping." +msgid "duplicated ToC entry found: %s" msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" msgstr "" -#: cmd/quickstart.py:504 +#: builders/_epub_base.py:467 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "cannot write image file %r: %s" msgstr "" -#: cmd/quickstart.py:512 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: cmd/quickstart.py:515 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: cmd/quickstart.py:522 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: builders/__init__.py:324 +msgid "all source files" msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: cmd/quickstart.py:646 -msgid "use epub" +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: builders/__init__.py:382 #, python-format -msgid "enable %s extension" +msgid "targets for %d source files that are out of date" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:770 +#: builders/__init__.py:563 +#, python-format msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "A megadott útvonal nem egy mappa vagy a sphinx állományok már léteznek." +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:795 +#: builders/__init__.py:725 #, python-format -msgid "Invalid template variable: %s" +msgid "docnames to write: %s" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: builders/__init__.py:743 +msgid "copying assets" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: builders/changes.py:65 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid "no changes in version %s." msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: builders/changes.py:67 +msgid "writing summary file..." msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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 "" +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Beépített" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Modul szint" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" +#: builders/changes.py:137 +msgid "copying source files..." msgstr "" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" -msgstr "" - -#: cmd/build.py:144 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:154 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" -#: cmd/build.py:180 -msgid "path to documentation source files" +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" msgstr "" -#: cmd/build.py:183 -msgid "path to output directory" +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" msgstr "" -#: cmd/build.py:188 +#: ext/coverage.py:148 +#, python-format msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:194 -msgid "general options" -msgstr "" - -#: cmd/build.py:201 -msgid "builder to use (default: 'html')" +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/build.py:210 +#: ext/coverage.py:158 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:220 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:227 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:230 -msgid "path options" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/build.py:236 +#: ext/coverage.py:172 +#, python-brace-format, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/build.py:246 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/build.py:255 -msgid "use no configuration file, only use settings from -D options" +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/build.py:264 -msgid "override a setting in configuration file" +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" msgstr "" -#: cmd/build.py:273 -msgid "pass a value into HTML templates" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" msgstr "" -#: cmd/build.py:282 -msgid "define tag: include \"only\" blocks with TAG" +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: cmd/build.py:289 -msgid "nitpicky mode: warn about all missing references" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/build.py:292 -msgid "console output options" -msgstr "" +#: ext/todo.py:61 +msgid "Todo" +msgstr "Tennivaló" -#: cmd/build.py:299 -msgid "increase verbosity (can be repeated)" +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 -msgid "no output on stdout, just warnings on stderr" +#: ext/todo.py:152 +msgid "<>" msgstr "" -#: cmd/build.py:313 -msgid "no output at all, not even warnings" +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" msgstr "" -#: cmd/build.py:321 -msgid "do emit colored output (default: auto-detect)" -msgstr "" +#: ext/todo.py:166 +msgid "original entry" +msgstr "eredeti bejegyzés" -#: cmd/build.py:329 -msgid "do not emit colored output (default: auto-detect)" +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/build.py:332 -msgid "warning control options" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/build.py:338 -msgid "write warnings (and errors) to given file" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/build.py:345 -msgid "turn warnings into errors" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" msgstr "" -#: cmd/build.py:353 -msgid "show full traceback on exception" +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" msgstr "" -#: cmd/build.py:356 -msgid "run Pdb on exception" +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." msgstr "" -#: cmd/build.py:362 -msgid "raise an exception on warnings" +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/build.py:405 -msgid "cannot combine -a option and filenames" +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" msgstr "" -#: cmd/build.py:437 +#: ext/graphviz.py:339 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/build.py:456 -msgid "-D option argument must be in the form name=value" +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/build.py:463 -msgid "-A option argument must be in the form name=value" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" msgstr "" -#: builders/linkcheck.py:75 +#: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "" +msgid "[graph: %s]" +msgstr "[graph: %s]" -#: builders/linkcheck.py:146 +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[graph]" + +#: ext/imgmath.py:148 #, python-format -msgid "broken link: %s (%s)" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: builders/linkcheck.py:540 +#: ext/imgmath.py:167 #, python-format -msgid "Anchor '%s' not found" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: builders/linkcheck.py:742 +#: ext/imgmath.py:326 #, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgid "display latex %r: %s" msgstr "" -#: builders/singlehtml.py:37 +#: ext/imgmath.py:362 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "inline latex %r: %s" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: builders/singlehtml.py:191 -msgid "writing additional files" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." msgstr "" -#: builders/manpage.py:39 +#: ext/doctest.py:139 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "'%s' is not a valid pyversion option" msgstr "" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: builders/manpage.py:73 +#: ext/doctest.py:297 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: builders/text.py:34 +#: ext/doctest.py:451 #, python-format -msgid "The text files are in %(outdir)s." +msgid "no code/output in %s block at %s:%s" msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: ext/doctest.py:568 #, python-format -msgid "error writing file %s: %s" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: builders/xml.py:38 +#: ext/autosectionlabel.py:52 #, python-format -msgid "The XML files are in %(outdir)s." +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: builders/xml.py:110 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "The pseudo-XML files are in %(outdir)s." +msgid "duplicate label %s, other instance in %s" msgstr "" -#: builders/texinfo.py:47 +#: ext/duration.py:47 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: builders/texinfo.py:49 +#: ext/duration.py:117 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +"====================== total reading duration ==========================" msgstr "" -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: builders/texinfo.py:90 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 +#: ext/duration.py:139 #, python-format -msgid "processing %s" +msgid "%.3fs %s" msgstr "" -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[source]" + +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " -msgstr " (" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " -msgstr "" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Modul forráskód" -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 +#: ext/viewcode.py:359 #, python-format -msgid "cannot copy image file %r: %s" -msgstr "" +msgid "

Source code for %s

" +msgstr "

%s forráskódja

" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Áttekintés: modul forráskód" -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Az összes modul, melynek forrása elérhető

" -#: builders/gettext.py:230 +#: domains/citation.py:75 #, python-format -msgid "The message catalogs are in %(outdir)s." +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/__init__.py:383 builders/gettext.py:251 +#: domains/citation.py:92 #, python-format -msgid "building [%s]: " +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/gettext.py:252 +#: domains/math.py:73 #, python-format -msgid "targets for %d template files" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/gettext.py:257 -msgid "reading templates... " +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/gettext.py:292 -msgid "writing message catalogs... " -msgstr "" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (beépített függvény)" -#: builders/__init__.py:212 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +msgid "%s() (%s method)" +msgstr "%s() (%s metódus)" -#: builders/__init__.py:220 +#: domains/javascript.py:186 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (osztály)" -#: builders/__init__.py:243 -msgid "building [mo]: " -msgstr "" +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "%s (globális változó vagy konstans)" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (%s attribútum)" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumentum" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Dob" -#: builders/__init__.py:263 +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Visszatérési érték" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Visszatérés típusa" + +#: domains/javascript.py:374 #, python-format -msgid "all of %d po files" -msgstr "" +msgid "%s (module)" +msgstr "%s (modul)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "függvény" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metódus" -#: builders/__init__.py:285 +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "osztály" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "adat" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attribútum" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" + +#: domains/javascript.py:458 #, python-format -msgid "targets for %d po files that are specified" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktíva)" -#: builders/__init__.py:307 -msgid "all source files" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 +#: domains/rst.py:224 #, python-format -msgid "file %r given on command line does not exist, " +msgid "%s (role)" +msgstr "%s (szerepkör)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direktíva" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:325 +#: domains/rst.py:236 +msgid "role" +msgstr "szerepkör" + +#: domains/rst.py:262 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:336 +#: domains/changeset.py:32 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:351 +#: domains/changeset.py:33 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Changed in version %s" +msgstr "A %s verzióban változott" -#: builders/__init__.py:366 +#: domains/changeset.py:34 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Elavult a(z) %s verzió óta" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:398 +#: domains/__init__.py:322 #, python-format -msgid "%d found" +msgid "%s %s" +msgstr "%s %s" + +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:483 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:519 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:528 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:539 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:546 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" + +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:465 +#: cmd/build.py:357 #, python-format -msgid "cannot write image file %r: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:793 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/changes.py:33 -#, python-format -msgid "The overview file is in %(outdir)s." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/changes.py:60 -#, python-format -msgid "no changes in version %s." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/changes.py:74 -msgid "Builtins" -msgstr "Beépített" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "" -#: builders/changes.py:76 -msgid "Module level" -msgstr "Modul szint" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "" -#: builders/changes.py:128 -msgid "copying source files..." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/changes.py:137 +#: cmd/quickstart.py:134 #, python-format -msgid "could not read %r for changelog creation" +msgid "Please enter one of %s." msgstr "" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: util/osutil.py:130 +#: cmd/quickstart.py:230 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: util/nodes.py:419 -#, python-format +#: cmd/quickstart.py:235 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: util/nodes.py:487 +#: cmd/quickstart.py:242 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "Selected root path: %s" msgstr "" -#: util/nodes.py:701 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "" -#: util/fileutil.py:74 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: util/inventory.py:170 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: util/inventory.py:185 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: util/docutils.py:284 -#, python-format -msgid "unknown directive or role name: %s:%s" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: util/docutils.py:747 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: util/display.py:81 -msgid "skipped" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: util/display.py:86 -msgid "failed" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: util/i18n.py:138 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: util/i18n.py:230 -#, python-format +#: cmd/quickstart.py:309 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +"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" +"just set both to the same value." +msgstr "" + +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: directives/patches.py:66 +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "" + +#: cmd/quickstart.py:324 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: directives/code.py:87 -#, python-format -msgid "Invalid caption: %s" +#: cmd/quickstart.py:340 +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 "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 -#, python-format -msgid "line number spec is out of range(1-%d): %r" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: directives/code.py:234 +#: cmd/quickstart.py:368 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: directives/code.py:314 -#, python-format -msgid "Line spec %r: no lines pulled from include file %r" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "" + +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "" + +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Creating file %s." msgstr "" -#: directives/other.py:171 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "File %s already exists, skipping." msgstr "" -#: directives/other.py:204 -msgid "Section author: " -msgstr "Fejezet szerző: " +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" -#: directives/other.py:206 -msgid "Module author: " -msgstr "Modul szerző: " +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "" -#: directives/other.py:208 -msgid "Code author: " -msgstr "Kód szerző: " +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "" -#: directives/other.py:210 -msgid "Author: " -msgstr "Szerző: " +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:75 -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: _cli/__init__.py:172 -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: _cli/__init__.py:182 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: _cli/__init__.py:194 -msgid "Show the version and exit." +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: _cli/__init__.py:202 -msgid "Show this message and exit." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: _cli/__init__.py:206 -msgid "Logging" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: _cli/__init__.py:213 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: _cli/__init__.py:221 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: _cli/__init__.py:228 -msgid "No output at all" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: _cli/__init__.py:234 -msgid "" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: _cli/__init__.py:265 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 +#: cmd/quickstart.py:671 #, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" +msgid "enable %s extension" +msgstr "" -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: transforms/__init__.py:148 -msgid "no translated elements!" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: transforms/i18n.py:228 transforms/i18n.py:303 -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: transforms/i18n.py:273 -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: transforms/i18n.py:323 -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: transforms/i18n.py:345 -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" -msgstr "[source]" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" -#: ext/imgconverter.py:40 -#, python-format +#: cmd/quickstart.py:786 msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "A megadott útvonal nem egy mappa vagy a sphinx állományok már léteznek." -#: ext/imgconverter.py:49 ext/imgconverter.py:73 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: ext/imgconverter.py:68 +#: cmd/quickstart.py:810 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" +msgid "Invalid template variable: %s" msgstr "" -#: ext/viewcode.py:258 -msgid "highlighting module code... " +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: ext/viewcode.py:286 -msgid "[docs]" -msgstr "[docs]" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "" -#: ext/viewcode.py:306 -msgid "Module code" -msgstr "Modul forráskód" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "" -#: ext/viewcode.py:312 +#: directives/other.py:169 #, python-format -msgid "

Source code for %s

" -msgstr "

%s forráskódja

" +msgid "duplicated entry found in toctree: %s" +msgstr "" -#: ext/viewcode.py:338 -msgid "Overview: module code" -msgstr "Áttekintés: modul forráskód" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Fejezet szerző: " -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" -msgstr "

Az összes modul, melynek forrása elérhető

" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Modul szerző: " -#: ext/coverage.py:47 -#, python-format -msgid "invalid regex %r in %s" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Kód szerző: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Szerző: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 -#, python-format -msgid "module %s could not be imported: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: ext/coverage.py:141 -#, python-format +#: directives/patches.py:70 msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: ext/coverage.py:149 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: ext/coverage.py:163 +#: directives/code.py:87 #, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." +msgid "Invalid caption: %s" msgstr "" -#: ext/coverage.py:177 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "invalid regex %r in coverage_c_regexes" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: ext/coverage.py:245 +#: directives/code.py:216 #, python-format -msgid "undocumented c api: %s [%s] in file %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: ext/coverage.py:429 +#: directives/code.py:231 #, python-format -msgid "undocumented python function: %s :: %s" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: ext/coverage.py:445 +#: directives/code.py:235 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: ext/coverage.py:458 +#: directives/code.py:276 #, python-format -msgid "undocumented python method: %s :: %s :: %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: ext/todo.py:71 -msgid "Todo" -msgstr "Tennivaló" - -#: ext/todo.py:104 -#, python-format -msgid "TODO entry found: %s" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: ext/todo.py:163 -msgid "<>" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: ext/todo.py:165 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "%b %d, %Y" +msgstr "%b %d, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Tárgymutató" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: ext/todo.py:175 -msgid "original entry" -msgstr "eredeti bejegyzés" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Lábjegyzetek" -#: ext/extlinks.py:82 +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "unimplemented node type: %r" msgstr "" -#: ext/doctest.py:115 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "[image: %s]" +msgstr "[image: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[image]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: ext/doctest.py:120 +#: writers/html5.py:431 #, python-format -msgid "'%s' is not a valid option." +msgid "numfig_format is not defined for %s" msgstr "" -#: ext/doctest.py:134 +#: writers/html5.py:441 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "Any IDs not assigned for %s node" msgstr "" -#: ext/doctest.py:220 -msgid "invalid TestCode type" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: ext/doctest.py:281 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: ext/doctest.py:434 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: ext/doctest.py:522 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "unsupported rubric heading level: %s" msgstr "" -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: ext/graphviz.py:268 +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "" + +#: writers/latex.py:386 #, python-format -msgid "graphviz_dot executable path must be set! %r" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: ext/graphviz.py:303 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" +msgid "no Babel option known for language %r" +msgstr "" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: ext/graphviz.py:310 +#: writers/latex.py:616 #, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" + +#: writers/latex.py:1198 msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: ext/graphviz.py:313 +#: writers/latex.py:1228 #, python-format msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: ext/graphviz.py:329 +#: writers/latex.py:1615 #, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: writers/latex.py:1950 #, python-format -msgid "dot code %r: %s" +msgid "unknown index entry type %s found" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 -#, python-format -msgid "[graph: %s]" -msgstr "[graph: %s]" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "[graph]" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: ext/apidoc.py:85 -#, python-format -msgid "Would create file %s." +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: ext/apidoc.py:392 -msgid "path to module to document" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: ext/apidoc.py:396 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: ext/apidoc.py:407 -msgid "directory to place all output" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: ext/apidoc.py:429 -msgid "overwrite existing files" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: ext/apidoc.py:437 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: ext/apidoc.py:446 -msgid "run the script without creating files" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: ext/apidoc.py:481 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: ext/apidoc.py:498 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/apidoc.py:564 -msgid "extension options" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: ext/apidoc.py:638 +#: util/i18n.py:100 #, python-format -msgid "%s is not a directory." -msgstr "%s nem mappa" +msgid "reading error: %s, %s" +msgstr "" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 +#: util/i18n.py:113 #, python-format -msgid "Failed to remove %s: %s" +msgid "writing error: %s, %s" msgstr "" -#: ext/autosectionlabel.py:48 +#: util/i18n.py:146 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "locale_dir %s does not exist" msgstr "" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 +#: util/i18n.py:244 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: ext/duration.py:85 +#: util/i18n.py:253 +#, python-format msgid "" -"====================== slowest reading durations =======================" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: ext/imgmath.py:159 +#: util/osutil.py:131 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: ext/imgmath.py:174 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: ext/imgmath.py:328 -#, python-format -msgid "display latex %r: %s" +#: util/display.py:87 +msgid "failed" msgstr "" -#: ext/imgmath.py:362 +#: util/docutils.py:325 #, python-format -msgid "inline latex %r: %s" +msgid "unknown directive name: %s" msgstr "" -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" -msgstr "Lábjegyzetek" - -#: writers/manpage.py:309 writers/text.py:936 +#: util/docutils.py:361 #, python-format -msgid "[image: %s]" -msgstr "[image: %s]" - -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[image]" - -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" +msgid "unknown role name: %s" msgstr "" -#: writers/html5.py:415 +#: util/docutils.py:805 #, python-format -msgid "numfig_format is not defined for %s" +msgid "unknown node type: %r" msgstr "" -#: writers/html5.py:427 +#: util/fileutil.py:76 #, python-format -msgid "Any IDs not assigned for %s node" +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: writers/html5.py:482 -msgid "Link to this term" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 +#: util/nodes.py:462 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: writers/html5.py:613 -msgid "Link to this code" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "folytatás az előző oldalról" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "Tárgymutató" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Szimbólumok" -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "oldal" -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Kiadás" -#: writers/latex.py:360 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: writers/latex.py:590 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:708 -msgid "document title is not a single Text node" +msgid "Unknown image format: %s..." msgstr "" -#: writers/latex.py:1175 +#: transforms/post_transforms/__init__.py:88 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: writers/latex.py:1573 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "dimension unit %s is invalid. Ignored." +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: writers/latex.py:1931 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "unknown index entry type %s found" +msgid "%s:%s reference target not found: %s" msgstr "" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 -#, python-format -msgid "environment variable; %s" -msgstr "környezeti változó; %s" - -#: domains/std/__init__.py:112 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "%s; configuration value" +msgid "%r reference target not found: %s" msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: domains/std/__init__.py:235 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: domains/std/__init__.py:308 -msgid "command line option" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "szójegyzék" - -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "nyelvtani jel" - -#: domains/std/__init__.py:604 -msgid "reference label" -msgstr "referencia cimke" - -#: domains/std/__init__.py:607 -msgid "environment variable" -msgstr "környezeti változó" - -#: domains/std/__init__.py:608 -msgid "program option" -msgstr "program opció" - -#: domains/std/__init__.py:609 -msgid "document" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" -msgstr "Modulok" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Oldalsáv összezárása" -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Keresés" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigáció" -#: domains/std/__init__.py:722 +#: themes/basic/layout.html:115 #, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" +msgid "Search within %(docstitle)s" +msgstr "Keresés köztük: %(docstitle)s" -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Névjegy ezekről a dokumentumokról" -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Keresés" -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Minden jog fenntartva" -#: domains/std/__init__.py:966 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "invalid numfig_format: %s (%r)" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: domains/std/__init__.py:969 +#: themes/basic/layout.html:201 #, python-format -msgid "invalid numfig_format: %s" -msgstr "" +msgid "Last updated on %(last_updated)s." +msgstr "Utolsó frissítés %(last_updated)s." -#: domains/std/__init__.py:1200 +#: themes/basic/layout.html:204 #, python-format -msgid "undefined label: %r" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Előző témakör" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 -#, python-format -msgid "%s() (in module %s)" -msgstr "%s() (%s modulban)" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "előző fejezet" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 -#, python-format -msgid "%s (in module %s)" -msgstr "%s (%s modulban)" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Következő témakör" -#: domains/python/__init__.py:169 -#, python-format -msgid "%s (built-in variable)" -msgstr "%s (beépített változó)" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "következő fejezet" -#: domains/python/__init__.py:194 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "%s (built-in class)" -msgstr "%s (beépített osztály)" +msgid "Index – %(key)s" +msgstr "" -#: domains/python/__init__.py:195 -#, python-format -msgid "%s (class in %s)" -msgstr "%s (osztály %s)" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Teljes tárgymutató egy oldalon" -#: domains/python/__init__.py:249 -#, python-format -msgid "%s() (%s class method)" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Ez az Oldal" + +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Forrás megtekintése" + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Gyorskeresés" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Ok" + +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "Áttekintés" + +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "Üdvözöljük! Ez a" + +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "dokumentáció" + +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "utoljára frissítve" + +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "Tárgymutató és táblázatok" + +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "Teljes tartalomjegyzék" + +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "kilistázza az összes fejezetet és alfejezetet" + +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Keresés" + +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "keresés ebben a dokumentációban" + +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Teljes modul tárgymutató" + +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "gyors hozzáférés az összes modulhoz" + +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Általános tárgymutató" + +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "összes funkció, osztály és kifejezés" + +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "" + +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Keresés %(docstitle)s" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Oldalak ABC sorrendben" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "nagy lehet" + +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "Kérem engedélyezze a JavaScriptet a kereső funkció\n használatához." + +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "" + +#: themes/basic/search.html:35 +msgid "search" +msgstr "keresés" + +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Tartalom" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "Keresési Eredmények" + +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "A keresése nem hozott eredményt. Ellenőrizze, a megadott kulcsszavakat és azt, hogy megfelelő számú kategória van-e kiválasztva." + +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "Keresés folyamatban" + +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "Felkészülés a keresésre..." + +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr ", " + +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Keresési Találatok Elrejtése" + +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "Automatikusan generált változáslista a(z) %(version)s változathoz" + +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "Könyvtár változások" + +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "C API változások" + +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "Egyéb változások" + +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "Oldalsáv kinyitása" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "" + +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Paraméterek" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Változók" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Kivétel" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 +#, python-format +msgid "%s() (in module %s)" +msgstr "%s() (%s modulban)" + +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 +#, python-format +msgid "%s (in module %s)" +msgstr "%s (%s modulban)" + +#: domains/python/__init__.py:174 +#, python-format +msgid "%s (built-in variable)" +msgstr "%s (beépített változó)" + +#: domains/python/__init__.py:209 +#, python-format +msgid "%s (built-in class)" +msgstr "%s (beépített osztály)" + +#: domains/python/__init__.py:210 +#, python-format +msgid "%s (class in %s)" +msgstr "%s (osztály %s)" + +#: domains/python/__init__.py:275 +#, python-format +msgid "%s() (%s class method)" msgstr "%s() (%s osztály metódus)" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s statikus metódus)" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python Modul Mutató" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modulok" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Elavult" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "kivétel" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "osztály szintű metódus" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statikus metódus" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (elavult)" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" -msgstr "Paraméterek" - -#: domains/python/_object.py:169 -msgid "Variables" -msgstr "Változók" - -#: domains/python/_object.py:173 -msgid "Raises" -msgstr "Kivétel" - -#: domains/c/__init__.py:199 +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 #, python-format -msgid "%s (C %s)" +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "Sablonparaméterek" + +#: domains/cpp/__init__.py:302 #, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." +msgid "%s (C++ %s)" msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "tag" -#: domains/c/__init__.py:680 -msgid "variable" -msgstr "változó" - -#: domains/c/__init__.py:682 -msgid "macro" -msgstr "makró" - -#: domains/c/__init__.py:683 -msgid "struct" -msgstr "" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "típus" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" +#: domains/cpp/__init__.py:946 +msgid "concept" msgstr "" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enumeráció" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerátor" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" -msgstr "típus" - -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" -msgstr "Sablonparaméterek" - -#: domains/cpp/__init__.py:277 -#, python-format -msgid "%s (C++ %s)" +#: domains/cpp/__init__.py:954 +msgid "template parameter" msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/cpp/__init__.py:862 -msgid "concept" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Tartalom" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "változó" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "makró" + +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Keresés" +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "környezeti változó; %s" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Ok" +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Forrás megtekintése" +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Oldalsáv összezárása" +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigáció" +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "" -#: themes/basic/layout.html:115 +#: domains/std/__init__.py:319 #, python-format -msgid "Search within %(docstitle)s" -msgstr "Keresés köztük: %(docstitle)s" +msgid "%s command line option" +msgstr "" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Névjegy ezekről a dokumentumokról" +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Minden jog fenntartva" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Utolsó frissítés %(last_updated)s." +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "szójegyzék" + +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "nyelvtani jel" + +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "referencia cimke" + +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "környezeti változó" + +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "program opció" + +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: themes/basic/genindex-single.html:26 +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Modulok" + +#: domains/std/__init__.py:857 #, python-format -msgid "Index – %(key)s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Teljes tárgymutató egy oldalon" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Oldalak ABC sorrendben" +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "nagy lehet" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" +msgstr "" -#: themes/basic/opensearch.xml:4 +#: domains/std/__init__.py:1153 #, python-format -msgid "Search %(docstitle)s" -msgstr "Keresés %(docstitle)s" +msgid "invalid numfig_format: %s (%r)" +msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Ez az Oldal" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "" -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "Áttekintés" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "Üdvözöljük! Ez a" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "dokumentáció" +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "utoljára frissítve" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "Tárgymutató és táblázatok" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "Teljes tartalomjegyzék" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "kilistázza az összes fejezetet és alfejezetet" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "" -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "keresés ebben a dokumentációban" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "" -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Teljes modul tárgymutató" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "gyors hozzáférés az összes modulhoz" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Általános tárgymutató" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "összes funkció, osztály és kifejezés" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Gyorskeresés" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "Kérem engedélyezze a JavaScriptet a kereső funkció\n használatához." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: themes/basic/search.html:35 -msgid "search" -msgstr "keresés" +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Előző témakör" +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "előző fejezet" +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Következő témakör" +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" +msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "következő fejezet" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "Oldalsáv kinyitása" +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" +msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/autodoc/_names.py:89 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "Automatikusan generált változáslista a(z) %(version)s változathoz" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" -msgstr "Könyvtár változások" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" -msgstr "C API változások" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "Egyéb változások" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "" -#: themes/basic/changes/rstsource.html:5 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "%(filename)s — %(docstitle)s" +msgid "Would create file %s." msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Keresési Találatok Elrejtése" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "Keresési Eredmények" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" -#: themes/basic/static/searchtools.js:119 +#: ext/apidoc/_cli.py:50 msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "A keresése nem hozott eredményt. Ellenőrizze, a megadott kulcsszavakat és azt, hogy megfelelő számú kategória van-e kiválasztva." +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "Keresés folyamatban" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "Felkészülés a keresésre..." +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " -msgstr ", " +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format +#: ext/apidoc/_cli.py:135 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "lásd %s" - -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" -msgstr "lásd még %s" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Szimbólumok" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:382 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "nyitóoldal" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:560 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Logo of %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "következő" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "előző" - -#: builders/html/__init__.py:695 -msgid "generating indices" -msgstr "" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "%s nem mappa" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:793 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "cannot copy static file %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:634 #, python-format -msgid "dumping search index in %s" +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:679 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1344 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/html/__init__.py:1363 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1378 +#: ext/autosummary/generate.py:923 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:931 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:940 #, python-format -msgid "logo file %r does not exist" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/__init__.py:235 #, python-format -msgid "favicon file %r does not exist" +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "%s %s documentation" -msgstr "%s %s dokumentáció" - -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "failed to import object %s" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/__init__.py:119 +#: ext/autosummary/__init__.py:860 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/intersphinx/_load.py:61 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Kiadás" - -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: builders/latex/theming.py:90 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: _cli/util/errors.py:172 +#: ext/intersphinx/_load.py:324 msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Unknown image format: %s..." +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "" - -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:526 -#, python-format -msgid "[autosummary] generating autosummary for: %s" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/autosummary/generate.py:530 -#, python-format -msgid "[autosummary] writing to %s" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:114 #, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:805 +#: builders/html/__init__.py:372 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:813 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "nyitóoldal" + +#: builders/html/__init__.py:549 #, python-format -msgid "custom template directory (default: %(default)s)" +msgid "Logo of %s" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "következő" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "előző" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/autosummary/generate.py:829 -#, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:47 +#: builders/html/__init__.py:783 #, python-format -msgid "(in %s v%s)" -msgstr "(%s v%s)" +msgid "cannot copy image file '%s': %s" +msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:367 -#, python-format -msgid "invalid external cross-reference suffix: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:378 +#: builders/html/__init__.py:923 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "cannot copy static file %r" msgstr "" -#: ext/intersphinx/_resolve.py:585 -#, python-format -msgid "external %s:%s reference target not found: %s" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_load.py:81 -#, python-format +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" - -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1225 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1266 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1365 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:807 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:902 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s dokumentáció" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 -#, python-format -msgid "Failed to get a function signature for %s: %s" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1760 -#, python-format -msgid "Bases: %s" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1774 +#: builders/latex/__init__.py:529 #, python-format -msgid "missing attribute %s in object %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: builders/latex/__init__.py:537 #, python-format -msgid "alias of %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/toctree.py:259 #, python-format -msgid "alias of TypeVar(%s)" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/collectors/asset.py:126 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "download file not readable: %s" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "folytatás az előző oldalról" +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: environment/adapters/toctree.py:360 +#, python-format +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "oldal" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "lásd %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "lásd még %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/id/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/id/LC_MESSAGES/sphinx.mo index 824aafc7ceb8acb14655312d7bab26112fc7f3cc..64b6f21823321fea944a7ee9011d56df8ef467c5 100644 GIT binary patch delta 9551 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 delta 9885 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 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/id/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/id/LC_MESSAGES/sphinx.po index 38005e0e1..8743b27e9 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/id/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/id/LC_MESSAGES/sphinx.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: oon arfiandwi (OonID) , 2023\n" "Language-Team: Indonesian (http://app.transifex.com/sphinx-doc/sphinx-1/language/id/)\n" @@ -24,6 +24,127 @@ msgstr "" "Language: id\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "nomor PEP %s tidak valid" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "nomor RFC tidak valid %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "pengaturan %s.%s terjadi pada tak satupun konfigurasi tema yang dicari" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "opsi tema yang tidak didukung %r diberikan" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "berkas %r pada path tema merupakan berkas zip yang tidak valid atau tidak berisi tema" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -38,127 +159,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Proyek ini memerlukan ekstensi %s sedikitnya pada versi %s dan maka itu tidak bisa dibangun dengan versi yang dimuat (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Nama Pygments lexer %r tidak diketahui" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Event %r sudah ada" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Nama event tidak dikenal: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Tidak dapat menemukan direktori sumber (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Direktori keluaran (%s) bukan direktori" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Direktori sumber dan direktori tujuan tidak boleh sama" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Menjalankan Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Proyek ini memerlukan sedikitnya Sphinx v%s dan maka itu tidak bisa dibangun dengan versi ini." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "membuat direktori keluaran" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "saat menyiapkan ekstensi %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' yang saat ini didefinisikan pada conf.py bukanlah sebuah Python callable. Silakan modifikasi definisinya untuk membuatnya menjadi fungsi callable. Hal ini diperlukan guna conf.py berjalan sebagai ekstensi Sphinx." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "memuat terjemahan [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "selesai" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "tidak tersedia untuk built-in messages" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "memuat lingkungan yang diawetkan" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "gagal: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Tidak ada builder yang dipilih, menggunakan default: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "kelas simpul %r sudah terdaftar, pengunjungnya akan diganti" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -166,12 +314,12 @@ msgid "" "explicit" msgstr "ekstensi %s tidak akan dinyatakan jika itu aman untuk pembacaan paralel, dengan anggapan itu tidak aman - silakan tanya pembuat ekstensi untuk memeriksa dan membuatnya eksplisit" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "ekstensi %s tidak aman untuk pembacaan paralel" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -179,82 +327,214 @@ msgid "" "explicit" msgstr " \nekstensi %s tidak akan dinyatakan jika itu aman untuk penulisan paralel, dengan anggapan itu tidak aman - silakan tanya pembuat ekstensi untuk memeriksa dan membuatnya eksplisit" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "ekstensi %s tidak aman untuk penulisan paralel" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "mengerjakan serial %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "direktori konfigurasi tidak berisi berkas conf.py (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Class Builder %s tidak punya atribut \"name\"" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Builder %r sudah ada (di modul %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Nama Builder %s todal terdaftar atau tersedia melalui entry point" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Nama Builder %s tidak terdaftar" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domain %s telah terdaftar" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domain %s belum didaftarkan" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "Pengarahan %r sudah terdaftar di domain %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "Peran %r sudah terdaftar di domain %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "Indeks %r sudah terdaftar ke domain %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "object_type %r telah didaftarkan" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "crossref_type %r telah didaftarkan" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r telah didaftarkan" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser untuk %r telah didaftarkan" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Parser sumber untuk %s tidak terdaftar" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Penerjemah untuk %r sudah ada" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwargs untuk add_node() harus berupa (visit, depart) function tuple: %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r telah terdaftar" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "ekstensi %r telah digabungkan dengan Sphinx sejak versi %s; ekstensi diabaikan." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Eksepsi orisinal:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Tidak dapat mengimpor ekstensi %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "ekstensi %r tidak memiliki fungsi setup(); apa itu benar-benar sebuah modul ekstensi Sphinx?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Ekstensi %s yang digunakan proyek ini memerlukan sedikitnya Sphinx v%s; maka itu tidak bisa dibangun dengan versi ini." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "ekstensi %r mengembalikan objek yang tidak didukung dari fungsi setup() nya; seharusnya mengembalikan None atau dictionary metadata" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "direktori konfigurasi tidak berisi berkas conf.py (%s)" + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "tidak dapat menulis ulang pengaturan direktori konfigurasi %r, mengabaikan (gunakan %r untuk mengatur elemen-elemen satuan)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "nomor %r yang salah untuk konfigurasi nilai %r, mengabaikan" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "tidak dapat menulis ulang pengaturan konfigurasi %r dengan tipe yang tidak didukung, mengabaikan" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "nilai konfigurasi %r yang tidak dikenal pada penulisan ulang, mengabaikan" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Nilai konfigurasi %r sudah ada" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Ada kesalahan sintaksis dalam file konfigurasi Anda: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Berkas konfigurasi (atau salah satu dari modul terimpor) disebut sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -262,551 +542,736 @@ msgid "" "%s" msgstr "Terdapat kesalahan programmable dalam berkas konfigurasi anda:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Bab %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Gambar. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabel %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Daftar %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "Nilai konfigurasi `{name}` harus salah satu dari {candidates}, tapi `{current}` diberikan." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "Nilai konfigurasi `{name}' memiliki tipe `{current.__name__}'; diharapkan {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "Nilai konfigurasi `{name}` bertipe `{current.__name__}', default menjadi `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r tidak ditemukan, diabaikan." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Nama Pygments lexer %r tidak diketahui" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "konfigurasi baru" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "konfigurasi berubah" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "pengaturan %s.%s terjadi pada tak satupun konfigurasi tema yang dicari" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "ekstensi berubah" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "opsi tema yang tidak didukung %r diberikan" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "membangun lingkungan bukan versi saat ini" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "berkas %r pada path tema merupakan berkas zip yang tidak valid atau tidak berisi tema" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "direktori sumber telah berubah" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Lingkungan ini tidak kompatibel dengan pembangun yang dipilih, silakan pilih direktori doctree lain." -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "Gagal memindai dokumen dalam %s: %r" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "Domain %r tidak terdaftar" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "dokumen tidak termasuk dalam toctree" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "totree referensikan sendiri ditemukan. Diabaikan" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Pehatian" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Event %r sudah ada" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Hati-hati" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Nama event tidak dikenal: %s" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Bahaya" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Kesalahan" -#: project.py:72 +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Petunjuk" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Penting" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Catatan" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Lihat juga" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tip" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Peringatan" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Berkas Texinfo berada di %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nJalankan 'make' di direktori tersebut untuk menjalankannya melalui makeinfo\n(gunakan 'make info' di sini untuk melakukannya secara otomatis)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "tidak ditemukan nilai konfigurasi \"texinfo_documents\"; dokumen tidak akan ditulis" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Class Builder %s tidak punya atribut \"name\"" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "nilai konfigurasi \"texinfo_documents\" mereferensikan dokumen yang tidak dikenal %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Builder %r sudah ada (di modul %s)" +msgid "processing %s" +msgstr "memroses %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Nama Builder %s todal terdaftar atau tersedia melalui entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "penulisan" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Nama Builder %s tidak terdaftar" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "memecahkan referensi..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "domain %s telah terdaftar" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (dalam " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "domain %s belum didaftarkan" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "menyalin gambar... " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "Pengarahan %r sudah terdaftar di domain %s" +msgid "cannot copy image file %r: %s" +msgstr "tidak dapat menyalin berkas gambar %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "Peran %r sudah terdaftar di domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "menyalin berkas pendukung Texinfo" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "Indeks %r sudah terdaftar ke domain %s" +msgid "error writing file Makefile: %s" +msgstr "kesalahan menulis berkas Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "object_type %r telah didaftarkan" +msgid "The manual pages are in %(outdir)s." +msgstr "Halaman manual berada di %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "crossref_type %r telah didaftarkan" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "tidak ditemukan nilai konfigurasi \"man_pages\"; halaman manual tidak akan ditulis" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r telah didaftarkan" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" nilai konfigurasi mengacu pada dokumen tidak diketahui %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser untuk %r telah didaftarkan" +msgid "The HTML page is in %(outdir)s." +msgstr "Halaman HTML berada di %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Parser sumber untuk %s tidak terdaftar" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "merakit dokumen tunggal" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Penerjemah untuk %r sudah ada" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "menulis file tambahan" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "kwargs untuk add_node() harus berupa (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Builder contoh tidak menghasilkan berkas apapun." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r telah terdaftar" +msgid "The message catalogs are in %(outdir)s." +msgstr "Katalog pesan berada di %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "" +msgid "building [%s]: " +msgstr "membangun [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "ekstensi %r telah digabungkan dengan Sphinx sejak versi %s; ekstensi diabaikan." +msgid "targets for %d template files" +msgstr "target untuk %d berkas templat" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Eksepsi orisinal:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "membaca templat... " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "Tidak dapat mengimpor ekstensi %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "menulis katalog pesan... " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "ekstensi %r tidak memiliki fungsi setup(); apa itu benar-benar sebuah modul ekstensi Sphinx?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Mencari kesalahan sembarang dalam keluaran di atas atau di %(outdir)s/output.txt" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Ekstensi %s yang digunakan proyek ini memerlukan sedikitnya Sphinx v%s; maka itu tidak bisa dibangun dengan versi ini." +msgid "broken link: %s (%s)" +msgstr "tautan rusak: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "ekstensi %r mengembalikan objek yang tidak didukung dari fungsi setup() nya; seharusnya mengembalikan None atau dictionary metadata" +msgid "Anchor '%s' not found" +msgstr "Anchor '%s' tidak ditemukan" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "Berkas ePub berada di %(outdir)s." -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" -msgstr "" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "nilai conf \"epub_language\" (atau \"language\") tidak seharsunya kosong untuk EPUB3" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "nilai conf \"epub_uid\" harus berupa XML NAME untuk EPUB3" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" -msgstr "nomor PEP %s tidak valid" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "nilai conf \"epub_title\" (atau \"html_title\") tidak seharusnya kosong untuk EPUB3" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" -msgstr "nomor RFC tidak valid %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "nilai conf \"epub_author\" tidak seharusnya kosong untuk EPUB3" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[sumber]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "nilai conf \"epub_contributor\" tidak seharusnya kosong untuk EPUB3" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "menyoroti kode modul..." +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "nilai conf \"epub_description\" tidak seharusnya kosong untuk EPUB3" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[docs]" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "nilai conf \"epub_publisher\" tidak seharusnya kosong untuk EPUB3" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Kode modul" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "nilai conf \"epub_copyright\" (atau \"copyright\") tidak seharusnya kosong untuk EPUB3" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "nilai conf \"epub_identifier\" tidak seharusnya kosong untuk EPUB3" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "bilai conf \"version\" tidak seharusnya kosong untuk EPUB3" -#: ext/viewcode.py:353 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "

Source code for %s

" -msgstr "

Kode sumber untuk %s

" +msgid "invalid css_file: %r, ignored" +msgstr "css_file yang salah: %r, mengabaikan" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Tinjauan: kode modul" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "Berkas XML berada di %(outdir)s." -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Semua modul dimana kode tersedia

" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "kesalahan menulis berkas %s: %s" -#: ext/extlinks.py:82 +#: builders/xml.py:103 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Berkas pseudo-XML berada di %(outdir)s." -#: ext/autosectionlabel.py:52 +#: builders/_epub_base.py:223 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "duplicated ToC entry found: %s" +msgstr "entri ToC ganda ditemukan: %s" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/_epub_base.py:436 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "label rangkap %s, contoh lain dalam %s" +msgid "cannot read image file %r: copying it instead" +msgstr "tidak dapat membaca berkas gambar %r: menyalin gambar sebagai gantinya" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "tidak dapat menulis berkas gambar %r: %s" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow tidak ditemukan - menyalin berkas gambar" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== durasi membaca paling lambat =======================" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" -#: ext/doctest.py:118 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "tidak ada '+' atau '-' dalam opsi '%s'." +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:594 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' bukan opsi yang valid." +msgid "unknown mimetype for %s, ignoring" +msgstr "mimetype yang tidak dikenal untuk %s, mengabaikan" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' bukan opsi pyversion yang valid" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "tipe TestCode tidak valid" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:802 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Pengujian dokumen di sumber selesai, lihat hasil dalam %(outdir)s/output.txt." +msgid "writing %s file..." +msgstr "menulis %s berkas..." -#: ext/doctest.py:457 +#: builders/text.py:27 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "tidak ada kode/keluaran dalam blok %s pada %s:%s" +msgid "The text files are in %(outdir)s." +msgstr "Berkas teks berada di %(outdir)s." -#: ext/doctest.py:568 +#: builders/__init__.py:229 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "mengabaikan kode dokumen yang tidak valid: %r" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "gambar yang sesuai untuk builder %s tidak ditemukan: %s (%s)" -#: ext/imgmath.py:162 +#: builders/__init__.py:237 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "Perintah LaTeX %r tidak dapat dioperasikan (diperlukan untuk tampilan matematika), periksa pengaturan imgmath_latex" +msgid "a suitable image for %s builder not found: %s" +msgstr "gambar yang sesuai untuk builder %s tidak ditemukan: %s" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s perintah %r tidak dapat dioperasikan (diperlukan untuk tampilan matematika), periksa pengaturan imgmath_%s" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "membangun [mo]: " -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" -msgstr "tampilkan latex %r: %s" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "menulis keluaran... " -#: ext/imgmath.py:380 +#: builders/__init__.py:280 #, python-format -msgid "inline latex %r: %s" -msgstr "inline latex %r: %s" +msgid "all of %d po files" +msgstr "semua dari %d berkas po" -#: ext/coverage.py:48 +#: builders/__init__.py:302 #, python-format -msgid "invalid regex %r in %s" -msgstr "regex tidak valid %r dalam %s" +msgid "targets for %d po files that are specified" +msgstr "target untuk %d berkas po yang telah ditetapkan" -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:314 #, python-format -msgid "module %s could not be imported: %s" -msgstr "modul %s tidak dapat diimpor: %s" +msgid "targets for %d po files that are out of date" +msgstr "target untuk %d berkas po telah usang" -#: ext/coverage.py:148 +#: builders/__init__.py:324 +msgid "all source files" +msgstr "semua berkas sumber" + +#: builders/__init__.py:335 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/coverage.py:158 +#: builders/__init__.py:342 +#, python-format msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "berkas %r yang diberikan di command line tidak berada dalam direktori sumber, mengabaikan" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/coverage.py:187 +#: builders/__init__.py:366 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "%r regex tidak valid di coverage_c_regexes" +msgid "%d source files given on command line" +msgstr "%d berkas sumber diberikan di command line" -#: ext/coverage.py:260 +#: builders/__init__.py:382 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "" +msgid "targets for %d source files that are out of date" +msgstr "target untuk %d berkas sumber yang telah usang" -#: ext/coverage.py:452 +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "mencari berkas yang kini-usang... " + +#: builders/__init__.py:415 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "" +msgid "%d found" +msgstr "%d ditemukan" -#: ext/coverage.py:473 +#: builders/__init__.py:417 +msgid "none found" +msgstr "tidak ditemukan apapun" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "lingkungan pengawetan" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "memeriksa konsistensi" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "tidak ada target yang usang." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "memperbarui lingkungan:" + +#: builders/__init__.py:499 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "" +msgid "%s added, %s changed, %s removed" +msgstr "%s ditambahkan, %s diubah, %s dihapus" -#: ext/coverage.py:492 +#: builders/__init__.py:536 #, python-format -msgid "undocumented python method: %s :: %s :: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgconverter.py:44 +#: builders/__init__.py:545 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:556 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "convert keluar dengan kesalahan: \n[stderr]\n%r\n[stdout]\n%r" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" -#: ext/imgconverter.py:83 +#: builders/__init__.py:563 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: ext/graphviz.py:138 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "Pengarahan Graphviz tidak dapat memiliki konten dan argumen nama berkas sekaligus" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "membaca sumber... " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "docnames yang akan ditulis: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "menyiapkan dokumen" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "Berkas tinjauan berada di %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "tidak ada pengubahan dalam versi %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "menulis berkas ringkasan..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Modul Internal" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Level Modul" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "menyalin berkas sumber..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "tidak dapat membaca %r untuk pembuatan changelog" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "regex tidak valid %r dalam %s" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "modul %s tidak dapat diimpor: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "%r regex tidak valid di coverage_c_regexes" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "Entri TODO ditemukan: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> terletak di %s, baris %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "entri asli" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "convert keluar dengan kesalahan: \n[stderr]\n%r\n[stdout]\n%r" + +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "" + +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "Pengarahan Graphviz tidak dapat memiliki konten dan argumen nama berkas sekaligus" #: ext/graphviz.py:153 #, python-format @@ -868,1780 +1333,1515 @@ msgstr "[graph: %s]" msgid "[graph]" msgstr "[graph]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" -msgstr "Entri TODO ditemukan: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "Perintah LaTeX %r tidak dapat dioperasikan (diperlukan untuk tampilan matematika), periksa pengaturan imgmath_latex" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s perintah %r tidak dapat dioperasikan (diperlukan untuk tampilan matematika), periksa pengaturan imgmath_%s" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> terletak di %s, baris %d.)" +msgid "display latex %r: %s" +msgstr "tampilkan latex %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "entri asli" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "inline latex %r: %s" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "Keterangan tidak valid: %s" +msgid "missing '+' or '-' in '%s' option." +msgstr "tidak ada '+' atau '-' dalam opsi '%s'." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "spesifikasi nomor baris di luar kisaran (1-%d): %r" +msgid "'%s' is not a valid option." +msgstr "'%s' bukan opsi yang valid." -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Tidak dapat menggunakan kedua opsi \"%s\" dan \"%s\"" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' bukan opsi pyversion yang valid" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "tipe TestCode tidak valid" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Pengujian dokumen di sumber selesai, lihat hasil dalam %(outdir)s/output.txt." -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "Objek bernama %r tidak ditemukan disertakan di berkas %r" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Tidak dapat menggunakan \"lineno-match\" dengan rangkaian \"baris\" yang terpisah" +msgid "no code/output in %s block at %s:%s" +msgstr "tidak ada kode/keluaran dalam blok %s pada %s:%s" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Spesifikasi baris %r: tidak ada baris yang ditarik dari berkas %r" - -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" +msgid "ignoring invalid doctest code: %r" +msgstr "mengabaikan kode dokumen yang tidak valid: %r" -#: directives/other.py:119 +#: ext/autosectionlabel.py:52 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree berisi referensi ke dokumen yang dikecualikan %r" +msgid "duplicate label %s, other instance in %s" +msgstr "label rangkap %s, contoh lain dalam %s" -#: directives/other.py:156 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree berisi referensi ke dokumen yang tidak ada %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: directives/other.py:169 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Penyusun bagian:" - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Penyusun modul: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Penulis kode:" - -#: directives/other.py:209 -msgid "Author: " -msgstr "Penyusun: " - -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" - -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "" - -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." -msgstr "Berkas tinjauan berada di %(outdir)s." +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== durasi membaca paling lambat =======================" -#: builders/changes.py:56 +#: ext/duration.py:139 #, python-format -msgid "no changes in version %s." -msgstr "tidak ada pengubahan dalam versi %s." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "menulis berkas ringkasan..." +msgid "%.3fs %s" +msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Modul Internal" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[sumber]" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Level Modul" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "menyoroti kode modul..." -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "menyalin berkas sumber..." +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: builders/changes.py:133 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "tidak dapat membaca %r untuk pembuatan changelog" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Kode modul" -#: builders/manpage.py:37 +#: ext/viewcode.py:359 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Halaman manual berada di %(outdir)s." +msgid "

Source code for %s

" +msgstr "

Kode sumber untuk %s

" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "tidak ditemukan nilai konfigurasi \"man_pages\"; halaman manual tidak akan ditulis" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Tinjauan: kode modul" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "penulisan" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Semua modul dimana kode tersedia

" -#: builders/manpage.py:71 +#: domains/citation.py:75 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" nilai konfigurasi mengacu pada dokumen tidak diketahui %s" +msgid "duplicate citation %s, other instance in %s" +msgstr "kutipan rangkap %s, contoh lain dalam %s" -#: builders/__init__.py:224 +#: domains/citation.py:92 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "gambar yang sesuai untuk builder %s tidak ditemukan: %s (%s)" +msgid "Citation [%s] is not referenced." +msgstr "Kutipan [%s] tidak dirujuk." -#: builders/__init__.py:232 +#: domains/math.py:73 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "gambar yang sesuai untuk builder %s tidak ditemukan: %s" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "membangun [mo]: " - -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "menulis keluaran... " +msgid "duplicate label of equation %s, other instance in %s" +msgstr "duplikasi label persamaan %s, misalnya di %s" -#: builders/__init__.py:275 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "all of %d po files" -msgstr "semua dari %d berkas po" +msgid "Invalid math_eqref_format: %r" +msgstr "Math_eqref_format tidak valid: %r" -#: builders/__init__.py:297 +#: domains/javascript.py:183 #, python-format -msgid "targets for %d po files that are specified" -msgstr "target untuk %d berkas po yang telah ditetapkan" +msgid "%s() (built-in function)" +msgstr "%s() (fungsi built-in)" -#: builders/__init__.py:309 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "target untuk %d berkas po telah usang" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "semua berkas sumber" +msgid "%s() (%s method)" +msgstr "%s() (method %s)" -#: builders/__init__.py:330 +#: domains/javascript.py:186 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +msgid "%s() (class)" +msgstr "%s() (class)" -#: builders/__init__.py:337 +#: domains/javascript.py:188 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "berkas %r yang diberikan di command line tidak berada dalam direktori sumber, mengabaikan" +msgid "%s (global variable or constant)" +msgstr "%s (variabel global atau konstan)" -#: builders/__init__.py:348 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (atribut %s)" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "%d berkas sumber diberikan di command line" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumen" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "target untuk %d berkas sumber yang telah usang" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Throws" -#: builders/__init__.py:395 builders/gettext.py:265 -#, python-format -msgid "building [%s]: " -msgstr "membangun [%s]: " +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Kembali" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "mencari berkas yang kini-usang... " +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Return type" -#: builders/__init__.py:410 +#: domains/javascript.py:374 #, python-format -msgid "%d found" -msgstr "%d ditemukan" +msgid "%s (module)" +msgstr "%s (module)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "tidak ditemukan apapun" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "fungsi" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "lingkungan pengawetan" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "method" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "memeriksa konsistensi" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "class" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "tidak ada target yang usang." +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "memperbarui lingkungan:" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribut" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s ditambahkan, %s diubah, %s dihapus" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" -#: builders/__init__.py:531 +#: domains/javascript.py:458 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:540 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktif)" -#: builders/__init__.py:551 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:558 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" +msgid "%s (role)" +msgstr "%s (role)" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "membaca sumber... " +#: domains/rst.py:234 +msgid "directive" +msgstr "direktif" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" -msgstr "docnames yang akan ditulis: %s" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "opsi-direktif" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: domains/rst.py:236 +msgid "role" +msgstr "role" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "menyiapkan dokumen" +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:883 +#: domains/changeset.py:33 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "karakter sumber undecodable, menggantinya dengan \"?\": %r" +msgid "Changed in version %s" +msgstr "Berubah pada versi %s" -#: builders/epub3.py:84 +#: domains/changeset.py:34 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "Berkas ePub berada di %(outdir)s." +msgid "Deprecated since version %s" +msgstr "Ditinggalkan sejak versi %s" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "nilai conf \"epub_language\" (atau \"language\") tidak seharsunya kosong untuk EPUB3" - -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "nilai conf \"epub_uid\" harus berupa XML NAME untuk EPUB3" - -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "nilai conf \"epub_title\" (atau \"html_title\") tidak seharusnya kosong untuk EPUB3" - -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "nilai conf \"epub_author\" tidak seharusnya kosong untuk EPUB3" - -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "nilai conf \"epub_contributor\" tidak seharusnya kosong untuk EPUB3" - -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "nilai conf \"epub_description\" tidak seharusnya kosong untuk EPUB3" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "nilai conf \"epub_publisher\" tidak seharusnya kosong untuk EPUB3" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "job number seharusnya sebuah bilangan positif" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "nilai conf \"epub_copyright\" (atau \"copyright\") tidak seharusnya kosong untuk EPUB3" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "nilai conf \"epub_identifier\" tidak seharusnya kosong untuk EPUB3" - -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "bilai conf \"version\" tidak seharusnya kosong untuk EPUB3" - -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "css_file yang salah: %r, mengabaikan" - -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Berkas XML berada di %(outdir)s." - -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "kesalahan menulis berkas %s: %s" - -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Berkas pseudo-XML berada di %(outdir)s." - -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Berkas Texinfo berada di %(outdir)s." - -#: builders/texinfo.py:48 +#: cmd/build.py:74 msgid "" "\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nJalankan 'make' di direktori tersebut untuk menjalankannya melalui makeinfo\n(gunakan 'make info' di sini untuk melakukannya secara otomatis)." - -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "tidak ditemukan nilai konfigurasi \"texinfo_documents\"; dokumen tidak akan ditulis" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "nilai konfigurasi \"texinfo_documents\" mereferensikan dokumen yang tidak dikenal %s" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "memroses %s" - -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "memecahkan referensi..." - -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (dalam " - -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "menyalin gambar... " - -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "tidak dapat menyalin berkas gambar %r: %s" - -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "menyalin berkas pendukung Texinfo" - -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "kesalahan menulis berkas Makefile: %s" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "entri ToC ganda ditemukan: %s" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "path ke berkas sumber" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "tidak dapat membaca berkas gambar %r: menyalin gambar sebagai gantinya" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "path ke direktori output" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "tidak dapat menulis berkas gambar %r: %s" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow tidak ditemukan - menyalin berkas gambar" +#: cmd/build.py:114 +msgid "general options" +msgstr "opsi umum" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "tulis semua berkas (default: hanya tulis berkas yang baru dan diubah)" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "mimetype yang tidak dikenal untuk %s, mengabaikan" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "jangan pakai saved environment, selalu baca semua berkas" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "menulis %s berkas..." - -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "Builder contoh tidak menghasilkan berkas apapun." - -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Katalog pesan berada di %(outdir)s." - -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "target untuk %d berkas templat" - -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "membaca templat... " - -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "menulis katalog pesan... " - -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Halaman HTML berada di %(outdir)s." - -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "merakit dokumen tunggal" - -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "menulis file tambahan" - -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Mencari kesalahan sembarang dalam keluaran di atas atau di %(outdir)s/output.txt" - -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "tautan rusak: %s (%s)" - -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "Anchor '%s' tidak ditemukan" - -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Berkas teks berada di %(outdir)s." - -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "referensi catatan kaki yang tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" - -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "referensi yang tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "referensi kutipan tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "override sebuah aturan di berkas konfigurasi" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "referensi istilah yang tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "masukkan sebuah nilai ke templat HTML" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b, %Y" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "define tag: masukkan blok \"only\" dengan TAG" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/build.py:212 +msgid "console output options" +msgstr "opsi output konsol" -#: transforms/__init__.py:253 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "4 kolom berdasarkan indeks ditemukan. Ini mungkin bug ekstensi yang Anda gunakan: %r" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "tingkatkan verbosity (dapat diulang)" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Catatan kaki [%s] tidak dirujuk." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "tanpa output pada stdout, hanya peringatan pada stderr" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "tanpa output sama sekali, peringatan sekalipun" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Catatan kaki [#] tidak dirujuk." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "siarkan output berwarna (default: auto-detect)" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "jangan siarkan output berwarna (default: auto-detect)" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "tulis peringatan (dan galat) pada berkas terpilih" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "ubah peringatan menjadi galat" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "tampilkan traceback penuh pada eksepsi" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "jalankan Pdb pada eksepsi" -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "tidak dapat menggabungkan opsi -a dan nama berkas" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "argumen opsi -D harus dalam bentuk name=value" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "argumen opsi -A harus dalam bentuk name=value" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "masukkan docstrings secara otomatis dari modules" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "uji snippet kode secara otomatis pada blok doctest" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "tautkan antara dokumentasi Sphinx dari berbagai proyek" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "tulis entri \"todo\" yang dapat ditampilan atau disembunyikan dalam build" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "periksa coverage dokumentasi" -#: environment/__init__.py:86 -msgid "new config" -msgstr "konfigurasi baru" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "masukkan math, yang dirender sebagai gambar PNG atau SVG" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "konfigurasi berubah" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "masukkan math, yang dirender di perambah sebagai gambar PNG atau SVG" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "ekstensi berubah" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "inklusi bersyarat untuk isi berdasarkan nilai konfig" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "membangun lingkungan bukan versi saat ini" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "masukkan tautan ke sumber kode untuk objek Python yang terdokumentasi" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "direktori sumber telah berubah" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "buat berkas .nojekyll untuk menerbitkannya di halaman GitHub" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Mohon masukkan nama path yang sah." -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Mohon masukan teks." -#: environment/__init__.py:336 +#: cmd/quickstart.py:134 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +msgid "Please enter one of %s." +msgstr "Mohon masukkan satu dari %s." -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Lingkungan ini tidak kompatibel dengan pembangun yang dipilih, silakan pilih direktori doctree lain." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Mohon ketik salah satu dari 'y' atau 'n'." -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "Gagal memindai dokumen dalam %s: %r" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Mohon masukkan satu suffiks berkas, contohnya '.rst' atau '.txt'." -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:230 #, python-format -msgid "Domain %r is not registered" -msgstr "Domain %r tidak terdaftar" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "dokumen tidak termasuk dalam toctree" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Selamat datang ke alat quickstart Sphinx %s." -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "totree referensikan sendiri ditemukan. Diabaikan" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Silakan masukkan nilai untuk pengaturan berikut (cukup tekan Enter to\nmenerima nilai bawaan, jika diberikan dalam tanda kurung)." -#: environment/__init__.py:889 +#: cmd/quickstart.py:242 #, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgid "Selected root path: %s" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "kesalahan membaca: %s, %s" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "kesalahan menulis: %s, %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Masukkan jalur root untuk dokumentasi." -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Root path dokumentasi" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Galat: berkas conf.py telah ditemukan dalam root path terpilih." -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Format tanggal tidak valid. Kutip string dengan kutipan tunggal jika Anda ingin menampilkannya secara langsung: %s" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart tidak akan menulis ulang proyek Sphinx yang ada." -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Silakan masukkan root path baru (atau tekan Enter untuk keluar)" + +#: cmd/quickstart.py:274 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Pisahkan direktori source dan build (y/n)" + +#: cmd/quickstart.py:287 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree berisi ref ke berkas yang tidak ada %r" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Nama prefiks untuk dir templat dan static" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "pengecualian saat mengevaluasi hanya ekspresi pengarahan: %s" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "Nama proyek akan muncul di beberapa tempat dalam dokumentasi yang dibuat." -#: util/display.py:82 -msgid "skipped" -msgstr "dilewati" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Nama proyek" -#: util/display.py:87 -msgid "failed" -msgstr "gagal" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Nama(-nama) pembuat" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:309 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +"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" +"just set both to the same value." msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Versi proyek" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "tipe simpul tidak dikenal: %r" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Rilis proyek" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:324 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Bahasa proyek" + +#: cmd/quickstart.py:340 +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 "" -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "peran bawaan %s tidak ditemukan" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Akhiran berkas sumber" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: util/inventory.py:166 +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Nama dokumen master Anda (tanpa akhiran)" + +#: cmd/quickstart.py:368 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Kesalahan: file master %s telah ditemukan di jalur utama yang dipilih." -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Catatan kaki" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart tidak akan menimpa berkas yang sudah ada." -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[gambar: %s]" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Silakan masukkan nama file baru, atau ganti nama file yang ada dan tekan Enter" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[gambar]" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Tunjukkan ekstensi Sphinx berikut mana yang harus diaktifkan:" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Indeks" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Catatan: imgmath dan mathjax tidak dapat diaktifkan secara bersamaan. imgmath telah diubah tidak pilih." -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:407 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "simpul judul tidak ditemui dalam bagian, topik, tabel, peringatan atau sisi bilah" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "keterangan tidak di dalam gambar." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Buat Makefile? (y/n)" -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "tipe simpul tidak diterapkan: %r" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Buat berkas perintah Windows? (y/n)" -#: writers/latex.py:361 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "%r toplevel_sectioning tidak diketahui untuk kelas %r" +msgid "Creating file %s." +msgstr "Membuat file %s." -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "no Babel option known for language %r" -msgstr "tidak ada opsi Babel yang dikenal untuk bahasa %r" +msgid "File %s already exists, skipping." +msgstr "File %s sudah ada, lewati." -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: terlalu besar, diabaikan." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Selesai: Struktur direktori awal telah dibuat." -#: writers/latex.py:591 +#: cmd/quickstart.py:520 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "judul dokumen bukan simpul Text tunggal" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: cmd/quickstart.py:531 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/latex.py:1183 +#: cmd/quickstart.py:538 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "opsi tabularcolumns dan :widths: opsi diberikan bersamaan. :widths: diabaikan." - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "unit dimensi %s tidak valid. Diabaikan" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "di mana \"pembangun\" adalah salah satu pembangun yang didukung, mis. html, lateks, atau periksa tautan." -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "entri indeks tidak diketahui ditemukan tipe %s" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nHasilkan file yang diperlukan untuk proyek Sphinx. \n\nsphinx-quickstart adalah alat interaktif yang menanyakan beberapa pertanyaan tentang proyek Anda \ndan kemudian menghasilkan direktori dokumentasi lengkap dan contoh \nMakefile untuk digunakan dengan sphinx-build.\n" -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "Math_eqref_format tidak valid: %r" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "mode diam" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "root proyek" -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format tidak didefinisikan untuk %s" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Opsi struktur" -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "Tidak ada ID apa pun yang ditugaskan untuk simpul %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "jika ditentukan, pisahkan direktori sumber dan pembangunan" -#: writers/html5.py:496 -msgid "Link to this term" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "pengganti dot di _templates dll." -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Opsi dasar proyek" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "nama proyek" -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "nama penulis" -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "versi proyek" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "rilis proyek" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "Tidak dapat memperoleh ukuran gambar. :scale: option diabaikan." +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "bahasa dokumen" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "akhiran berkas sumber" -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "duplikasi label persamaan %s, misalnya di %s" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "nama dokumen utama" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (fungsi built-in)" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "gunakan epub" -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (method %s)" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Opsi ekstensi" -#: domains/javascript.py:185 +#: cmd/quickstart.py:671 #, python-format -msgid "%s() (class)" -msgstr "%s() (class)" +msgid "enable %s extension" +msgstr "aktifkan ekstensi %s" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variabel global atau konstan)" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "aktifkan ekstensi berubah-ubah" -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (atribut %s)" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Pembuatan Makefile dan Batchfile" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumen" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "buat makefile" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Throws" +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "jangan membuat makefile" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Kembali" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "buat batchfile" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Return type" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "jangan membuat batchfile" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (module)" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "gunakan mode-make untuk Makefile/make.bat" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "fungsi" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Membuat templat proyek" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "method" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "direktori templat untuk berkas templat" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "class" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "mendefinisikan variabel templat" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\" ditentukan, tetapi tidak ada \"project\" atau \"author\" yang ditentukan." -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribut" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Kesalahan: jalur yang ditentukan bukan direktori, atau file sphinx sudah ada." -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart hanya menghasilkan direktori kosong. Silakan tentukan jalur utama baru." -#: domains/javascript.py:454 +#: cmd/quickstart.py:810 #, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" +msgid "Invalid template variable: %s" +msgstr "Variabel templat tidak valid: %s" -#: domains/changeset.py:26 +#: directives/other.py:119 #, python-format -msgid "Added in version %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: domains/changeset.py:27 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "Changed in version %s" -msgstr "Berubah pada versi %s" +msgid "toctree contains reference to excluded document %r" +msgstr "toctree berisi referensi ke dokumen yang dikecualikan %r" -#: domains/changeset.py:28 +#: directives/other.py:156 #, python-format -msgid "Deprecated since version %s" -msgstr "Ditinggalkan sejak versi %s" +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree berisi referensi ke dokumen yang tidak ada %r" -#: domains/changeset.py:29 +#: directives/other.py:169 #, python-format -msgid "Removed in version %s" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktif)" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Penyusun bagian:" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Penyusun modul: " -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (role)" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Penulis kode:" -#: domains/rst.py:234 -msgid "directive" -msgstr "direktif" +#: directives/other.py:209 +msgid "Author: " +msgstr "Penyusun: " -#: domains/rst.py:235 -msgid "directive-option" -msgstr "opsi-direktif" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "role" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "kutipan rangkap %s, contoh lain dalam %s" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" -#: domains/citation.py:92 +#: directives/code.py:87 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "Kutipan [%s] tidak dirujuk." - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Pehatian" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Hati-hati" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Bahaya" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Kesalahan" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Petunjuk" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Penting" +msgid "Invalid caption: %s" +msgstr "Keterangan tidak valid: %s" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Catatan" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "spesifikasi nomor baris di luar kisaran (1-%d): %r" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Lihat juga" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Tidak dapat menggunakan kedua opsi \"%s\" dan \"%s\"" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tip" +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Peringatan" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "masukkan docstrings secara otomatis dari modules" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "Objek bernama %r tidak ditemukan disertakan di berkas %r" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "uji snippet kode secara otomatis pada blok doctest" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Tidak dapat menggunakan \"lineno-match\" dengan rangkaian \"baris\" yang terpisah" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "tautkan antara dokumentasi Sphinx dari berbagai proyek" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Spesifikasi baris %r: tidak ada baris yang ditarik dari berkas %r" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "tulis entri \"todo\" yang dapat ditampilan atau disembunyikan dalam build" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b, %Y" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "periksa coverage dokumentasi" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Indeks" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "masukkan math, yang dirender sebagai gambar PNG atau SVG" +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "simpul judul tidak ditemui dalam bagian, topik, tabel, peringatan atau sisi bilah" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "masukkan math, yang dirender di perambah sebagai gambar PNG atau SVG" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Catatan kaki" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "inklusi bersyarat untuk isi berdasarkan nilai konfig" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "keterangan tidak di dalam gambar." -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "masukkan tautan ke sumber kode untuk objek Python yang terdokumentasi" +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "tipe simpul tidak diterapkan: %r" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "buat berkas .nojekyll untuk menerbitkannya di halaman GitHub" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[gambar: %s]" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Mohon masukkan nama path yang sah." +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[gambar]" -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Mohon masukan teks." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" -#: cmd/quickstart.py:133 +#: writers/html5.py:431 #, python-format -msgid "Please enter one of %s." -msgstr "Mohon masukkan satu dari %s." +msgid "numfig_format is not defined for %s" +msgstr "numfig_format tidak didefinisikan untuk %s" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Mohon ketik salah satu dari 'y' atau 'n'." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "Tidak ada ID apa pun yang ditugaskan untuk simpul %s" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Mohon masukkan satu suffiks berkas, contohnya '.rst' atau '.txt'." +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Selamat datang ke alat quickstart Sphinx %s." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Silakan masukkan nilai untuk pengaturan berikut (cukup tekan Enter to\nmenerima nilai bawaan, jika diberikan dalam tanda kurung)." +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: cmd/quickstart.py:241 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "Selected root path: %s" +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Masukkan jalur root untuk dokumentasi." +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Root path dokumentasi" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Galat: berkas conf.py telah ditemukan dalam root path terpilih." +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart tidak akan menulis ulang proyek Sphinx yang ada." +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "Tidak dapat memperoleh ukuran gambar. :scale: option diabaikan." -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Silakan masukkan root path baru (atau tekan Enter untuk keluar)" +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "%r toplevel_sectioning tidak diketahui untuk kelas %r" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "tidak ada opsi Babel yang dikenal untuk bahasa %r" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Pisahkan direktori source dan build (y/n)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: terlalu besar, diabaikan." -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Nama prefiks untuk dir templat dan static" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "judul dokumen bukan simpul Text tunggal" -#: cmd/quickstart.py:297 +#: writers/latex.py:1198 msgid "" -"The project name will occur in several places in the built documentation." -msgstr "Nama proyek akan muncul di beberapa tempat dalam dokumentasi yang dibuat." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Nama proyek" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Nama(-nama) pembuat" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "opsi tabularcolumns dan :widths: opsi diberikan bersamaan. :widths: diabaikan." -#: cmd/quickstart.py:308 +#: writers/latex.py:1228 +#, python-format 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" -"just set both to the same value." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Versi proyek" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "unit dimensi %s tidak valid. Diabaikan" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Rilis proyek" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "entri indeks tidak diketahui ditemukan tipe %s" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Bahasa proyek" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Akhiran berkas sumber" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Nama dokumen master Anda (tanpa akhiran)" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Kesalahan: file master %s telah ditemukan di jalur utama yang dipilih." +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart tidak akan menimpa berkas yang sudah ada." +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Silakan masukkan nama file baru, atau ganti nama file yang ada dan tekan Enter" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Tunjukkan ekstensi Sphinx berikut mana yang harus diaktifkan:" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Catatan: imgmath dan mathjax tidak dapat diaktifkan secara bersamaan. imgmath telah diubah tidak pilih." +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Buat Makefile? (y/n)" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Buat berkas perintah Windows? (y/n)" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "Membuat file %s." +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "File %s sudah ada, lewati." +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Selesai: Struktur direktori awal telah dibuat." +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "referensi catatan kaki yang tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" -#: cmd/quickstart.py:519 -#, python-format +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "referensi yang tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" + +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "referensi kutipan tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" -#: cmd/quickstart.py:526 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "referensi istilah yang tidak konsisten dalam pesan yang diterjemahkan. asli: {0}, diterjemahkan: {1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:537 +#: transforms/__init__.py:258 +#, python-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "di mana \"pembangun\" adalah salah satu pembangun yang didukung, mis. html, lateks, atau periksa tautan." +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "4 kolom berdasarkan indeks ditemukan. Ini mungkin bug ekstensi yang Anda gunakan: %r" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nHasilkan file yang diperlukan untuk proyek Sphinx. \n\nsphinx-quickstart adalah alat interaktif yang menanyakan beberapa pertanyaan tentang proyek Anda \ndan kemudian menghasilkan direktori dokumentasi lengkap dan contoh \nMakefile untuk digunakan dengan sphinx-build.\n" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "Catatan kaki [%s] tidak dirujuk." -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "mode diam" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "root proyek" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Opsi struktur" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Catatan kaki [#] tidak dirujuk." -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "jika ditentukan, pisahkan direktori sumber dan pembangunan" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "pengganti dot di _templates dll." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "kesalahan membaca: %s, %s" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Opsi dasar proyek" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "kesalahan menulis: %s, %s" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "nama proyek" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "nama penulis" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "versi proyek" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Format tanggal tidak valid. Kutip string dengan kutipan tunggal jika Anda ingin menampilkannya secara langsung: %s" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "rilis proyek" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "bahasa dokumen" +#: util/display.py:82 +msgid "skipped" +msgstr "dilewati" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "akhiran berkas sumber" +#: util/display.py:87 +msgid "failed" +msgstr "gagal" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "nama dokumen utama" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "gunakan epub" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Opsi ekstensi" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "tipe simpul tidak dikenal: %r" -#: cmd/quickstart.py:670 +#: util/fileutil.py:76 #, python-format -msgid "enable %s extension" -msgstr "aktifkan ekstensi %s" +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "aktifkan ekstensi berubah-ubah" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Pembuatan Makefile dan Batchfile" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "buat makefile" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "peran bawaan %s tidak ditemukan" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "jangan membuat makefile" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "buat batchfile" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree berisi ref ke berkas yang tidak ada %r" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "jangan membuat batchfile" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "pengecualian saat mengevaluasi hanya ekspresi pengarahan: %s" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "gunakan mode-make untuk Makefile/make.bat" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "lanjutan dari halaman sebelumnya" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Membuat templat proyek" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "berlanjut ke halaman berikutnya" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "direktori templat untuk berkas templat" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Non-abjad" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "mendefinisikan variabel templat" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Simbol" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"quiet\" ditentukan, tetapi tidak ada \"project\" atau \"author\" yang ditentukan." +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Angka" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Kesalahan: jalur yang ditentukan bukan direktori, atau file sphinx sudah ada." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "laman" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart hanya menghasilkan direktori kosong. Silakan tentukan jalur utama baru." +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Rilis" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "Invalid template variable: %s" -msgstr "Variabel templat tidak valid: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "job number seharusnya sebuah bilangan positif" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" +msgid "Could not fetch remote image: %s [%s]" +msgstr "Tidak dapat mengambil gambar jarak jauh: %s [%s]" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "path ke berkas sumber" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "Tidak dapat mengambil gambar jarak jauh: %s [%d]" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "path ke direktori output" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Format gambar tidak dikenal: %s..." -#: cmd/build.py:109 +#: transforms/post_transforms/__init__.py:88 msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "opsi umum" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "lebih dari satu target ditemukan untuk referensi silang 'any' %r: bisa %s" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "tulis semua berkas (default: hanya tulis berkas yang baru dan diubah)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "jangan pakai saved environment, selalu baca semua berkas" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Diinterupsi" -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "override sebuah aturan di berkas konfigurasi" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "masukkan sebuah nilai ke templat HTML" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "define tag: masukkan blok \"only\" dengan TAG" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "opsi output konsol" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Mohon juga melaporkan hal ini jika sebuah kesalahan pengguna sehingga lain kali perintah salah yang lebih baik dapat disediakan." -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "tingkatkan verbosity (dapat diulang)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Tutup sidebar" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "tanpa output pada stdout, hanya peringatan pada stderr" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigasi" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "tanpa output sama sekali, peringatan sekalipun" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Pencarian dalam %(docstitle)s" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "siarkan output berwarna (default: auto-detect)" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Tentang dokumen ini" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "jangan siarkan output berwarna (default: auto-detect)" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Pencarian" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Hak Cipta" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "tulis peringatan (dan galat) pada berkas terpilih" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Terakhir diperbarui pada %(last_updated)s." -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "ubah peringatan menjadi galat" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "tampilkan traceback penuh pada eksepsi" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Topik sebelumnya" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "jalankan Pdb pada eksepsi" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "bab sebelum" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Topik berikutnya" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "tidak dapat menggabungkan opsi -a dan nama berkas" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "bab berikutnya" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Index – %(key)s" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "argumen opsi -D harus dalam bentuk name=value" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "argumen opsi -A harus dalam bentuk name=value" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Index penuh dalam satu halaman" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Tutup sidebar" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Halaman Ini" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Daftar Isi" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Lihat Sumber" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Pencarian" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Pencarian cepat" #: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 #: themes/basic/searchfield.html:12 msgid "Go" msgstr "Go" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Lihat Sumber" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Konten" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Pencarian %(docstitle)s" - #: themes/basic/defindex.html:4 msgid "Overview" msgstr "Tinjauan" @@ -2676,101 +2876,42 @@ msgid "Search Page" msgstr "Pencarian Halaman" #: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "pencarian pada dokumentasi ini" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Index Modul Global" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "akses cepat semua modul" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Indeks Umum" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "semua fungsi, class, term" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Halaman Ini" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Index penuh dalam satu halaman" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Pencarian cepat" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Index halaman berdasarkan huruf" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "dapat menjadi besar" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Topik sebelumnya" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "bab sebelum" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Topik berikutnya" +msgid "search this documentation" +msgstr "pencarian pada dokumentasi ini" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "bab berikutnya" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Index Modul Global" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigasi" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "akses cepat semua modul" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Pencarian dalam %(docstitle)s" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Indeks Umum" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Tentang dokumen ini" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "semua fungsi, class, term" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Hak Cipta" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Daftar Isi" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" +msgid "Search %(docstitle)s" +msgstr "Pencarian %(docstitle)s" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Terakhir diperbarui pada %(last_updated)s." +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Index halaman berdasarkan huruf" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "dapat menjadi besar" #: themes/basic/search.html:20 msgid "" @@ -2788,43 +2929,42 @@ msgstr "Mencari beberapa kata hanya menunjukkan kecocokan yang mengandung\n    msgid "search" msgstr "pencarian" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Sembunyikan Hasil Pencarian" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Konten" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Hasil Pencarian" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Tidak ada dokumen yang cocok dengan pencarian anda. Pastikan semua kata ditulis dengan benar dan sudah memilih cukup kategori." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Pencarian" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Penyiapkan pencarian..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", di" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Sembunyikan Hasil Pencarian" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2832,6 +2972,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Perubahan pada Versi %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2853,120 +2998,127 @@ msgstr "Perubahan lain" msgid "Expand sidebar" msgstr "Buka sidebar" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parameter" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variabel" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Raises" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (di modul %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (di modul %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variabel built-in)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (class built-in)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (class di %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (method class %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (method static %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Indeks Modul Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modul" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Akan ditinggalkan" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "eksepsi" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "method class" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "method static" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "property" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "lebih dari satu target ditemukan untuk referensi silang %r: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (obsolet)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parameter" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variabel" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2977,92 +3129,85 @@ msgstr "Parameter Templat" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Nilai kembalian" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "union" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "anggota" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipe" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "konsep" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variabel" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "macro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "struct" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "variabel environment; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3082,641 +3227,428 @@ msgstr "opsi baris perintah" msgid "glossary term must be preceded by empty line" msgstr "Daftar Istilah kata sulit harus didahului dengan baris kosong" -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "Daftar istilah kata sulit tidak boleh dipisahkan oleh garis kosong" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "Daftar istilah kata sulit tampaknya salah format, periksa indentasi" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "daftar istilah" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "token grammar" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "label referensi" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "variabel environment" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "opsi program" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "dokumen" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Indeks Modul" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "numfig dinonaktifkan. :numref: diabaikan." - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "tautan tidak memiliki teks: %s" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "numfig_format tidak valid: %s (%r)" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "numfig_format tidak valid: %s" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "label yang tidak ditentukan: %r" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "referensi toctree melingkar terdeteksi, mengabaikan: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree berisi referensi ke dokumen %r yang tidak memiliki judul: tidak ada tautan yang akan dihasilkan" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "lihat %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "lihat juga %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "tipe entri indeks tidak dikenal %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Simbol" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "berkas gambar tidak dapat dibaca: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "berkas gambar %s tidak dapat dibaca: %s" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "berkas unduhan tidak dapat dibaca: %s" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s sudah diberi nomor bagian (penomoran bersarang toctree?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Diinterupsi" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "Daftar istilah kata sulit tidak boleh dipisahkan oleh garis kosong" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "Daftar istilah kata sulit tampaknya salah format, periksa indentasi" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "daftar istilah" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "token grammar" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "label referensi" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Mohon juga melaporkan hal ini jika sebuah kesalahan pengguna sehingga lain kali perintah salah yang lebih baik dapat disediakan." +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "variabel environment" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "opsi program" -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "lebih dari satu target ditemukan untuk referensi silang 'any' %r: bisa %s" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "dokumen" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Indeks Modul" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:857 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "numfig dinonaktifkan. :numref: diabaikan." + +#: domains/std/__init__.py:1124 #, python-format -msgid "%r reference target not found: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1138 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "Tidak dapat mengambil gambar jarak jauh: %s [%s]" +msgid "the link has no caption: %s" +msgstr "tautan tidak memiliki teks: %s" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:1153 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "Tidak dapat mengambil gambar jarak jauh: %s [%d]" +msgid "invalid numfig_format: %s (%r)" +msgstr "numfig_format tidak valid: %s (%r)" -#: transforms/post_transforms/images.py:143 +#: domains/std/__init__.py:1157 #, python-format -msgid "Unknown image format: %s..." -msgstr "Format gambar tidak dikenal: %s..." +msgid "invalid numfig_format: %s" +msgstr "numfig_format tidak valid: %s" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:1453 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Halaman HTML berada di %(outdir)s." +msgid "undefined label: %r" +msgstr "label yang tidak ditentukan: %r" -#: builders/html/__init__.py:348 +#: domains/std/__init__.py:1456 #, python-format -msgid "Failed to read build info file: %r" -msgstr "Gagal membaca berkas info build: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:383 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" -#: builders/html/__init__.py:560 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Logo of %s" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "berikut" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Contoh" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "sebelum" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Contoh-contoh" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "menghasilkan indeks" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumen Kata Kunci" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "menulis halaman tambahan" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Catatan" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Parameter lainnya" + +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "menyalin berkas yang dapat diunduh... " +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Referensi" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "tidak dapat menyalin berkas yang dapat diunduh %r: %s" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Peringatkan" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "Hasil" -#: builders/html/__init__.py:864 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "menyalin file statis" - -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "cannot copy static file %r" -msgstr "tidak dapat menyalin berkas statik %r" - -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "menyalin berkas tambahan" +msgid "Bases: %s" +msgstr "Basis: %s" -#: builders/html/__init__.py:949 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "cannot copy extra file %r" -msgstr "tidak dapat menyalin berkas ekstra %r" +msgid "invalid value for member-order option: %s" +msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Failed to write build info file: %r" -msgstr "Gagal menulis berkas info build: %r" - -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "indeks pencarian tidak dapat dimuat, tapi tidak semua dokumen akan dibangun: indeks akan jadi tidak lengkap." +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: builders/html/__init__.py:1052 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "halaman %s sebanding dengan dua pola dalam html_sidebars: %r dan %r" +msgid "invalid signature for auto%s (%r)" +msgstr "tanda tangan tidak valid untuk outo %s (%r)" -#: builders/html/__init__.py:1216 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "kesalahan Unicode terjadi saat render halaman %s. Silakan pastikan semua nilai konfigurasi yang berisi konten non-ASCII adalah string Unicode." +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "tidak tahu modul mana yang akan diimpor untuk autodocumenting %r (coba letakkan pengarahan \"module\" atau \"currentmodule\" dalam dokumen, atau berikan nama modul yang eksplisit)" -#: builders/html/__init__.py:1224 +#: ext/autodoc/_names.py:89 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Kesalahan terjadi saat render halaman %s.\nAlasan: %r" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "menyisihkan persediaan obyek" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" dalam nama automodule tidak masuk akal" -#: builders/html/__init__.py:1265 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "dumping search index in %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1308 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "invalid js_file: %r, ignored" -msgstr "js_file yang salah: %r, mengabaikan" +msgid "Would create file %s." +msgstr "Akan membuat berkas %s." -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Banyak math_renderers teregistrasi. Namun tidak satu pun math_renderer yang dipilih." +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nLihat secara rekursif dalam untuk modul dan paket Python dan buat \nsatu berkas reST dengan arahan automodule per paket di . \n\n dapat berupa pola berkas dan/atau direktori yang akan \ndikecualikan dari pembuatan. \n\nCatatan: Secara bawaan skrip ini tidak akan menimpa berkas yang sudah dibuat." -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "math_renderer %r yang tidak diketahui diberikan." +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "jalur ke modul ke dokumen" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "Berkas gaya-fnmatch dan/atau pola direktori untuk dikecualikan dari pembuatan" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "entri html_extra_path %r tidak ada" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "direktori untuk menempatkan semua keluaran" + +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "kedalaman maksimum submodul untuk ditampilkan di TOC (bawaan: 4)" + +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "menimpa file yang ada" + +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "ikuti tautan simbolik. Berdaya bila digabungkan dengan collective.recipe.omelette." + +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "operasikan skrip tanpa membuat file" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "letakkan dokumentasi untuk setiap modul di halamannya sendiri" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "entri html_static_path %r tidak ada" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "termasuk modul \"_private\"" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "berkas logo %r tidak ada" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "nama file daftar isi (bawaan: modul)" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "berkas favicon %r tidak ada" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "jangan membuat berkas daftar isi" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:135 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "jangan membuat judul untuk paket modul/paket (mis. ketika docstrings sudah berisi hal tersebut)" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "letakkan dokumentasi modul sebelum dokumentasi submodul" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" -msgstr "Dokumentasi %s %s" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "menafsirkan jalur modul sesuai dengan spesifikasi namespaces implisit PEP-0420" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "akhiran berkas (bawaan: rst)" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Berkas LaTeX berada di %(outdir)s." +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "menghasilkan proyek penuh dengan sphinx-quickstart" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nJalankan 'make' di direktori tersebut untuk menjalankannya melalui (pdf)latex\n(gunakan 'make latexpdf' di sini untuk melakukannya secara otomatis)." +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "menambahkan module_path ke sys.path, digunakan ketika --full diberikan" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "tidak ditemukan nilai konfigurasi \"latex_documents\"; dokumen tidak akan ditulis" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "nama proyek (bawaan: nama modul utama)" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "nilai konfigurasi \"latex_documents\" mereferensikan dokumen yang tidak dikenal %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "penulis-(penulis) proyek, digunakan ketika --full diberikan" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Rilis" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "versi proyek, digunakan ketika --full diberikan" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "menyalin berkas pendukung TeX" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "rilis proyek, digunakan ketika --full diberikan, bawaan ke --doc-version" -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "menyalin berkas tambahan" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "opsi ekstensi" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "Gagal mendapatkan docname!" - -#: builders/latex/transforms.py:121 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "Failed to get a docname for source %r!" -msgstr "" +msgid "%s is not a directory." +msgstr "%s bukan direktori." -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "lanjutan dari halaman sebelumnya" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "berlanjut ke halaman berikutnya" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Non-abjad" - -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Angka" - -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "laman" - -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argumen Kata Kunci" - -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "" - -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Contoh" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Contoh-contoh" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Catatan" - -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Parameter lainnya" - -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Referensi" - -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Peringatkan" - -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "Hasil" - -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "" - -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "gagal mengurai nama %s" - -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" -msgstr "gagal mengimpor objek %s" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "[autosummary] menghasilkan autosummary untuk: %s" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "[autosummary] menulis ke %s" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3724,7 +3656,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3739,481 +3671,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "\nHasilkan ReStructuredText menggunakan pengarahan autosummary.\n\nsphinx-autogen adalah tampilan depan ke sphinx.ext.autosummary.generate. Ini menghasilkan \nfile reStructuredText dari pengarahan autosummary yang terkandung dalam \nfile input yang diberikan.\n\nFormat pengarahan autosummary didokumentasikan dalam \nmodul ``sphinx.ext.autosummary`` dan dapat dibaca menggunakan::\n\n pydoc sphinx.ext.autosummary\n" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "berkas sumber untuk menghasilkan file rST untuk" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "direktori untuk menempatkan semua keluaran dalam" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "akhiran bawaan untuk berkas (bawaan: %(default)s)" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "direktori templat ubahsuai (bawaan: %(default)s)" + +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "mendokumentasikan anggota yang diimpor (bawaan: %(default)s)" + +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "" + +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." +msgstr "" + +#: ext/autosummary/__init__.py:239 +#, python-format +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "" + +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "direktori templat ubahsuai (bawaan: %(default)s)" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "mendokumentasikan anggota yang diimpor (bawaan: %(default)s)" +msgid "failed to import object %s" +msgstr "gagal mengimpor objek %s" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "" - -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "Failed to remove %s: %s" +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:860 msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nLihat secara rekursif dalam untuk modul dan paket Python dan buat \nsatu berkas reST dengan arahan automodule per paket di . \n\n dapat berupa pola berkas dan/atau direktori yang akan \ndikecualikan dari pembuatan. \n\nCatatan: Secara bawaan skrip ini tidak akan menimpa berkas yang sudah dibuat." - -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "jalur ke modul ke dokumen" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/intersphinx/_load.py:61 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "Berkas gaya-fnmatch dan/atau pola direktori untuk dikecualikan dari pembuatan" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "direktori untuk menempatkan semua keluaran" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "kedalaman maksimum submodul untuk ditampilkan di TOC (bawaan: 4)" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "menimpa file yang ada" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "ikuti tautan simbolik. Berdaya bila digabungkan dengan collective.recipe.omelette." +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "operasikan skrip tanpa membuat file" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "letakkan dokumentasi untuk setiap modul di halamannya sendiri" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "termasuk modul \"_private\"" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "nama file daftar isi (bawaan: modul)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "jangan membuat berkas daftar isi" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/intersphinx/_load.py:324 msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "jangan membuat judul untuk paket modul/paket (mis. ketika docstrings sudah berisi hal tersebut)" - -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "letakkan dokumentasi modul sebelum dokumentasi submodul" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "mengalami beberapa masalah dengan beberapa inventaris, tetapi mereka memiliki alternatif berfungsi:" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "menafsirkan jalur modul sesuai dengan spesifikasi namespaces implisit PEP-0420" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/apidoc/_cli.py:160 -msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "pengimpanan intersphinx telah dipindahkan: %s -> %s" + +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "akhiran berkas (bawaan: rst)" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(dalam %s)" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "menghasilkan proyek penuh dengan sphinx-quickstart" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "menambahkan module_path ke sys.path, digunakan ketika --full diberikan" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "nama proyek (bawaan: nama modul utama)" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "penulis-(penulis) proyek, digunakan ketika --full diberikan" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "versi proyek, digunakan ketika --full diberikan" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "rilis proyek, digunakan ketika --full diberikan, bawaan ke --doc-version" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "opsi ekstensi" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." -msgstr "%s bukan direktori." +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" +msgstr "kesalahan saat memformat argumen untuk %s: %s" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "signature arguments or return annotation given for automodule %s" +msgstr "argumen tanda tangan atau anotasi kembalian diberikan untuk automodule %s" + +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ harus berupa daftar string, bukan %r (dalam modul %s) -- mengabaikan __all__" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "missing attribute %s in object %s" +msgstr "atribut hilang %s dalam objek %s" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:114 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "Halaman HTML berada di %(outdir)s." -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:337 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "Failed to read build info file: %r" +msgstr "Gagal membaca berkas info build: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:247 -#, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." -msgstr "Akan membuat berkas %s." +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:549 #, python-format -msgid "(in %s v%s)" -msgstr "(di %s v%s)" +msgid "Logo of %s" +msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "(dalam %s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "berikut" -#: ext/intersphinx/_resolve.py:108 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "sebelum" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "menghasilkan indeks" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "menulis halaman tambahan" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "menyalin berkas yang dapat diunduh... " + +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "tidak dapat menyalin berkas yang dapat diunduh %r: %s" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "menyalin file statis" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "tidak dapat menyalin berkas statik %r" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "menyalin berkas tambahan" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "tidak dapat menyalin berkas ekstra %r" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "Gagal menulis berkas info build: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "indeks pencarian tidak dapat dimuat, tapi tidak semua dokumen akan dibangun: indeks akan jadi tidak lengkap." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "halaman %s sebanding dengan dua pola dalam html_sidebars: %r dan %r" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "kesalahan Unicode terjadi saat render halaman %s. Silakan pastikan semua nilai konfigurasi yang berisi konten non-ASCII adalah string Unicode." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Kesalahan terjadi saat render halaman %s.\nAlasan: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "menyisihkan persediaan obyek" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" - -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "mengalami beberapa masalah dengan beberapa inventaris, tetapi mereka memiliki alternatif berfungsi:" +msgid "invalid js_file: %r, ignored" +msgstr "js_file yang salah: %r, mengabaikan" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "gagal mencapai salah satu inventaris dengan masalah berikut:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Banyak math_renderers teregistrasi. Namun tidak satu pun math_renderer yang dipilih." -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1351 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "pengimpanan intersphinx telah dipindahkan: %s -> %s" +msgid "Unknown math_renderer %r is given." +msgstr "math_renderer %r yang tidak diketahui diberikan." -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1365 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1370 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_extra_path entry %r does not exist" +msgstr "entri html_extra_path %r tidak ada" + +#: builders/html/__init__.py:1385 +#, python-format +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "tanda tangan tidak valid untuk outo %s (%r)" +msgid "html_static_path entry %r does not exist" +msgstr "entri html_static_path %r tidak ada" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "kesalahan saat memformat argumen untuk %s: %s" +msgid "logo file %r does not exist" +msgstr "berkas logo %r tidak ada" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "berkas favicon %r tidak ada" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "tidak tahu modul mana yang akan diimpor untuk autodocumenting %r (coba letakkan pengarahan \"module\" atau \"currentmodule\" dalam dokumen, atau berikan nama modul yang eksplisit)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "Dokumentasi %s %s" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" dalam nama automodule tidak masuk akal" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "Gagal mendapatkan docname!" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "argumen tanda tangan atau anotasi kembalian diberikan untuk automodule %s" +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ harus berupa daftar string, bukan %r (dalam modul %s) -- mengabaikan __all__" +msgid "No footnote was found for given reference node %r" +msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Berkas LaTeX berada di %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nJalankan 'make' di direktori tersebut untuk menjalankannya melalui (pdf)latex\n(gunakan 'make latexpdf' di sini untuk melakukannya secara otomatis)." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "tidak ditemukan nilai konfigurasi \"latex_documents\"; dokumen tidak akan ditulis" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "nilai konfigurasi \"latex_documents\" mereferensikan dokumen yang tidak dikenal %s" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "menyalin berkas pendukung TeX" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "menyalin berkas tambahan" + +#: builders/latex/__init__.py:529 +#, python-format +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:537 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Bases: %s" -msgstr "Basis: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s sudah diberi nomor bagian (penomoran bersarang toctree?)" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" -msgstr "atribut hilang %s dalam objek %s" +msgid "image file not readable: %s" +msgstr "berkas gambar tidak dapat dibaca: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" -msgstr "" +msgid "image file %s not readable: %s" +msgstr "berkas gambar %s tidak dapat dibaca: %s" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "" +msgid "download file not readable: %s" +msgstr "berkas unduhan tidak dapat dibaca: %s" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "referensi toctree melingkar terdeteksi, mengabaikan: %s <- %s" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree berisi referensi ke dokumen %r yang tidak memiliki judul: tidak ada tautan yang akan dihasilkan" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "" +msgid "see %s" +msgstr "lihat %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "lihat juga %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "tipe entri indeks tidak dikenal %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/is/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/is/LC_MESSAGES/sphinx.mo index e0a0c4295b2ff3f04460924b07e4f5b31e7a3a88..89bd6e13762f77c6d2bacfcbc2e03f30cbc16b35 100644 GIT binary patch delta 26 icmX>lc1mo+G&WvST|*;X149KvGb=-r&5PNVvj6~Xa0i+I delta 26 icmX>lc1mo+G&WunT|*;XBTEG%BP(Oe&5PNVvj6~X>IbI) diff --git a/addons/source-python/packages/site-packages/sphinx/locale/is/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/is/LC_MESSAGES/sphinx.po index 3fde9bd05..462ecd918 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/is/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/is/LC_MESSAGES/sphinx.po @@ -1,5 +1,5 @@ # Translations template for Sphinx. -# Copyright (C) 2024 ORGANIZATION +# Copyright (C) 2025 ORGANIZATION # This file is distributed under the same license as the Sphinx project. # # Translators: @@ -8,153 +8,300 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-12-29 22:39+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Tryggvi Kalman , 2021\n" "Language-Team: Icelandic (http://app.transifex.com/sphinx-doc/sphinx-1/language/is/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.17.0\n" "Language: is\n" "Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n" -#: events.py:77 +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 #, python-format msgid "Event %r already present" msgstr "" -#: events.py:370 +#: events.py:386 #, python-format msgid "Unknown event name: %s" msgstr "" -#: events.py:416 +#: events.py:451 #, python-format msgid "Handler %r for event %r threw an exception" msgstr "" -#: application.py:190 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:194 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:198 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:228 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:250 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:266 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:271 registry.py:452 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:277 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:312 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:329 util/display.py:88 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:331 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:345 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:353 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:366 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:398 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:400 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:404 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:407 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:409 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:414 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:417 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:419 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:968 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1047 +#: application.py:1113 #, python-format -msgid "directive %r is already registered, it will be overridden" +msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1069 application.py:1094 +#: application.py:1139 application.py:1167 #, python-format -msgid "role %r is already registered, it will be overridden" +msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1644 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1648 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1651 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,1153 +322,1307 @@ msgid "" "explicit" msgstr "" -#: application.py:1655 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1663 application.py:1667 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: roles.py:208 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:231 -#, python-format -msgid "invalid CVE number %s" -msgstr "" - -#: roles.py:253 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" - -#: roles.py:276 -#, python-format -msgid "invalid CWE number %s" -msgstr "" - -#: roles.py:296 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "" - -#: roles.py:319 -#, python-format -msgid "invalid PEP number %s" -msgstr "" - -#: roles.py:357 -#, python-format -msgid "invalid RFC number %s" -msgstr "" - -#: registry.py:144 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "" -#: registry.py:146 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "" -#: registry.py:159 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "" -#: registry.py:166 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "" -#: registry.py:173 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "" -#: registry.py:196 registry.py:209 registry.py:220 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "" -#: registry.py:200 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "" -#: registry.py:212 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "" -#: registry.py:223 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "" -#: registry.py:254 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "" -#: registry.py:280 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "" -#: registry.py:287 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "" -#: registry.py:296 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "" -#: registry.py:304 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "" -#: registry.py:320 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "" -#: registry.py:336 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: registry.py:419 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "" -#: registry.py:431 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "" -#: registry.py:446 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "" -#: registry.py:457 +#: registry.py:545 msgid "Original exception:\n" msgstr "" -#: registry.py:458 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "" -#: registry.py:463 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "" -#: registry.py:472 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "" -#: registry.py:480 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "" -#: registry.py:514 +#: registry.py:605 #, python-format msgid "`None` is not a valid filetype for %r." msgstr "" -#: project.py:71 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" - -#: project.py:87 +#: config.py:351 #, python-format -msgid "Ignored unreadable document %r." +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: highlighting.py:168 +#: config.py:374 #, python-format -msgid "Pygments lexer name %r is not known" +msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: highlighting.py:202 +#: config.py:379 #, python-format msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" msgstr "" -#: extension.py:55 +#: config.py:391 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." +msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: extension.py:76 +#: config.py:399 #, python-format -msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." +msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: theming.py:114 +#: config.py:422 #, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +msgid "unknown config value %r in override, ignoring" msgstr "" -#: theming.py:120 +#: config.py:476 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +msgid "No such config value: %r" msgstr "" -#: theming.py:135 +#: config.py:504 #, python-format -msgid "unsupported theme option %r given" +msgid "Config value %r already present" msgstr "" -#: theming.py:207 +#: config.py:541 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" msgstr "" -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." msgstr "" -#: theming.py:268 +#: config.py:599 #, python-format -msgid "The %r theme has circular inheritance" +msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: theming.py:275 -#, python-format +#: config.py:603 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: theming.py:282 +#: config.py:611 #, python-format -msgid "The %r theme has too many ancestors" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" msgstr "" -#: theming.py:310 +#: config.py:633 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to convert %r to a frozenset" msgstr "" -#: theming.py:335 theming.py:388 +#: config.py:651 config.py:659 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: theming.py:339 +#: config.py:665 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." msgstr "" -#: theming.py:343 theming.py:391 +#: config.py:686 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "Section %s" +msgstr "Kafli %s" -#: theming.py:347 +#: config.py:687 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +msgid "Fig. %s" +msgstr "Mynd %s" -#: theming.py:366 +#: config.py:688 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +msgid "Table %s" +msgstr "Tafla %s" -#: config.py:309 +#: config.py:689 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Listing %s" +msgstr "Listi %s" + +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." msgstr "" -#: config.py:318 +#: config.py:829 +#, python-brace-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." msgstr "" -#: config.py:341 -#, python-format +#: config.py:846 +#, python-brace-format msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." msgstr "" -#: config.py:350 +#: config.py:858 #, python-format -msgid "invalid number %r for config value %r, ignoring" +msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:356 -#, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: config.py:377 -#, python-format -msgid "unknown config value %r in override, ignoring" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: config.py:430 -#, python-format -msgid "No such config value: %r" +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: config.py:453 -#, python-format -msgid "Config value %r already present" +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: config.py:489 +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "" + +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "" + +#: environment/__init__.py:350 #, python-format -msgid "" -"cannot cache unpickable configuration value: %r (because it contains a " -"function, class, or module object)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: config.py:527 +#: environment/__init__.py:355 #, python-format -msgid "There is a syntax error in your configuration file: %s\n" +msgid "The configuration has changed (%d options: %s)" +msgstr "" + +#: environment/__init__.py:361 +#, python-format +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: config.py:530 +#: environment/__init__.py:404 msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: config.py:537 +#: environment/__init__.py:518 #, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: config.py:560 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "Failed to convert %r to a set or tuple" +msgid "Domain %r is not registered" +msgstr "" + +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "" + +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: config.py:581 config.py:586 +#: environment/__init__.py:952 #, python-format -msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: config.py:589 +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Athugið" + +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Aðgát" + +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Hætta" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Villa" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Ábending" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Mikilvægt" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Athugasemd" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Sjá einnig" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Ábending" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Aðvörun" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "" + +#: builders/texinfo.py:44 msgid "" -"The config value `source_suffix' expects a dictionary, a string, or a list " -"of strings. Got `%r' instead (type %s)." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: config.py:608 -#, python-format -msgid "Section %s" -msgstr "Kafli %s" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "" -#: config.py:609 +#: builders/texinfo.py:85 #, python-format -msgid "Fig. %s" -msgstr "Mynd %s" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "" -#: config.py:610 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Table %s" -msgstr "Tafla %s" +msgid "processing %s" +msgstr "" -#: config.py:611 -#, python-format -msgid "Listing %s" -msgstr "Listi %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "" -#: config.py:718 -msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: config.py:742 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: config.py:755 -msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: config.py:766 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "primary_domain %r not found, ignored." +msgid "cannot copy image file %r: %s" msgstr "" -#: config.py:778 -msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: domains/rst.py:128 domains/rst.py:185 +#: builders/texinfo.py:218 #, python-format -msgid "%s (directive)" +msgid "error writing file Makefile: %s" msgstr "" -#: domains/rst.py:186 domains/rst.py:190 +#: builders/manpage.py:37 #, python-format -msgid ":%s: (directive option)" +msgid "The manual pages are in %(outdir)s." +msgstr "" + +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: domains/rst.py:214 +#: builders/manpage.py:64 #, python-format -msgid "%s (role)" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: domains/rst.py:224 -msgid "directive" +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." msgstr "" -#: domains/rst.py:225 -msgid "directive-option" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: domains/rst.py:226 -msgid "role" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: domains/rst.py:248 +#: builders/gettext.py:243 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: domains/javascript.py:165 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "%s() (built-in function)" +msgid "building [%s]: " msgstr "" -#: domains/javascript.py:166 domains/python/__init__.py:253 +#: builders/gettext.py:265 #, python-format -msgid "%s() (%s method)" +msgid "targets for %d template files" +msgstr "" + +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: domains/javascript.py:168 +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "" + +#: builders/linkcheck.py:87 #, python-format -msgid "%s() (class)" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: domains/javascript.py:170 +#: builders/linkcheck.py:159 #, python-format -msgid "%s (global variable or constant)" +msgid "broken link: %s (%s)" msgstr "" -#: domains/javascript.py:172 domains/python/__init__.py:338 +#: builders/linkcheck.py:561 #, python-format -msgid "%s (%s attribute)" +msgid "Anchor '%s' not found" msgstr "" -#: domains/javascript.py:255 -msgid "Arguments" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: domains/cpp/__init__.py:447 domains/javascript.py:258 -msgid "Throws" +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: domains/c/__init__.py:310 domains/cpp/__init__.py:458 -#: domains/javascript.py:261 domains/python/_object.py:176 -msgid "Returns" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: domains/c/__init__.py:312 domains/javascript.py:263 -#: domains/python/_object.py:178 -msgid "Return type" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: domains/javascript.py:334 -#, python-format -msgid "%s (module)" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: domains/c/__init__.py:681 domains/cpp/__init__.py:859 -#: domains/javascript.py:371 domains/python/__init__.py:660 -msgid "function" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: domains/javascript.py:372 domains/python/__init__.py:664 -msgid "method" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: domains/cpp/__init__.py:857 domains/javascript.py:373 -#: domains/python/__init__.py:662 -msgid "class" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:374 domains/python/__init__.py:661 -msgid "data" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:375 domains/python/__init__.py:667 -msgid "attribute" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:376 domains/python/__init__.py:670 -msgid "module" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/javascript.py:407 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:25 -#, python-format -msgid "Added in version %s" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Changed in version %s" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: domains/changeset.py:27 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Deprecated since version %s" +msgid "invalid css_file: %r, ignored" msgstr "" -#: domains/changeset.py:28 +#: builders/xml.py:29 #, python-format -msgid "Removed in version %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/__init__.py:299 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "%s %s" +msgid "error writing file %s: %s" msgstr "" -#: domains/citation.py:73 +#: builders/xml.py:103 #, python-format -msgid "duplicate citation %s, other instance in %s" +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: domains/citation.py:84 +#: builders/_epub_base.py:223 #, python-format -msgid "Citation [%s] is not referenced." +msgid "duplicated ToC entry found: %s" msgstr "" -#: domains/math.py:63 +#: builders/_epub_base.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: domains/math.py:119 writers/latex.py:2479 +#: builders/_epub_base.py:467 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: environment/__init__.py:81 -msgid "new config" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: environment/__init__.py:82 -msgid "config changed" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: environment/__init__.py:83 -msgid "extensions changed" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: environment/__init__.py:249 -msgid "build environment version not current" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: environment/__init__.py:251 -msgid "source directory has changed" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: environment/__init__.py:313 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: environment/__init__.py:318 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: environment/__init__.py:324 +#: builders/_epub_base.py:802 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "writing %s file..." msgstr "" -#: environment/__init__.py:366 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: environment/__init__.py:473 +#: builders/__init__.py:229 #, python-format -msgid "Failed to scan documents in %s: %r" +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: environment/__init__.py:626 +#: builders/__init__.py:237 #, python-format -msgid "Domain %r is not registered" +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: environment/__init__.py:777 -msgid "document isn't included in any toctree" +#: builders/__init__.py:260 +msgid "building [mo]: " msgstr "" -#: environment/__init__.py:810 -msgid "self referenced toctree found. Ignored." +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " msgstr "" -#: environment/__init__.py:839 +#: builders/__init__.py:280 #, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgid "all of %d po files" msgstr "" -#: locale/__init__.py:229 -msgid "Attention" -msgstr "Athugið" - -#: locale/__init__.py:230 -msgid "Caution" -msgstr "Aðgát" +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" -#: locale/__init__.py:231 -msgid "Danger" -msgstr "Hætta" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" -#: locale/__init__.py:232 -msgid "Error" -msgstr "Villa" - -#: locale/__init__.py:233 -msgid "Hint" -msgstr "Ábending" - -#: locale/__init__.py:234 -msgid "Important" -msgstr "Mikilvægt" - -#: locale/__init__.py:235 -msgid "Note" -msgstr "Athugasemd" - -#: locale/__init__.py:236 -msgid "See also" -msgstr "Sjá einnig" - -#: locale/__init__.py:237 -msgid "Tip" -msgstr "Ábending" - -#: locale/__init__.py:238 -msgid "Warning" -msgstr "Aðvörun" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" -#: cmd/quickstart.py:43 -msgid "automatically insert docstrings from modules" +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: cmd/quickstart.py:44 -msgid "automatically test code snippets in doctest blocks" +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: cmd/quickstart.py:45 -msgid "link between Sphinx documentation of different projects" +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: cmd/quickstart.py:46 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" msgstr "" -#: cmd/quickstart.py:47 -msgid "checks for documentation coverage" +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" msgstr "" -#: cmd/quickstart.py:48 -msgid "include math, rendered as PNG or SVG images" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " msgstr "" -#: cmd/quickstart.py:49 -msgid "include math, rendered in the browser by MathJax" +#: builders/__init__.py:415 +#, python-format +msgid "%d found" msgstr "" -#: cmd/quickstart.py:50 -msgid "conditional inclusion of content based on config values" +#: builders/__init__.py:417 +msgid "none found" msgstr "" -#: cmd/quickstart.py:51 -msgid "include links to the source code of documented Python objects" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: cmd/quickstart.py:52 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: builders/__init__.py:431 +msgid "checking consistency" msgstr "" -#: cmd/quickstart.py:94 -msgid "Please enter a valid path name." +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter some text." +#: builders/__init__.py:474 +msgid "updating environment: " msgstr "" -#: cmd/quickstart.py:117 +#: builders/__init__.py:499 #, python-format -msgid "Please enter one of %s." +msgid "%s added, %s changed, %s removed" msgstr "" -#: cmd/quickstart.py:125 -msgid "Please enter either 'y' or 'n'." +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: cmd/quickstart.py:131 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: cmd/quickstart.py:215 +#: builders/__init__.py:556 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: cmd/quickstart.py:219 +#: builders/__init__.py:563 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " msgstr "" -#: cmd/quickstart.py:227 +#: builders/__init__.py:725 #, python-format -msgid "Selected root path: %s" +msgid "docnames to write: %s" msgstr "" -#: cmd/quickstart.py:230 -msgid "Enter the root path for documentation." +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: cmd/quickstart.py:231 -msgid "Root path for the documentation" +#: builders/__init__.py:740 +msgid "preparing documents" msgstr "" -#: cmd/quickstart.py:239 -msgid "Error: an existing conf.py has been found in the selected root path." +#: builders/__init__.py:743 +msgid "copying assets" msgstr "" -#: cmd/quickstart.py:245 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." msgstr "" -#: cmd/quickstart.py:248 -msgid "Please enter a new root path (or just Enter to exit)" +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." msgstr "" -#: cmd/quickstart.py:258 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: builders/changes.py:67 +msgid "writing summary file..." msgstr "" -#: cmd/quickstart.py:265 -msgid "Separate source and build directories (y/n)" +#: builders/changes.py:79 +msgid "Builtins" msgstr "" -#: cmd/quickstart.py:271 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: builders/changes.py:81 +msgid "Module level" msgstr "" -#: cmd/quickstart.py:277 -msgid "Name prefix for templates and static dir" +#: builders/changes.py:137 +msgid "copying source files..." msgstr "" -#: cmd/quickstart.py:282 -msgid "" -"The project name will occur in several places in the built documentation." +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" -#: cmd/quickstart.py:286 -msgid "Project name" +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" msgstr "" -#: cmd/quickstart.py:288 -msgid "Author name(s)" +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" msgstr "" -#: cmd/quickstart.py:293 +#: ext/coverage.py:148 +#, python-format 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" -"just set both to the same value." +"the following modules are documented but were not specified in " +"coverage_modules: %s" msgstr "" -#: cmd/quickstart.py:301 -msgid "Project version" +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" msgstr "" -#: cmd/quickstart.py:303 -msgid "Project release" +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." msgstr "" -#: cmd/quickstart.py:308 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project language" +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" msgstr "" -#: cmd/quickstart.py:324 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" msgstr "" -#: cmd/quickstart.py:329 -msgid "Source file suffix" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: cmd/quickstart.py:334 +#: ext/extlinks.py:82 +#, python-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: cmd/quickstart.py:342 -msgid "Name of your master document (without suffix)" +#: ext/todo.py:61 +msgid "Todo" msgstr "" -#: cmd/quickstart.py:352 +#: ext/todo.py:94 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "TODO entry found: %s" msgstr "" -#: cmd/quickstart.py:359 -msgid "sphinx-quickstart will not overwrite the existing file." +#: ext/todo.py:152 +msgid "<>" msgstr "" -#: cmd/quickstart.py:362 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" msgstr "" -#: cmd/quickstart.py:371 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: ext/todo.py:166 +msgid "original entry" msgstr "" -#: cmd/quickstart.py:381 +#: ext/imgconverter.py:44 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" msgstr "" -#: cmd/quickstart.py:391 +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:397 -msgid "Create Makefile? (y/n)" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" msgstr "" -#: cmd/quickstart.py:401 -msgid "Create Windows command file? (y/n)" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" msgstr "" -#: cmd/quickstart.py:453 ext/apidoc.py:92 +#: ext/graphviz.py:153 #, python-format -msgid "Creating file %s." +msgid "External Graphviz file %r not found or reading it failed" msgstr "" -#: cmd/quickstart.py:458 ext/apidoc.py:89 -#, python-format -msgid "File %s already exists, skipping." +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." msgstr "" -#: cmd/quickstart.py:501 -msgid "Finished: An initial directory structure has been created." +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" msgstr "" -#: cmd/quickstart.py:504 +#: ext/graphviz.py:328 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" msgstr "" -#: cmd/quickstart.py:512 +#: ext/graphviz.py:339 +#, python-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:515 +#: ext/graphviz.py:344 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" msgstr "" -#: cmd/quickstart.py:522 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: cmd/quickstart.py:557 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" msgstr "" -#: cmd/build.py:153 cmd/quickstart.py:567 ext/apidoc.py:374 -#: ext/autosummary/generate.py:766 -msgid "For more information, visit ." +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" msgstr "" -#: cmd/quickstart.py:577 -msgid "quiet mode" +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" msgstr "" -#: cmd/quickstart.py:587 -msgid "project root" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: cmd/quickstart.py:590 -msgid "Structure options" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: cmd/quickstart.py:596 -msgid "if specified, separate source and build dirs" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" msgstr "" -#: cmd/quickstart.py:602 -msgid "if specified, create build dir under source dir" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: cmd/quickstart.py:608 -msgid "replacement for dot in _templates etc." +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: cmd/quickstart.py:611 -msgid "Project basic options" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: cmd/quickstart.py:613 -msgid "project name" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." msgstr "" -#: cmd/quickstart.py:616 -msgid "author names" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" msgstr "" -#: cmd/quickstart.py:623 -msgid "version of project" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: cmd/quickstart.py:630 -msgid "release of project" +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: cmd/quickstart.py:637 -msgid "document language" +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" msgstr "" -#: cmd/quickstart.py:640 -msgid "source file suffix" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: cmd/quickstart.py:643 -msgid "master document name" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: cmd/quickstart.py:646 -msgid "use epub" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:649 -msgid "Extension options" +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" + +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: cmd/quickstart.py:656 ext/apidoc.py:578 +#: ext/duration.py:124 #, python-format -msgid "enable %s extension" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: cmd/quickstart.py:663 ext/apidoc.py:570 -msgid "enable arbitrary extensions" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: cmd/quickstart.py:666 -msgid "Makefile and Batchfile creation" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: cmd/quickstart.py:672 -msgid "create makefile" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: cmd/quickstart.py:678 -msgid "do not create makefile" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: cmd/quickstart.py:685 -msgid "create batchfile" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: cmd/quickstart.py:691 -msgid "do not create batchfile" +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: cmd/quickstart.py:700 -msgid "use make-mode for Makefile/make.bat" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" msgstr "" -#: cmd/quickstart.py:703 ext/apidoc.py:581 -msgid "Project templating" +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: cmd/quickstart.py:709 ext/apidoc.py:587 -msgid "template directory for template files" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: cmd/quickstart.py:716 -msgid "define a template variable" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:751 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:770 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: cmd/quickstart.py:777 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: cmd/quickstart.py:795 +#: domains/javascript.py:183 #, python-format -msgid "Invalid template variable: %s" +msgid "%s() (built-in function)" msgstr "" -#: cmd/build.py:49 -msgid "Exception occurred while building, starting debugger:" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: _cli/util/errors.py:129 cmd/build.py:65 -msgid "Interrupted!" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "" + +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "" + +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: cmd/build.py:67 -msgid "reST markup error:" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: _cli/util/errors.py:143 cmd/build.py:73 -msgid "Encoding error:" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: cmd/build.py:78 cmd/build.py:108 +#: domains/javascript.py:374 #, python-format -msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." +msgid "%s (module)" msgstr "" -#: _cli/util/errors.py:148 cmd/build.py:90 -msgid "Recursion error:" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: _cli/util/errors.py:152 cmd/build.py:94 -msgid "" -"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.:" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: _cli/util/errors.py:165 cmd/build.py:103 -msgid "Exception occurred:" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: _cli/util/errors.py:178 cmd/build.py:117 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: cmd/build.py:124 -msgid "" -"A bug report can be filed in the tracker at . Thanks!" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "" + +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "" + +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr "" + +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "" + +#: domains/rst.py:234 +msgid "directive" +msgstr "" + +#: domains/rst.py:235 +msgid "directive-option" +msgstr "" + +#: domains/rst.py:236 +msgid "role" +msgstr "" + +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "" + +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "" + +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" msgstr "" -#: cmd/build.py:144 +#: cmd/build.py:64 msgid "job number should be a positive number" msgstr "" -#: cmd/build.py:154 +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 msgid "" "\n" "Generate documentation from source files.\n" @@ -1340,767 +1641,772 @@ msgid "" "files can be built by specifying individual filenames.\n" msgstr "" -#: cmd/build.py:180 +#: cmd/build.py:100 msgid "path to documentation source files" msgstr "" -#: cmd/build.py:183 +#: cmd/build.py:103 msgid "path to output directory" msgstr "" -#: cmd/build.py:188 +#: cmd/build.py:109 msgid "" "(optional) a list of specific files to rebuild. Ignored if --write-all is " "specified" msgstr "" -#: cmd/build.py:194 +#: cmd/build.py:114 msgid "general options" msgstr "" -#: cmd/build.py:201 +#: cmd/build.py:121 msgid "builder to use (default: 'html')" msgstr "" -#: cmd/build.py:210 +#: cmd/build.py:131 msgid "" "run in parallel with N processes, when possible. 'auto' uses the number of " "CPU cores" msgstr "" -#: cmd/build.py:220 +#: cmd/build.py:140 msgid "write all files (default: only write new and changed files)" msgstr "" -#: cmd/build.py:227 +#: cmd/build.py:147 msgid "don't use a saved environment, always read all files" msgstr "" -#: cmd/build.py:230 +#: cmd/build.py:150 msgid "path options" msgstr "" -#: cmd/build.py:236 +#: cmd/build.py:157 msgid "" "directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: cmd/build.py:246 +#: cmd/build.py:166 msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: cmd/build.py:255 +#: cmd/build.py:175 msgid "use no configuration file, only use settings from -D options" msgstr "" -#: cmd/build.py:264 +#: cmd/build.py:184 msgid "override a setting in configuration file" msgstr "" -#: cmd/build.py:273 +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "" -#: cmd/build.py:282 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: cmd/build.py:289 +#: cmd/build.py:209 msgid "nitpicky mode: warn about all missing references" msgstr "" -#: cmd/build.py:292 +#: cmd/build.py:212 msgid "console output options" msgstr "" -#: cmd/build.py:299 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "" -#: cmd/build.py:306 ext/apidoc.py:413 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "" -#: cmd/build.py:313 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "" -#: cmd/build.py:321 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:329 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: cmd/build.py:332 +#: cmd/build.py:252 msgid "warning control options" msgstr "" -#: cmd/build.py:338 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "" -#: cmd/build.py:345 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "" -#: cmd/build.py:353 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "" -#: cmd/build.py:356 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "" -#: cmd/build.py:362 +#: cmd/build.py:282 msgid "raise an exception on warnings" msgstr "" -#: cmd/build.py:405 +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "" -#: cmd/build.py:437 +#: cmd/build.py:357 #, python-format msgid "cannot open warning file '%s': %s" msgstr "" -#: cmd/build.py:456 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "" -#: cmd/build.py:463 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" - -#: builders/linkcheck.py:75 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/linkcheck.py:146 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/linkcheck.py:540 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/linkcheck.py:742 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/singlehtml.py:37 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/singlehtml.py:173 -msgid "assembling single document" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/latex/__init__.py:346 builders/manpage.py:56 -#: builders/singlehtml.py:178 builders/texinfo.py:121 -msgid "writing" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/singlehtml.py:191 -msgid "writing additional files" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/manpage.py:39 -#, python-format -msgid "The manual pages are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/manpage.py:47 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/manpage.py:73 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/text.py:34 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/html/__init__.py:1239 builders/text.py:81 builders/xml.py:97 +#: cmd/quickstart.py:134 #, python-format -msgid "error writing file %s: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/xml.py:38 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/xml.py:110 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/texinfo.py:47 +#: cmd/quickstart.py:230 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/texinfo.py:49 +#: cmd/quickstart.py:235 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "" - -#: builders/texinfo.py:78 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/texinfo.py:90 +#: cmd/quickstart.py:242 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +msgid "Selected root path: %s" msgstr "" -#: builders/latex/__init__.py:324 builders/texinfo.py:115 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/latex/__init__.py:404 builders/texinfo.py:174 -msgid "resolving references..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/latex/__init__.py:415 builders/texinfo.py:184 -msgid " (in " +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/_epub_base.py:423 builders/html/__init__.py:778 -#: builders/latex/__init__.py:482 builders/texinfo.py:202 -msgid "copying images... " +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/_epub_base.py:445 builders/latex/__init__.py:497 -#: builders/texinfo.py:219 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/texinfo.py:226 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/texinfo.py:234 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/gettext.py:230 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/__init__.py:383 builders/gettext.py:251 -#, python-format -msgid "building [%s]: " +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/gettext.py:252 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/gettext.py:257 -msgid "reading templates... " +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/gettext.py:292 -msgid "writing message catalogs... " +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/__init__.py:212 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/__init__.py:220 -#, python-format -msgid "a suitable image for %s builder not found: %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/__init__.py:243 -msgid "building [mo]: " +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: builders/__init__.py:246 builders/__init__.py:741 builders/__init__.py:773 -msgid "writing output... " +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: builders/__init__.py:263 -#, python-format -msgid "all of %d po files" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: builders/__init__.py:285 -#, python-format -msgid "targets for %d po files that are specified" +#: cmd/quickstart.py:340 +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 "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are out of date" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/__init__.py:307 -msgid "all source files" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/__init__.py:319 -#, python-format -msgid "file %r given on command line does not exist, " +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: builders/__init__.py:325 +#: cmd/quickstart.py:368 #, python-format msgid "" -"file %r given on command line is not under the source directory, ignoring" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: builders/__init__.py:336 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: builders/__init__.py:351 -#, python-format -msgid "%d source files given on command line" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: builders/__init__.py:366 -#, python-format -msgid "targets for %d source files that are out of date" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: builders/__init__.py:394 -msgid "looking for now-outdated files... " +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: builders/__init__.py:398 -#, python-format -msgid "%d found" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: builders/__init__.py:400 -msgid "none found" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: builders/__init__.py:407 -msgid "pickling environment" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: builders/__init__.py:414 -msgid "checking consistency" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: builders/__init__.py:418 -msgid "no targets are out of date." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: builders/__init__.py:458 -msgid "updating environment: " +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: builders/__init__.py:483 +#: cmd/quickstart.py:520 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: builders/__init__.py:519 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: builders/__init__.py:528 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/__init__.py:539 -#, python-format +#: cmd/quickstart.py:538 msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: builders/__init__.py:546 -#, python-format +#: cmd/quickstart.py:573 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: builders/__init__.py:565 builders/__init__.py:581 -msgid "reading sources... " +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: builders/__init__.py:698 -#, python-format -msgid "docnames to write: %s" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: builders/__init__.py:711 -msgid "preparing documents" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: builders/__init__.py:714 -msgid "copying assets" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: builders/__init__.py:866 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: builders/epub3.py:83 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: builders/epub3.py:220 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: builders/epub3.py:231 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: builders/epub3.py:255 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1289 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: builders/_epub_base.py:222 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: builders/_epub_base.py:434 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: builders/_epub_base.py:465 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: builders/_epub_base.py:477 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: builders/_epub_base.py:512 -msgid "writing mimetype file..." +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: builders/_epub_base.py:521 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: builders/_epub_base.py:590 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: builders/_epub_base.py:764 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "" + +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: builders/_epub_base.py:793 +#: cmd/quickstart.py:810 #, python-format -msgid "writing %s file..." +msgid "Invalid template variable: %s" msgstr "" -#: builders/changes.py:33 +#: directives/other.py:119 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: builders/changes.py:60 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "no changes in version %s." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: builders/changes.py:62 -msgid "writing summary file..." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: builders/changes.py:74 -msgid "Builtins" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: builders/changes.py:76 -msgid "Module level" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: builders/changes.py:128 -msgid "copying source files..." +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: builders/changes.py:137 -#, python-format -msgid "could not read %r for changelog creation" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: util/rst.py:72 -#, python-format -msgid "default role %s not found" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: util/docfields.py:95 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/osutil.py:130 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: util/nodes.py:419 -#, python-format +#: directives/patches.py:70 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: util/nodes.py:487 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/nodes.py:701 +#: directives/code.py:87 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "Invalid caption: %s" msgstr "" -#: util/fileutil.py:74 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/inventory.py:170 +#: directives/code.py:231 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:185 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/docutils.py:284 +#: directives/code.py:276 #, python-format -msgid "unknown directive or role name: %s:%s" +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: util/docutils.py:747 +#: directives/code.py:314 #, python-format -msgid "unknown node type: %r" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: util/display.py:81 -msgid "skipped" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" msgstr "" -#: util/display.py:86 -msgid "failed" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Yfirlit" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: util/i18n.py:103 -#, python-format -msgid "reading error: %s, %s" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" msgstr "" -#: util/i18n.py:110 -#, python-format -msgid "writing error: %s, %s" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: util/i18n.py:138 +#: writers/texinfo.py:1303 #, python-format -msgid "locale_dir %s does not exist" +msgid "unimplemented node type: %r" msgstr "" -#: util/i18n.py:230 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "" +msgid "[image: %s]" +msgstr "[mynd: %s]" -#: directives/patches.py:66 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[mynd]" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: directives/code.py:87 +#: writers/html5.py:431 #, python-format -msgid "Invalid caption: %s" +msgid "numfig_format is not defined for %s" msgstr "" -#: directives/code.py:132 directives/code.py:297 directives/code.py:484 +#: writers/html5.py:441 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "Any IDs not assigned for %s node" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: directives/code.py:234 -#, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: directives/code.py:276 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "Object named %r not found in include file %r" +msgid "unsupported rubric heading level: %s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: directives/code.py:314 -#, python-format -msgid "Line spec %r: no lines pulled from include file %r" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: directives/other.py:122 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: directives/other.py:155 environment/adapters/toctree.py:355 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: directives/other.py:158 environment/adapters/toctree.py:359 +#: writers/latex.py:386 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: directives/other.py:171 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "no Babel option known for language %r" msgstr "" -#: directives/other.py:204 -msgid "Section author: " +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: directives/other.py:206 -msgid "Module author: " +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: directives/other.py:208 -msgid "Code author: " +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: directives/other.py:210 -msgid "Author: " +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: directives/other.py:284 -msgid ".. acks content is not a list" +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: directives/other.py:309 -msgid ".. hlist content is not a list" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" #: _cli/__init__.py:73 @@ -2108,6 +2414,7 @@ msgid "Usage:" msgstr "" #: _cli/__init__.py:75 +#, python-brace-format msgid "{0} [OPTIONS] []" msgstr "" @@ -2123,1992 +2430,1876 @@ msgstr "" msgid "Options" msgstr "" -#: _cli/__init__.py:112 _cli/__init__.py:183 +#: _cli/__init__.py:113 _cli/__init__.py:181 msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: _cli/__init__.py:172 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" "{0}: error: {1}\n" "Run '{0} --help' for information" msgstr "" -#: _cli/__init__.py:182 +#: _cli/__init__.py:179 msgid " Manage documentation with Sphinx." msgstr "" -#: _cli/__init__.py:194 +#: _cli/__init__.py:191 msgid "Show the version and exit." msgstr "" -#: _cli/__init__.py:202 +#: _cli/__init__.py:199 msgid "Show this message and exit." msgstr "" -#: _cli/__init__.py:206 +#: _cli/__init__.py:203 msgid "Logging" msgstr "" -#: _cli/__init__.py:213 +#: _cli/__init__.py:210 msgid "Increase verbosity (can be repeated)" msgstr "" -#: _cli/__init__.py:221 +#: _cli/__init__.py:218 msgid "Only print errors and warnings." msgstr "" -#: _cli/__init__.py:228 +#: _cli/__init__.py:225 msgid "No output at all" msgstr "" -#: _cli/__init__.py:234 +#: _cli/__init__.py:231 msgid "" msgstr "" -#: _cli/__init__.py:265 +#: _cli/__init__.py:263 msgid "See 'sphinx --help'.\n" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:198 -#: transforms/__init__.py:133 writers/manpage.py:102 writers/texinfo.py:219 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:143 -msgid "could not calculate translation progress!" -msgstr "" - -#: transforms/__init__.py:148 -msgid "no translated elements!" -msgstr "" - -#: transforms/__init__.py:267 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" - -#: transforms/__init__.py:313 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:322 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:333 -msgid "Footnote [#] is not referenced." -msgstr "" - -#: transforms/i18n.py:228 transforms/i18n.py:303 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" "inconsistent footnote references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:273 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" "inconsistent references in translated message. original: {0}, translated: " "{1}" msgstr "" -#: transforms/i18n.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" "inconsistent citation references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: transforms/i18n.py:345 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" "inconsistent term references in translated message. original: {0}, " "translated: {1}" msgstr "" -#: ext/linkcode.py:75 ext/viewcode.py:201 -msgid "[source]" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: ext/imgconverter.py:40 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: ext/imgconverter.py:49 ext/imgconverter.py:73 +#: transforms/__init__.py:258 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: ext/imgconverter.py:68 +#: transforms/__init__.py:299 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "" - -#: ext/viewcode.py:258 -msgid "highlighting module code... " +msgid "Footnote [%s] is not referenced." msgstr "" -#: ext/viewcode.py:286 -msgid "[docs]" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: ext/viewcode.py:306 -msgid "Module code" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: ext/viewcode.py:312 +#: util/inventory.py:147 #, python-format -msgid "

Source code for %s

" +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: ext/viewcode.py:338 -msgid "Overview: module code" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: ext/viewcode.py:339 -msgid "

All modules for which code is available

" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: ext/coverage.py:47 +#: util/i18n.py:113 #, python-format -msgid "invalid regex %r in %s" +msgid "writing error: %s, %s" msgstr "" -#: ext/coverage.py:134 ext/coverage.py:280 +#: util/i18n.py:146 #, python-format -msgid "module %s could not be imported: %s" +msgid "locale_dir %s does not exist" msgstr "" -#: ext/coverage.py:141 +#: util/i18n.py:244 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: ext/coverage.py:149 +#: util/i18n.py:253 +#, python-format msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: ext/coverage.py:163 +#: util/osutil.py:131 #, python-format msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: ext/coverage.py:177 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: ext/coverage.py:245 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" +#: util/display.py:87 +msgid "failed" msgstr "" -#: ext/coverage.py:429 +#: util/docutils.py:325 #, python-format -msgid "undocumented python function: %s :: %s" +msgid "unknown directive name: %s" msgstr "" -#: ext/coverage.py:445 +#: util/docutils.py:361 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "unknown role name: %s" msgstr "" -#: ext/coverage.py:458 +#: util/docutils.py:805 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "" - -#: ext/todo.py:71 -msgid "Todo" +msgid "unknown node type: %r" msgstr "" -#: ext/todo.py:104 +#: util/fileutil.py:76 #, python-format -msgid "TODO entry found: %s" +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: ext/todo.py:163 -msgid "<>" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: ext/todo.py:165 +#: util/docfields.py:103 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: ext/todo.py:175 -msgid "original entry" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: ext/extlinks.py:82 +#: util/nodes.py:462 #, python-format msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: ext/doctest.py:115 +#: util/nodes.py:523 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: ext/doctest.py:120 +#: util/nodes.py:739 #, python-format -msgid "'%s' is not a valid option." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: ext/doctest.py:134 -#, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "framhald frá fyrri síðu" -#: ext/doctest.py:220 -msgid "invalid TestCode type" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "framhald á næstu síðu" + +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: ext/doctest.py:281 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: ext/doctest.py:434 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: ext/doctest.py:522 -#, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "" - -#: ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "" - -#: ext/graphviz.py:145 -#, python-format -msgid "External Graphviz file %r not found or reading it failed" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Útgáfa" -#: ext/graphviz.py:268 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "graphviz_dot executable path must be set! %r" +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: ext/graphviz.py:303 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: ext/graphviz.py:310 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" +msgid "Unknown image format: %s..." msgstr "" -#: ext/graphviz.py:313 -#, python-format +#: transforms/post_transforms/__init__.py:88 msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "" - -#: ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: ext/graphviz.py:333 ext/graphviz.py:386 ext/graphviz.py:423 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "dot code %r: %s" +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: ext/graphviz.py:436 ext/graphviz.py:444 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "[graph: %s]" -msgstr "" - -#: ext/graphviz.py:438 ext/graphviz.py:446 -msgid "[graph]" -msgstr "" - -#: ext/imgmath.py:369 ext/mathjax.py:52 -msgid "Link to this equation" +msgid "%s:%s reference target not found: %s" msgstr "" -#: ext/apidoc.py:85 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "Would create file %s." -msgstr "" - -#: ext/apidoc.py:375 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "" - -#: ext/apidoc.py:392 -msgid "path to module to document" +msgid "%r reference target not found: %s" msgstr "" -#: ext/apidoc.py:396 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: ext/apidoc.py:407 -msgid "directory to place all output" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: ext/apidoc.py:422 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: ext/apidoc.py:429 -msgid "overwrite existing files" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: ext/apidoc.py:437 +#: _cli/util/errors.py:207 msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "" - -#: ext/apidoc.py:446 -msgid "run the script without creating files" -msgstr "" - -#: ext/apidoc.py:453 -msgid "put documentation for each module on its own page" -msgstr "" - -#: ext/apidoc.py:460 -msgid "include \"_private\" modules" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: ext/apidoc.py:467 -msgid "filename of table of contents (default: modules)" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: ext/apidoc.py:474 -msgid "don't create a table of contents file" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: ext/apidoc.py:481 +#: _cli/util/errors.py:240 msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "" - -#: ext/apidoc.py:492 -msgid "put module documentation before submodule documentation" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: ext/apidoc.py:498 +#: _cli/util/errors.py:246 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "" - -#: ext/apidoc.py:508 -msgid "file suffix (default: rst)" -msgstr "" - -#: ext/apidoc.py:515 ext/autosummary/generate.py:839 -msgid "Remove existing files in the output directory that were not generated" -msgstr "" - -#: ext/apidoc.py:524 -msgid "generate a full project with sphinx-quickstart" -msgstr "" - -#: ext/apidoc.py:531 -msgid "append module_path to sys.path, used when --full is given" -msgstr "" - -#: ext/apidoc.py:538 -msgid "project name (default: root module name)" -msgstr "" - -#: ext/apidoc.py:545 -msgid "project author(s), used when --full is given" -msgstr "" - -#: ext/apidoc.py:552 -msgid "project version, used when --full is given" -msgstr "" - -#: ext/apidoc.py:559 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "" - -#: ext/apidoc.py:564 -msgid "extension options" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: ext/apidoc.py:638 -#, python-format -msgid "%s is not a directory." +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: ext/apidoc.py:710 ext/autosummary/generate.py:875 -#, python-format -msgid "Failed to remove %s: %s" +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: ext/autosectionlabel.py:48 +#: themes/basic/layout.html:115 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "Search within %(docstitle)s" +msgstr "Leita í %(docstitle)s" -#: domains/std/__init__.py:703 domains/std/__init__.py:812 -#: ext/autosectionlabel.py:52 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: ext/duration.py:85 -msgid "" -"====================== slowest reading durations =======================" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Leit" -#: ext/imgmath.py:159 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: ext/imgmath.py:174 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: ext/imgmath.py:328 +#: themes/basic/layout.html:201 #, python-format -msgid "display latex %r: %s" +msgid "Last updated on %(last_updated)s." msgstr "" -#: ext/imgmath.py:362 +#: themes/basic/layout.html:204 #, python-format -msgid "inline latex %r: %s" -msgstr "" - -#: writers/latex.py:1090 writers/manpage.py:263 writers/texinfo.py:662 -msgid "Footnotes" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: writers/manpage.py:309 writers/text.py:936 -#, python-format -msgid "[image: %s]" -msgstr "[mynd: %s]" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Fyrra efni" -#: writers/manpage.py:310 writers/text.py:937 -msgid "[image]" -msgstr "[mynd]" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "fyrri kafli" -#: writers/html5.py:99 writers/html5.py:108 -msgid "Link to this definition" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Næsta efni" -#: writers/html5.py:415 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "næsti kafli" -#: writers/html5.py:427 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "Any IDs not assigned for %s node" +msgid "Index – %(key)s" msgstr "" -#: writers/html5.py:482 -msgid "Link to this term" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: writers/html5.py:525 writers/html5.py:530 -msgid "Link to this heading" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" -#: writers/html5.py:535 -msgid "Link to this table" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" msgstr "" -#: writers/html5.py:549 writers/latex.py:1099 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Flýtileit" -#: writers/html5.py:613 -msgid "Link to this code" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" -#: writers/html5.py:615 -msgid "Link to this image" +#: themes/basic/defindex.html:4 +msgid "Overview" msgstr "" -#: writers/html5.py:617 -msgid "Link to this toctree" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" msgstr "" -#: writers/html5.py:758 -msgid "Could not obtain image size. :scale: option is ignored." +#: themes/basic/defindex.html:9 +msgid "the documentation for" msgstr "" -#: builders/latex/__init__.py:205 domains/std/__init__.py:646 -#: domains/std/__init__.py:658 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:513 -msgid "Index" -msgstr "Yfirlit" - -#: writers/latex.py:743 writers/texinfo.py:644 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +#: themes/basic/defindex.html:10 +msgid "last updated" msgstr "" -#: writers/texinfo.py:1216 -msgid "caption not inside a figure." -msgstr "" +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "Atriðaskrá og töflur:" -#: writers/texinfo.py:1302 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "Heildarefnisyfirlit" -#: writers/latex.py:360 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" msgstr "" -#: builders/latex/__init__.py:223 writers/latex.py:410 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Leitarsíða" -#: writers/latex.py:428 -msgid "too large :maxdepth:, ignored." -msgstr "" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "leita" -#: writers/latex.py:590 -#, python-format -msgid "template %s not found; loading from legacy %s instead" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" msgstr "" -#: writers/latex.py:708 -msgid "document title is not a single Text node" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" msgstr "" -#: writers/latex.py:1175 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Almennt yfirlit" -#: writers/latex.py:1573 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" msgstr "" -#: writers/latex.py:1931 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Efnisyfirlit" -#: domains/std/__init__.py:87 domains/std/__init__.py:104 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "environment variable; %s" -msgstr "" +msgid "Search %(docstitle)s" +msgstr "Leita í %(docstitle)s" -#: domains/std/__init__.py:112 -#, python-format -msgid "%s; configuration value" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" msgstr "" -#: domains/std/__init__.py:166 -msgid "Type" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" msgstr "" -#: domains/std/__init__.py:176 -msgid "Default" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." msgstr "" -#: domains/std/__init__.py:235 -#, python-format +#: themes/basic/search.html:28 msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: domains/std/__init__.py:306 -#, python-format -msgid "%s command line option" -msgstr "" +#: themes/basic/search.html:35 +msgid "search" +msgstr "leita" -#: domains/std/__init__.py:308 -msgid "command line option" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: domains/std/__init__.py:430 -msgid "glossary term must be preceded by empty line" -msgstr "" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "Leitarniðurstöður" -#: domains/std/__init__.py:438 -msgid "glossary terms must not be separated by empty lines" -msgstr "" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "Leitin bar ekki árangur. Vinsamlegast gangið úr skugga um að orðin séu rétt skrifuð og að þú hafir valið nægilega marga flokka." -#: domains/std/__init__.py:444 domains/std/__init__.py:457 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" -#: domains/std/__init__.py:602 -msgid "glossary term" -msgstr "" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "Leitar" -#: domains/std/__init__.py:603 -msgid "grammar token" -msgstr "" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "Undirbýr leit..." -#: domains/std/__init__.py:604 -msgid "reference label" +#: themes/basic/static/searchtools.js:526 +msgid ", in " msgstr "" -#: domains/std/__init__.py:607 -msgid "environment variable" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Fela leitarniðurstöður" -#: domains/std/__init__.py:608 -msgid "program option" +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:609 -msgid "document" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:647 domains/std/__init__.py:659 -msgid "Module Index" +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" msgstr "" -#: domains/std/__init__.py:648 domains/std/__init__.py:660 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Leitarsíða" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "" -#: domains/std/__init__.py:722 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" msgstr "" -#: domains/std/__init__.py:932 -msgid "numfig is disabled. :numref: is ignored." +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" msgstr "" -#: domains/std/__init__.py:940 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" msgstr "" -#: domains/std/__init__.py:952 -#, python-format -msgid "the link has no caption: %s" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/std/__init__.py:966 -#, python-format -msgid "invalid numfig_format: %s (%r)" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/std/__init__.py:969 -#, python-format -msgid "invalid numfig_format: %s" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" msgstr "" -#: domains/std/__init__.py:1200 -#, python-format -msgid "undefined label: %r" +#: domains/python/_object.py:206 +msgid "Variables" msgstr "" -#: domains/std/__init__.py:1202 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: domains/python/__init__.py:107 domains/python/__init__.py:244 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:167 domains/python/__init__.py:334 -#: domains/python/__init__.py:385 domains/python/__init__.py:424 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:169 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:194 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:195 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:249 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:251 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:389 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:428 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:559 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:560 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:637 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:663 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:665 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:666 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:668 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:669 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:729 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:858 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:920 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:304 domains/cpp/__init__.py:441 -#: domains/python/_object.py:164 ext/napoleon/docstring.py:786 -msgid "Parameters" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/python/_object.py:169 -msgid "Variables" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" msgstr "" -#: domains/python/_object.py:173 -msgid "Raises" +#: domains/cpp/__init__.py:302 +#, python-format +msgid "%s (C++ %s)" msgstr "" -#: domains/c/__init__.py:199 -#, python-format -msgid "%s (C %s)" +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "" + +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" msgstr "" -#: domains/c/__init__.py:260 domains/c/_symbol.py:510 +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "" + +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "" + +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "" + +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "" + +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:307 domains/cpp/__init__.py:454 -msgid "Return values" -msgstr "" - -#: domains/c/__init__.py:679 domains/cpp/__init__.py:860 -msgid "member" +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" msgstr "" -#: domains/c/__init__.py:680 +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:682 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:683 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/c/__init__.py:684 domains/cpp/__init__.py:858 -msgid "union" +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" msgstr "" -#: domains/c/__init__.py:685 domains/cpp/__init__.py:863 -msgid "enum" +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" msgstr "" -#: domains/c/__init__.py:686 domains/cpp/__init__.py:864 -msgid "enumerator" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: domains/c/__init__.py:687 domains/cpp/__init__.py:861 -msgid "type" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: domains/c/__init__.py:689 domains/cpp/__init__.py:866 -msgid "function parameter" +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: domains/cpp/__init__.py:155 -msgid "Template Parameters" +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" msgstr "" -#: domains/cpp/__init__.py:277 -#, python-format -msgid "%s (C++ %s)" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: domains/cpp/__init__.py:360 domains/cpp/_symbol.py:793 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: domains/cpp/__init__.py:862 -msgid "concept" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: domains/cpp/__init__.py:867 -msgid "template parameter" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Efnisyfirlit" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Leit" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: themes/basic/layout.html:18 -msgid "Navigation" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: themes/basic/layout.html:115 +#: domains/std/__init__.py:857 #, python-format -msgid "Search within %(docstitle)s" -msgstr "Leita í %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: domains/std/__init__.py:1124 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: themes/basic/layout.html:201 +#: domains/std/__init__.py:1138 #, python-format -msgid "Last updated on %(last_updated)s." +msgid "the link has no caption: %s" msgstr "" -#: themes/basic/layout.html:204 +#: domains/std/__init__.py:1153 #, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: themes/basic/genindex-single.html:26 +#: domains/std/__init__.py:1157 #, python-format -msgid "Index – %(key)s" +msgid "invalid numfig_format: %s" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" msgstr "" -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: themes/basic/genindex-split.html:17 -msgid "can be huge" +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: themes/basic/opensearch.xml:4 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Search %(docstitle)s" -msgstr "Leita í %(docstitle)s" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: themes/basic/defindex.html:4 -msgid "Overview" +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: themes/basic/defindex.html:9 -msgid "the documentation for" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: themes/basic/defindex.html:10 -msgid "last updated" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "Atriðaskrá og töflur:" - -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "Heildarefnisyfirlit" - -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "leita" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Almennt yfirlit" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Flýtileit" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: themes/basic/search.html:35 -msgid "search" -msgstr "leita" +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Fyrra efni" +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "fyrri kafli" +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Næsta efni" +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" +msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "næsti kafli" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: ext/autodoc/_names.py:89 #, python-format -msgid "Automatically generated list of changes in version %(version)s" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: themes/basic/changes/rstsource.html:5 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "%(filename)s — %(docstitle)s" +msgid "Would create file %s." msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Fela leitarniðurstöður" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "Leitarniðurstöður" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" -#: themes/basic/static/searchtools.js:119 +#: ext/apidoc/_cli.py:50 msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "Leitin bar ekki árangur. Vinsamlegast gangið úr skugga um að orðin séu rétt skrifuð og að þú hafir valið nægilega marga flokka." - -#: themes/basic/static/searchtools.js:123 -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "Leitar" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "Undirbýr leit..." +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: environment/collectors/asset.py:96 -#, python-format -msgid "image file not readable: %s" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: environment/collectors/asset.py:124 -#, python-format -msgid "image file %s not readable: %s" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: environment/collectors/asset.py:161 -#, python-format -msgid "download file not readable: %s" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: environment/collectors/toctree.py:258 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: environment/adapters/toctree.py:318 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: environment/adapters/toctree.py:342 -#, python-format +#: ext/apidoc/_cli.py:135 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: environment/adapters/toctree.py:357 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: environment/adapters/indexentries.py:126 -#, python-format -msgid "see %s" -msgstr "sjá %s" - -#: environment/adapters/indexentries.py:136 -#, python-format -msgid "see also %s" -msgstr "sjá einnig %s" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: environment/adapters/indexentries.py:144 -#, python-format -msgid "unknown index entry type %r" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: environment/adapters/indexentries.py:270 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/html/__init__.py:363 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/html/__init__.py:382 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "yfirlit" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:560 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Logo of %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "næsta" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "fyrri" - -#: builders/html/__init__.py:695 -msgid "generating indices" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/html/__init__.py:710 -msgid "writing additional pages" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:793 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:805 -msgid "copying downloadable files... " +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:817 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:863 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/__init__.py:881 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:916 -msgid "copying static files" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:933 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "cannot copy static file %r" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/__init__.py:938 -msgid "copying extra files" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/__init__.py:948 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/html/__init__.py:954 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Failed to write build info file: %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/html/__init__.py:1003 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/html/__init__.py:1051 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/html/__init__.py:1213 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/html/__init__.py:1222 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1255 -msgid "dumping object inventory" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/html/__init__.py:1263 +#: ext/autosummary/generate.py:634 #, python-format -msgid "dumping search index in %s" +msgid "[autosummary] writing to %s" msgstr "" -#: builders/html/__init__.py:1306 +#: ext/autosummary/generate.py:679 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/html/__init__.py:1339 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: builders/html/__init__.py:1344 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: builders/html/__init__.py:1358 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: builders/html/__init__.py:1363 +#: ext/autosummary/generate.py:915 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1378 +#: ext/autosummary/generate.py:923 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "custom template directory (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1383 +#: ext/autosummary/generate.py:931 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "document imported members (default: %(default)s)" msgstr "" -#: builders/html/__init__.py:1394 builders/latex/__init__.py:504 +#: ext/autosummary/generate.py:940 #, python-format -msgid "logo file %r does not exist" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: builders/html/__init__.py:1405 +#: ext/autosummary/__init__.py:235 #, python-format -msgid "favicon file %r does not exist" +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: builders/html/__init__.py:1417 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: builders/html/__init__.py:1430 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: builders/html/__init__.py:1447 +#: ext/autosummary/__init__.py:329 #, python-format -msgid "%s %s documentation" -msgstr "" - -#: builders/latex/transforms.py:118 -msgid "Failed to get a docname!" +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:119 +#: ext/autosummary/__init__.py:358 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "failed to import object %s" msgstr "" -#: builders/latex/transforms.py:485 +#: ext/autosummary/__init__.py:652 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: builders/latex/__init__.py:117 +#: ext/autosummary/__init__.py:850 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "autosummary_generate: file not found: %s" msgstr "" -#: builders/latex/__init__.py:119 +#: ext/autosummary/__init__.py:860 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" - -#: builders/latex/__init__.py:157 -msgid "no \"latex_documents\" config value found; no documents will be written" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: builders/latex/__init__.py:169 +#: ext/intersphinx/_load.py:61 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: builders/latex/__init__.py:208 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Útgáfa" - -#: builders/latex/__init__.py:429 -msgid "copying TeX support files" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: builders/latex/__init__.py:466 -msgid "copying additional files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: builders/latex/__init__.py:540 +#: ext/intersphinx/_load.py:94 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: builders/latex/__init__.py:548 +#: ext/intersphinx/_load.py:103 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: builders/latex/theming.py:87 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: builders/latex/theming.py:90 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: _cli/util/errors.py:124 -msgid "Exception occurred, starting debugger:" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: _cli/util/errors.py:133 -msgid "reStructuredText markup error:" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: _cli/util/errors.py:168 -msgid "The full traceback has been saved in:" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: _cli/util/errors.py:172 +#: ext/intersphinx/_load.py:324 msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: transforms/post_transforms/__init__.py:125 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: transforms/post_transforms/__init__.py:185 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: transforms/post_transforms/__init__.py:251 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "(in %s %s)" msgstr "" -#: transforms/post_transforms/__init__.py:257 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "%r reference target not found: %s" +msgid "(in %s)" msgstr "" -#: transforms/post_transforms/images.py:77 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:94 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: transforms/post_transforms/images.py:141 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Unknown image format: %s..." +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/docstring.py:707 -msgid "Example" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/napoleon/docstring.py:708 -msgid "Examples" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/napoleon/__init__.py:344 ext/napoleon/docstring.py:752 -msgid "Keyword Arguments" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/napoleon/docstring.py:768 -msgid "Notes" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:777 -msgid "Other Parameters" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/napoleon/docstring.py:813 -msgid "Receives" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:817 -msgid "References" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/napoleon/docstring.py:849 -msgid "Warns" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/napoleon/docstring.py:853 -msgid "Yields" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/napoleon/docstring.py:1015 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1022 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1029 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/napoleon/docstring.py:1036 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/autosummary/__init__.py:256 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/autosummary/__init__.py:258 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/autosummary/__init__.py:277 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "" - -#: ext/autosummary/__init__.py:330 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/__init__.py:344 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "failed to parse name %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/autosummary/__init__.py:349 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "failed to import object %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/autosummary/__init__.py:648 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format msgid "" -"Summarised items should not include the current module. Replace %r with %r." +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/autosummary/__init__.py:819 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/autosummary/__init__.py:827 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/autosummary/generate.py:215 ext/autosummary/generate.py:391 -#, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/autosummary/generate.py:526 -#, python-format -msgid "[autosummary] generating autosummary for: %s" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/autosummary/generate.py:530 -#, python-format -msgid "[autosummary] writing to %s" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/autosummary/generate.py:572 +#: builders/html/__init__.py:114 #, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/autosummary/generate.py:767 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/autosummary/generate.py:789 -msgid "source files to generate rST files for" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/autosummary/generate.py:797 -msgid "directory to place all output in" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/autosummary/generate.py:805 +#: builders/html/__init__.py:372 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/autosummary/generate.py:813 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "yfirlit" + +#: builders/html/__init__.py:549 #, python-format -msgid "custom template directory (default: %(default)s)" +msgid "Logo of %s" msgstr "" -#: ext/autosummary/generate.py:821 -#, python-format -msgid "document imported members (default: %(default)s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "næsta" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "fyrri" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/autosummary/generate.py:829 -#, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:47 +#: builders/html/__init__.py:783 #, python-format -msgid "(in %s v%s)" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:103 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:113 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:359 +#: builders/html/__init__.py:871 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:367 -#, python-format -msgid "invalid external cross-reference suffix: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:378 +#: builders/html/__init__.py:923 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "cannot copy static file %r" msgstr "" -#: ext/intersphinx/_resolve.py:585 -#, python-format -msgid "external %s:%s reference target not found: %s" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:59 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:70 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:81 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:92 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:101 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:120 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:155 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:240 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:265 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:275 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:319 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/type_comment.py:132 +#: builders/html/__init__.py:1370 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/type_comment.py:135 +#: builders/html/__init__.py:1385 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:142 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:415 +#: builders/html/__init__.py:1412 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:532 +#: builders/html/__init__.py:1425 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:807 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:902 +#: builders/html/__init__.py:1454 #, python-format -msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +msgid "%s %s documentation" msgstr "" -#: ext/autodoc/__init__.py:946 +#: builders/latex/theming.py:87 #, python-format -msgid "A mocked object is detected: %r" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:965 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1028 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1035 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1048 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1114 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1337 ext/autodoc/__init__.py:1414 -#: ext/autodoc/__init__.py:2829 -#, python-format -msgid "Failed to get a function signature for %s: %s" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1633 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1760 -#, python-format -msgid "Bases: %s" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1774 +#: builders/latex/__init__.py:529 #, python-format -msgid "missing attribute %s in object %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1855 ext/autodoc/__init__.py:1892 -#: ext/autodoc/__init__.py:1987 +#: builders/latex/__init__.py:537 #, python-format -msgid "alias of %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1875 +#: environment/collectors/toctree.py:259 #, python-format -msgid "alias of TypeVar(%s)" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:2217 ext/autodoc/__init__.py:2317 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2448 +#: environment/collectors/asset.py:126 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/preserve_defaults.py:190 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "download file not readable: %s" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "framhald frá fyrri síðu" +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "framhald á næstu síðu" +#: environment/adapters/toctree.py:360 +#, python-format +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "sjá %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "sjá einnig %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/it/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/it/LC_MESSAGES/sphinx.mo index 44cc72194693502acd131f6bdd6e54a5d66c278d..96fcee8d38a9f09f0e70de5b9a6ada5a28f855a5 100644 GIT binary patch delta 2916 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 QyY^n)@&6q*6esil1(kse-T(jq diff --git a/addons/source-python/packages/site-packages/sphinx/locale/it/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/it/LC_MESSAGES/sphinx.po index 48d98cc7b..1b54762ce 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/it/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/it/LC_MESSAGES/sphinx.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Alessandro Cucci , 2024\n" "Language-Team: Italian (http://app.transifex.com/sphinx-doc/sphinx-1/language/it/)\n" @@ -25,6 +25,127 @@ msgstr "" "Language: it\n" "Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -39,127 +160,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Impossibile trovare la cartella sorgente ( %s )" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "La cartella di output (%s) non è una cartella" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "La cartella sorgente e la cartella di destinazione non possono essere identiche" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sto eseguendo Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Questo progetto necessita almeno di Sphinx v%s per cui non può essere creato con la versione attuale." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "sto creando la cartella di output" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "caricamento traduzioni [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "fatto" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -167,12 +315,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -180,82 +328,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -263,468 +543,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Sezione %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Fig. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabella %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Listato %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "il primary_domain %r non è stato trovato, tralasciato." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Attenzione" + +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Attenzione" + +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Pericolo" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Errore" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Suggerimento" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Importante" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Nota" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Vedi anche" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Suggerimento" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Avvertimento" + +#: builders/texinfo.py:41 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: events.py:370 +#: builders/texinfo.py:85 #, python-format -msgid "Unknown event name: %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: events.py:416 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "processing %s" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (in " + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:171 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:218 #, python-format -msgid "Builder name %s not registered" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:204 +#: builders/manpage.py:37 #, python-format -msgid "domain %s already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:235 +#: builders/manpage.py:64 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/singlehtml.py:35 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:353 +#: builders/gettext.py:243 #, python-format -msgid "source_suffix %r is already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:363 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "source_parser for %r is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:372 +#: builders/gettext.py:265 #, python-format -msgid "Source parser for %s not registered" +msgid "targets for %d template files" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:496 +#: builders/linkcheck.py:87 #, python-format -msgid "enumerable_node %r already registered" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:512 +#: builders/linkcheck.py:159 #, python-format -msgid "math renderer %s is already registered" +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:529 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: registry.py:545 +#: builders/linkcheck.py:799 #, python-format -msgid "Could not import extension %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: registry.py:552 +#: builders/epub3.py:83 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: registry.py:565 -#, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: registry.py:577 -#, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[sorgente]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[documenti]" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Codice del modulo" +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "" -#: ext/viewcode.py:353 +#: builders/xml.py:29 #, python-format -msgid "

Source code for %s

" -msgstr "

Codice sorgente per %s

" +msgid "The XML files are in %(outdir)s." +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Vista generale: codice del modulo" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Tutti i moduli di cui è disponibile il codice

" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "" -#: ext/extlinks.py:82 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/_epub_base.py:436 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/_epub_base.py:467 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:118 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "manca '+' or'-' nell'opzione '%s'." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' non è un'opzione valida." +msgid "unknown mimetype for %s, ignoring" +msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "writing %s file..." msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Builtins" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Al livello del modulo" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -745,9 +1181,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -782,6 +1219,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Da fare" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(L'<> si trova in %s, linea %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "riga originale" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -869,1779 +1334,1514 @@ msgstr "[grafico: %s]" msgid "[graph]" msgstr "[grafico]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Da fare" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(L'<> si trova in %s, linea %d.)" +msgid "display latex %r: %s" +msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "riga originale" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "Didascalia non valida: %s" +msgid "missing '+' or '-' in '%s' option." +msgstr "manca '+' or'-' nell'opzione '%s'." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "" +msgid "'%s' is not a valid option." +msgstr "'%s' non è un'opzione valida." -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Impossibile usare contemporaneamente le opzioni \"%s\" e \"%s\"" +msgid "'%s' is not a valid pyversion option" +msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autore della sezione: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[sorgente]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autore del modulo: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autore del codice: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[documenti]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autore: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Codice del modulo" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Codice sorgente per %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Vista generale: codice del modulo" -#: builders/changes.py:29 +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Tutti i moduli di cui è disponibile il codice

" + +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "etichetta dell'equazione %s duplicata, altra istanza in %s" + +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Builtins" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (funzione built-in)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Al livello del modulo" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metodo)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (classe)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (variabile globale o costante)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s attributo)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Parametri" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Solleva" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Ritorna" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Tipo di ritorno" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (modulo)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funzione" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metodo" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "classe" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dati" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attributo" -#: builders/__init__.py:275 +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modulo" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (direttiva)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (ruolo)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direttiva" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "ruolo" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "Cambiato nella versione %s" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Deprecato dalla versione %s" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (in " +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" - -#: _cli/__init__.py:98 -msgid "Options" -msgstr "Opzioni" - -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" - -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: environment/__init__.py:86 -msgid "new config" -msgstr "" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" - -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" - -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" - -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" - -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" - -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" - -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" - -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" - -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" - -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" - -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "" - -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: util/i18n.py:236 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "Invalid Babel locale: %r." +msgid "Creating file %s." msgstr "" -#: util/i18n.py:245 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +msgid "File %s already exists, skipping." msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: util/nodes.py:423 +#: cmd/quickstart.py:520 #, python-format msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" - -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" - -#: util/display.py:82 -msgid "skipped" -msgstr "" - -#: util/display.py:87 -msgid "failed" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" - -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" - -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: util/fileutil.py:76 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" - -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "" - -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" - -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Note a piè di pagina" - -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[immagine: %s]" - -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[immagine]" - -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Indice" - -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:538 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" - -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "" - -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: writers/latex.py:1183 +#: cmd/quickstart.py:573 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "etichetta dell'equazione %s duplicata, altra istanza in %s" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (funzione built-in)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metodo)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (classe)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variabile globale o costante)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attributo)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Parametri" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Solleva" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Ritorna" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Tipo di ritorno" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modulo)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funzione" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metodo" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "classe" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dati" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "attributo" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modulo" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Cambiato nella versione %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Deprecato dalla versione %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direttiva)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (ruolo)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "direttiva" - -#: domains/rst.py:235 -msgid "directive-option" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "ruolo" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Attenzione" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Attenzione" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Pericolo" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Errore" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Suggerimento" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Importante" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Nota" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Vedi anche" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Suggerimento" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Avvertimento" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Template di progetto" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: cmd/quickstart.py:234 +#: cmd/quickstart.py:793 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: cmd/quickstart.py:241 +#: cmd/quickstart.py:810 #, python-format -msgid "Selected root path: %s" +msgid "Invalid template variable: %s" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autore della sezione: " -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autore del modulo: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autore del codice: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autore: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: cmd/quickstart.py:286 +#: directives/patches.py:70 msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "Didascalia non valida: %s" -#: cmd/quickstart.py:300 -msgid "Project name" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Impossibile usare contemporaneamente le opzioni \"%s\" e \"%s\"" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: cmd/quickstart.py:308 +#: directives/code.py:235 +#, python-format 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" -"just set both to the same value." +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Indice" -#: cmd/quickstart.py:339 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Note a piè di pagina" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[immagine: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[immagine]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:431 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "numfig_format is not defined for %s" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" + +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: writers/latex.py:616 #, python-format -msgid "File %s already exists, skipping." +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:519 -#, python-format +#: writers/latex.py:1198 msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:526 +#: writers/latex.py:1228 +#, python-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1615 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "Opzioni" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Template di progetto" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:244 #, python-format -msgid "Invalid template variable: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:74 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "continua dalla pagina precedente" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Simboli" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "pagina" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Release" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Comprimi la barra laterale" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigazione" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Cerca in %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "A proposito di questi documenti" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Cerca" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Vai" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Ultimo aggiornamento %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Argomento precedente" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "capitolo precedente" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Argomento successivo" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "capitolo successivo" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Indice completo in una pagina" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Questa pagina" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Mostra sorgente" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Contenuti" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Ricerca veloce" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Cerca %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Vai" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2688,7 +2888,7 @@ msgstr "Indice dei moduli" msgid "quick access to all modules" msgstr "accesso veloce ai moduli" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Indice generale" @@ -2696,23 +2896,15 @@ msgstr "Indice generale" msgid "all functions, classes, terms" msgstr "tutte le funzioni, classi e moduli" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Questa pagina" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Indice completo in una pagina" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Ricerca veloce" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Cerca %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2722,57 +2914,6 @@ msgstr "Indice delle pagine per lettera" msgid "can be huge" msgstr "può essere enorme" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Argomento precedente" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "capitolo precedente" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Argomento successivo" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "capitolo successivo" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigazione" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Cerca in %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "A proposito di questi documenti" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Ultimo aggiornamento %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2789,21 +2930,21 @@ msgstr "" msgid "search" msgstr "cerca" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Nascondi i risultati della ricerca" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Contenuti" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Risultati della ricerca" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "La tua ricerca non corrisponde a nessun documento. Verifica che tutte le parole siano scritte correttamente e di aver scelto un numero sufficiente di categorie." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2812,22 +2953,21 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Cerca" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Preparo la ricerca..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", in " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Nascondi i risultati della ricerca" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2835,6 +2975,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Cambiamenti nella Versione %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2856,120 +3001,127 @@ msgstr "Altre modifiche" msgid "Expand sidebar" msgstr "Espandi la barra laterale" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametri" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variabili" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Solleva" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (nel modulo %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (nel modulo %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variabile built-in)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (classe built-in)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (classe in %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s metodo della classe)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s metodo statico)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Indice del modulo Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduli" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Deprecato" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "eccezione" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "metodo della classe" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "metodo statico" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (deprecato)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametri" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variabili" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Solleva" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2980,746 +3132,526 @@ msgstr "Parametri del modello" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Valori restituiti" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "membro" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipo" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "concetto" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumeratore" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variabile" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "macro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "variabile d'ambiente, %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "voce del glossario" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "elemento grammaticale" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "etichetta di riferimento" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "variabile d'ambiente" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "opzione del programma" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "documento" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Indice dei moduli" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "vedi %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "vedi anche %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Simboli" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: transforms/post_transforms/images.py:143 +#: domains/std/__init__.py:239 #, python-format -msgid "Unknown image format: %s..." +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:319 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indice" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "voce del glossario" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "elemento grammaticale" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "successivo" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "etichetta di riferimento" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "precedente" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "variabile d'ambiente" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "opzione del programma" + +#: domains/std/__init__.py:735 +msgid "document" +msgstr "documento" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Indice dei moduli" + +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1153 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1157 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1453 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:934 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy static file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "cannot copy extra file %r" +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to write build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Esempio" + +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Esempi" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argomenti parole chiave" + +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Note" + +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:1265 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "dumping search index in %s" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1308 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "invalid js_file: %r, ignored" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "" +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr " Basi: %s" -#: builders/html/__init__.py:1346 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Unknown math_renderer %r is given." +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1360 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_names.py:89 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_names.py:93 #, python-format -msgid "logo file %r does not exist" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "" + +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "favicon file %r does not exist" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "Would create file %s." msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:28 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" -msgstr "Documentazione %s %s " +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:91 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Release" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "continua dalla pagina precedente" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "pagina" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argomenti parole chiave" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Esempio" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Esempi" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Note" - -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3727,7 +3659,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3742,481 +3674,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "(in %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indice" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "successivo" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "precedente" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "" + +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "" + +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "Documentazione %s %s " + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" -msgstr " Basi: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "vedi %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "vedi anche %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ja/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ja/LC_MESSAGES/sphinx.mo index 5874884e9e3f94acad8a8066db4e13e262c9f213..3b6e121498279cdeda3214af38cec60f95afaad8 100644 GIT binary patch delta 10869 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 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ja/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/ja/LC_MESSAGES/sphinx.po index cbe5c92da..3ce6f74ae 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/ja/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/ja/LC_MESSAGES/sphinx.po @@ -24,7 +24,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Takayuki SHIMIZUKAWA , 2016-2017,2019,2024\n" "Language-Team: Japanese (http://app.transifex.com/sphinx-doc/sphinx-1/language/ja/)\n" @@ -35,6 +35,127 @@ msgstr "" "Language: ja\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "無効なPEP番号 %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "無効なRFC番号 %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "設定 %s.%s がテーマ設定にありません" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "サポートされていないテーマオプション %r が指定されました" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "テーマパス上のファイル %r は正しいzipファイルではないか、テーマを含んでいません" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -49,127 +170,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "このプロジェクトは拡張 %s の %s 以降のバージョンが必要なため、現在のバージョン(%s)ではビルドできません。" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Pygments に %r というlexerがありません" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "イベント %r はすでに登録されています" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "不明なイベント名: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "イベント %r のハンドラ %r で例外が発生しました。" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "ソースディレクトリが存在しません (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "出力先ディレクトリ (%s) はディレクトリではありません" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "出力先ディレクトリにはソースディレクトリと異なるディレクトリを指定してください" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx v%s を実行中" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "このプロジェクトはSphinx v%s以降のバージョンでなければビルドできません。" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "出力先ディレクトリを作成しています" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "拡張機能のセットアップ中 %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "conf.pyにある'setup'はPythonのcallableではありません。定義を修正してcallableである関数にしてください。これはconf.pyがSphinx拡張として動作するのに必要です。" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "翻訳カタログをロードしています [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "完了" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "翻訳が用意されていません" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "保存された環境データを読み込み中" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "失敗: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "ビルダーが選択されていないので、デフォルトの html を使用します" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "nodeクラス %r は既に登録されています。visitor関数は上書きされます" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -177,12 +325,12 @@ msgid "" "explicit" msgstr "拡張 %s は並列読み込みが可能かどうかを宣言していないため、おそらく並列読み込みに対応していないでしょう。拡張の実装者に連絡して、明示してもらってください。" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "%s拡張は並列読み込みに対して安全ではありません" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -190,82 +338,214 @@ msgid "" "explicit" msgstr "拡張 %s は並列書き込みが可能かどうかを宣言していないため、おそらく並列書き込みに対応していないでしょう。拡張の実装者に連絡して、明示してもらってください。" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "%s拡張は並列書き込みに対して安全ではありません" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "直列で %sします" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "conf.py が設定ディレクトリに存在しません (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "ビルダークラス %s には\"name\"属性がありません" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "ビルダー %r (モジュール %s) がすでに登録されています" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "ビルダー名 %s は登録されておらず、entry pointにもありません" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "ビルダー名 %s は登録されていません" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "ドメイン %s はすでに登録されています" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "ドメイン %s はまだ登録されていません" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "ディレクティブ %r は既に%sドメインに登録されています" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "ロール %r は既にドメイン%sに登録されています" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "インデックス %r はすでに%sドメインに登録されています" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "object_type %r はすでに登録されています" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "classref_type %r はすでに登録されています" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r はすでに登録されています" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "%r のsource_parserはすでに登録されています" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "%s のsource_parserは登録されていません" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "%r のTranslatorはすでに登録されています" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "add_node() のキーワード引数は (visit, depart) の形式で関数をタプルで指定してください: %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r はすでに登録されています" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "math renderer %s はすでに登録されています" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "無効な設定値が見つかりました: 'language = None' 。設定を有効な言語コードに更新してください。 'en' (英語)にフォールバックしています。" +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "拡張 %r はSphinxのバージョン%sでSphinxに統合されています。この拡張は無視されます。" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "元の例外:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "拡張 %s をimportできません" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "拡張 %r には setup() 関数がありません。これは本当にSphinx拡張ですか?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "このプロジェクトで使われている拡張 %s はSphinx v%s 以降が必要なため、現在のバージョンではビルドできません。" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "拡張 %r のsetup()関数が、対応していないオブジェクトを返しました。Noneまたはメタデータ辞書を返してください" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "conf.py が設定ディレクトリに存在しません (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "設定値の辞書 %r は上書きないため無視されました (%r を使って個別に設定してください)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "%r は設定値 %r の正しい値ではないため無視されました" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "%r は正しい型ではないため無視されました" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "不明な設定値 %r による上書きは無視されました" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "設定値 %r は既に登録済みです" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "無効な設定値が見つかりました: 'language = None' 。設定を有効な言語コードに更新してください。 'en' (英語)にフォールバックしています。" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "設定ファイルに文法エラーが見つかりました: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "設定ファイル(あるいはインポートしたどれかのモジュール)がsys.exit()を呼びました" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -273,543 +553,728 @@ msgid "" "%s" msgstr "設定ファイルにプログラム上のエラーがあります:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "設定値 `source_suffix' に `%r' (%s型)が指定されましたが、文字列、文字列のリスト、辞書、のいずれかを指定してください。" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "%s 章" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "図 %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "表 %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "リスト %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr " 設定値 `{name}` に `{current}` が指定されましたが、 {candidates} のいずれかを指定してください。" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "設定値 `{name}' に `{current.__name__}' 型が指定されていますが、 {permitted} 型を指定してください。" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "設定値 `{name}' に `{current.__name__}' 型が指定されています。デフォルト値は `{default.__name__}' です。" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r が見つかりません。無視します。" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Pygments に %r というlexerがありません" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "新しい設定" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "設定 %s.%s がテーマ設定にありません" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "変更された設定" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "サポートされていないテーマオプション %r が指定されました" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "変更された拡張" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "テーマパス上のファイル %r は正しいzipファイルではないか、テーマを含んでいません" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "ビルド環境のバージョンが最新ではありません" -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "ソースディレクトリが変更されました" -#: theming.py:268 +#: environment/__init__.py:350 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:355 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:282 +#: environment/__init__.py:361 #, python-format -msgid "The %r theme has too many ancestors" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:310 -#, python-format -msgid "no theme configuration file found in %r" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "この環境は選択したビルダーと互換性がありません。別の doctree ディレクトリーを選択してください。" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:518 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "%s のドキュメントをスキャンできませんでした: %r " -#: theming.py:339 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "ドメイン %r はまだ登録されていません" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "ドキュメントはどの toctree にも含まれていません" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "自己参照している toctree が見つかりました。無視します。" -#: theming.py:366 +#: environment/__init__.py:952 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "イベント %r はすでに登録されています" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "注意" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "不明なイベント名: %s" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "注意" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "イベント %r のハンドラ %r で例外が発生しました。" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "危険" -#: project.py:72 +#: locale/__init__.py:232 +msgid "Error" +msgstr "エラー" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "ヒント" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "重要" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "注釈" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "参考" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tip" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "警告" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfoファイルは%(outdir)sにあります。" + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nmakeinfo コマンドで処理するため、そのディレクトリで 'make' を実行してください。\n(これを自動的に行うには、ここで 'make info' を使用してください)。" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "設定値 \"texinfo_documents\" が見つかりません。ドキュメントは書き込まれません" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "ビルダークラス %s には\"name\"属性がありません" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "設定値 \"texinfo_documents\" は、不明なドキュメント %s を参照しています" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "ビルダー %r (モジュール %s) がすでに登録されています" +msgid "processing %s" +msgstr "処理中 %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "ビルダー名 %s は登録されておらず、entry pointにもありません" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "書き込み中" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "ビルダー名 %s は登録されていません" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "参照を解決しています..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "ドメイン %s はすでに登録されています" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (in " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "ドメイン %s はまだ登録されていません" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "画像をコピー中... " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "ディレクティブ %r は既に%sドメインに登録されています" +msgid "cannot copy image file %r: %s" +msgstr "画像ファイル %r をコピーできません: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "ロール %r は既にドメイン%sに登録されています" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "Texinfo 関連ファイルをコピーしています" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "インデックス %r はすでに%sドメインに登録されています" +msgid "error writing file Makefile: %s" +msgstr "Makefile の書き込みエラー: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "object_type %r はすでに登録されています" +msgid "The manual pages are in %(outdir)s." +msgstr "マニュアルページは %(outdir)s にあります。" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "classref_type %r はすでに登録されています" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "設定値 \"man_pages\" が見つかりません。マニュアルページは書かれません" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r はすでに登録されています" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "設定値 \"man_pages\" が不明なドキュメント %s を参照しています" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "%r のsource_parserはすでに登録されています" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML ページは%(outdir)sにあります。" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "%s のsource_parserは登録されていません" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "ドキュメントを1ページにまとめています" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "%r のTranslatorはすでに登録されています" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "追加のファイルを出力" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "add_node() のキーワード引数は (visit, depart) の形式で関数をタプルで指定してください: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "dummyビルダーはファイルを出力しません" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r はすでに登録されています" +msgid "The message catalogs are in %(outdir)s." +msgstr "メッセージカタログは%(outdir)sにあります。" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "math renderer %s はすでに登録されています" +msgid "building [%s]: " +msgstr "ビルド中 [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "拡張 %r はSphinxのバージョン%sでSphinxに統合されています。この拡張は無視されます。" +msgid "targets for %d template files" +msgstr "指定された %d 件のテンプレートファイル" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "元の例外:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "テンプレートの読み込み中..." -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "拡張 %s をimportできません" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "メッセージカタログを出力中... " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "拡張 %r には setup() 関数がありません。これは本当にSphinx拡張ですか?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "上記の出力結果、または %(outdir)s /output.txt を見てエラーを確認してください" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "このプロジェクトで使われている拡張 %s はSphinx v%s 以降が必要なため、現在のバージョンではビルドできません。" +msgid "broken link: %s (%s)" +msgstr "リンクが切れています: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "拡張 %r のsetup()関数が、対応していないオブジェクトを返しました。Noneまたはメタデータ辞書を返してください" +msgid "Anchor '%s' not found" +msgstr "アンカー '%s' が見つかりません" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "linkcheck_allowed_redirects 内の正規表現のコンパイルに失敗しました: %r %s" -#: roles.py:251 +#: builders/epub3.py:83 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "ePubファイルは%(outdir)sにあります。" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" -msgstr "" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "nav.xhtml を書き込み中..." -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_language\" (あるいは \"language\") の指定が必要です" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" -msgstr "無効なPEP番号 %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "EPUB3では設定値 \"epub_uid\" はXML NAMEにするべきです" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" -msgstr "無効なRFC番号 %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_title\" (あるいは \"html_title\") の指定が必要です" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[ソース]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_author\" の指定が必要です" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "モジュールコードをハイライトしています..." +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_contributor\" が必要です" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[ドキュメント]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_description\" が必要です" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "モジュールコード" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_publisher\" の指定が必要です" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

%s のソースコード

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_copyright\" (あるいは \"copyright\") の指定が必要です" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "概要: モジュールコード" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"epub_identifier\" の指定が必要です" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

全モジュールのうち、コードを読めるもの

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "EPUB3出力では設定値 \"version\" が必要です" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "ハードコードされたリンク %r は 拡張リンクに置き換えられる可能性があります (代わりに %r を使用してみてください)。" +msgid "invalid css_file: %r, ignored" +msgstr "無効な css_file %r は無視されました" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "XMLファイルは%(outdir)sにあります。" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "ラベル %s はすでに %s で使われています" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "" +msgid "error writing file %s: %s" +msgstr "ファイル書き込みエラー %s: %s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== 最も遅い読み取り時間 =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "pseudo-XMLファイルは%(outdir)sにあります。" -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "'%s' オプション内に '+' または '-' が不足しています" +msgid "duplicated ToC entry found: %s" +msgstr "Tocエントリーが重複しています: %s" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' は正しいオプションではありません" +msgid "cannot read image file %r: copying it instead" +msgstr "画像ファイル %r をPILで読み込めないため、そのままコピーします" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' は正しい pyversion オプションではありません" +msgid "cannot write image file %r: %s" +msgstr "画像ファイル %r を書き込めません: %s" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "無効な TestCode タイプ" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillowがインストールされていません。代わりに画像をコピーします" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "mimetype を書き込み中..." + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "META-INF/container.xml を書き込み中..." + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "content.opf を書き込み中..." + +#: builders/_epub_base.py:594 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "ソース内の doctests のテストが終了したら、%(outdir)s/output.txt の結果を確認してください。" +msgid "unknown mimetype for %s, ignoring" +msgstr "不明なmimetype %sのため無視します" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "tox.ncx を書き込み中..." -#: ext/doctest.py:457 +#: builders/_epub_base.py:802 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "%sブロックにあるコード/出力 が %s にありません: %s" +msgid "writing %s file..." +msgstr "ファイル %s を書き込み中..." -#: ext/doctest.py:568 +#: builders/text.py:27 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "無効な doctest コードは無視されます: %r" +msgid "The text files are in %(outdir)s." +msgstr "テキストファイルは%(outdir)sにあります。" -#: ext/imgmath.py:162 +#: builders/__init__.py:229 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "LaTeX コマンド %r を実行できません (数式表示のために必要です)。imgmath_latex の設定を確認してください" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "%sビルダー向けの画像形式が見つかりません: %s (%s)" -#: ext/imgmath.py:181 +#: builders/__init__.py:237 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s コマンド %r を実行できません (数式表示のために必要です)。imgmath_%s の設定を確認してください" +msgid "a suitable image for %s builder not found: %s" +msgstr "%sビルダー向けの画像形式が見つかりません: %s" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "ビルド中 [mo]: " -#: ext/imgmath.py:344 +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "出力中..." + +#: builders/__init__.py:280 #, python-format -msgid "display latex %r: %s" -msgstr "latex の表示 %r: %s" +msgid "all of %d po files" +msgstr "全%d件のpoファイル" -#: ext/imgmath.py:380 +#: builders/__init__.py:302 #, python-format -msgid "inline latex %r: %s" -msgstr "latex のインライン表示 %r: %s" +msgid "targets for %d po files that are specified" +msgstr "指定された %d 件のpoファイル" -#: ext/coverage.py:48 +#: builders/__init__.py:314 #, python-format -msgid "invalid regex %r in %s" -msgstr "無効な正規表現 %r が %s 内に見つかりました" +msgid "targets for %d po files that are out of date" +msgstr "更新された %d 件のpoファイル" -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:324 +msgid "all source files" +msgstr "全てのソースファイル" + +#: builders/__init__.py:335 #, python-format -msgid "module %s could not be imported: %s" -msgstr "モジュール %s をインポートできませんでした: %s" +msgid "file %r given on command line does not exist, " +msgstr "コマンドラインに指定されたファイル %r がないため, " -#: ext/coverage.py:148 +#: builders/__init__.py:342 #, python-format msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "コマンドラインに指定されたファイル %r はソースディレクトリ以下にないため無視されます" -#: ext/coverage.py:158 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." -msgstr "" +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "コマンドラインで指定された%d件のソースファイル" -#: ext/coverage.py:187 +#: builders/__init__.py:382 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "coverage_c_regexes 内に無効な正規表現 %r があります" +msgid "targets for %d source files that are out of date" +msgstr "更新された %d 件のソースファイル" -#: ext/coverage.py:260 +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "更新されたファイルを探しています... " + +#: builders/__init__.py:415 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "" +msgid "%d found" +msgstr "%d 件見つかりました" -#: ext/coverage.py:452 +#: builders/__init__.py:417 +msgid "none found" +msgstr "見つかりませんでした" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "環境データを保存中" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "整合性をチェック中" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "更新が必要な対象はありませんでした" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "環境データを更新中" + +#: builders/__init__.py:499 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "" +msgid "%s added, %s changed, %s removed" +msgstr "%s 件追加, %s 件更新, %s 件削除" -#: ext/coverage.py:473 +#: builders/__init__.py:536 #, python-format -msgid "undocumented python class: %s :: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/coverage.py:492 +#: builders/__init__.py:545 #, python-format -msgid "undocumented python method: %s :: %s :: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgconverter.py:44 +#: builders/__init__.py:556 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:563 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "変換処理はエラー終了しました:\n[stderr]\n%r\n[stdout]\n%r" - +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "ソースを読み込み中..." + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "書き込むdocname: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "ドキュメントの出力準備中" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "ファイルは%(outdir)sにあります" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "バージョン %s での変更はありません" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "概要ファイルを書き出し中..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "組み込み" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "モジュールレベル" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "ソースファイルをコピー中..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "Changelog作成中に %r を読み込めませんでした" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "無効な正規表現 %r が %s 内に見つかりました" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "モジュール %s をインポートできませんでした: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "coverage_c_regexes 内に無効な正規表現 %r があります" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "ハードコードされたリンク %r は 拡張リンクに置き換えられる可能性があります (代わりに %r を使用してみてください)。" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "課題" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "TODO エントリーが見つかりました: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> は、 %s の %d 行目です)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "元のエントリ" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "変換処理はエラー終了しました:\n[stderr]\n%r\n[stdout]\n%r" + #: ext/imgconverter.py:83 #, python-format msgid "convert command %r cannot be run, check the image_converter setting" @@ -879,879 +1344,960 @@ msgstr "[グラフ: %s]" msgid "[graph]" msgstr "[グラフ]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "課題" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "LaTeX コマンド %r を実行できません (数式表示のために必要です)。imgmath_latex の設定を確認してください" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" -msgstr "TODO エントリーが見つかりました: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s コマンド %r を実行できません (数式表示のために必要です)。imgmath_%s の設定を確認してください" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "latex の表示 %r: %s" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> は、 %s の %d 行目です)" +msgid "inline latex %r: %s" +msgstr "latex のインライン表示 %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "元のエントリ" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "デデントによる空白の除去" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "'%s' オプション内に '+' または '-' が不足しています" -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" -msgstr "不正な caption です: %s" +msgid "'%s' is not a valid option." +msgstr "'%s' は正しいオプションではありません" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "行番号の指定が範囲外です (1-%d): %r" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' は正しい pyversion オプションではありません" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "無効な TestCode タイプ" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "\"%s\" と \"%s\" のオプションは同時に使用できません" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "ソース内の doctests のテストが終了したら、%(outdir)s/output.txt の結果を確認してください。" -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +msgid "no code/output in %s block at %s:%s" +msgstr "%sブロックにあるコード/出力 が %s にありません: %s" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +msgid "ignoring invalid doctest code: %r" +msgstr "無効な doctest コードは無視されます: %r" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "%r という名前のオブジェクトがインクルードファイル %r 内に見つかりません" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr " \"lineno-match\" は不連続な \"lines\" に対して使用できません" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "ラベル %s はすでに %s で使われています" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "指定された %r に一致する行がインクルードファイル %r にありませんでした" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "csv-table ディレクティブの \":file:\" オプションは、絶対パスをソースディレクトリからの相対パスとして認識するようになりました。ドキュメントを更新してください。" +"====================== total reading duration ==========================" +msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "toctree グローブ・パターン %r はどのドキュメントにもマッチしませんでした。" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree に除外したドキュメントへの参照が含まれています %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== 最も遅い読み取り時間 =======================" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree に存在しないドキュメントへの参照が含まれています %r" +msgid "%.3fs %s" +msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "toctree で重複したエントリが見つかりました: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[ソース]" -#: directives/other.py:203 -msgid "Section author: " -msgstr "この節の作者: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "モジュールコードをハイライトしています..." -#: directives/other.py:205 -msgid "Module author: " -msgstr "モジュールの作者: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[ドキュメント]" -#: directives/other.py:207 -msgid "Code author: " -msgstr "コードの作者: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "モジュールコード" -#: directives/other.py:209 -msgid "Author: " -msgstr "作者: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s のソースコード

" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "概要: モジュールコード" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

全モジュールのうち、コードを読めるもの

" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "ファイルは%(outdir)sにあります" +msgid "duplicate citation %s, other instance in %s" +msgstr "引用 %s はすでに %s で使われています" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." -msgstr "バージョン %s での変更はありません" - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "概要ファイルを書き出し中..." - -#: builders/changes.py:70 -msgid "Builtins" -msgstr "組み込み" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "モジュールレベル" - -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "ソースファイルをコピー中..." +msgid "Citation [%s] is not referenced." +msgstr "引用 [%s] は参照されていません。" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" -msgstr "Changelog作成中に %r を読み込めませんでした" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "数式 %s のラベルはすでに %s で使われています" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "マニュアルページは %(outdir)s にあります。" +msgid "Invalid math_eqref_format: %r" +msgstr "無効な math_eqref_format: %r" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "設定値 \"man_pages\" が見つかりません。マニュアルページは書かれません" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (組み込み関数)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "書き込み中" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s のメソッド)" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "設定値 \"man_pages\" が不明なドキュメント %s を参照しています" +msgid "%s() (class)" +msgstr "%s() (クラス)" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "%sビルダー向けの画像形式が見つかりません: %s (%s)" +msgid "%s (global variable or constant)" +msgstr "%s (グローバル変数または定数)" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "%sビルダー向けの画像形式が見つかりません: %s" +msgid "%s (%s attribute)" +msgstr "%s (%s の属性)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "ビルド中 [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "引数" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "出力中..." +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "例外" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "全%d件のpoファイル" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "戻り値" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "指定された %d 件のpoファイル" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "戻り値の型" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "更新された %d 件のpoファイル" +msgid "%s (module)" +msgstr "%s (モジュール)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "全てのソースファイル" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "の関数" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "コマンドラインに指定されたファイル %r がないため, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "メソッド" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "コマンドラインに指定されたファイル %r はソースディレクトリ以下にないため無視されます" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "クラス" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "データ" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "コマンドラインで指定された%d件のソースファイル" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "の属性" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "更新された %d 件のソースファイル" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "モジュール" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " -msgstr "ビルド中 [%s]: " - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "更新されたファイルを探しています... " +msgid "duplicate %s description of %s, other %s in %s" +msgstr "%s の記述 %s はすでに %s で %s が使われています" -#: builders/__init__.py:410 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "%d found" -msgstr "%d 件見つかりました" +msgid "%s (directive)" +msgstr "%s (ディレクティブ)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "見つかりませんでした" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s: (ディレクティブオプション)" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "環境データを保存中" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (ロール)" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "整合性をチェック中" +#: domains/rst.py:234 +msgid "directive" +msgstr "ディレクティブ" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "更新が必要な対象はありませんでした" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "ディレクティブオプション" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "環境データを更新中" +#: domains/rst.py:236 +msgid "role" +msgstr "ロール" -#: builders/__init__.py:494 +#: domains/rst.py:262 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s 件追加, %s 件更新, %s 件削除" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "%s の記述 %s はすでに %s で使われています" -#: builders/__init__.py:531 +#: domains/changeset.py:32 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "Changed in version %s" +msgstr "バージョン %s で変更" -#: builders/__init__.py:551 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid "Deprecated since version %s" +msgstr "バージョン %s で非推奨" -#: builders/__init__.py:558 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "ソースを読み込み中..." - -#: builders/__init__.py:713 +#: domains/__init__.py:322 #, python-format -msgid "docnames to write: %s" -msgstr "書き込むdocname: %s" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "ジョブ番号は正数でなければなりません" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "ドキュメントの出力準備中" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "詳しくは、を見てください。" -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nソースファイルからドキュメントを生成します。\n\nsphinx-build は、SOURCEDIR 内のファイルをもとにドキュメントを生成し、\nOUTPUTDIR 内に配置します。またコンフィグ\n設定用に SOURCEDIR 内から\n 'conf.py' を探します。'sphinx-quickstart' ツールを使うと\n 'conf.py' を含むテンプレートファイルを生成することができます。\n\nsphinx-build は、さまざまな形式のドキュメントを作成することができます。フォーマットは、\nコマンドラインでビルダー名を指定して選択します。デフォルトは\nHTML です。ビルダーはドキュメント化処理に関連した他のタスクも実行できます。\n\nデフォルトでは、古いものはすべてビルドされています。個別にファイル名を指定することで、\n選択したファイルのみ出力することもできます。\n" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "デコードできないソース文字です。\"?\" に置き換えます: %r" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "ドキュメントソースファイルへのパス" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "ePubファイルは%(outdir)sにあります。" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "出力先ディレクトリへのパス" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "nav.xhtml を書き込み中..." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_language\" (あるいは \"language\") の指定が必要です" +#: cmd/build.py:114 +msgid "general options" +msgstr "一般的なオプション" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "EPUB3では設定値 \"epub_uid\" はXML NAMEにするべきです" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_title\" (あるいは \"html_title\") の指定が必要です" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_author\" の指定が必要です" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "すべてのファイルに書き込む(デフォルト: 新規ファイルまたは変更されたファイルのみ)" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_contributor\" が必要です" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "保存された環境は使わず、常に全てのファイルを読み込む" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_description\" が必要です" +#: cmd/build.py:150 +msgid "path options" +msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_publisher\" の指定が必要です" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_copyright\" (あるいは \"copyright\") の指定が必要です" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"epub_identifier\" の指定が必要です" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "EPUB3出力では設定値 \"version\" が必要です" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "設定ファイルの設定を上書きする" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "無効な css_file %r は無視されました" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "HTMLテンプレートに値を渡す" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XMLファイルは%(outdir)sにあります。" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "定義タグ: TAG ブロック\"のみ\"含む" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "ファイル書き込みエラー %s: %s" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "pseudo-XMLファイルは%(outdir)sにあります。" +#: cmd/build.py:212 +msgid "console output options" +msgstr "コンソール出力オプション" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfoファイルは%(outdir)sにあります。" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "精度の増加(繰り返し可能)" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nmakeinfo コマンドで処理するため、そのディレクトリで 'make' を実行してください。\n(これを自動的に行うには、ここで 'make info' を使用してください)。" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "標準出力には出力せず、標準エラー出力に警告を出すのみ" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "設定値 \"texinfo_documents\" が見つかりません。ドキュメントは書き込まれません" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "何も出力せず、警告もしない" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "設定値 \"texinfo_documents\" は、不明なドキュメント %s を参照しています" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "色分けで出力する(デフォルト:自動検出)" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "処理中 %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "色分けの出力をしない(デフォルト:自動検出)" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "参照を解決しています..." +#: cmd/build.py:252 +msgid "warning control options" +msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "指定ファイルに警告(およびエラー)を書き込む" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "画像をコピー中... " +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "警告をエラーとして扱う" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "画像ファイル %r をコピーできません: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "例外時にフルトレースバックを表示する" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "Texinfo 関連ファイルをコピーしています" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "例外が発生したときにPdbを実行する" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "Makefile の書き込みエラー: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "Tocエントリーが重複しています: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "-aオプションとファイル名を組み合わせることはできません" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "画像ファイル %r をPILで読み込めないため、そのままコピーします" +msgid "cannot open warning file '%s': %s" +msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "画像ファイル %r を書き込めません: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-Dオプション引数は name = value の形式でなければなりません" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillowがインストールされていません。代わりに画像をコピーします" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-Aオプション引数は name = value の形式でなければなりません" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "mimetype を書き込み中..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "モジュールから自動的に docstring を挿入する" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "META-INF/container.xml を書き込み中..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "doctest ブロック内のコードスニペットを自動的にテストする" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "content.opf を書き込み中..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "異なるプロジェクトのSphinxドキュメント間のリンク" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "不明なmimetype %sのため無視します" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "ビルド時に表示または非表示にできる \"todo\" エントリを書く" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "ドキュメントの適用範囲を確認する" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "tox.ncx を書き込み中..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "PNG または SVG 画像としてレンダリングされた数学を含む" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "ファイル %s を書き込み中..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "MathJax によってブラウザにレンダリングされた数学を含む" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "dummyビルダーはファイルを出力しません" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "設定値に基づくコンテンツの条件付き包含" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "メッセージカタログは%(outdir)sにあります。" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "文書化された Python オブジェクトのソースコードへのリンクを含める" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "指定された %d 件のテンプレートファイル" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "GitHub ページにドキュメントを公開するための .nojekyll ファイルを作成する" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "テンプレートの読み込み中..." +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "有効なパス名を入力してください。" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "メッセージカタログを出力中... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "何か入力してください。" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML ページは%(outdir)sにあります。" +msgid "Please enter one of %s." +msgstr "%sのいずれかを入力してください。 " -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "ドキュメントを1ページにまとめています" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "'y' または 'n' を入力してください。" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "追加のファイルを出力" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "ファイルの拡張子を入力してください。例: '.rst' または '.txt'。" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "上記の出力結果、または %(outdir)s /output.txt を見てエラーを確認してください" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Sphinx %s クイックスタートユーティリティへようこそ。" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "リンクが切れています: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "以下の設定値を入力してください(Enter キーのみ押した場合、\nかっこで囲まれた値をデフォルト値として受け入れます)。" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" -msgstr "アンカー '%s' が見つかりません" +msgid "Selected root path: %s" +msgstr "選択されたルートパス: %s" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "linkcheck_allowed_redirects 内の正規表現のコンパイルに失敗しました: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "ドキュメントのルートパスを入力してください。" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "テキストファイルは%(outdir)sにあります。" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "ドキュメントのルートパス" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "翻訳されたメッセージの footnote 参照が矛盾しています。原文: {0}、翻訳: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "エラー:選択されたルートパスに既存の conf.py が見つかりました。" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "翻訳されたメッセージの参照が矛盾しています。原文: {0}、翻訳: {1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart は、既存の Sphinx プロジェクトを上書きしません。" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "翻訳されたメッセージの引用参照が矛盾しています。原文: {0}、翻訳: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "新しいルートパスを入力してください(または Enter を押すことで終了します)。" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "翻訳されたメッセージの用語参照が矛盾しています。原文: {0}、翻訳: {1}" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%Y年%m月%d日" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Sphinx 出力用のビルドディレクトリを配置する方法は2つあります。\nルートパス内にある \"_build\" ディレクトリを使うか、\nルートパス内に \"source\" と \"build\" ディレクトリを分ける方法です。" -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "ソースディレクトリとビルドディレクトリを分ける(y / n)" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "4列ベースのインデックスが見つかりました。あなたが使っている拡張子のバグかもしれません: %r" - -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Footnote [%s] は参照されていません。" - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "プロジェクトのルートディレクトリに 2つ以上のディレクトリが作成されます。\nカスタマイズしたHTMLテンプレート用の\"_templates\"ディレクトリと、カスタマイズしたスタイルシート等を置く\"_static\"ディレクトリがあります。\nこれらのディレクトリは \"_\" で始まっていますが、別の文字(\".\"など)で始まるように指定できます。" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Footnote [#] は参照されていません。" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "テンプレートと静的ディレクトリの名前プレフィックス" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "プロジェクト名は、ビルドされたドキュメントのいくつかの場所にあります。" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "プロジェクト名" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "著者名(複数可)" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx には、ソフトウェアに対して \"バージョン\" と \"リリース\" という概念が\nあります。各バージョンは複数のリリースを持つことができます。\n例えば、Python だとバージョンが 2.5 や 3.0 のように分かれているように、\nリリースも 2.5.1 や 3.0a1 のように分けて持つことができます。もしこのような多重構成が必要ない場合は、\n両方を同じ値に設定するだけです。" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "オプション" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "プロジェクトのバージョン" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "プロジェクトのリリース" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "ドキュメントを英語以外の言語で書く場合は、\n 言語コードで言語を選択できます。Sphinx は生成したテキストをその言語に翻訳します。\n\nサポートされているコードのリストについては、\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language を参照してください。" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "プロジェクトの言語" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:340 +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 "ソースファイルのファイル名の拡張子。一般的には、\".txt\"または\".rst \"のどちらかです。この拡張子を持つファイルだけがドキュメントとみなされます。" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "ソース・ファイルサフィックス" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "1つのドキュメントは、\"コンテンツツリー\"の最上位ノードと\n見なされるという点で特別です。つまり、それはドキュメントにおける階層構造のルートである\nということです。通常、これは \"index\" ですが、\n\"index\" ドキュメントがカスタムテンプレートの場合、これを別のファイル名に設定することもできます。" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "マスター文書の名前(拡張子を除く)" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "エラー:マスタファイル %s は、選択されたルートパス上で既に存在します。" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart は既存のファイルを上書きしません。" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "新しいファイル名を入力するか、既存のファイルの名前を変更してEnterキーを押してください。" -#: environment/__init__.py:86 -msgid "new config" -msgstr "新しい設定" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "次の Sphinx 拡張機能のうちどれを有効にするかを指定します。" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "変更された設定" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "注:imgmath と mathjax を同時に有効にすることはできません。 imgmath は未選択になります。" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "変更された拡張" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Makefile と Windows コマンドファイルは生成することができるので、\n後は実行するだけです。例えば、直接 sphinx-build を実行する代わりに `make html` を\n実行します。" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "ビルド環境のバージョンが最新ではありません" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Makefile を作成しますか? (y/n)" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "ソースディレクトリが変更されました" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Windows コマンドファイルを作成しますか?(y/n)" -#: environment/__init__.py:325 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +msgid "Creating file %s." +msgstr "ファイル %s を作成しています。" -#: environment/__init__.py:330 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +msgid "File %s already exists, skipping." +msgstr "ファイル %s は既に存在しますのでスキップします。" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "終了:初期ディレクトリ構造が作成されました。" -#: environment/__init__.py:379 +#: cmd/quickstart.py:520 +#, python-format msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "この環境は選択したビルダーと互換性がありません。別の doctree ディレクトリーを選択してください。" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "マスターファイル %s を作成して\n他のドキュメントソースファイルを作成します。" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "%s のドキュメントをスキャンできませんでした: %r " +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "次のように Makefile を使ってドキュメントを作成します。\n make builder" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:531 #, python-format -msgid "Domain %r is not registered" -msgstr "ドメイン %r はまだ登録されていません" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "ドキュメントはどの toctree にも含まれていません" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "次のように、ドキュメントを構築するには sphinx-build コマンドを使用してください。\n sphinx-build -b builder %s %s" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "自己参照している toctree が見つかりました。無視します。" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "\"builder\" はサポートされているビルダーの 1 つです。 例: html, latex, または linkcheck。" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nSphinx プロジェクトに必要なファイルを生成します。\n\nsphinx-quickstart は、いくつかの質問であなたの\nプロジェクトを生成するためのディレクトリと、sphinx-build と一緒に使える\nサンプルのMakefileを作成してくれるインタラクティブなツールです。\n" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "読み取りエラー: %s, %s" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "Quiet モード" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "書き込みエラー: %s, %s" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "project root" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "構成オプション" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "記述した場合、ソースとビルドのディレクトリを分割します。" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "日付形式が無効です。直接出力したい場合は、文字列を一重引用符で囲みます: %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "指定された場合、ソースディレクトリの下にビルドディレクトリを作成します。" -#: util/docfields.py:103 +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "_templates などのドットの置き換え" + +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "プロジェクトの基本オプション" + +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "プロジェクト名" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "著者名" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "プロジェクトのバージョン" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "プロジェクトのリリース" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "ドキュメント言語" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "ソース・ファイルサフィックス" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "マスタードキュメント名" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "epubを利用する" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "拡張オプション" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "%s 拡張を有効にする" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "任意の拡張を有効にする" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefileとbatファイルの生成オプション" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "makefileを作成する" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "makefileを作成しない" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "batファイルを作成する" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "batファイルを作成しない" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "Makefile / make.bat 向けに make-mode を使う" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "プロジェクトテンプレート" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "テンプレートファイルのテンプレートディレクトリ" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "テンプレート変数の定義" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\" が指定されていますが、 \"project\" または \"author\" のいずれも指定されていません。" + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "エラー:指定されたパスはディレクトリではないか、または sphinx ファイルが既に存在します。" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart は空のディレクトリにのみ生成します。新しいルートパスを指定してください。" -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree に存在しないファイルへの参照が含まれています %r" +msgid "Invalid template variable: %s" +msgstr "無効なテンプレート変数: %s" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "only ディレクティブの条件式の評価中に例外が発生しました: %s" - -#: util/display.py:82 -msgid "skipped" -msgstr "スキップしました" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "toctree グローブ・パターン %r はどのドキュメントにもマッチしませんでした。" -#: util/display.py:87 -msgid "failed" -msgstr "失敗しました" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "toctree に除外したドキュメントへの参照が含まれています %r" -#: util/osutil.py:131 +#: directives/other.py:156 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree に存在しないドキュメントへの参照が含まれています %r" -#: util/docutils.py:309 +#: directives/other.py:169 #, python-format -msgid "unknown directive name: %s" +msgid "duplicated entry found in toctree: %s" +msgstr "toctree で重複したエントリが見つかりました: %s" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "この節の作者: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "モジュールの作者: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "コードの作者: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "作者: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "不明なノードタイプ: %r" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "csv-table ディレクティブの \":file:\" オプションは、絶対パスをソースディレクトリからの相対パスとして認識するようになりました。ドキュメントを更新してください。" -#: util/fileutil.py:76 +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "デデントによる空白の除去" + +#: directives/code.py:87 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +msgid "Invalid caption: %s" +msgstr "不正な caption です: %s" -#: util/fileutil.py:89 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +msgid "line number spec is out of range(1-%d): %r" +msgstr "行番号の指定が範囲外です (1-%d): %r" -#: util/rst.py:73 +#: directives/code.py:216 #, python-format -msgid "default role %s not found" -msgstr "デフォルトのロール %s が見つかりません" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "\"%s\" と \"%s\" のオプションは同時に使用できません" -#: util/inventory.py:147 +#: directives/code.py:231 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "注記" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "%r という名前のオブジェクトがインクルードファイル %r 内に見つかりません" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr " \"lineno-match\" は不連続な \"lines\" に対して使用できません" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[画像: %s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "指定された %r に一致する行がインクルードファイル %r にありませんでした" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[画像]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%Y年%m月%d日" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1760,11 +2306,15 @@ msgstr "[画像]" msgid "Index" msgstr "索引" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "セクション、トピック、表、訓戒またはサイドバーにないタイトルノードが見つかりました。" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "注記" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "キャプションは図の中にはありません。" @@ -1774,59 +2324,20 @@ msgstr "キャプションは図の中にはありません。" msgid "unimplemented node type: %r" msgstr "未実装のノードタイプ: %r" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "不明なクラス %r の toplevel_sectioning %r" - -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "no Babel option known for language %r" -msgstr "%r 言語向けの 既知の Babel オプションはありません" +msgid "[image: %s]" +msgstr "[画像: %s]" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: が大きすぎるので無視されます。" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[画像]" -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "ドキュメントのタイトルは、単一の Text ノードではありません" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "tabularcolumns と :widths: オプションの両方が設定されています。:widths: は無視されます。" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "ディメンション単位 %s が無効です。無視されます。" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "不明なインデックスエントリタイプ %s が見つかりました" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "無効な math_eqref_format: %r" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 +#: writers/html5.py:431 #, python-format msgid "numfig_format is not defined for %s" msgstr "%s に numfig_format は定義されていません" @@ -1848,6 +2359,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1864,794 +2380,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "画像サイズを取得できませんでした。:scale: オプションは無視されます。" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "数式 %s のラベルはすでに %s で使われています" - -#: domains/javascript.py:182 +#: writers/latex.py:386 #, python-format -msgid "%s() (built-in function)" -msgstr "%s() (組み込み関数)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s のメソッド)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (クラス)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (グローバル変数または定数)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s の属性)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "引数" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "例外" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "戻り値" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "戻り値の型" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "不明なクラス %r の toplevel_sectioning %r" -#: domains/javascript.py:370 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "%s (module)" -msgstr "%s (モジュール)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "の関数" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "メソッド" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "クラス" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "データ" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "の属性" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "モジュール" +msgid "no Babel option known for language %r" +msgstr "%r 言語向けの 既知の Babel オプションはありません" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "%s の記述 %s はすでに %s で %s が使われています" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: が大きすぎるので無視されます。" -#: domains/changeset.py:26 +#: writers/latex.py:616 #, python-format -msgid "Added in version %s" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "バージョン %s で変更" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "ドキュメントのタイトルは、単一の Text ノードではありません" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "バージョン %s で非推奨" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "tabularcolumns と :widths: オプションの両方が設定されています。:widths: は無視されます。" -#: domains/changeset.py:29 +#: writers/latex.py:1228 #, python-format -msgid "Removed in version %s" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (ディレクティブ)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (ディレクティブオプション)" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (ロール)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "ディレクティブ" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "ディレクティブオプション" - -#: domains/rst.py:236 -msgid "role" -msgstr "ロール" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "%s の記述 %s はすでに %s で使われています" - -#: domains/citation.py:75 +#: writers/latex.py:1615 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "引用 %s はすでに %s で使われています" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "引用 [%s] は参照されていません。" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "注意" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "注意" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "危険" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "エラー" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "ヒント" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "重要" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "注釈" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "参考" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tip" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "警告" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "モジュールから自動的に docstring を挿入する" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "doctest ブロック内のコードスニペットを自動的にテストする" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "異なるプロジェクトのSphinxドキュメント間のリンク" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "ビルド時に表示または非表示にできる \"todo\" エントリを書く" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "ドキュメントの適用範囲を確認する" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "PNG または SVG 画像としてレンダリングされた数学を含む" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "MathJax によってブラウザにレンダリングされた数学を含む" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "設定値に基づくコンテンツの条件付き包含" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "文書化された Python オブジェクトのソースコードへのリンクを含める" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "GitHub ページにドキュメントを公開するための .nojekyll ファイルを作成する" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "有効なパス名を入力してください。" - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "何か入力してください。" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "%sのいずれかを入力してください。 " - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "'y' または 'n' を入力してください。" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "ファイルの拡張子を入力してください。例: '.rst' または '.txt'。" - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Sphinx %s クイックスタートユーティリティへようこそ。" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "以下の設定値を入力してください(Enter キーのみ押した場合、\nかっこで囲まれた値をデフォルト値として受け入れます)。" +msgid "dimension unit %s is invalid. Ignored." +msgstr "ディメンション単位 %s が無効です。無視されます。" -#: cmd/quickstart.py:241 +#: writers/latex.py:1950 #, python-format -msgid "Selected root path: %s" -msgstr "選択されたルートパス: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "ドキュメントのルートパスを入力してください。" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "ドキュメントのルートパス" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "エラー:選択されたルートパスに既存の conf.py が見つかりました。" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart は、既存の Sphinx プロジェクトを上書きしません。" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "新しいルートパスを入力してください(または Enter を押すことで終了します)。" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Sphinx 出力用のビルドディレクトリを配置する方法は2つあります。\nルートパス内にある \"_build\" ディレクトリを使うか、\nルートパス内に \"source\" と \"build\" ディレクトリを分ける方法です。" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "ソースディレクトリとビルドディレクトリを分ける(y / n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "プロジェクトのルートディレクトリに 2つ以上のディレクトリが作成されます。\nカスタマイズしたHTMLテンプレート用の\"_templates\"ディレクトリと、カスタマイズしたスタイルシート等を置く\"_static\"ディレクトリがあります。\nこれらのディレクトリは \"_\" で始まっていますが、別の文字(\".\"など)で始まるように指定できます。" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "テンプレートと静的ディレクトリの名前プレフィックス" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "プロジェクト名は、ビルドされたドキュメントのいくつかの場所にあります。" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "プロジェクト名" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "著者名(複数可)" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "Sphinx には、ソフトウェアに対して \"バージョン\" と \"リリース\" という概念が\nあります。各バージョンは複数のリリースを持つことができます。\n例えば、Python だとバージョンが 2.5 や 3.0 のように分かれているように、\nリリースも 2.5.1 や 3.0a1 のように分けて持つことができます。もしこのような多重構成が必要ない場合は、\n両方を同じ値に設定するだけです。" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "プロジェクトのバージョン" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "プロジェクトのリリース" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "ドキュメントを英語以外の言語で書く場合は、\n 言語コードで言語を選択できます。Sphinx は生成したテキストをその言語に翻訳します。\n\nサポートされているコードのリストについては、\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language を参照してください。" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "プロジェクトの言語" - -#: cmd/quickstart.py:339 -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 "ソースファイルのファイル名の拡張子。一般的には、\".txt\"または\".rst \"のどちらかです。この拡張子を持つファイルだけがドキュメントとみなされます。" +msgid "unknown index entry type %s found" +msgstr "不明なインデックスエントリタイプ %s が見つかりました" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "ソース・ファイルサフィックス" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "1つのドキュメントは、\"コンテンツツリー\"の最上位ノードと\n見なされるという点で特別です。つまり、それはドキュメントにおける階層構造のルートである\nということです。通常、これは \"index\" ですが、\n\"index\" ドキュメントがカスタムテンプレートの場合、これを別のファイル名に設定することもできます。" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "マスター文書の名前(拡張子を除く)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "エラー:マスタファイル %s は、選択されたルートパス上で既に存在します。" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart は既存のファイルを上書きしません。" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "オプション" + +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:377 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "新しいファイル名を入力するか、既存のファイルの名前を変更してEnterキーを押してください。" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "次の Sphinx 拡張機能のうちどれを有効にするかを指定します。" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "注:imgmath と mathjax を同時に有効にすることはできません。 imgmath は未選択になります。" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Makefile と Windows コマンドファイルは生成することができるので、\n後は実行するだけです。例えば、直接 sphinx-build を実行する代わりに `make html` を\n実行します。" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Makefile を作成しますか? (y/n)" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Windows コマンドファイルを作成しますか?(y/n)" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "ファイル %s を作成しています。" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "ファイル %s は既に存在しますのでスキップします。" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "終了:初期ディレクトリ構造が作成されました。" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:519 -#, python-format +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" + +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "マスターファイル %s を作成して\n他のドキュメントソースファイルを作成します。" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "翻訳されたメッセージの footnote 参照が矛盾しています。原文: {0}、翻訳: {1}" -#: cmd/quickstart.py:526 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "次のように Makefile を使ってドキュメントを作成します。\n make builder" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "翻訳されたメッセージの参照が矛盾しています。原文: {0}、翻訳: {1}" -#: cmd/quickstart.py:530 -#, python-format +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "次のように、ドキュメントを構築するには sphinx-build コマンドを使用してください。\n sphinx-build -b builder %s %s" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "翻訳されたメッセージの引用参照が矛盾しています。原文: {0}、翻訳: {1}" -#: cmd/quickstart.py:537 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "\"builder\" はサポートされているビルダーの 1 つです。 例: html, latex, または linkcheck。" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "翻訳されたメッセージの用語参照が矛盾しています。原文: {0}、翻訳: {1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: cmd/quickstart.py:572 +#: transforms/__init__.py:258 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nSphinx プロジェクトに必要なファイルを生成します。\n\nsphinx-quickstart は、いくつかの質問であなたの\nプロジェクトを生成するためのディレクトリと、sphinx-build と一緒に使える\nサンプルのMakefileを作成してくれるインタラクティブなツールです。\n" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "4列ベースのインデックスが見つかりました。あなたが使っている拡張子のバグかもしれません: %r" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "詳しくは、を見てください。" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "Footnote [%s] は参照されていません。" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "Quiet モード" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "project root" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Footnote [#] は参照されていません。" -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "構成オプション" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "記述した場合、ソースとビルドのディレクトリを分割します。" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "指定された場合、ソースディレクトリの下にビルドディレクトリを作成します。" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "読み取りエラー: %s, %s" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "_templates などのドットの置き換え" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "書き込みエラー: %s, %s" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "プロジェクトの基本オプション" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "プロジェクト名" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "著者名" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "日付形式が無効です。直接出力したい場合は、文字列を一重引用符で囲みます: %s" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "プロジェクトのバージョン" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "プロジェクトのリリース" +#: util/display.py:82 +msgid "skipped" +msgstr "スキップしました" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "ドキュメント言語" +#: util/display.py:87 +msgid "failed" +msgstr "失敗しました" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "ソース・ファイルサフィックス" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "マスタードキュメント名" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "epubを利用する" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "不明なノードタイプ: %r" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "拡張オプション" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/quickstart.py:670 +#: util/fileutil.py:89 #, python-format -msgid "enable %s extension" -msgstr "%s 拡張を有効にする" +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "任意の拡張を有効にする" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefileとbatファイルの生成オプション" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "デフォルトのロール %s が見つかりません" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "makefileを作成する" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "makefileを作成しない" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree に存在しないファイルへの参照が含まれています %r" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "batファイルを作成する" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "only ディレクティブの条件式の評価中に例外が発生しました: %s" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "batファイルを作成しない" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "前のページからの続き" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "Makefile / make.bat 向けに make-mode を使う" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "次のページに続く" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "プロジェクトテンプレート" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "アルファベット以外" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "テンプレートファイルのテンプレートディレクトリ" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "記号" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "テンプレート変数の定義" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "番号" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"quiet\" が指定されていますが、 \"project\" または \"author\" のいずれも指定されていません。" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "ページ" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "エラー:指定されたパスはディレクトリではないか、または sphinx ファイルが既に存在します。" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "リリース" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart は空のディレクトリにのみ生成します。新しいルートパスを指定してください。" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "リモート画像を取得できませんでした: %s [%s]" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "Invalid template variable: %s" -msgstr "無効なテンプレート変数: %s" +msgid "Could not fetch remote image: %s [%d]" +msgstr "リモート画像を取得できませんでした: %s [%d]" -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "ジョブ番号は正数でなければなりません" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "不明な画像フォーマット: %s..." -#: cmd/build.py:74 +#: transforms/post_transforms/__init__.py:88 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nソースファイルからドキュメントを生成します。\n\nsphinx-build は、SOURCEDIR 内のファイルをもとにドキュメントを生成し、\nOUTPUTDIR 内に配置します。またコンフィグ\n設定用に SOURCEDIR 内から\n 'conf.py' を探します。'sphinx-quickstart' ツールを使うと\n 'conf.py' を含むテンプレートファイルを生成することができます。\n\nsphinx-build は、さまざまな形式のドキュメントを作成することができます。フォーマットは、\nコマンドラインでビルダー名を指定して選択します。デフォルトは\nHTML です。ビルダーはドキュメント化処理に関連した他のタスクも実行できます。\n\nデフォルトでは、古いものはすべてビルドされています。個別にファイル名を指定することで、\n選択したファイルのみ出力することもできます。\n" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "相互参照用のフォールバックテキストを決定できませんでした。バグかもしれません。" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "ドキュメントソースファイルへのパス" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "'any' クロスリファレンス %r のターゲットが1つ以上みつかりました。 %s に参照を設定します。" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "出力先ディレクトリへのパス" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s 参照先が見つかりません: %s" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r 参照先が見つかりません: %s" -#: cmd/build.py:114 -msgid "general options" -msgstr "一般的なオプション" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "割り込まれました!" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "すべてのファイルに書き込む(デフォルト: 新規ファイルまたは変更されたファイルのみ)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "保存された環境は使わず、常に全てのファイルを読み込む" - -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:157 +#: _cli/util/errors.py:207 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "設定ファイルの設定を上書きする" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "HTMLテンプレートに値を渡す" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "定義タグ: TAG ブロック\"のみ\"含む" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "コンソール出力オプション" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "精度の増加(繰り返し可能)" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "標準出力には出力せず、標準エラー出力に警告を出すのみ" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "何も出力せず、警告もしない" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "色分けで出力する(デフォルト:自動検出)" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "次期バージョンでのエラーメッセージ改善のために、ユーザーエラーの場合にも報告してください。" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "色分けの出力をしない(デフォルト:自動検出)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "サイドバーをたたむ" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "ナビゲーション" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "指定ファイルに警告(およびエラー)を書き込む" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "%(docstitle)s 内を検索" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "警告をエラーとして扱う" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "このドキュメントについて" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "例外時にフルトレースバックを表示する" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "検索" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "例外が発生したときにPdbを実行する" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "著作権" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "-aオプションとファイル名を組み合わせることはできません" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "最終更新: %(last_updated)s" -#: cmd/build.py:357 +#: themes/basic/layout.html:204 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "-Dオプション引数は name = value の形式でなければなりません" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "前のトピックへ" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "-Aオプション引数は name = value の形式でなければなりません" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "前の章へ" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "次のトピックへ" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "サイドバーをたたむ" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "次の章へ" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "目次" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "検索" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "総索引" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "検索" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "このページ" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "ソースコードを表示" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "コンテンツ" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "クイック検索" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s 内を検索" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "検索" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2698,7 +2898,7 @@ msgstr "モジュール総索引" msgid "quick access to all modules" msgstr "全モジュール早見表" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "総合索引" @@ -2706,23 +2906,15 @@ msgstr "総合索引" msgid "all functions, classes, terms" msgstr "関数、クラスおよび用語総覧" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "このページ" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "目次" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "総索引" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "クイック検索" +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s 内を検索" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2732,57 +2924,6 @@ msgstr "頭文字別索引" msgid "can be huge" msgstr "大きい場合があるので注意" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "前のトピックへ" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "前の章へ" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "次のトピックへ" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "次の章へ" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "ナビゲーション" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "%(docstitle)s 内を検索" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "このドキュメントについて" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "著作権" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "最終更新: %(last_updated)s" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2799,43 +2940,42 @@ msgstr "複数の単語を検索すると、次を含む一致のみが表示さ msgid "search" msgstr "検索" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "検索結果を隠す" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "コンテンツ" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "検索結果" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "検索した文字列はどの文書にも見つかりませんでした。すべての単語が正確に記述されているか、あるいは、十分なカテゴリーが選択されているか確認してください。" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "検索中" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "検索を準備しています..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", in " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "検索結果を隠す" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2843,6 +2983,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "バージョン %(version)s の変更点 — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2864,120 +3009,127 @@ msgstr "その他の変更" msgid "Expand sidebar" msgstr "サイドバーを展開" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "パラメータ" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "変数" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "例外" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (%s モジュール)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (%s モジュール)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (組み込み変数)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (組み込みクラス)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (%s のクラス)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s のクラスメソッド)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s の静的メソッド)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (%s のプロパティ)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Pythonモジュール索引" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "モジュール" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "非推奨" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "例外" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "クラスメソッド" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "の静的メソッド" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "プロパティ" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "相互参照 %r に複数のターゲットが見つかりました: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (非推奨)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "パラメータ" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "変数" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "例外" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2988,92 +3140,85 @@ msgstr "テンプレートパラメータ" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "戻り値" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "union" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "のメンバ変数" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "のデータ型" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "コンセプト" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "列挙型" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "関数パラメータ" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "テンプレート・パラメータ" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "変数" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "のマクロ" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "struct" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "環境変数; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" -msgstr "" +msgstr "タイプ" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" -msgstr "" +msgstr "デフォルト" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3168,514 +3313,422 @@ msgstr "" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "循環参照している toctree が検出されましたので無視します: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree にはタイトルのないドキュメント %r への参照が含まれています: リンクは生成されません" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "%sを参照" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "%sも参照" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "不明なインデックスエントリタイプ %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "記号" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "画像ファイルが読み込めません: %s" +msgid "invalid value set (missing closing brace): %s" +msgstr "無効な値セット (終了括弧がありません): %s" -#: environment/collectors/asset.py:126 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "image file %s not readable: %s" -msgstr "画像ファイル %s が読み込めません: %s" +msgid "invalid value set (missing opening brace): %s" +msgstr "無効な値セット (開始括弧がありません): %s" -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "ダウンロードファイルが読み込めません: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "不正な文字列リテラル (終了引用符がありません): %s" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s はすでにセクション番号が割り当てられています (入れ子になった番号の toctree ?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "割り込まれました!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +msgid "malformed string literal (missing opening quote): %s" +msgstr "不正な文字列リテラル (開始引用符がありません): %s" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "サンプル" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "サンプル" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "キーワード引数" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "メモ" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "その他のパラメータ" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "次期バージョンでのエラーメッセージ改善のために、ユーザーエラーの場合にも報告してください。" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "受け取る" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "相互参照用のフォールバックテキストを決定できませんでした。バグかもしれません。" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "参照" -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "'any' クロスリファレンス %r のターゲットが1つ以上みつかりました。 %s に参照を設定します。" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "警告" -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s 参照先が見つかりません: %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "列挙" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r 参照先が見つかりません: %s" +msgid "A mocked object is detected: %r" +msgstr "モックオブジェクトが検出されました: %r" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "リモート画像を取得できませんでした: %s [%s]" +msgid "alias of %s" +msgstr "%sの別名です。" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "リモート画像を取得できませんでした: %s [%d]" +msgid "Bases: %s" +msgstr "ベースクラス: %s" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Unknown image format: %s..." -msgstr "不明な画像フォーマット: %s..." +msgid "invalid value for member-order option: %s" +msgstr "member-order オプションに無効な値があります: %s" -#: builders/html/__init__.py:113 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTMLページは%(outdir)sにあります。" +msgid "invalid value for class-doc-from option: %s" +msgstr "class-doc-from オプションに無効な値があります: %s" -#: builders/html/__init__.py:348 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "Failed to read build info file: %r" -msgstr "build info ファイルの読み込みに失敗しました: %r" +msgid "invalid signature for auto%s (%r)" +msgstr "auto%s (%r) の署名が無効です" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "ドキュメントの自動生成 %r のためにどのモジュールをインポートするのか分かりません (ドキュメントに \"module\"または \"currentmodule\"ディレクティブを配置するか、明示的なモジュール名を指定してください)" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:383 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "索引" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "automodule 名の \"::\" は意味がありません" -#: builders/html/__init__.py:560 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Logo of %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "次へ" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "前へ" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "ファイル %s を作成したものとします。" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "索引を生成中" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\n 内を再帰的に調べてPython のモジュールとパッケージ、\n後は1つのreST ファイルを 内にあるパッケージ毎の automodule ディレクティブに作成します。\n\n は、ファイル、またはディレクトリ、または両方のパターンを\n生成処理から除外することができます。\n\n注:デフォルトでは、このスクリプトはすでに作成されているファイルを上書きしません。" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "追加のページを出力中" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "ドキュメントへのモジュールパス" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "生成処理から除外するための、ファイル、ディレクトリ、または両方のパターンを記した fnmatch-style 形式" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "ダウンロードファイルをコピー中..." +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "すべての生成データを配置するディレクトリ" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "ダウンロードファイル %r をコピーできません: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "目次に表示するサブモジュールの最大深度 (デフォルト: 4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "存在するファイルは上書きする" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "html_static_file 内のファイルのコピーに失敗しました: %s: %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "シンボリックリンクをたどります。collective.recipe.omeletteと組み合わせると強力です。" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "静的ファイルをコピー中" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "ファイルを作成せずにスクリプトを実行する" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "静的ファイル %r をコピーできません" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "各モジュールのドキュメントをそれぞれのページに配置する" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "extraファイルをコピー中" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "\"_private\" モジュールを含めます。" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "extraファイル %r をコピーできませんでした" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "目次のファイル名 (デフォルト: モジュール)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "build info ファイル %r の出力に失敗しました" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "目次ファイルを生成しない" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "検索インデックスを読み込めず、ドキュメントビルドの一部が不完全です。" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "module/package パッケージの見出しを生成しない (例: docstring にすでにそれらが含まれている場合など)" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "ページ %s がhtml_sidebarsの複数のパターンに一致しました: %r と %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "サブモジュールのドキュメントの前に、モジュールのドキュメントを置く" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "ページ%sの読み込み中にUnicodeエラーが発生しました。非アスキー文字を含む設定値は全てUnicode文字列にしてください。" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "PEP-0420 暗黙の名前空間の指定に従って、モジュールパスを解釈する" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "%sページのレンダリング中にエラーが発生しました。\n理由: %r " +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "オブジェクト インベントリを出力" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "ファイルの拡張子 (デフォルト: rst)" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "%s の検索インデックスを出力" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "無効な js_file %r は無視されました" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "sphinx-quickstart を使って完全なプロジェクトを生成する" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "複数の math_renderer が登録されています。しかし math_renderer は選択されていません。" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "module_pathを sys.path に追加します。--full が与えられたときに使用されます。" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "不明な math_renderer %r が指定されました。" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "プロジェクト名 (デフォルト: ルートモジュール名)" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path %r がoutdir内に配置されます" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "プロジェクト著者名(複数可)。--full が与えられたときに使用されます。" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path %r が見つかりません" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "プロジェクトバージョン。--full が与えられたときに使用されます。" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path %r がoutdir内に配置されます" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "プロジェクトのリリースバージョン。--full が与えられたときに使用されます。デフォルトは --doc-version" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "拡張オプション" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1385 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path %r が見つかりません" +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "logo file %r does not exist" -msgstr "ロゴファイル %r がありません" +msgid "%s is not a directory." +msgstr "%s はディレクトリではありません。" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "favicon ファイル %r がありません" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "%s %s documentation" -msgstr "%s %s ドキュメント" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:133 +#, python-format +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeXファイルは%(outdir)sにあります。" - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\n(pdf)latex コマンドで処理するために、そのディレクトリで 'make' を実行してください。\n(これを自動的に行うには、ここで 'make latexpdf' を使用してください)。" - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "設定値 \"latex_documents\" が見つかりません。ドキュメントは書き込まれません" +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "設定値 \"latex_documents\" は、不明なドキュメント %s を参照しています" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "リリース" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "TeX 関連ファイルをコピーしています" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "追加のファイルをコピーしています" +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "不明な設定値 latex_elements[%r] は無視されました。" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "不明なテーマオプション latex_theme_options[%r] は無視されました。" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r に \"theme\" 設定がありません" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r に \"%s\" 設定がありません" - -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "前のページからの続き" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "次のページに続く" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "アルファベット以外" - -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "番号" - -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "ページ" - -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "キーワード引数" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "無効な値セット (終了括弧がありません): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: ドキュメント化する %r の決定に失敗しました。次の例外が発生しました:\n%s" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:630 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "無効な値セット (開始括弧がありません): %s" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] %s の autosummary を生成中" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "不正な文字列リテラル (終了引用符がありません): %s" +msgid "[autosummary] writing to %s" +msgstr "[autosummary] %s に書き込み中" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:679 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "不正な文字列リテラル (開始引用符がありません): %s" - -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "サンプル" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "サンプル" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nautosummary ディレクティブを使って ReStructuredText を生成します。\n\nsphinx-autogen は sphinx.ext.autosummary.generate のフロントエンドです。\n入力されたファイルを含む autosummary ディレクティブから reStructuredText ファイルを\n生成します。\n\nautosummary ディレクティブのフォーマットは\n``sphinx.ext.autosummary`` に記載されています。Pythonモジュールと :: を使って読むことができます。\n\npydoc sphinx.ext.autosummary\n" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "メモ" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "rST ファイルを生成するためのソースファイル" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "その他のパラメータ" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "すべての生成データを配置するディレクトリ" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "受け取る" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "ファイルのデフォルト拡張子 (デフォルト: %(default)s)" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "参照" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "カスタムテンプレートディレクトリ (デフォルト: %(default)s)" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "警告" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "インポートしたメンバーのドキュメント (デフォルト: %(default)s)" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "列挙" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "モジュール __all__ 属性に含まれるメンバーのみを対象としたドキュメントを作成します。(デフォルト: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "autosummary は除外したドキュメント %r を参照しています。無視されます。" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "autosummary: stubファイルが見つかりません%r。autosummary_generate設定を確認してください。" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "キャプション付きオートサマリーには :toctree: オプションが必要です。" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3683,548 +3736,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "%sの名前を解析できませんでした " - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "%sオブジェクトをインポートできませんでした " -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: ファイルが見つかりません: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary: ドキュメント化する %r の決定に失敗しました。次の例外が発生しました:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] %s の autosummary を生成中" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] %s に書き込み中" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" + +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "いくつかのインベントリでいくつかの問題に遭遇しましたが、代替手段を持っていました:" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" +"failed to reach any of the inventories with the following issues:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:836 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nautosummary ディレクティブを使って ReStructuredText を生成します。\n\nsphinx-autogen は sphinx.ext.autosummary.generate のフロントエンドです。\n入力されたファイルを含む autosummary ディレクティブから reStructuredText ファイルを\n生成します。\n\nautosummary ディレクティブのフォーマットは\n``sphinx.ext.autosummary`` に記載されています。Pythonモジュールと :: を使って読むことができます。\n\npydoc sphinx.ext.autosummary\n" - -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "rST ファイルを生成するためのソースファイル" - -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "すべての生成データを配置するディレクトリ" - -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "ファイルのデフォルト拡張子 (デフォルト: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "intersphinx インベントリは移動しました: %s -> %s" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "カスタムテンプレートディレクトリ (デフォルト: %(default)s)" +msgid "(in %s %s)" +msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "インポートしたメンバーのドキュメント (デフォルト: %(default)s)" +msgid "(in %s)" +msgstr "(in %s)" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "モジュール __all__ 属性に含まれるメンバーのみを対象としたドキュメントを作成します。(デフォルト: %(default)s)" +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Failed to remove %s: %s" +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\n 内を再帰的に調べてPython のモジュールとパッケージ、\n後は1つのreST ファイルを 内にあるパッケージ毎の automodule ディレクティブに作成します。\n\n は、ファイル、またはディレクトリ、または両方のパターンを\n生成処理から除外することができます。\n\n注:デフォルトでは、このスクリプトはすでに作成されているファイルを上書きしません。" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "ドキュメントへのモジュールパス" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "生成処理から除外するための、ファイル、ディレクトリ、または両方のパターンを記した fnmatch-style 形式" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "すべての生成データを配置するディレクトリ" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "%s のシグネチャをフォーマット中にエラーが発生しました: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "目次に表示するサブモジュールの最大深度 (デフォルト: 4)" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "存在するファイルは上書きする" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "%s の関数シグネチャの取得に失敗しました: %s" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "シンボリックリンクをたどります。collective.recipe.omeletteと組み合わせると強力です。" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "%r のシグネチャの更新に失敗しました: パラメータが見つかりません: %s。" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "ファイルを作成せずにスクリプトを実行する" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "%rのtype_commentを解析できませんでした: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "各モジュールのドキュメントをそれぞれのページに配置する" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "無効な __slots__ が %s で見つかりました。無視されました。" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "\"_private\" モジュールを含めます。" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "%sの引数のフォーマット中にエラーが発生しました: %s " -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "目次のファイル名 (デフォルト: モジュール)" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "%s のコンストラクタ署名の取得に失敗しました: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "目次ファイルを生成しない" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "%s のメソッド・シグネチャの取得に失敗しました: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "module/package パッケージの見出しを生成しない (例: docstring にすでにそれらが含まれている場合など)" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "サブモジュールのドキュメントの前に、モジュールのドキュメントを置く" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "%r の既定の引数値の解析に失敗しました: %s。" -#: ext/apidoc/_cli.py:152 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "PEP-0420 暗黙の名前空間の指定に従って、モジュールパスを解釈する" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "ファイルの拡張子 (デフォルト: rst)" - -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "sphinx-quickstart を使って完全なプロジェクトを生成する" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "automodule に与えられた署名引数、または戻り値となるアノテーション %s" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "module_pathを sys.path に追加します。--full が与えられたときに使用されます。" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ は文字列のリストでなければなりません。%r (%s モジュールの中) ではないです -- ignoring __all__" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "プロジェクト名 (デフォルト: ルートモジュール名)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "members: オプションで指定された属性がありません: モジュール %s、属性 %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "プロジェクト著者名(複数可)。--full が与えられたときに使用されます。" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "オブジェクト %s に属性 %s がありません" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "プロジェクトバージョン。--full が与えられたときに使用されます。" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "TypeVar(%s)のエイリアスです。" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "プロジェクトのリリースバージョン。--full が与えられたときに使用されます。デフォルトは --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "拡張オプション" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTMLページは%(outdir)sにあります。" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s はディレクトリではありません。" +msgid "Failed to read build info file: %r" +msgstr "build info ファイルの読み込みに失敗しました: %r" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "索引" -#: ext/apidoc/_extension.py:121 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "次へ" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "前へ" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "索引を生成中" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "追加のページを出力中" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:178 -#, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "ダウンロードファイルをコピー中..." -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "ダウンロードファイル %r をコピーできません: %s" -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "html_static_file 内のファイルのコピーに失敗しました: %s: %r" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "静的ファイルをコピー中" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:923 #, python-format -msgid "Would create file %s." -msgstr "ファイル %s を作成したものとします。" +msgid "cannot copy static file %r" +msgstr "静的ファイル %r をコピーできません" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(in %s v%s)" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "extraファイルをコピー中" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:938 #, python-format -msgid "(in %s)" -msgstr "(in %s)" +msgid "cannot copy extra file %r" +msgstr "extraファイル %r をコピーできませんでした" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +msgid "Failed to write build info file: %r" +msgstr "build info ファイル %r の出力に失敗しました" -#: ext/intersphinx/_resolve.py:118 -#, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "検索インデックスを読み込めず、ドキュメントビルドの一部が不完全です。" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "ページ %s がhtml_sidebarsの複数のパターンに一致しました: %r と %r" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1204 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "ページ%sの読み込み中にUnicodeエラーが発生しました。非アスキー文字を含む設定値は全てUnicode文字列にしてください。" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1217 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1225 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "%sページのレンダリング中にエラーが発生しました。\n理由: %r " -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "オブジェクト インベントリを出力" + +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "dumping search index in %s" +msgstr "%s の検索インデックスを出力" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "無効な js_file %r は無視されました" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "複数の math_renderer が登録されています。しかし math_renderer は選択されていません。" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "Unknown math_renderer %r is given." +msgstr "不明な math_renderer %r が指定されました。" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path %r がoutdir内に配置されます" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path %r が見つかりません" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path %r がoutdir内に配置されます" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path %r が見つかりません" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" +msgid "logo file %r does not exist" +msgstr "ロゴファイル %r がありません" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "favicon ファイル %r がありません" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "いくつかのインベントリでいくつかの問題に遭遇しましたが、代替手段を持っていました:" - -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "以下の問題があるため、いくつかのインベントリは到達できませんでした:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "intersphinx インベントリは移動しました: %s -> %s" +msgid "%s %s documentation" +msgstr "%s %s ドキュメント" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "member-order オプションに無効な値があります: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r に \"theme\" 設定がありません" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "class-doc-from オプションに無効な値があります: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r に \"%s\" 設定がありません" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "auto%s (%r) の署名が無効です" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "%sの引数のフォーマット中にエラーが発生しました: %s " +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeXファイルは%(outdir)sにあります。" + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "ドキュメントの自動生成 %r のためにどのモジュールをインポートするのか分かりません (ドキュメントに \"module\"または \"currentmodule\"ディレクティブを配置するか、明示的なモジュール名を指定してください)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\n(pdf)latex コマンドで処理するために、そのディレクトリで 'make' を実行してください。\n(これを自動的に行うには、ここで 'make latexpdf' を使用してください)。" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "モックオブジェクトが検出されました: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "設定値 \"latex_documents\" が見つかりません。ドキュメントは書き込まれません" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "%s のシグネチャをフォーマット中にエラーが発生しました: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "設定値 \"latex_documents\" は、不明なドキュメント %s を参照しています" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "automodule 名の \"::\" は意味がありません" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "TeX 関連ファイルをコピーしています" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "automodule に与えられた署名引数、または戻り値となるアノテーション %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "追加のファイルをコピーしています" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ は文字列のリストでなければなりません。%r (%s モジュールの中) ではないです -- ignoring __all__" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "不明な設定値 latex_elements[%r] は無視されました。" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "members: オプションで指定された属性がありません: モジュール %s、属性 %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "不明なテーマオプション latex_theme_options[%r] は無視されました。" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "%s の関数シグネチャの取得に失敗しました: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s はすでにセクション番号が割り当てられています (入れ子になった番号の toctree ?)" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "%s のコンストラクタ署名の取得に失敗しました: %s" +msgid "image file not readable: %s" +msgstr "画像ファイルが読み込めません: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "ベースクラス: %s" +msgid "image file %s not readable: %s" +msgstr "画像ファイル %s が読み込めません: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "オブジェクト %s に属性 %s がありません" +msgid "download file not readable: %s" +msgstr "ダウンロードファイルが読み込めません: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "%sの別名です。" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "循環参照している toctree が検出されましたので無視します: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "TypeVar(%s)のエイリアスです。" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree にはタイトルのないドキュメント %r への参照が含まれています: リンクは生成されません" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "%s のメソッド・シグネチャの取得に失敗しました: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "無効な __slots__ が %s で見つかりました。無視されました。" +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "%r の既定の引数値の解析に失敗しました: %s。" +msgid "see %s" +msgstr "%sを参照" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "%r のシグネチャの更新に失敗しました: パラメータが見つかりません: %s。" +msgid "see also %s" +msgstr "%sも参照" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "%rのtype_commentを解析できませんでした: %s" +msgid "unknown index entry type %r" +msgstr "不明なインデックスエントリタイプ %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ka/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ka/LC_MESSAGES/sphinx.mo index c9170caa2e42d1aaf426f2e63ab3fd523d933fd3..7d9fd37e0139be9933e2a436ef665f8fb7c21a9e 100644 GIT binary patch delta 8335 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 iWx@8!g4Zhx-k`d&pqQptq&*k2qByr{Y4\n" "Language-Team: Georgian (http://app.transifex.com/sphinx-doc/sphinx-1/language/ka/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: ka\n" "Plural-Forms: nplurals=2; plural=(n!=1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python-ის განვითარების შეთავაზებები; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "არასწორი PEP ნომერი %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "არასწორი RFC ნომერი %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "პარამეტრი %s.%s თემის კონფიგურაციებში აღმოჩენილი არაა" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "თემის პარამეტრი %r მხარდაჭერილი არაა" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "პროექტს გაფართოების %s ვერსია მინიმუმ %s სჭირდება და ამიტომ ჩატვირთული ვერსიით (%s) აგებული ვერ იქნება." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Pygments lexer-ის სახელი %r უცნობია" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "მოვლენა %r უკვე არსებობს" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "უცნობი მოვლენის სახელი: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "დამმუშავებელმა %r მოვლენისთვის %r გამონაკლისი გადმოგვცა" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "წყარო საქაღალდე ვერ ვიპოვე (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "გამოტანის საქაღალდე (%s) საქაღალდე არაა" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "საწყისი და სამიზნე საქაღალდე ერთი და იგივე არ შეიძლება, იყოს" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "გაშვებულია Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "პროექტს Sphinx-ის მინიმალური v%s სჭირდება და ამიტომ ამ ვერსიით ვერ აიგება." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "გამოტანის საქაღალდის შექმნა" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "გაფართოების %s მორგებისას:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup', როგორც ის conf.py-შია ამჟამად აღწერილი, Python-ის მიერ გამოძახებადი არაა. შეცვალეთ აღწერა, რათა ის გამოძახებადი ფუნქცია გახდეს. ეს საჭიროა, რათა conf.py-ი, როგორც Sphinx-ის გაფართოება, მოიქცეს." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "თარგმანების ჩატვირთვა [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "შესრულებულია" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "ჩაშენებული შეტყობინებებისთვის ხელმისაწვდომი არაა" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "დამჟავებული გარემოს ჩატვირთვა" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "შეცდომით: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "ამგები არჩეული არაა. ვიყენებ ნაგულისხმევს: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "კვანძის კლასი %r უკვე რეგისტრირებულია. მისი მნახველები გადაფარული იქნება" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "გაფართოება %s არ აღწერს, არის თუ არა ის უსაფრთხო პარალელური წაკითხვისთვის. ვთვლით, რომ არა - კითხეთ გაფართოების ავტორს და აშკარად აღწერეთ ის" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "%s გაფართოება პარალელური წაკითხვისთვის უსაფრთხო არაა" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "გაფართოება %s არ აღწერს, არის თუ არა ის უსაფრთხო პარალელური ჩაწერისთვის. ვთვლით, რომ არა - კითხეთ გაფართოების ავტორს და აშკარად აღწერეთ ის" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "%s გაფართოება პარალელური ჩაწერისთვის უსაფრთხო არაა" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "ვაკეთებ სერიულს %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "კონფიგურაციის საქაღალდე ფაილს conf.py არ შეიცავს (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "ამგებ კლასს %s \"name\" ატრიბუტი არ გააჩნია" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "ამგები %r უკვე არსებობს (მოდულში %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "ამგების სახელი %s რეგისტრირებული არაა ან შესვლის წერტილში ხელმისაწვდომი არაა" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "ამგების სახელი %s რეგისტრირებული არაა" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "დომენი %s უკვე რეგისტრირებულია" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "დომენის %s ჯერ რეგისტრირებული არაა" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "%r დირექტივა დომენისთვის %s უკვე რეგისტრირებულია" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "%r როლი დომენისთვის %s უკვე რეგისტრირებულია" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "%r ინდექსი დომენისთვის %s უკვე რეგისტრირებულია" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "%r ობიექტის ტიპი უკვე რეგისტრირებულია" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "%r ჯვარედინი მიმართვის ტიპი უკვე რეგისტრირებულია" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r უკვე რეგისტრირებულია" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser %r-სთვის უკვე რეგისტრირებულია" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "წყაროს დამმუშავებელი %s-სთვის რეგისტრირებული არაა" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "მთარგმნელი %r-სთვის უკვე არსებობს" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwarg-ები add_node()-სთვის (შემომავალი, გამავალი) ფუნქციის კორტეჟი უნდა იყოს: %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r უკვე რეგისტრირებულია" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "მათემატიკის რენდერერი %s უკვე რეგისტრირებულია" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "აღმოჩენილია არასწორი კონფიგურაციის მნიშვნელობა: 'language = None'. განაახლეთ კონფიგურაცია და მიუთითეთ სწორი ენა. გადაირთვება 'en'-ზე (ინგლისური)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "გაფართოება %r %s ვერსიის შემდეგ Sphinx-ის ნაწილია. გაფართოება გამოტოვებულია." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "საწყისი გამონაკლისი:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "გაფართოების (%s) შემოტანა შეუძლებელია" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "გაფართოებას %r ფუნქცია setup() არ აქვს. დარწმუნებული ბრძანდებით, რომ ეს ნამდვილად Sphinx-ის გაფართოების მოდულია?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "ამ პროექტში გამოყენებულ გაფართოებას %s Sphinx-ის მინიმუმ v%s სჭირდება. ამიტომ მას ამ ვერსიით ვერ ააგებთ." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "გაფართოებამ %r setup() ფუნქციიდან მხარდაუჭერელი ობიექტი დააბრუნა. მან ან არაფერი, ან მეტამონაცემების ლექსიკონი უნდა დააბრუნოს" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "კონფიგურაციის საქაღალდე ფაილს conf.py არ შეიცავს (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "ლექსიკონის კონფიგურაციის პარამეტრის %r გადაფარვა შეუძლებელია. ის გამოტოვებული იქნება (ინდივიდუალური ელემენტების დასაყენებლად გამოიყენეთ %r)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "რიცხვი %r კონფიგურაციის მნიშვნელობისთვის %r არასწორია. ის გამოტოვებული იქნება" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "მხარდაუჭერელი ტიპის მქონე კონფიგურაციის პარამეტრის %r გადაფარვა შეუძლებელია. ის გამოტოვებული იქნება" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "გადაფარვაში მითითებული კონფიგურაციის მნიშვნელობა %r უცნობია. ის გამოტოვებული იქნება" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "კონფიგურაციის მნიშვნელობა %r უკვე არსებობს" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "აღმოჩენილია არასწორი კონფიგურაციის მნიშვნელობა: 'language = None'. განაახლეთ კონფიგურაცია და მიუთითეთ სწორი ენა. გადაირთვება 'en'-ზე (ინგლისური)." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "თქვენს კონფიგურაციის ფაილში აღმოჩენილია შეცდომა: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "კონფგურაციის ფაილმა (ან მოდულმა, რომელის მან შემოიტანა) sys.exit() გამოიძახა" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,470 +536,626 @@ msgid "" "%s" msgstr "თქვენს კონფიგურაციის ფაილში პროგრამირებადი შეცდომაა:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "სექცია %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "ნახ. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "ცხრილი %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "ჩამონათვალი %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "კონფიგურაციის მნიშვნელობა `{name}` შეიძლება იყოს ერთ-ერთ სიიდან `{candidates}`, თქვენ კი `{current}` მიუთითეთ." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "კონფიგურაციის მნიშვნელობის `{name}` ტიპია `{current.__name__}`, მე კი {permitted}-ს ველოდებოდი." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "კონფიგურაციის მნიშვნელობის `{name}` ტიპია `{current.__name__}`, ნაგულისხმებია `{default.__name__}`." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r ვერ ვიპოვე. ის გამოტოვებული იქნება." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Pygments lexer-ის სახელი %r უცნობია" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "ახალი კონფიგურაცია" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "პარამეტრი %s.%s თემის კონფიგურაციებში აღმოჩენილი არაა" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "კონფიგურაცია შეიცვალა" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "თემის პარამეტრი %r მხარდაჭერილი არაა" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "გაფართოებები შეიცვალა" + +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "აგების გარემოს ვერსია მიმდინარე არაა" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "საწყისი საქაღალდე შეიცვალა" -#: theming.py:208 +#: environment/__init__.py:350 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:228 +#: environment/__init__.py:355 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:361 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:276 -#, python-format +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "გარემო არჩეულ ამგებთან თავსებადი არაა. აირჩიეთ სხვა დოკუმენტების ხის საქაღალდე." -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "%s-ში დოკუმენტების სკანირება შეუძლებელია: %r" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" -msgstr "" +msgid "Domain %r is not registered" +msgstr "დომენი %r რეგისტრირებული არაა" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "დოკუმენტი არც ერთ სარჩევის ხეში ჩასმული არაა" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "აღმოჩენილია თვითმიმართვადი სარჩევის ხე. გამოტოვებულია." -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "ყურადღება" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "გაფრთხილება" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "მოვლენა %r უკვე არსებობს" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "საფრთხე" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "უცნობი მოვლენის სახელი: %s" +#: locale/__init__.py:232 +msgid "Error" +msgstr "შეცდომა" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "დამმუშავებელმა %r მოვლენისთვის %r გამონაკლისი გადმოგვცა" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "მინიშნება" -#: project.py:72 +#: locale/__init__.py:234 +msgid "Important" +msgstr "მნიშვნელოვანი" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "ნოტი" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "ასევე იხილეთ" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "რჩევა" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "ყურადღება" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo-ის ფაილების საქაღალდეა %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "კონფიგურაციის პარამეტრის \"texinfo_documents\" მნიშვნელობა მითითებული არაა. დოკუმენტების ჩაწერი არ იქნება" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "ამგებ კლასს %s \"name\" ატრიბუტი არ გააჩნია" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "\"texinfo_documents\" კონფიგურაციის პარამეტრი მიუთითებს უცნობ დოკუმენტზე %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "ამგები %r უკვე არსებობს (მოდულში %s)" +msgid "processing %s" +msgstr "დამუშავება %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "ამგების სახელი %s რეგისტრირებული არაა ან შესვლის წერტილში ხელმისაწვდომი არაა" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "ჩაწერა" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "ამგების სახელი %s რეგისტრირებული არაა" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "მიმართვების ამოხსნა..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "დომენი %s უკვე რეგისტრირებულია" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " ( " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "დომენის %s ჯერ რეგისტრირებული არაა" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "გამოსახულებების კოპირება... " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "%r დირექტივა დომენისთვის %s უკვე რეგისტრირებულია" +msgid "cannot copy image file %r: %s" +msgstr "გამოსახულების ფაილის %r კოპირების შეცდომა: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "%r როლი დომენისთვის %s უკვე რეგისტრირებულია" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "მიმდინარეობს Texinfo-ის მხარდაჭერის ფაილების კოპირება" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "%r ინდექსი დომენისთვის %s უკვე რეგისტრირებულია" +msgid "error writing file Makefile: %s" +msgstr "შეცდომა Makefile-ის ჩაწერისას: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "%r ობიექტის ტიპი უკვე რეგისტრირებულია" +msgid "The manual pages are in %(outdir)s." +msgstr "სახელმძღვანელოს გვერდების საქაღალდეა %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "%r ჯვარედინი მიმართვის ტიპი უკვე რეგისტრირებულია" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r უკვე რეგისტრირებულია" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" პარამეტრის მნიშვნელობა უცნობ დოკუმენტზე %s მიუთითებს" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser %r-სთვის უკვე რეგისტრირებულია" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML გვერდის საქაღალდეა %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "წყაროს დამმუშავებელი %s-სთვის რეგისტრირებული არაა" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "ერთი დოკუმენტის აწყობა" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "მთარგმნელი %r-სთვის უკვე არსებობს" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "დამატებითი ფაილების ჩაწერა" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "kwarg-ები add_node()-სთვის (შემომავალი, გამავალი) ფუნქციის კორტეჟი უნდა იყოს: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "სულელი ამგები, რომელიც ფაილებს არ აგენერირებს." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r უკვე რეგისტრირებულია" +msgid "The message catalogs are in %(outdir)s." +msgstr "შეტყობინების კატალოგების საქაღალდეა %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "მათემატიკის რენდერერი %s უკვე რეგისტრირებულია" +msgid "building [%s]: " +msgstr "აგება [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "გაფართოება %r %s ვერსიის შემდეგ Sphinx-ის ნაწილია. გაფართოება გამოტოვებულია." +msgid "targets for %d template files" +msgstr "%d ნიმუშის ფაილის სამიზნეები" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "საწყისი გამონაკლისი:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "ნიმუშების კითხვა... " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "გაფართოების (%s) შემოტანა შეუძლებელია" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "შეტყობინების კატალოგების ჩაწერა... " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "გაფართოებას %r ფუნქცია setup() არ აქვს. დარწმუნებული ბრძანდებით, რომ ეს ნამდვილად Sphinx-ის გაფართოების მოდულია?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "ამ პროექტში გამოყენებულ გაფართოებას %s Sphinx-ის მინიმუმ v%s სჭირდება. ამიტომ მას ამ ვერსიით ვერ ააგებთ." +msgid "broken link: %s (%s)" +msgstr "გაფუჭებული ბმული: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "გაფართოებამ %r setup() ფუნქციიდან მხარდაუჭერელი ობიექტი დააბრუნა. მან ან არაფერი, ან მეტამონაცემების ლექსიკონი უნდა დააბრუნოს" +msgid "Anchor '%s' not found" +msgstr "მიმაგრება '%s' ვერ ვიპოვე" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "EPub ფაილი %(outdir)s-შია." -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "nav.xhtml ფაილის ჩაწერა..." + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_language\" (ან \"language\") EPUB3-სთვის ცარიელი არ უნდა ყოფილიყო" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_uid\" EPUB3-სთვის XML NAME უნდა იყოს" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_title\" (ან \"html_title\") EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_author\" EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_contributor\" EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_description\" EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_publisher\" EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_copyright\" (ან \"copyright\") EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"epub_identifier\" EPUB3-სთვის ცარიელი არ უნდა იყოს" -#: roles.py:274 +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "კონფიგურაციის მნიშვნელობა \"version\" EPUB3-სთვის ცარიელი არ უნდა იყოს" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "invalid CWE number %s" -msgstr "" +msgid "invalid css_file: %r, ignored" +msgstr "არასწორი css_file: %r. გამოტოვება" -#: roles.py:294 +#: builders/xml.py:29 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python-ის განვითარების შეთავაზებები; PEP %s" +msgid "The XML files are in %(outdir)s." +msgstr "XML ფაილების საქაღალდეა %(outdir)s." -#: roles.py:317 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "invalid PEP number %s" -msgstr "არასწორი PEP ნომერი %s" +msgid "error writing file %s: %s" +msgstr "შეცდომა '%s' ფაილის ჩაწერისას: %s" -#: roles.py:355 +#: builders/xml.py:103 #, python-format -msgid "invalid RFC number %s" -msgstr "არასწორი RFC ნომერი %s" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "ფსევდო-XML ფაილებს საქაღალდეა %(outdir)s." -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" +msgstr "აღმოჩენილია დუბლირებული სარჩევის ჩანაწერი: %s" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "მოდულის კოდის გამოკვეთა... " +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "გამოსახულების ფაილი %r ვერ წავიკითხე: ის, სამაგიეროდ, დაკოპირდება" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "" +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "გამოსახულების ფაილის %r ჩაწერის შეცდომა: %s" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "მოდულის კოდი" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow ვერ ვიპოვე - სურათის ფაილების კოპირება" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "mimetype ფაილის ჩაწერა..." + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "მიმდინარეობს META-INF/container.xml ფაილის ჩაწერა..." + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "content.opf ფაილის ჩაწერა..." -#: ext/viewcode.py:353 +#: builders/_epub_base.py:594 #, python-format -msgid "

Source code for %s

" +msgid "unknown mimetype for %s, ignoring" +msgstr "უცნობი mimetype ფაილისთვის %s. გამოტოვება" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "გადახედვა: მოდულის კოდი" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "toc.ncx ფაილის ჩაწერა..." -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "%s ფაილის ჩაწერა..." + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "ტექსტური ფაილების საქაღლდეა %(outdir)s." + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: ext/extlinks.py:82 +#: builders/__init__.py:237 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "a suitable image for %s builder not found: %s" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "აგება [mo]: " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "გამოტანის ჩაწერა... " + +#: builders/__init__.py:280 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "სექცია \"%s\" მიიღებს ჭდეს \"%s\"" +msgid "all of %d po files" +msgstr "სულ %d po ფაილი" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/__init__.py:302 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "დუბლირებული ჭდე %s. სხვა აღწერა %s-შია" +msgid "targets for %d po files that are specified" +msgstr "%d po ფაილისთვის სამიზნე მითითებული არაა" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "%d po ფაილისთვის სამიზნე მოძველებულია" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "ყველა კოდის ფაილი" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "ბრძანების სტრიქონში მითითებული ფაილი %r არ არსებობს. " -#: ext/duration.py:90 +#: builders/__init__.py:342 +#, python-format msgid "" -"====================== slowest reading durations =======================" -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "ბრძანების სტრიქონში მითითებული ფაილი %r კოდის საქაღალდეში არაა. გამოტოვება" -#: ext/doctest.py:118 +#: builders/__init__.py:353 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "ბრძანების სტრიქონში მითითებული ფაილი %r სწორი დოკუმენტი არაა. გამოტოვება" -#: ext/doctest.py:124 +#: builders/__init__.py:366 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' სწორი პარამეტრი არაა." +msgid "%d source files given on command line" +msgstr "ბრძანების სტრიქონში მითითებულია %d კოდის ფაილი" -#: ext/doctest.py:139 +#: builders/__init__.py:382 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' სწორი pyversion-ის პარამეტრი არაა" +msgid "targets for %d source files that are out of date" +msgstr "%d კოდის ფაილის სამიზნე მოძველებულია" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "არასწორი TestCode ტიპი" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "მოძველებული ფაილების ძებნა... " -#: ext/doctest.py:297 +#: builders/__init__.py:415 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "" +msgid "%d found" +msgstr "ნაპოვნია %d" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "არაფერია ნაპოვნი" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "დამჟავების გარემო" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "თანმიმდევრულობის შემოწმება" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "მოძველებული სამიზნეები აღმოჩენილი არაა." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "გარემოს განახლება: " -#: ext/doctest.py:457 +#: builders/__init__.py:499 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "" +msgid "%s added, %s changed, %s removed" +msgstr "%s დაემატა, %s შეიცვალა, %s წაიშალა" -#: ext/doctest.py:568 +#: builders/__init__.py:536 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:545 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:556 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:563 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "წყაროების კითხვა... " + +#: builders/__init__.py:725 #, python-format -msgid "inline latex %r: %s" +msgid "docnames to write: %s" +msgstr "ჩასაწერი დოკუმენტის სახელები: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "დოკუმენტების მომზადება" + +#: builders/__init__.py:743 +msgid "copying assets" msgstr "" +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "გადახედვის ფაილის მდებარეობაა %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "ვერსიაში %s ცვლილებები არაა." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "შეჯამების ფაილის ჩაწერა..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "ჩაშენებულები" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "მოდულის დონე" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "კოდის ფაილების კოპირება..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "ცვლილებების ჟურნალის შესაქმნელად %r-ის წაკითხვა შეუძლებელია" + #: ext/coverage.py:48 #, python-format msgid "invalid regex %r in %s" @@ -738,9 +1174,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,15 +1212,43 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: ext/imgconverter.py:44 +#: ext/extlinks.py:82 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: ext/todo.py:61 +msgid "Todo" +msgstr "განრიგის სია" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<<საწყისი ჩანაწერი>>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "საწყისი ჩანაწერი" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 #, python-format msgid "" "convert exited with error:\n" @@ -862,1780 +1327,1515 @@ msgstr "[გრაფიკი: %s]" msgid "[graph]" msgstr "[გრაფიკი]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "განრიგის სია" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" -msgstr "<<საწყისი ჩანაწერი>>" - -#: ext/todo.py:154 +#: ext/imgmath.py:167 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "" - -#: ext/todo.py:166 -msgid "original entry" -msgstr "საწყისი ჩანაწერი" - -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: directives/code.py:87 +#: ext/imgmath.py:326 #, python-format -msgid "Invalid caption: %s" -msgstr "არასწორი წარწერა: %s" +msgid "display latex %r: %s" +msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/imgmath.py:362 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "\"%s\" და \"%s\" პარამეტრების ერთდროული გამოყენება შეუძლებელია" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: directives/code.py:231 +#: ext/doctest.py:118 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:124 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +msgid "'%s' is not a valid option." +msgstr "'%s' სწორი პარამეტრი არაა." -#: directives/code.py:276 +#: ext/doctest.py:139 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "ობიექტი სახელად %r ჩასასმელი ფაილში %r აღმოჩენილი არაა" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' სწორი pyversion-ის პარამეტრი არაა" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "არასწორი TestCode ტიპი" -#: directives/code.py:314 +#: ext/doctest.py:297 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "" - -#: directives/patches.py:71 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/other.py:119 +#: ext/doctest.py:451 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/doctest.py:568 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/other.py:156 +#: ext/autosectionlabel.py:52 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "სექცია \"%s\" მიიღებს ჭდეს \"%s\"" -#: directives/other.py:169 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "აღმოჩენილია დუბლირებული სარჩევის ჩანაწერი: %s" - -#: directives/other.py:203 -msgid "Section author: " -msgstr "სექციის ავტორი: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "მოდულის ავტორი: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "კოდის ავტორი: " - -#: directives/other.py:209 -msgid "Author: " -msgstr "ავტორი: " +msgid "duplicate label %s, other instance in %s" +msgstr "დუბლირებული ჭდე %s. სხვა აღწერა %s-შია" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: builders/changes.py:29 +#: ext/duration.py:124 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "გადახედვის ფაილის მდებარეობაა %(outdir)s." +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" -#: builders/changes.py:56 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "no changes in version %s." -msgstr "ვერსიაში %s ცვლილებები არაა." +msgid "%.3fs %s" +msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "შეჯამების ფაილის ჩაწერა..." +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "ჩაშენებულები" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "მოდულის კოდის გამოკვეთა... " -#: builders/changes.py:72 -msgid "Module level" -msgstr "მოდულის დონე" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "კოდის ფაილების კოპირება..." +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "მოდულის კოდი" -#: builders/changes.py:133 +#: ext/viewcode.py:359 #, python-format -msgid "could not read %r for changelog creation" -msgstr "ცვლილებების ჟურნალის შესაქმნელად %r-ის წაკითხვა შეუძლებელია" +msgid "

Source code for %s

" +msgstr "" -#: builders/manpage.py:37 -#, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "სახელმძღვანელოს გვერდების საქაღალდეა %(outdir)s." +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "გადახედვა: მოდულის კოდი" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "ჩაწერა" - -#: builders/manpage.py:71 +#: domains/citation.py:75 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" პარამეტრის მნიშვნელობა უცნობ დოკუმენტზე %s მიუთითებს" +msgid "duplicate citation %s, other instance in %s" +msgstr "" -#: builders/__init__.py:224 +#: domains/citation.py:92 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/__init__.py:232 +#: domains/math.py:73 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "აგება [mo]: " - -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "გამოტანის ჩაწერა... " - -#: builders/__init__.py:275 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "all of %d po files" -msgstr "სულ %d po ფაილი" +msgid "Invalid math_eqref_format: %r" +msgstr "არასწორი math_eqref_format: %r" -#: builders/__init__.py:297 +#: domains/javascript.py:183 #, python-format -msgid "targets for %d po files that are specified" -msgstr "%d po ფაილისთვის სამიზნე მითითებული არაა" +msgid "%s() (built-in function)" +msgstr "%s () (ჩაშენებული ფუნქცია)" -#: builders/__init__.py:309 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "%d po ფაილისთვის სამიზნე მოძველებულია" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "ყველა კოდის ფაილი" +msgid "%s() (%s method)" +msgstr "%s () (%s მეთოდი)" -#: builders/__init__.py:330 +#: domains/javascript.py:186 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "ბრძანების სტრიქონში მითითებული ფაილი %r არ არსებობს. " +msgid "%s() (class)" +msgstr "%s () (კლასი)" -#: builders/__init__.py:337 +#: domains/javascript.py:188 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "ბრძანების სტრიქონში მითითებული ფაილი %r კოდის საქაღალდეში არაა. გამოტოვება" +msgid "%s (global variable or constant)" +msgstr "%s (გლობალური ცვლადი ან მუდმივა)" -#: builders/__init__.py:348 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "ბრძანების სტრიქონში მითითებული ფაილი %r სწორი დოკუმენტი არაა. გამოტოვება" +msgid "%s (%s attribute)" +msgstr "%s (%s ატრიბუტი)" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "ბრძანების სტრიქონში მითითებულია %d კოდის ფაილი" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "არგუმენტები" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "%d კოდის ფაილის სამიზნე მოძველებულია" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "ისვრის" -#: builders/__init__.py:395 builders/gettext.py:265 -#, python-format -msgid "building [%s]: " -msgstr "აგება [%s]: " +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "აბრუნებს" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "მოძველებული ფაილების ძებნა... " +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "დაბრუნების ტიპი" -#: builders/__init__.py:410 +#: domains/javascript.py:374 #, python-format -msgid "%d found" -msgstr "ნაპოვნია %d" +msgid "%s (module)" +msgstr "%s (მოდული)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "არაფერია ნაპოვნი" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "ფუნქცია" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "დამჟავების გარემო" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "მეთოდი" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "თანმიმდევრულობის შემოწმება" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "კლასი" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "მოძველებული სამიზნეები აღმოჩენილი არაა." +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "მონაცემები" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "გარემოს განახლება: " +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "ატრიბუტი" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s დაემატა, %s შეიცვალა, %s წაიშალა" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "მოდული" -#: builders/__init__.py:531 +#: domains/javascript.py:458 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:540 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "%s (directive)" +msgstr "%s (დირექტივა)" -#: builders/__init__.py:551 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid ":%s: (directive option)" +msgstr ":%s: (დირექტივის პარამეტრი)" -#: builders/__init__.py:558 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "წყაროების კითხვა... " +msgid "%s (role)" +msgstr "%s (როლი)" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" -msgstr "ჩასაწერი დოკუმენტის სახელები: %s" +#: domains/rst.py:234 +msgid "directive" +msgstr "დირექტივა" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "დირექტივის-პარამეტრი" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "დოკუმენტების მომზადება" +#: domains/rst.py:236 +msgid "role" +msgstr "როლები" -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "" +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "%s %s-ის დუბლირებული აღწერა. სხვა ასლი %s-შია" -#: builders/__init__.py:883 +#: domains/changeset.py:32 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +msgid "Added in version %s" msgstr "" -#: builders/epub3.py:84 +#: domains/changeset.py:33 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "EPub ფაილი %(outdir)s-შია." - -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "nav.xhtml ფაილის ჩაწერა..." - -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_language\" (ან \"language\") EPUB3-სთვის ცარიელი არ უნდა ყოფილიყო" - -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_uid\" EPUB3-სთვის XML NAME უნდა იყოს" - -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_title\" (ან \"html_title\") EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_author\" EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_contributor\" EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_description\" EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_publisher\" EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_copyright\" (ან \"copyright\") EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"epub_identifier\" EPUB3-სთვის ცარიელი არ უნდა იყოს" - -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "კონფიგურაციის მნიშვნელობა \"version\" EPUB3-სთვის ცარიელი არ უნდა იყოს" +msgid "Changed in version %s" +msgstr "ცვლილებები ვერსიაში %s" -#: builders/epub3.py:279 builders/html/__init__.py:1291 +#: domains/changeset.py:34 #, python-format -msgid "invalid css_file: %r, ignored" -msgstr "არასწორი css_file: %r. გამოტოვება" +msgid "Deprecated since version %s" +msgstr "მოძველებულია ვერსიაში %s" -#: builders/xml.py:31 +#: domains/changeset.py:35 #, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XML ფაილების საქაღალდეა %(outdir)s." +msgid "Removed in version %s" +msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: domains/__init__.py:322 #, python-format -msgid "error writing file %s: %s" -msgstr "შეცდომა '%s' ფაილის ჩაწერისას: %s" +msgid "%s %s" +msgstr "%s %s" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "ფსევდო-XML ფაილებს საქაღალდეა %(outdir)s." +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "დავალების ნომერი დადებითი რიცხვი უნდა იყოს" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfo-ის ფაილების საქაღალდეა %(outdir)s." +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "მეტი ინფორმაციის მისაღებად ეწვიეთ ." -#: builders/texinfo.py:48 +#: cmd/build.py:74 msgid "" "\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "კონფიგურაციის პარამეტრის \"texinfo_documents\" მნიშვნელობა მითითებული არაა. დოკუმენტების ჩაწერი არ იქნება" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "\"texinfo_documents\" კონფიგურაციის პარამეტრი მიუთითებს უცნობ დოკუმენტზე %s" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "დამუშავება %s" - -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "მიმართვების ამოხსნა..." - -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " ( " - -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "გამოსახულებების კოპირება... " - -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "გამოსახულების ფაილის %r კოპირების შეცდომა: %s" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "ბილიკი დოკუმენტაციის კოდის ფაილებამდე" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "მიმდინარეობს Texinfo-ის მხარდაჭერის ფაილების კოპირება" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "ბილიკი გამოტანის საქაღალდემდე" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "შეცდომა Makefile-ის ჩაწერისას: %s" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "აღმოჩენილია დუბლირებული სარჩევის ჩანაწერი: %s" +#: cmd/build.py:114 +msgid "general options" +msgstr "ზოგადი პარამეტრები" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "გამოსახულების ფაილი %r ვერ წავიკითხე: ის, სამაგიეროდ, დაკოპირდება" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "გამოსახულების ფაილის %r ჩაწერის შეცდომა: %s" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow ვერ ვიპოვე - სურათის ფაილების კოპირება" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "ყველა ფაილის ჩაწერა (ნაგულისხმევი: მხოლოდ ახალი და შეცვლილი ფაილების ჩაწერა)" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "mimetype ფაილის ჩაწერა..." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "შენახული გარემო გამოყენებული არ იქნება. ყოველთვის მოხდება ყველა ფაილის წაკითხვა" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "მიმდინარეობს META-INF/container.xml ფაილის ჩაწერა..." +#: cmd/build.py:150 +msgid "path options" +msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "content.opf ფაილის ჩაწერა..." +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "უცნობი mimetype ფაილისთვის %s. გამოტოვება" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "toc.ncx ფაილის ჩაწერა..." +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "კონფიგურაციის ფაილის პარამეტრის გადაფარვა" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "%s ფაილის ჩაწერა..." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "მნიშვნელობის გადაცემა HTML ნიმუშებში" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "სულელი ამგები, რომელიც ფაილებს არ აგენერირებს." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "შეტყობინების კატალოგების საქაღალდეა %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "%d ნიმუშის ფაილის სამიზნეები" +#: cmd/build.py:212 +msgid "console output options" +msgstr "კონსოლის გამოტანის პარამეტრები" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "ნიმუშების კითხვა... " +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "დიაგნოსტიკური შეტყობინებების სიხშირის გაზრდა (შეგიძლიათ, გაიმეოროთ)" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "შეტყობინების კატალოგების ჩაწერა... " +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "stdout-ზე გამოტანილი არაფერი იქნება. მხოლოდ გაფრთხილებები, stderr-ზე" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML გვერდის საქაღალდეა %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "არაფრი გამოტანა. გაფრთხილებებისაც კი" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "ერთი დოკუმენტის აწყობა" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "ფერადი გამოტანის ჩართვა (ნაგულისხმევი: ავტომატურად-აღმოჩენა)" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "დამატებითი ფაილების ჩაწერა" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "ფერადი გამოტანის გამორთვა (ნაგულისხმევი: ავტომატურად-აღმოჩენა)" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "გაფუჭებული ბმული: %s (%s)" - -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "მიმაგრება '%s' ვერ ვიპოვე" - -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "გაფრთხილებების (და შეცდომების) მითითებულ ფაილში ჩაწერა" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "ტექსტური ფაილების საქაღლდეა %(outdir)s." +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "გაფრთხილებების შეცდომად აღქმა" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "გამონაკლისისას Pdb-ის გაშვება" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "-a პარამეტრის და ფაილის სახელების ერთად მითითება შეუძლებელია" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 +#: cmd/build.py:357 #, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +msgid "cannot open warning file '%s': %s" msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: transforms/__init__.py:253 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "ნაკვალევი [%s] მიმართული არაა." - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "ნაკვალევი [#] მიმართული არაა." - -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "დოკუმენტაციის დაფარვის შემოწმება" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "მათემატიკის ჩასმა, რომელიც PNG ან SVG გამოსახულების სახითაა დარენდერებული" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "ბრაუზერში MathJax-ის მიერ დარენდერებული მათემატიკის ჩასმა" -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "გთხოვთ შეიყვანოთ ბილიკის სწორი სახელი." -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "შეიყვანეთ რაიმე ტექსტი." -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:134 +#, python-format +msgid "Please enter one of %s." +msgstr "შეიყვანეთ %s-დან ერთ-ერთი." -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "შეიყვანეთ 'y' (დიახ) ან 'n' (არა)" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "მიუთითეთ ფაილის სუფიქსი. მაგ: '.rst' ან '.txt'." -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "მოგესალმებით Sphinx %s-ის სწრაფი მორგების პროგრამა." -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: environment/__init__.py:86 -msgid "new config" -msgstr "ახალი კონფიგურაცია" +#: cmd/quickstart.py:242 +#, python-format +msgid "Selected root path: %s" +msgstr "არჩეული root ბილიკი: %s" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "კონფიგურაცია შეიცვალა" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "შეიყვანეთ დოკუმენტაციის ძირითადი ბილიკი." -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "გაფართოებები შეიცვალა" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "დოკუმენტაციის ძირითადი ბილიკი" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "აგების გარემოს ვერსია მიმდინარე არაა" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "შეცდომა: არჩეულ ძირითად ბილიკზე აღმოჩენილია არსებული conf.py ფაილი." -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "საწყისი საქაღალდე შეიცვალა" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart-ი არსებულ Sphinx-ის პროექტებს თავზე არ გადააწერს." -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "შეიყვანეთ ახალი საწყისი ბილიკი (გასასვლელად უბრალოდ დააწექით ღილაკს 'Enter')" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "კოდის და აგების საქაღალდეები განსხვავდება? (y(დიახ)/n(არა))" -#: environment/__init__.py:379 +#: cmd/quickstart.py:287 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "გარემო არჩეულ ამგებთან თავსებადი არაა. აირჩიეთ სხვა დოკუმენტების ხის საქაღალდე." +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "%s-ში დოკუმენტების სკანირება შეუძლებელია: %r" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "სახელის პრეფიქსი ნიმუშებისა და სტატიკის საქაღალდეებისთვის" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "დომენი %r რეგისტრირებული არაა" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "პროექტს სახელი აგებულ დოკუმენტაციაში რამდენიმე ადგილას გამოჩნდება." -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "დოკუმენტი არც ერთ სარჩევის ხეში ჩასმული არაა" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "პროექტის სახელი" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "აღმოჩენილია თვითმიმართვადი სარჩევის ხე. გამოტოვებულია." +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "ავტორის სახელები" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "წაკითხვის შეცდომა: %s, %s" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "პროექტის ვერსია" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "ჩაწერის შეცდომა: %s, %s" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "პროექტის რელიზი" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "პროექტის ენა" -#: util/i18n.py:245 -#, python-format +#: cmd/quickstart.py:340 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:350 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "თქვენი მთავარი დოკუმენტის სახელი (სუფიქსს გარეშე)" -#: util/nodes.py:706 +#: cmd/quickstart.py:368 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: util/display.py:82 -msgid "skipped" -msgstr "გამოტოვებული" - -#: util/display.py:87 -msgid "failed" -msgstr "შეცდომით" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart არსებულ ფაილებს თავზე არ გადააწერს." -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:378 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "უცნობი კვანძის ტიპი: %r" - -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:407 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "შევქმნა Makefile? (y(დიახ)/n(არა))" -#: util/rst.py:73 +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "შევქმნა Windows-ის ბრძანებების ფაილი? (y(დიახ)/n(არა))" + +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "default role %s not found" -msgstr "ნაგულისხმევი როლი %s ვერ ვიპოვე" +msgid "Creating file %s." +msgstr "ფაილის შექმნა %s." -#: util/inventory.py:147 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +msgid "File %s already exists, skipping." +msgstr "ფაილი %s უკვე არსებობს. ის გამოტოვებული იქნება." -#: util/inventory.py:166 +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "დასრულდა: საწყისი საქაღალდეების სტრუქტურა შეიქმნა." + +#: cmd/quickstart.py:520 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "სქოლიოები" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: cmd/quickstart.py:531 #, python-format -msgid "[image: %s]" -msgstr "[გამოსახულება: %s]" - -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "ინდექსი" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:573 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "წარწერა ფიგურის შიგნით არაა." +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "ჩუმი რეჟიმი" -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "განუხორციელებელი კვანძის ტიპი: %r" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "პროექტის საწყისი საქაღალდე" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "სტრუქტურის მორგება" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "ენისთვის %r Babel-ის პარამეტრი ცნობილი არაა" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "თუ მითითებულია, კოდის და აგების საქაღალდეები ცალ-ცალკე იქნება" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "ძალიან დიდი :maxdepth:. გამოტოვება." +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "თუ მითითებულია, აგების საქაღალდე კოდის საქაღალდეში იქნება" -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "დოკუმენტის სათაური ერთი ტექსტური კვანძი არაა" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "პროექტის ძირითადი პარამეტრები" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "პროექტის დასახელება" -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "ავტორის სახელები" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "ზომის ერთეული %s არასწორია. გამოტოვება." +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "პროექტის ვერსია" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "აღმოჩენილია ინდექსის ჩანაწერის უცნობი ტიპი %s" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "პროექტის რელიზი" -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "არასწორი math_eqref_format: %r" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "დოკუმენტის ენა" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "წყაროს ფაილის სუფიქსი" -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format-ი %s-სთვის აღწერილი არაა" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "მთავარი დოკუმენტის სახელი" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "epub-ის გამოყენება" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "გაფართოების პარამეტრები" -#: writers/html5.py:441 +#: cmd/quickstart.py:671 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "ნებისმიერი ID, რომელიც %s კვანძზე მინიჭებული არაა" +msgid "enable %s extension" +msgstr "%s გაფართოების ჩართვა" -#: writers/html5.py:496 -msgid "Link to this term" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefile და Batchfile-ის შექმნა" -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "makefile-ის შექმნა" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "makefile-ის არ შეიქმნება" -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "batchfile-ის შექმნა" -#: writers/html5.py:640 -msgid "Link to this toctree" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "batchfile-ი არ შეიქმნება" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "გამოსახულების ზომის მიღება შეუძლებელია. :scale: მოხდება პარამეტრის გამოტოვება." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "პროექტის ნიმუშები" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "ნიმუშების საქაღალდე ნიმუშის ფაილებისთვის" -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "აღწერეთ სანიმუშე ცვლადი" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s () (ჩაშენებული ფუნქცია)" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s () (%s მეთოდი)" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "" -#: domains/javascript.py:185 +#: cmd/quickstart.py:810 #, python-format -msgid "%s() (class)" -msgstr "%s () (კლასი)" +msgid "Invalid template variable: %s" +msgstr "არასწორი ნიმუშის ცვლადი: %s" -#: domains/javascript.py:187 +#: directives/other.py:119 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (გლობალური ცვლადი ან მუდმივა)" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s ატრიბუტი)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "არგუმენტები" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "ისვრის" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "აბრუნებს" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "დაბრუნების ტიპი" +msgid "toctree contains reference to excluded document %r" +msgstr "" -#: domains/javascript.py:370 +#: directives/other.py:156 #, python-format -msgid "%s (module)" -msgstr "%s (მოდული)" +msgid "toctree contains reference to nonexisting document %r" +msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "ფუნქცია" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "აღმოჩენილია დუბლირებული სარჩევის ჩანაწერი: %s" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "მეთოდი" +#: directives/other.py:203 +msgid "Section author: " +msgstr "სექციის ავტორი: " -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "კლასი" +#: directives/other.py:205 +msgid "Module author: " +msgstr "მოდულის ავტორი: " -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "მონაცემები" +#: directives/other.py:207 +msgid "Code author: " +msgstr "კოდის ავტორი: " -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "ატრიბუტი" +#: directives/other.py:209 +msgid "Author: " +msgstr "ავტორი: " -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "მოდული" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "ცვლილებები ვერსიაში %s" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" -#: domains/changeset.py:28 +#: directives/code.py:87 #, python-format -msgid "Deprecated since version %s" -msgstr "მოძველებულია ვერსიაში %s" +msgid "Invalid caption: %s" +msgstr "არასწორი წარწერა: %s" -#: domains/changeset.py:29 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "Removed in version %s" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 +#: directives/code.py:216 #, python-format -msgid "%s (directive)" -msgstr "%s (დირექტივა)" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "\"%s\" და \"%s\" პარამეტრების ერთდროული გამოყენება შეუძლებელია" -#: domains/rst.py:191 domains/rst.py:202 +#: directives/code.py:231 #, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (დირექტივის პარამეტრი)" +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: domains/rst.py:224 +#: directives/code.py:235 #, python-format -msgid "%s (role)" -msgstr "%s (როლი)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "დირექტივა" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "დირექტივის-პარამეტრი" - -#: domains/rst.py:236 -msgid "role" -msgstr "როლები" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: domains/rst.py:262 +#: directives/code.py:276 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "%s %s-ის დუბლირებული აღწერა. სხვა ასლი %s-შია" +msgid "Object named %r not found in include file %r" +msgstr "ობიექტი სახელად %r ჩასასმელი ფაილში %r აღმოჩენილი არაა" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: domains/citation.py:92 +#: directives/code.py:314 #, python-format -msgid "Citation [%s] is not referenced." +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "ყურადღება" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "გაფრთხილება" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "საფრთხე" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "შეცდომა" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "მინიშნება" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "ინდექსი" -#: locale/__init__.py:233 -msgid "Important" -msgstr "მნიშვნელოვანი" +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "ნოტი" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "სქოლიოები" -#: locale/__init__.py:235 -msgid "See also" -msgstr "ასევე იხილეთ" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "წარწერა ფიგურის შიგნით არაა." -#: locale/__init__.py:236 -msgid "Tip" -msgstr "რჩევა" +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "განუხორციელებელი კვანძის ტიპი: %r" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "ყურადღება" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[გამოსახულება: %s]" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "numfig_format-ი %s-სთვის აღწერილი არაა" + +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "ნებისმიერი ID, რომელიც %s კვანძზე მინიჭებული არაა" + +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "დოკუმენტაციის დაფარვის შემოწმება" +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "მათემატიკის ჩასმა, რომელიც PNG ან SVG გამოსახულების სახითაა დარენდერებული" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "ბრაუზერში MathJax-ის მიერ დარენდერებული მათემატიკის ჩასმა" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "გამოსახულების ზომის მიღება შეუძლებელია. :scale: მოხდება პარამეტრის გამოტოვება." + +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "გთხოვთ შეიყვანოთ ბილიკის სწორი სახელი." +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "ენისთვის %r Babel-ის პარამეტრი ცნობილი არაა" -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "შეიყვანეთ რაიმე ტექსტი." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "ძალიან დიდი :maxdepth:. გამოტოვება." -#: cmd/quickstart.py:133 +#: writers/latex.py:616 #, python-format -msgid "Please enter one of %s." -msgstr "შეიყვანეთ %s-დან ერთ-ერთი." +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "შეიყვანეთ 'y' (დიახ) ან 'n' (არა)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "დოკუმენტის სათაური ერთი ტექსტური კვანძი არაა" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "მიუთითეთ ფაილის სუფიქსი. მაგ: '.rst' ან '.txt'." +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" -#: cmd/quickstart.py:229 +#: writers/latex.py:1228 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "მოგესალმებით Sphinx %s-ის სწრაფი მორგების პროგრამა." - -#: cmd/quickstart.py:234 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:241 +#: writers/latex.py:1615 #, python-format -msgid "Selected root path: %s" -msgstr "არჩეული root ბილიკი: %s" +msgid "dimension unit %s is invalid. Ignored." +msgstr "ზომის ერთეული %s არასწორია. გამოტოვება." -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "შეიყვანეთ დოკუმენტაციის ძირითადი ბილიკი." +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "აღმოჩენილია ინდექსის ჩანაწერის უცნობი ტიპი %s" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "დოკუმენტაციის ძირითადი ბილიკი" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "შეცდომა: არჩეულ ძირითად ბილიკზე აღმოჩენილია არსებული conf.py ფაილი." +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart-ი არსებულ Sphinx-ის პროექტებს თავზე არ გადააწერს." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "შეიყვანეთ ახალი საწყისი ბილიკი (გასასვლელად უბრალოდ დააწექით ღილაკს 'Enter')" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "კოდის და აგების საქაღალდეები განსხვავდება? (y(დიახ)/n(არა))" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:286 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "სახელის პრეფიქსი ნიმუშებისა და სტატიკის საქაღალდეებისთვის" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "პროექტს სახელი აგებულ დოკუმენტაციაში რამდენიმე ადგილას გამოჩნდება." +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "პროექტის სახელი" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "ავტორის სახელები" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "პროექტის ვერსია" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "პროექტის რელიზი" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "პროექტის ენა" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:339 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:349 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "თქვენი მთავარი დოკუმენტის სახელი (სუფიქსს გარეშე)" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: cmd/quickstart.py:367 +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" + +#: transforms/__init__.py:258 #, python-format msgid "" -"Error: the master file %s has already been found in the selected root path." +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart არსებულ ფაილებს თავზე არ გადააწერს." +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "ნაკვალევი [%s] მიმართული არაა." -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" + +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "ნაკვალევი [#] მიმართული არაა." + +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" + +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" + +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "წაკითხვის შეცდომა: %s, %s" + +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "ჩაწერის შეცდომა: %s, %s" + +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:396 +#: util/i18n.py:253 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:406 +#: util/osutil.py:131 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "შევქმნა Makefile? (y(დიახ)/n(არა))" +#: util/display.py:82 +msgid "skipped" +msgstr "გამოტოვებული" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "შევქმნა Windows-ის ბრძანებების ფაილი? (y(დიახ)/n(არა))" +#: util/display.py:87 +msgid "failed" +msgstr "შეცდომით" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: util/docutils.py:325 #, python-format -msgid "Creating file %s." -msgstr "ფაილის შექმნა %s." +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/docutils.py:361 #, python-format -msgid "File %s already exists, skipping." -msgstr "ფაილი %s უკვე არსებობს. ის გამოტოვებული იქნება." +msgid "unknown role name: %s" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "დასრულდა: საწყისი საქაღალდეების სტრუქტურა შეიქმნა." +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "უცნობი კვანძის ტიპი: %r" -#: cmd/quickstart.py:519 +#: util/fileutil.py:76 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:530 +#: util/docfields.py:103 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "ნაგულისხმევი როლი %s ვერ ვიპოვე" -#: cmd/quickstart.py:572 +#: util/nodes.py:462 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "მეტი ინფორმაციის მისაღებად ეწვიეთ ." - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "ჩუმი რეჟიმი" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "პროექტის საწყისი საქაღალდე" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "სტრუქტურის მორგება" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "თუ მითითებულია, კოდის და აგების საქაღალდეები ცალ-ცალკე იქნება" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "თუ მითითებულია, აგების საქაღალდე კოდის საქაღალდეში იქნება" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "პროექტის ძირითადი პარამეტრები" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "პროექტის დასახელება" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "ავტორის სახელები" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "პროექტის ვერსია" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "პროექტის რელიზი" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "დოკუმენტის ენა" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "წყაროს ფაილის სუფიქსი" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "მთავარი დოკუმენტის სახელი" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "epub-ის გამოყენება" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "გაფართოების პარამეტრები" - -#: cmd/quickstart.py:670 +#: util/nodes.py:739 #, python-format -msgid "enable %s extension" -msgstr "%s გაფართოების ჩართვა" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefile და Batchfile-ის შექმნა" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "makefile-ის შექმნა" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "წინა გვერდიდან" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "makefile-ის არ შეიქმნება" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "გრძელდება შემდეგ გვერდზე" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "batchfile-ის შექმნა" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "არაანბანური" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "batchfile-ი არ შეიქმნება" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "სიმბოლოები" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "რიცხვები" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "პროექტის ნიმუშები" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "პანელი" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "ნიმუშების საქაღალდე ნიმუშის ფაილებისთვის" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "გამოცემა" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "აღწერეთ სანიმუშე ცვლადი" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "დაშორებული გამოსახულების მიღების შეცდომა: %s [%s]" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "დაშორებული გამოსახულების მიღების შეცდომა: %s [%d]" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "უცნობი გამოსახულების ფორმატი: %s..." -#: cmd/quickstart.py:792 +#: transforms/post_transforms/__init__.py:88 msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "Invalid template variable: %s" -msgstr "არასწორი ნიმუშის ცვლადი: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "დავალების ნომერი დადებითი რიცხვი უნდა იყოს" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "ბილიკი დოკუმენტაციის კოდის ფაილებამდე" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "ბილიკი გამოტანის საქაღალდემდე" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s მიმართვის სამიზნე ვერ ვიპოვე: %s" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r მიმართვის სამიზნე ვერ ვიპოვე: %s" -#: cmd/build.py:114 -msgid "general options" -msgstr "ზოგადი პარამეტრები" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "შეწყდა!" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "ყველა ფაილის ჩაწერა (ნაგულისხმევი: მხოლოდ ახალი და შეცვლილი ფაილების ჩაწერა)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "შენახული გარემო გამოყენებული არ იქნება. ყოველთვის მოხდება ყველა ფაილის წაკითხვა" - -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:157 +#: _cli/util/errors.py:207 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "კონფიგურაციის ფაილის პარამეტრის გადაფარვა" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "მნიშვნელობის გადაცემა HTML ნიმუშებში" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "კონსოლის გამოტანის პარამეტრები" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "გვერდითი ზოლის ჩაკეცვა" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "დიაგნოსტიკური შეტყობინებების სიხშირის გაზრდა (შეგიძლიათ, გაიმეოროთ)" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "ნავიგაცია" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "stdout-ზე გამოტანილი არაფერი იქნება. მხოლოდ გაფრთხილებები, stderr-ზე" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "%(docstitle)s-ში ძებნა" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "არაფრი გამოტანა. გაფრთხილებებისაც კი" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "ამ დოკუმენტების შესახებ" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "ფერადი გამოტანის ჩართვა (ნაგულისხმევი: ავტომატურად-აღმოჩენა)" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "ძებნა" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "ფერადი გამოტანის გამორთვა (ნაგულისხმევი: ავტომატურად-აღმოჩენა)" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "საავტორო უფლებები" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "გაფრთხილებების (და შეცდომების) მითითებულ ფაილში ჩაწერა" - -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "გაფრთხილებების შეცდომად აღქმა" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "ბოლო განახლების დრო %(last_updated)s." -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "გამონაკლისისას Pdb-ის გაშვება" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "წინა თემა" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "წინა თავი" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "-a პარამეტრის და ფაილის სახელების ერთად მითითება შეუძლებელია" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "შემდეგი თემა" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "შემდეგი თავი" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "სრული ინდექსი ერთ გვერდზე" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "გვერდითი ზოლის ჩაკეცვა" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "ეს გვერდი" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "სარჩევი" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "წყაროს ჩვენება" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "ძებნა" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "სწრაფი ძებნა" #: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 #: themes/basic/searchfield.html:12 msgid "Go" msgstr "გადასვლა" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "წყაროს ჩვენება" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "შიგთავსი" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s-შ ძებნა" - #: themes/basic/defindex.html:4 msgid "Overview" msgstr "მიმოხილვა" @@ -2681,7 +2881,7 @@ msgstr "გლობალური მოდულების ინდექ msgid "quick access to all modules" msgstr "სწრაფი წვდომა ყველა მოდულთან" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "ზოგადი ინდექსი" @@ -2689,23 +2889,15 @@ msgstr "ზოგადი ინდექსი" msgid "all functions, classes, terms" msgstr "ყველა ფუნქცია, კლასი, წესი" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "ეს გვერდი" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "სარჩევი" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "სრული ინდექსი ერთ გვერდზე" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "სწრაფი ძებნა" +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s-შ ძებნა" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2715,57 +2907,6 @@ msgstr "ინდექსის გვერდები ასოების msgid "can be huge" msgstr "შეიძლება უზარმაზარი იყოს" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "წინა თემა" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "წინა თავი" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "შემდეგი თემა" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "შემდეგი თავი" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "ნავიგაცია" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "%(docstitle)s-ში ძებნა" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "ამ დოკუმენტების შესახებ" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "საავტორო უფლებები" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "ბოლო განახლების დრო %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "ძებნა" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "ძებნის დამთხვევების დამალვა" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "შიგთავსი" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "ძებნს შედეგები" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2804,22 +2945,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "ძებნა" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "ძებნის მომზადება..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "ძებნის დამთხვევების დამალვა" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2827,6 +2967,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2848,120 +2993,127 @@ msgstr "სხვა ცვლილებები" msgid "Expand sidebar" msgstr "გვერდითი ზოლის გაფართოება" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "პარამეტრები" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "ცვლადები" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "გამონაკლისები" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s () (მოდულში %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (მოდულში %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (ჩაშენებული ცვლადი)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (ჩაშენებული კლასი)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (კლასი %s-ში)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s () (%s კლასის მეთოდი)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s () (%s სტატიკური მეთოდი)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (%s თვისება)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python-ის მოდულის ინდექსი" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "მოდულები" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "მოძველებულია" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "გამონაკლისი" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "კლასის მეთოდი" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "სტატიკური მეთოდი" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "თვისება" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (მოძველებული)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "პარამეტრები" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "ცვლადები" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "გამონაკლისები" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2972,746 +3124,526 @@ msgstr "შაბლონის პარამეტრები" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "დაბრუნებული მნიშვნელობები" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" -msgstr "გაერთიანება" - -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 -msgid "member" -msgstr "წვერი" - -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 -msgid "type" -msgstr "ტიპი" - -#: domains/cpp/__init__.py:944 -msgid "concept" -msgstr "კონცეფცია" - -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 -msgid "enum" -msgstr "ჩამონათვალი" - -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 -msgid "enumerator" -msgstr "დამთვლელი" - -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 -msgid "function parameter" -msgstr "ფუნქციის პარამეტრი" - -#: domains/cpp/__init__.py:952 -msgid "template parameter" -msgstr "შაბლონის პარამეტრი" - -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 -#, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "ცვლადი" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "მაკრო" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "სტრუქტურა" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "გარემოს ცვლადი; %s" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "%s ბრძანების სტრიქონის პარამეტრი" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "ბრძანების სტრიქონის ვარიანტი" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "სარჩევის ელემენტებს წინ ცარიელი ხაზი უნდა იყოს" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "სარჩევის ელემენტები ცარიელი ხაზებით უნდა გამოყოთ" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "სარჩევის ფორმატი არასწორია. გადაამოწმეთ შეწევა" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "სარჩევის ელემენტი" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "გრამატიკის კოდი" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "მიმართვის ჭდე" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "გარემოს ცვლადი" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "პროგრამის პარამეტრი" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "დოკუმენტი" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "მოდულის ინდექსი" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "დუბლირებული %s აღწერისთვის %s. სხვა ასლი %s-შია" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "numfig გამორთულია. :numref: გამოტოვებული იქნება." - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "ბმულს წარწერა არ გააჩნია: %s" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "არასწორი numfig_format: %s (%r)" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "არასწორი numfig_format: %s" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "აღუწერელი ჭდე: %r" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "აღმოჩენილია სარჩევის ხის წრიული მიმართვები. გამოტოვებული იქნება: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "სარჩევის ხე შეიცავს მიმართვას დოკუმენტამდე %r, რომელსაც სათაური არ გააჩნია. ბმული არ შეიქმნება" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "სარჩევის ხე არ-ჩართულ დოკუმენტამდე, %r, მიმართვას შეიცავს" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "იხილეთ %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "აგრეთვე იხილეთ %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "უცნობი ინდექსის ჩანაწერის ტიპი %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "სიმბოლოები" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "გამოსახულების ფაილი წაკითხვადი არაა: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "გამოსახულების ფაილი %s წაკითხვადი არაა: %s" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "გადმოწერილი ფაილი წაკითხვადი არაა: %s" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "შეწყდა!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +msgstr "გაერთიანება" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "წვერი" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "ტიპი" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "კონცეფცია" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "ჩამონათვალი" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "დამთვლელი" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "ფუნქციის პარამეტრი" -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "შაბლონის პარამეტრი" -#: transforms/post_transforms/__init__.py:299 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s მიმართვის სამიზნე ვერ ვიპოვე: %s" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/c/__init__.py:211 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r მიმართვის სამიზნე ვერ ვიპოვე: %s" +msgid "%s (C %s)" +msgstr "%s (C %s)" -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "დაშორებული გამოსახულების მიღების შეცდომა: %s [%s]" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "ცვლადი" -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "დაშორებული გამოსახულების მიღების შეცდომა: %s [%d]" +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "მაკრო" -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." -msgstr "უცნობი გამოსახულების ფორმატი: %s..." +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "სტრუქტურა" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTML გვერდების საქაღალდეა %(outdir)s." +msgid "environment variable; %s" +msgstr "გარემოს ცვლადი; %s" -#: builders/html/__init__.py:348 +#: domains/std/__init__.py:116 #, python-format -msgid "Failed to read build info file: %r" -msgstr "აგების ინფორმაციის ფაილის წაკითხვის შეცდომა: %r" +msgid "%s; configuration value" +msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: builders/html/__init__.py:383 +#: domains/std/__init__.py:239 #, python-format msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "ინდექსი" - -#: builders/html/__init__.py:560 +#: domains/std/__init__.py:319 #, python-format -msgid "Logo of %s" -msgstr "" +msgid "%s command line option" +msgstr "%s ბრძანების სტრიქონის პარამეტრი" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "შემდეგი" +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "ბრძანების სტრიქონის ვარიანტი" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "წინა" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "სარჩევის ელემენტებს წინ ცარიელი ხაზი უნდა იყოს" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "ინდექსების გენერაცია" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "სარჩევის ელემენტები ცარიელი ხაზებით უნდა გამოყოთ" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "დამატებითი გვერდების ჩაწერა" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "სარჩევის ფორმატი არასწორია. გადაამოწმეთ შეწევა" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "სარჩევის ელემენტი" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "გადმოწერადი ფაილების კოპირება... " +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "გრამატიკის კოდი" + +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "მიმართვის ჭდე" + +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "გარემოს ცვლადი" + +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "პროგრამის პარამეტრი" + +#: domains/std/__init__.py:735 +msgid "document" +msgstr "დოკუმენტი" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "მოდულის ინდექსი" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "გადმოწერადი ფაილის %r კოპირების შეცდომა:%s" +msgid "duplicate %s description of %s, other instance in %s" +msgstr "დუბლირებული %s აღწერისთვის %s. სხვა ასლი %s-შია" + +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "numfig გამორთულია. :numref: გამოტოვებული იქნება." -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1124 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "ფაილის html_static_file-ში კოპირებს შეცდომა: %s: %r" +msgid "the link has no caption: %s" +msgstr "ბმულს წარწერა არ გააჩნია: %s" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "სტატიკური ფაილების კოპირება" +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" +msgstr "არასწორი numfig_format: %s (%r)" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1157 #, python-format -msgid "cannot copy static file %r" -msgstr "სტატიკური ფაილის %r კოპირების შეცდომა" +msgid "invalid numfig_format: %s" +msgstr "არასწორი numfig_format: %s" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "დამატებითი ფაილების კოპირება" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "აღუწერელი ჭდე: %r" -#: builders/html/__init__.py:949 +#: domains/std/__init__.py:1456 #, python-format -msgid "cannot copy extra file %r" -msgstr "დამატებითი ფაილის %r კოპირების შეცდომა" +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Failed to write build info file: %r" -msgstr "აგების ინფორმაციის ფაილის ჩაწერის შეცდომა: %r" +msgid "invalid value set (missing closing brace): %s" +msgstr "არასწორი მნიშვნელობების ნაკრები (აკლია დამხურავი ფრჩხილი): %s" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "ძებნის ინდექსის ჩატვირთვა შეუძლებელია, მაგრამ ყველა დოკუმენტის აგება არ მოხდება: ინდექსი დაუსრულებელი იქნება." +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "არასწორი მნიშვნელობების ნაკრები (აკლია გამხსნელი ფრჩხილი): %s" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "შეცდომა %s გვერდის რენდერისას.\nმიზეზი: %r" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "მაგალითი" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "ობიექტის ინვენტარის დამპი" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "მაგალითები" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "%s-ში არსებული ძებნის ინდექსის დამპი" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "საკვანძო სიტყვების არგუმენტები" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "არასწორი js_file: %r, გამოტოვებულია" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "ჩანაწერები" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "სხვა პარამეტრები" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "მითითებული math_renderer %r უცნობია." +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "იღებს" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path ჩანაწერი %r გამოტანის საქაღალდეშია" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "ბმები" -#: builders/html/__init__.py:1365 +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "გაფრთხილებები" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path ჩანაწერი %r არ არსებობს" +msgid "A mocked object is detected: %r" +msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path ჩანაწერი %r გამოტანის საქაღალდეშია" +msgid "alias of %s" +msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path ჩანაწერი %r არ არსებობს" +msgid "Bases: %s" +msgstr "ძირითადი კლასები: %s" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" -msgstr "ლოგოს ფაილი %r არ არსებობს" +msgid "invalid value for member-order option: %s" +msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" -msgstr "favicon ფაილი %r არ არსებობს" +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "%s %s დოკუმენტაცია" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeX-ის ფაილების საქაღალდეა %(outdir)s." +msgid "Would create file %s." +msgstr "შეიქმნებოდა ფაილი %s." -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "ბილიკი მოდულიდან დოკუმენტამდე" + +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "გამოცემა" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "მიმდინარეობს TeX-ის მხარდაჭერის ფაილების კოპირება" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "არსებულ ფაილებზე გადაწერა" -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "დამატებითი ფაილების კოპირება" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "უცნობი კონფიგურაციის პარამეტრი: latex_elements[%r]. გამოტოვება." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "სკრიპტის ფაილების შექმნის გარეშე გაშვება" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "უცნობი თემის პარამეტრი: latex_theme_options[%r]. გამოტოვება." +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "\"_private\" მოდულების ჩასმა" + +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "სარჩევის ფაილი არ შეიქმნება" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r-ს პარამეტრი \"theme\" არ აქვს" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r-ს \"%s\" პარამეტრი არ აქვს" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "წინა გვერდიდან" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "ფაილის სუფიქსი (ნაგულისხმევი: rst)" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "გრძელდება შემდეგ გვერდზე" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "არაანბანური" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "sphinx-quickstart-ით სრული პროექტის გენარაცია" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "რიცხვები" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "როცა მითითებულია --full, module_path-ი sys.path-ის ბოლოში მიეწერება" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "პანელი" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "პროექტის სახელი (ნაგულისხმევი: ძირითადი მოდულის სახელი)" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "საკვანძო სიტყვების არგუმენტები" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "პროექტის ავტორ(ებ)-ი. გამოიყენება, როცა მიუთითებთ პარამეტრს --full" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "არასწორი მნიშვნელობების ნაკრები (აკლია დამხურავი ფრჩხილი): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "პროექტის ვერსია. გამოიყენება, როცა მითითებულია --full" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "არასწორი მნიშვნელობების ნაკრები (აკლია გამხსნელი ფრჩხილი): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "პროექტის რელიზი. გამოიყენება, როცა მითითებულია --full. ნაგულისხმებ მნიშვნელობაა იგივე, რაც --doc-version" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "გაფართოების პარამეტრები" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "მაგალითი" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "მაგალითები" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "ჩანაწერები" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "%s საქაღალდეს არ წარმოადგენს." -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "სხვა პარამეტრები" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "იღებს" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" +msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "ბმები" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "გაფრთხილებები" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" -msgstr "სახელის %s დამუშავების შეცომა" +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" -msgstr "ობიექტის %s შემოტანის შეცდომა" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" -msgstr "autosummary_generate: ფაილი ვერ ვიპოვე: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "[autosummary] %s-ში ჩაწერა" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3719,7 +3651,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3734,481 +3666,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "rST ფაილების დასაგენერირებელიკოდის ფაილები" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "გამოტანის ჩასაწერი საქაღალდე" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "ფაილის ნაგულიხმევი სუფიქსი (ნაგულისხმევი: %(default)s)" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "მომხმარებლის ნიმუშების საქაღალდე (ნაგულისხმევი: %(default)s)" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "ბილიკი მოდულიდან დოკუმენტამდე" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "ობიექტის %s შემოტანის შეცდომა" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "autosummary_generate: ფაილი ვერ ვიპოვე: %s" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "არსებულ ფაილებზე გადაწერა" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:83 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "სკრიპტის ფაილების შექმნის გარეშე გაშვება" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "\"_private\" მოდულების ჩასმა" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "სარჩევის ფაილი არ შეიქმნება" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "ფაილის სუფიქსი (ნაგულისხმევი: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "sphinx-quickstart-ით სრული პროექტის გენარაცია" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "როცა მითითებულია --full, module_path-ი sys.path-ის ბოლოში მიეწერება" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "პროექტის სახელი (ნაგულისხმევი: ძირითადი მოდულის სახელი)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "პროექტის ავტორ(ებ)-ი. გამოიყენება, როცა მიუთითებთ პარამეტრს --full" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "პროექტის ვერსია. გამოიყენება, როცა მითითებულია --full" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "პროექტის რელიზი. გამოიყენება, როცა მითითებულია --full. ნაგულისხმებ მნიშვნელობაა იგივე, რაც --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "გაფართოების პარამეტრები" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_loader.py:193 #, python-format -msgid "%s is not a directory." -msgstr "%s საქაღალდეს არ წარმოადგენს." +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "%r-სთვის ხელმოწერის განახლების შეცდომა: პარამეტრი ვერ ვიპოვე: %s" + +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "%s-ზე აღმოჩენილია არასწორი __slots__: გამოტოვებულია." + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" +msgstr "%s-სთვის მეთოდის ხელმოწერის მიღება შეუძლებელია: %s" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to parse a default argument value for %r: %s" +msgstr "%r-სთვის ნაგულისხმევი არგუმენტის მნიშვნელობის დამუშავების შეცდომა: %s" + +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "ატრიბუტი %s ობიექტში %s აღმოჩენილი არაა" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "მეტსახელი TypeVar(%s)-სთვის" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:114 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML გვერდების საქაღალდეა %(outdir)s." -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:337 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to read build info file: %r" +msgstr "აგების ინფორმაციის ფაილის წაკითხვის შეცდომა: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "ინდექსი" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." -msgstr "შეიქმნებოდა ფაილი %s." +#: builders/html/__init__.py:578 +msgid "next" +msgstr "შემდეგი" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(%s v%s-ში)" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "წინა" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "ინდექსების გენერაცია" -#: ext/intersphinx/_resolve.py:108 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "დამატებითი გვერდების ჩაწერა" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "გადმოწერადი ფაილების კოპირება... " + +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "გადმოწერადი ფაილის %r კოპირების შეცდომა:%s" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "ფაილის html_static_file-ში კოპირებს შეცდომა: %s: %r" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "სტატიკური ფაილების კოპირება" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "სტატიკური ფაილის %r კოპირების შეცდომა" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "დამატებითი ფაილების კოპირება" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "დამატებითი ფაილის %r კოპირების შეცდომა" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "აგების ინფორმაციის ფაილის ჩაწერის შეცდომა: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "ძებნის ინდექსის ჩატვირთვა შეუძლებელია, მაგრამ ყველა დოკუმენტის აგება არ მოხდება: ინდექსი დაუსრულებელი იქნება." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "შეცდომა %s გვერდის რენდერისას.\nმიზეზი: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "ობიექტის ინვენტარის დამპი" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "%s-ში არსებული ძებნის ინდექსის დამპი" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "არასწორი js_file: %r, გამოტოვებულია" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "მითითებული math_renderer %r უცნობია." -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path ჩანაწერი %r გამოტანის საქაღალდეშია" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1370 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path ჩანაწერი %r არ არსებობს" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path ჩანაწერი %r გამოტანის საქაღალდეშია" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "" +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path ჩანაწერი %r არ არსებობს" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "" +msgid "logo file %r does not exist" +msgstr "ლოგოს ფაილი %r არ არსებობს" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "favicon ფაილი %r არ არსებობს" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "" +msgid "%s %s documentation" +msgstr "%s %s დოკუმენტაცია" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:87 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r-ს პარამეტრი \"theme\" არ აქვს" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "%r-ს \"%s\" პარამეტრი არ აქვს" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX-ის ფაილების საქაღალდეა %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 -#, python-format -msgid "Failed to get a function signature for %s: %s" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "მიმდინარეობს TeX-ის მხარდაჭერის ფაილების კოპირება" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "დამატებითი ფაილების კოპირება" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Bases: %s" -msgstr "ძირითადი კლასები: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "უცნობი კონფიგურაციის პარამეტრი: latex_elements[%r]. გამოტოვება." -#: ext/autodoc/__init__.py:1985 +#: builders/latex/__init__.py:537 #, python-format -msgid "missing attribute %s in object %s" -msgstr "ატრიბუტი %s ობიექტში %s აღმოჩენილი არაა" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "უცნობი თემის პარამეტრი: latex_theme_options[%r]. გამოტოვება." -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/toctree.py:259 #, python-format -msgid "alias of %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "მეტსახელი TypeVar(%s)-სთვის" +msgid "image file not readable: %s" +msgstr "გამოსახულების ფაილი წაკითხვადი არაა: %s" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/collectors/asset.py:126 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "%s-სთვის მეთოდის ხელმოწერის მიღება შეუძლებელია: %s" +msgid "image file %s not readable: %s" +msgstr "გამოსახულების ფაილი %s წაკითხვადი არაა: %s" -#: ext/autodoc/__init__.py:2720 +#: environment/collectors/asset.py:165 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "%s-ზე აღმოჩენილია არასწორი __slots__: გამოტოვებულია." +msgid "download file not readable: %s" +msgstr "გადმოწერილი ფაილი წაკითხვადი არაა: %s" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "%r-სთვის ნაგულისხმევი არგუმენტის მნიშვნელობის დამუშავების შეცდომა: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "აღმოჩენილია სარჩევის ხის წრიული მიმართვები. გამოტოვებული იქნება: %s <- %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "%r-სთვის ხელმოწერის განახლების შეცდომა: პარამეტრი ვერ ვიპოვე: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "სარჩევის ხე შეიცავს მიმართვას დოკუმენტამდე %r, რომელსაც სათაური არ გააჩნია. ბმული არ შეიქმნება" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "სარჩევის ხე არ-ჩართულ დოკუმენტამდე, %r, მიმართვას შეიცავს" + +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" msgstr "" + +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "იხილეთ %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "აგრეთვე იხილეთ %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "უცნობი ინდექსის ჩანაწერის ტიპი %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ko/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ko/LC_MESSAGES/sphinx.mo index 0d85ed47b894d72f36ede80496ed372f8138e626..2792bbca36bceb1f51f7874fd3dcb1cf09157a1a 100644 GIT binary patch delta 11003 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�x5? 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 J;&`XV{{gHa38nx5 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ko/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/ko/LC_MESSAGES/sphinx.po index e3bde07f9..b3ed54352 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/ko/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/ko/LC_MESSAGES/sphinx.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: YT H , 2019-2022\n" "Language-Team: Korean (http://app.transifex.com/sphinx-doc/sphinx-1/language/ko/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: ko\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python 향상 제안; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "잘못된 PEP 번호 %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "잘못된 RFC 번호 %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "검색된 테마 구성에서 %s.%s 설정이 존재하지 않습니다" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "지원하지 않는 테마 옵션 %r을(를) 설정했습니다" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "테마 경로의 %r 파일이 유효한 ZIP 파일이 아니거나 테마를 포함하지 않습니다" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "이 프로젝트에는 최소한 %s 버전의 %s 확장 기능이 필요하므로 로드 된 버전(%s)으로 빌드 할 수 없습니다." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Pygments 구문 분석기 이름 %r을(를) 확인할 수 없습니다" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "이벤트 %r이(가) 이미 존재합니다" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "알 수 없는 이벤트 이름: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "처리기 %r (이벤트 %r에 대한) 에서 예외를 발생했습니다" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "원본 디렉토리를 찾을 수 없습니다 (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "출력 디렉토리 %s은(는) 디렉토리가 아닙니다." -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "원본 디렉토리와 대상 디렉토리는 같을 수 없습니다" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx 버전 %s 실행 중" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "이 프로젝트는 최소 Sphinx 버전 %s이(가) 필요하므로 현재 버전으로 빌드할 수 없습니다." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "출력 디렉토리 만드는 중" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "확장 기능 %s 설정 중:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "현재 conf.py 파일에 정의된 'setup'은 호출 가능한 Python 객체가 아닙니다. 호출 가능한 함수가 되도록 정의를 수정하십시오.\n이것은 conf.py가 Sphinx 확장 기능으로 동작하는 데 필요합니다." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "번역을 불러오는 중 [%s]… " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "완료" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "기본 제공 메시지를 사용할 수 없습니다" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "pickle로 저장된 환경을 불러오는 중" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "실패: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "선택한 빌더가 없으므로, 기본값인 html을 사용합니다" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "%r 노드 클래스가 이미 등록되어 있으며, 방문자를 무시합니다" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "%s 확장 기능은 병렬 읽기에 안전한지 선언하지 않았으므로, 그렇지 않다고 가정합니다. 확장 기능 작성자에게 확인하고 명시하도록 요청하십시오" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "%s 확장 기능은 병렬 읽기에 안전하지 않습니다" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "%s 확장 기능은 병렬 쓰기에 안전한지 선언하지 않았으므로, 그렇지 않다고 가정합니다. 확장 기능 작성자에게 확인하고 명시하도록 요청하십시오" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "%s 확장 기능은 병렬 쓰기에 안전하지 않습니다" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "병렬 %s 처리" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "설정 디렉토리에 conf.py 파일이 없습니다 (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "빌더 클래스 %s에 \"name\" 속성이 없습니다" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "%r 빌더가 이미 존재합니다 (%s 모듈에 있음)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "빌더 이름 %s이(가) 등록되지 않았거나 진입점을 통해서만 사용할 수 있습니다" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "빌더 이름 %s이(가) 등록되지 않았습니다" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "%s 영역이 이미 등록되었습니다" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "%s 영역이 아직 등록되지 않았습니다" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "%r 지시문이 %s 영역에 이미 등록되었습니다" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "%r 역할이 %s 영역에 이미 등록되었습니다" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "%r 색인이 %s 영역에 이미 등록되었습니다" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "%r object_type이 이미 등록되었습니다" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "%r crossref_type이 이미 등록되었습니다" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r이(가) 이미 등록되었습니다" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "%r에 대한 source_parser가 이미 등록되었습니다" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "%s에 대한 소스 해석기가 등록되지 않았습니다" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "%r에 대한 변환기가 이미 존재합니다" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "add_node()에 대한 kwargs는 반드시 (visit, depart)의 함수 튜플이어야 합니다: %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r이(가) 이미 등록되었습니다" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "수식 렌더러 %s이(가) 이미 등록되었습니다" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "잘못된 구성 값을 찾았습니다: 'language = None'. 유효한 언어 코드로 구성을 업데이트하십시오. 대신 'en'(영어)을 사용합니다." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "%r 확장 기능은 Sphinx에 버전 %s 이후로 이미 병합되었습니다. 이 확장 기능은 무시됩니다." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "원래 예외:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "확장 기능 %s을(를) 가져올 수 없습니다" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "확장 기능 %r에 setup() 함수가 없습니다. Sphinx 확장 모듈이 맞습니까?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "이 프로젝트에서 사용하는 %s 확장 기능에는 최소한 Sphinx v%s이(가) 필요합니다. 따라서 이 버전으로 빌드 할 수 없습니다." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "확장 기능 %r이(가) setup() 함수에서 지원되지 않는 개체를 반환했습니다. None 또는 메타데이터 dictionary를 반환해야 합니다" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "설정 디렉토리에 conf.py 파일이 없습니다 (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "Dictionary 구성 설정 %r을(를) 재정의할 수 없으며, 무시합니다 (개별 요소를 설정하기 위해 %r 사용)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "숫자 %r이(가) 설정값 %r에 대해 유효하지 않으며, 무시합니다" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "지원되지 않는 유형의 구성 설정 %r을(를) 재정의 할 수 없으며, 무시합니다" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "재정의 중 알 수 없는 설정값 %r, 무시합니다" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "설정값 %r이(가) 이미 존재합니다" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "잘못된 구성 값을 찾았습니다: 'language = None'. 유효한 언어 코드로 구성을 업데이트하십시오. 대신 'en'(영어)을 사용합니다." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "구성 파일에 구문 오류가 있습니다: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "구성 파일(또는 가져온 모듈 중 하나)에서 sys.exit()을 호출했습니다" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,547 +538,732 @@ msgid "" "%s" msgstr "구성 파일에 프로그램 오류가 있습니다:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "제 %s 절" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "그림 %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "표 %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "예시 %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "설정값 `{name}`은(는) {candidates} 중 하나여야 하지만, `{current}`이(가) 지정되었습니다." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "설정값 `{name}'은(는) `{current.__name__}' 유형이지만, {permitted} 유형을 기대했습니다." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "설정값 `{name}'은(는) `{current.__name__}' 유형이지만, 기본값은 `{default.__name__}'입니다." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r(이)가 없으므로, 무시합니다." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Pygments 구문 분석기 이름 %r을(를) 확인할 수 없습니다" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "새로운 설정" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "검색된 테마 구성에서 %s.%s 설정이 존재하지 않습니다" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "설정이 변경됨" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "지원하지 않는 테마 옵션 %r을(를) 설정했습니다" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "확장 기능이 변경됨" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "테마 경로의 %r 파일이 유효한 ZIP 파일이 아니거나 테마를 포함하지 않습니다" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "빌드 환경 버전이 최신이 아님" -#: theming.py:228 -#, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "원본 디렉토리가 변경됨" -#: theming.py:268 +#: environment/__init__.py:350 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:355 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:282 +#: environment/__init__.py:361 #, python-format -msgid "The %r theme has too many ancestors" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:310 -#, python-format -msgid "no theme configuration file found in %r" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "이 환경은 선택한 빌더와 호환되지 않습니다. 다른 doctree 디렉토리를 선택하십시오." -#: theming.py:335 theming.py:388 +#: environment/__init__.py:518 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "%s에서 문서를 탐색하지 못했습니다: %r" -#: theming.py:339 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "%r 영역이 등록되지 않았습니다" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "문서가 어느 toctree에도 포함되어 있지 않음" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "자체 참조된 toctree가 발견되었습니다. 무시합니다." -#: theming.py:366 +#: environment/__init__.py:952 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "이벤트 %r이(가) 이미 존재합니다" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "주의" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "알 수 없는 이벤트 이름: %s" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "조심" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "처리기 %r (이벤트 %r에 대한) 에서 예외를 발생했습니다" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "위험" -#: project.py:72 +#: locale/__init__.py:232 +msgid "Error" +msgstr "오류" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "힌트" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "중요" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "참고" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "더 보기" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "팁" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "경고" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo 파일은 %(outdir)s에 있습니다." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nmakeinfo를 통해 작업하려면 해당 디렉토리에서 'make'를 실행하십시오\n(자동으로 수행하려면 여기에서 'make info'를 사용하십시오)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "\"texinfo_documents\" 설정값이 없으므로, 문서를 작성하지 않습니다" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "빌더 클래스 %s에 \"name\" 속성이 없습니다" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "\"texinfo_documents\" 설정값이 알 수 없는 문서 %s을(를) 참조합니다" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "%r 빌더가 이미 존재합니다 (%s 모듈에 있음)" +msgid "processing %s" +msgstr "%s 처리 중" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "빌더 이름 %s이(가) 등록되지 않았거나 진입점을 통해서만 사용할 수 있습니다" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "작성 중" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "빌더 이름 %s이(가) 등록되지 않았습니다" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "참조 처리 중…" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "%s 영역이 이미 등록되었습니다" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (문서 " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "%s 영역이 아직 등록되지 않았습니다" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "이미지를 복사하는 중… " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "%r 지시문이 %s 영역에 이미 등록되었습니다" +msgid "cannot copy image file %r: %s" +msgstr "이미지 파일 %r을(를) 복사할 수 없습니다: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "%r 역할이 %s 영역에 이미 등록되었습니다" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "Texinfo 지원 파일을 복사하는 중" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "%r 색인이 %s 영역에 이미 등록되었습니다" +msgid "error writing file Makefile: %s" +msgstr "Makefile 쓰기 오류: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "%r object_type이 이미 등록되었습니다" +msgid "The manual pages are in %(outdir)s." +msgstr "매뉴얼 페이지는 %(outdir)s에 있습니다." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "%r crossref_type이 이미 등록되었습니다" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "\"man_pages\" 설정값이 없으므로, 매뉴얼 페이지를 작성하지 않습니다" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r이(가) 이미 등록되었습니다" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" 설정값이 알 수 없는 문서 %s을(를) 참조합니다" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "%r에 대한 source_parser가 이미 등록되었습니다" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML 페이지는 %(outdir)s에 있습니다." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "%s에 대한 소스 해석기가 등록되지 않았습니다" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "단일 문서 조합 중" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "%r에 대한 변환기가 이미 존재합니다" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "추가 파일 작성 중" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "add_node()에 대한 kwargs는 반드시 (visit, depart)의 함수 튜플이어야 합니다: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "더미 빌더는 파일을 생성하지 않습니다." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r이(가) 이미 등록되었습니다" +msgid "The message catalogs are in %(outdir)s." +msgstr "메시지 카탈로그는 %(outdir)s에 있습니다." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "수식 렌더러 %s이(가) 이미 등록되었습니다" +msgid "building [%s]: " +msgstr "빌드 중 [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "%r 확장 기능은 Sphinx에 버전 %s 이후로 이미 병합되었습니다. 이 확장 기능은 무시됩니다." +msgid "targets for %d template files" +msgstr "%d 개의 템플릿 파일 대상" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "원래 예외:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "템플릿을 읽는 중… " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "확장 기능 %s을(를) 가져올 수 없습니다" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "메시지 카탈로그 작성 중… " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "확장 기능 %r에 setup() 함수가 없습니다. Sphinx 확장 모듈이 맞습니까?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "위의 출력 또는 %(outdir)s/output.txt 파일에서 오류를 확인하십시오" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "이 프로젝트에서 사용하는 %s 확장 기능에는 최소한 Sphinx v%s이(가) 필요합니다. 따라서 이 버전으로 빌드 할 수 없습니다." +msgid "broken link: %s (%s)" +msgstr "끊어진 링크: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "확장 기능 %r이(가) setup() 함수에서 지원되지 않는 개체를 반환했습니다. None 또는 메타데이터 dictionary를 반환해야 합니다" +msgid "Anchor '%s' not found" +msgstr "앵커 '%s'을(를) 찾을 수 없습니다" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" - -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "linkcheck_allowed_redirects에서 정규식을 컴파일하지 못했습니다: %r %s" -#: roles.py:251 +#: builders/epub3.py:83 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "ePub 파일은 %(outdir)s에 있습니다." -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" -msgstr "" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "nav.xhtml 파일 쓰는 중…" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python 향상 제안; PEP %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "설정값 \"epub_language\"(또는 \"language\")는 EPUB3의 경우 비워 둘 수 없습니다" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" -msgstr "잘못된 PEP 번호 %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "설정값 \"epub_uid\"는 EPUB3의 경우 XML 이름이어야 합니다" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" -msgstr "잘못된 RFC 번호 %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "설정값 \"epub_title\"은 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[소스]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "설정값 \"epub_author\"는 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "모듈 코드 강조 중… " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "설정값 \"epub_contributor\"는 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[문서]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "설정값 \"epub_description\"은 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "모듈 코드" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "설정값 \"epub_publisher\"는 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

%s의 소스 코드

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "설정값 \"epub_copyright\"(또는 \"copyright\")는 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "개요: 모듈 코드" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "설정값 \"epub_identifier\"는 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

코드를 확인할 수 있는 모든 모듈

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "설정값 \"version\"은 EPUB3의 경우 비워 둘 수 없습니다" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "하드코딩 된 링크 %r은(는) extlink로 대체할 수 있습니다 (대신 %r을(를) 사용해 보십시오)" +msgid "invalid css_file: %r, ignored" +msgstr "잘못된 css_file: %r, 무시합니다" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "XML 파일은 %(outdir)s에 있습니다." -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "중복 레이블 %s, 다른 인스턴스는 %s에 있음" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "" +msgid "error writing file %s: %s" +msgstr "%s 파일 쓰기 오류: %s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== 가장 느린 읽기 시간 =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "의사 XML 파일은 %(outdir)s에 있습니다." -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "'%s' 옵션에 '+'나 '-'가 없습니다." +msgid "duplicated ToC entry found: %s" +msgstr "중복된 목차 항목 발견: %s" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s'은(는) 유효한 옵션이 아닙니다." +msgid "cannot read image file %r: copying it instead" +msgstr "이미지 파일 %r을(를) 읽을 수 없으며, 대신 복사합니다" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s'은(는) 유효한 pyversion 옵션이 아닙니다" +msgid "cannot write image file %r: %s" +msgstr "이미지 파일 %r을(를) 기록할 수 없습니다: %s" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "잘못된 TestCode 유형" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow를 찾을 수 없습니다 - 이미지 파일을 복사합니다" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "소스에서 doctest 테스트가 완료되었으며, %(outdir)s/output.txt 에서 결과를 확인하십시오." +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "mimetype 파일 쓰는 중…" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "META-INF/container.xml 파일 쓰는 중…" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "content.opf 파일 쓰는 중…" -#: ext/doctest.py:457 +#: builders/_epub_base.py:594 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "%s 블록(%s:%s)에 코드/출력 없음" +msgid "unknown mimetype for %s, ignoring" +msgstr "%s은(는) 알 수 없는 MIME 유형이며, 무시합니다" -#: ext/doctest.py:568 +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "toc.ncx 파일 쓰는 중…" + +#: builders/_epub_base.py:802 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "잘못된 doctest 코드 무시: %r" +msgid "writing %s file..." +msgstr "%s 파일을 기록하는 중…" -#: ext/imgmath.py:162 +#: builders/text.py:27 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "LaTeX 명령 %r을(를) 실행할 수 없습니다 (수식 표시에 필요). imgmath_latex 설정을 확인하십시오" +msgid "The text files are in %(outdir)s." +msgstr "텍스트 파일은 %(outdir)s에 있습니다." -#: ext/imgmath.py:181 +#: builders/__init__.py:229 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s 명령 %r을(를) 실행할 수 없습니다 (수식 표시에 필요). imgmath_%s 설정을 확인하십시오" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "%s 빌더에 적합한 이미지를 찾을 수 없음: %s (%s)" -#: ext/imgmath.py:344 +#: builders/__init__.py:237 #, python-format -msgid "display latex %r: %s" -msgstr "표시 LaTeX %r: %s" +msgid "a suitable image for %s builder not found: %s" +msgstr "%s 빌더에 적합한 이미지를 찾을 수 없음: %s" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "빌드 중 [mo]: " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "출력을 쓰는 중… " -#: ext/imgmath.py:380 +#: builders/__init__.py:280 #, python-format -msgid "inline latex %r: %s" -msgstr "인라인 LaTeX %r: %s" +msgid "all of %d po files" +msgstr "모든 %d 개의 po 파일" -#: ext/coverage.py:48 +#: builders/__init__.py:302 #, python-format -msgid "invalid regex %r in %s" -msgstr "잘못된 정규식 %r (%s에서)" +msgid "targets for %d po files that are specified" +msgstr "지정된 %d 개의 po 파일 대상" -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:314 #, python-format -msgid "module %s could not be imported: %s" -msgstr "%s 모듈을 가져올 수 없습니다: %s" +msgid "targets for %d po files that are out of date" +msgstr "오래된 %d 개의 po 파일 대상" -#: ext/coverage.py:148 +#: builders/__init__.py:324 +msgid "all source files" +msgstr "모든 원본 파일" + +#: builders/__init__.py:335 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/coverage.py:158 +#: builders/__init__.py:342 +#, python-format msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "명령줄에 지정된 파일 %r이(가) 원본 디렉토리에 있지 않으므로, 무시합니다" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/coverage.py:187 +#: builders/__init__.py:366 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "coverage_c_regexes의 잘못된 정규표현식 %r" +msgid "%d source files given on command line" +msgstr "명령줄에 지정된 %d 개의 원본 파일" -#: ext/coverage.py:260 +#: builders/__init__.py:382 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "문서화되지 않은 C API: %s [%s], 파일 %s" +msgid "targets for %d source files that are out of date" +msgstr "오래된 %d 개의 원본 파일 대상" -#: ext/coverage.py:452 -#, python-format -msgid "undocumented python function: %s :: %s" -msgstr "문서화되지 않은 Python 함수: %s :: %s" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "오래된 파일을 찾는 중… " -#: ext/coverage.py:473 +#: builders/__init__.py:415 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "문서화되지 않은 Python 클래스: %s :: %s" +msgid "%d found" +msgstr "%d 개 찾음" -#: ext/coverage.py:492 +#: builders/__init__.py:417 +msgid "none found" +msgstr "찾은 것이 없음" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "pickle로 환경을 저장하는 중" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "일관성 확인 중" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "오래된 대상이 없습니다." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "환경을 갱신하는 중: " + +#: builders/__init__.py:499 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "문서화되지 않은 Python 메소드: %s :: %s :: %s" +msgid "%s added, %s changed, %s removed" +msgstr "%s 개 추가됨, %s 개 변경됨, %s 개 제거됨" -#: ext/imgconverter.py:44 +#: builders/__init__.py:536 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "이미지 변환 명령 %r을(를) 실행할 수 없습니다. 'sphinx.ext.imgconverter'에는 기본적으로 ImageMagick이 필요합니다. 해당 프로그램이 설치되어 있는지 확인하거나, 'image_converter' 옵션을 사용자 정의 변환 명령으로 설정하십시오.\n\n역추적: %s" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:545 #, python-format msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "convert가 오류와 함께 종료되었습니다:\n[stderr]\n%r\n[stdout]\n%r" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" -#: ext/imgconverter.py:83 +#: builders/__init__.py:556 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "변환 명령 %r을(를) 실행할 수 없습니다. image_converter 설정을 확인하십시오." +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "원본을 읽는 중… " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "기록할 문서 이름: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "문서 준비 중" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "개요 파일은 %(outdir)s에 있습니다." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "버전 %s에는 변경 사항이 없습니다." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "요약 파일 작성 중…" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "내장" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "모듈 수준" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "원본 파일을 복사하는 중…" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "변경 로그 생성을 위해 %r을(를) 읽을 수 없습니다" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "잘못된 정규식 %r (%s에서)" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "%s 모듈을 가져올 수 없습니다: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "coverage_c_regexes의 잘못된 정규표현식 %r" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "문서화되지 않은 C API: %s [%s], 파일 %s" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "문서화되지 않은 Python 함수: %s :: %s" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "문서화되지 않은 Python 클래스: %s :: %s" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "문서화되지 않은 Python 메소드: %s :: %s :: %s" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "하드코딩 된 링크 %r은(는) extlink로 대체할 수 있습니다 (대신 %r을(를) 사용해 보십시오)" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "할 일" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "TODO 항목 발견: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<<원래 항목>>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<<원래 항목>>은 %s 파일, %d 행에 있습니다.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "원래 항목" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "이미지 변환 명령 %r을(를) 실행할 수 없습니다. 'sphinx.ext.imgconverter'에는 기본적으로 ImageMagick이 필요합니다. 해당 프로그램이 설치되어 있는지 확인하거나, 'image_converter' 옵션을 사용자 정의 변환 명령으로 설정하십시오.\n\n역추적: %s" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "convert가 오류와 함께 종료되었습니다:\n[stderr]\n%r\n[stdout]\n%r" + +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "변환 명령 %r을(를) 실행할 수 없습니다. image_converter 설정을 확인하십시오." #: ext/graphviz.py:138 msgid "Graphviz directive cannot have both content and a filename argument" @@ -864,1780 +1329,1515 @@ msgstr "[그래프: %s]" msgid "[graph]" msgstr "[그래프]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "할 일" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "LaTeX 명령 %r을(를) 실행할 수 없습니다 (수식 표시에 필요). imgmath_latex 설정을 확인하십시오" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" -msgstr "TODO 항목 발견: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s 명령 %r을(를) 실행할 수 없습니다 (수식 표시에 필요). imgmath_%s 설정을 확인하십시오" -#: ext/todo.py:152 -msgid "<>" -msgstr "<<원래 항목>>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "표시 LaTeX %r: %s" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<<원래 항목>>은 %s 파일, %d 행에 있습니다.)" +msgid "inline latex %r: %s" +msgstr "인라인 LaTeX %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "원래 항목" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "내어쓰기에 의해 비 공백 문자가 제거됨" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "'%s' 옵션에 '+'나 '-'가 없습니다." -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" -msgstr "잘못된 캡션: %s" +msgid "'%s' is not a valid option." +msgstr "'%s'은(는) 유효한 옵션이 아닙니다." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "줄 번호 지정이 범위를 벗어남 (1-%d): %r" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s'은(는) 유효한 pyversion 옵션이 아닙니다" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "잘못된 TestCode 유형" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "\"%s\"과(와) \"%s\" 옵션을 모두 사용할 수 없습니다" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "소스에서 doctest 테스트가 완료되었으며, %(outdir)s/output.txt 에서 결과를 확인하십시오." -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +msgid "no code/output in %s block at %s:%s" +msgstr "%s 블록(%s:%s)에 코드/출력 없음" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +msgid "ignoring invalid doctest code: %r" +msgstr "잘못된 doctest 코드 무시: %r" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "포함 파일 %r에서 이름이 %r 인 객체를 찾을 수 없습니다" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "분리된 \"lines\" 집합과 함께 \"lineno-match\"를 사용할 수 없습니다" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "중복 레이블 %s, 다른 인스턴스는 %s에 있음" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "행 지정 %r: 포함 파일 %r에서 가져온 줄이 없습니다" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "csv-table 지시문의 \":file:\" 옵션은 이제 절대 경로를 소스 디렉토리의 상대 경로로 인식합니다. 문서를 업데이트하십시오." +"====================== total reading duration ==========================" +msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "toctree glob 패턴 %r 이(가) 어느 문서와도 일치하지 않습니다" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree에 제외된 문서 %r에 대한 참조가 있음" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== 가장 느린 읽기 시간 =======================" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree에 존재하지 않는 문서 %r에 대한 참조가 있음" +msgid "%.3fs %s" +msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "toctree에서 중복 항목이 발견됨: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[소스]" -#: directives/other.py:203 -msgid "Section author: " -msgstr "구역 작성자: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "모듈 코드 강조 중… " -#: directives/other.py:205 -msgid "Module author: " -msgstr "모듈 작성자: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[문서]" -#: directives/other.py:207 -msgid "Code author: " -msgstr "코드 작성자: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "모듈 코드" -#: directives/other.py:209 -msgid "Author: " -msgstr "작성자: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s의 소스 코드

" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr ".. acks 내용이 목록이 아닙니다" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "개요: 모듈 코드" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr ".. hlist 내용이 목록이 아닙니다" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

코드를 확인할 수 있는 모든 모듈

" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "개요 파일은 %(outdir)s에 있습니다." +msgid "duplicate citation %s, other instance in %s" +msgstr "중복 인용 %s, 다른 인스턴스는 %s에 있음" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." -msgstr "버전 %s에는 변경 사항이 없습니다." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "요약 파일 작성 중…" - -#: builders/changes.py:70 -msgid "Builtins" -msgstr "내장" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "모듈 수준" - -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "원본 파일을 복사하는 중…" +msgid "Citation [%s] is not referenced." +msgstr "인용 [%s]이(가) 참조되지 않았습니다." -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" -msgstr "변경 로그 생성을 위해 %r을(를) 읽을 수 없습니다" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "중복 레이블의 수식 %s, 다른 인스턴스는 %s에 있음" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "매뉴얼 페이지는 %(outdir)s에 있습니다." +msgid "Invalid math_eqref_format: %r" +msgstr "잘못된 math_eqref_format: %r" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "\"man_pages\" 설정값이 없으므로, 매뉴얼 페이지를 작성하지 않습니다" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (내장 함수)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "작성 중" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s 메서드)" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" 설정값이 알 수 없는 문서 %s을(를) 참조합니다" +msgid "%s() (class)" +msgstr "%s() (클래스)" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "%s 빌더에 적합한 이미지를 찾을 수 없음: %s (%s)" +msgid "%s (global variable or constant)" +msgstr "%s (전역 변수 또는 상수)" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "%s 빌더에 적합한 이미지를 찾을 수 없음: %s" +msgid "%s (%s attribute)" +msgstr "%s (%s의 속성)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "빌드 중 [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "인수" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "출력을 쓰는 중… " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "예외" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "모든 %d 개의 po 파일" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "반환" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "지정된 %d 개의 po 파일 대상" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "반환 형식" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "오래된 %d 개의 po 파일 대상" +msgid "%s (module)" +msgstr "%s (모듈)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "모든 원본 파일" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "함수" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "메서드" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "명령줄에 지정된 파일 %r이(가) 원본 디렉토리에 있지 않으므로, 무시합니다" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "클래스" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "데이터" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "명령줄에 지정된 %d 개의 원본 파일" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "속성" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "오래된 %d 개의 원본 파일 대상" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "모듈" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " -msgstr "빌드 중 [%s]: " - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "오래된 파일을 찾는 중… " +msgid "duplicate %s description of %s, other %s in %s" +msgstr "중복된 %s 설명 (%s에 대한), 다른 항목은 %s (%s)에 있음" -#: builders/__init__.py:410 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "%d found" -msgstr "%d 개 찾음" - -#: builders/__init__.py:412 -msgid "none found" -msgstr "찾은 것이 없음" +msgid "%s (directive)" +msgstr "%s (지시문)" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "pickle로 환경을 저장하는 중" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s: (지시문 옵션)" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "일관성 확인 중" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (역할)" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "오래된 대상이 없습니다." +#: domains/rst.py:234 +msgid "directive" +msgstr "지시문" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "환경을 갱신하는 중: " +#: domains/rst.py:235 +msgid "directive-option" +msgstr "지시문 옵션" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s 개 추가됨, %s 개 변경됨, %s 개 제거됨" +#: domains/rst.py:236 +msgid "role" +msgstr "역할" -#: builders/__init__.py:531 +#: domains/rst.py:262 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "중복된 %s %s 설명, 다른 인스턴스는 %s에 있음" -#: builders/__init__.py:540 +#: domains/changeset.py:32 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid "Changed in version %s" +msgstr "버전 %s에서 변경" -#: builders/__init__.py:558 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "원본을 읽는 중… " +msgid "Deprecated since version %s" +msgstr "버전 %s부터 폐지됨" -#: builders/__init__.py:713 +#: domains/changeset.py:35 #, python-format -msgid "docnames to write: %s" -msgstr "기록할 문서 이름: %s" - -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" - -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "문서 준비 중" - -#: builders/__init__.py:731 -msgid "copying assets" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:883 +#: domains/__init__.py:322 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "디코드 할 수 없는 원본 문자이며, \"?\"로 대체합니다: %r" +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "ePub 파일은 %(outdir)s에 있습니다." +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "작업 숫자는 양수여야 합니다" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "nav.xhtml 파일 쓰는 중…" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "자세한 내용은 를 참조하십시오." -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "설정값 \"epub_language\"(또는 \"language\")는 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "설정값 \"epub_uid\"는 EPUB3의 경우 XML 이름이어야 합니다" - -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "설정값 \"epub_title\"은 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "설정값 \"epub_author\"는 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "설정값 \"epub_contributor\"는 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "설정값 \"epub_description\"은 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "설정값 \"epub_publisher\"는 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "설정값 \"epub_copyright\"(또는 \"copyright\")는 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "설정값 \"epub_identifier\"는 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "설정값 \"version\"은 EPUB3의 경우 비워 둘 수 없습니다" - -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "잘못된 css_file: %r, 무시합니다" - -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XML 파일은 %(outdir)s에 있습니다." - -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "%s 파일 쓰기 오류: %s" - -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "의사 XML 파일은 %(outdir)s에 있습니다." - -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfo 파일은 %(outdir)s에 있습니다." - -#: builders/texinfo.py:48 +#: cmd/build.py:74 msgid "" "\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nmakeinfo를 통해 작업하려면 해당 디렉토리에서 'make'를 실행하십시오\n(자동으로 수행하려면 여기에서 'make info'를 사용하십시오)." - -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "\"texinfo_documents\" 설정값이 없으므로, 문서를 작성하지 않습니다" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "\"texinfo_documents\" 설정값이 알 수 없는 문서 %s을(를) 참조합니다" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "%s 처리 중" - -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "참조 처리 중…" - -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (문서 " - -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "이미지를 복사하는 중… " - -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "이미지 파일 %r을(를) 복사할 수 없습니다: %s" - -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "Texinfo 지원 파일을 복사하는 중" - -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "Makefile 쓰기 오류: %s" - -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "중복된 목차 항목 발견: %s" - -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "이미지 파일 %r을(를) 읽을 수 없으며, 대신 복사합니다" - -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "이미지 파일 %r을(를) 기록할 수 없습니다: %s" - -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow를 찾을 수 없습니다 - 이미지 파일을 복사합니다" - -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "mimetype 파일 쓰는 중…" - -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "META-INF/container.xml 파일 쓰는 중…" - -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "content.opf 파일 쓰는 중…" - -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "%s은(는) 알 수 없는 MIME 유형이며, 무시합니다" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" - -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "toc.ncx 파일 쓰는 중…" - -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "%s 파일을 기록하는 중…" - -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "더미 빌더는 파일을 생성하지 않습니다." - -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "메시지 카탈로그는 %(outdir)s에 있습니다." - -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "%d 개의 템플릿 파일 대상" - -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "템플릿을 읽는 중… " - -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "메시지 카탈로그 작성 중… " - -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML 페이지는 %(outdir)s에 있습니다." - -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "단일 문서 조합 중" - -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "추가 파일 작성 중" - -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "위의 출력 또는 %(outdir)s/output.txt 파일에서 오류를 확인하십시오" - -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "끊어진 링크: %s (%s)" - -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "앵커 '%s'을(를) 찾을 수 없습니다" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\n소스 파일로부터 문서를 생성합니다.\n\nsphinx-build는 SOURCEDIR에 있는 파일로부터 문서를 생성하여 OUTPUTDIR에 저장합니다.\n구성 설정을 위해 SOURCEDIR에서 'conf.py' 파일을 찾습니다.\n'sphinx-quickstart' 도구는 'conf.py'를 포함하여 템플릿 파일을 생성하는 데 사용할 수 있습니다.\n\nsphinx-build는 다양한 형식으로 문서를 생성할 수 있습니다.\n형식은 명령줄에서 빌더 이름을 지정하여 선택하며, 기본값은 HTML입니다.\n빌더는 문서 처리와 관련한 다른 태스크를 수행할 수도 있습니다.\n\n기본적으로 오래된 모든 항목을 빌드합니다.\n개별 파일명을 지정하여 선택한 파일에 대한 출력만 빌드할 수 있습니다.\n" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "linkcheck_allowed_redirects에서 정규식을 컴파일하지 못했습니다: %r %s" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "문서 원본 파일의 경로" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "텍스트 파일은 %(outdir)s에 있습니다." +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "출력 디렉토리 경로" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/build.py:109 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "번역된 메시지의 각주 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "번역된 메시지의 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" +#: cmd/build.py:114 +msgid "general options" +msgstr "일반 옵션" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "번역된 메시지의 인용 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/build.py:131 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "번역된 메시지의 용어 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%Y년 %m월 %d일" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "모든 파일 기록 (기본값: 새 파일과 변경된 파일만 기록)" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "저장된 환경을 사용하지 않고, 항상 모든 파일 읽기" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/build.py:157 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "4 개 열 기반 색인을 찾았습니다. 사용하고 있는 확장 기능의 버그일 수 있습니다: %r" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "각주 [%s]이(가) 참조되지 않았습니다." +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "각주 [#]이 참조되지 않았습니다." +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "구성 파일의 설정 무시" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "HTML 템플릿에 값 전달" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "태그를 정의: 태그가 있는 \"only\" 블록을 포함" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/build.py:212 +msgid "console output options" +msgstr "콘솔 출력 옵션" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "상세도 높임 (반복 가능)" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "stdout에 출력하지 않고, stderr에 경고만 표시" -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "경고를 포함하여 아무 출력도 하지 않음" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "컬러 출력 허용 (기본값: 자동 감지)" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "컬러 출력을 허용하지 않음 (기본값: 자동 감지)" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "주어진 파일에 경고(및 오류)를 기록" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "경고를 오류로 바꿈" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "예외 발생 시 전체 추적 표시" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "예외 발생 시 Pdb 실행" -#: _cli/__init__.py:231 -msgid "" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "-a 옵션과 파일 이름을 함께 사용할 수 없습니다" -#: environment/__init__.py:86 -msgid "new config" -msgstr "새로운 설정" +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" +msgstr "" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "설정이 변경됨" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-D 옵션 인수는 name=value 형식이어야 합니다" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "확장 기능이 변경됨" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-A 옵션 인수는 name=value 형식이어야 합니다" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "빌드 환경 버전이 최신이 아님" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "모듈에서 자동으로 docstring 삽입" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "원본 디렉토리가 변경됨" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "doctest 블록의 코드 조각을 자동으로 테스트" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "다른 프로젝트의 Sphinx 문서 간 링크" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "빌드 시 표시하거나 숨길 수 있는 \"할 일\" 항목 작성" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "문서의 커버리지 확인" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "이 환경은 선택한 빌더와 호환되지 않습니다. 다른 doctree 디렉토리를 선택하십시오." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "PNG나 SVG 이미지로 렌더링 된 수식 포함" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "%s에서 문서를 탐색하지 못했습니다: %r" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "MathJax로 브라우저에서 렌더링 하는 수식 포함" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "%r 영역이 등록되지 않았습니다" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "설정값을 기반으로 콘텐츠를 조건부 포함" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "문서가 어느 toctree에도 포함되어 있지 않음" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "문서화 된 Python 객체의 소스 코드에 대한 링크 포함" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "자체 참조된 toctree가 발견되었습니다. 무시합니다." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "GitHub 페이지에 문서를 게시하기 위해 .nojekyll 파일 생성" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "유효한 경로 이름을 입력하십시오." -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "읽기 오류: %s, %s" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "텍스트를 입력하십시오." -#: util/i18n.py:113 +#: cmd/quickstart.py:134 #, python-format -msgid "writing error: %s, %s" -msgstr "쓰기 오류: %s, %s" +msgid "Please enter one of %s." +msgstr "%s 중 하나를 입력하십시오." -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "'y' 또는 'n'을 입력하십시오." -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "파일 접미사를 입력하십시오 (예: '.rst' 또는 '.txt')." -#: util/i18n.py:245 +#: cmd/quickstart.py:230 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "잘못된 날짜 형식입니다. 바로 출력하려면 작은 따옴표로 문자열을 인용하십시오: %s" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Sphinx %s 빠른 시작 유틸리티에 오신 것을 환영합니다." -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:235 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "%s 영역에서 문제 발생: 필드가 '%s' 역할을 사용해야 하지만, 해당 역할이 도메인에 없습니다." +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "다음 설정에 대한 값을 입력하십시오 (대괄호로 묶여 있는 기본값이 존재하고\n이 값을 사용하려면 바로 Enter를 누릅니다)." -#: util/nodes.py:423 +#: cmd/quickstart.py:242 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" +msgid "Selected root path: %s" +msgstr "선택한 루트 경로: %s" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree에 존재하지 않는 파일 %r에 대한 참조가 있음" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "문서의 루트 경로를 입력하십시오." -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "only 지시문 식을 평가하는 동안 예외 발생: %s" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "문서의 루트 경로" -#: util/display.py:82 -msgid "skipped" -msgstr "건너뜀" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "오류: 선택한 루트 경로에서 기존 conf.py 파일이 발견되었습니다." -#: util/display.py:87 -msgid "failed" -msgstr "실패" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart는 기존 Sphinx 프로젝트를 덮어 쓰지 않습니다." -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "새 루트 경로를 입력하십시오 (또는 Enter를 눌러 종료)" + +#: cmd/quickstart.py:274 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Sphinx 출력을 위한 빌드 디렉토리를 배치하는 두 가지 옵션이 있습니다.\n루트 경로 내에서 \"_build\" 디렉토리를 사용하거나, 루트 경로 내에서\n\"source\"와 \"build\" 디렉토리로 분리합니다." -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "원본과 빌드 디렉토리 분리 (y/n)" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "루트 디렉토리 내에 두 개의 추가 디렉토리가 생성됩니다. 사용자 정의 HTML 템플릿의\n경우 \"_templates\", 사용자 정의 스타일시트 및 기타 정적 파일의 경우 \"_static\"\n입니다. 다른 접두사(\".\" 과 같은)를 입력하여 밑줄 문자를 변경할 수 있습니다." -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "알 수 없는 노드 유형: %r" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "템플릿 및 정적 디렉토리의 이름 접두사" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +"The project name will occur in several places in the built documentation." +msgstr "프로젝트 이름은 빌드 된 문서의 여러 위치에 표시됩니다." -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "기본 역할 %s을(를) 찾을 수 없음" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "프로젝트 이름" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "작성자 이름" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx는 소프트웨어에 대한 \"버전\"과 \"릴리스\"라는 개념을 가지고 있습니다.\n각 버전에는 여러 릴리스가 있을 수 있습니다. 예를 들어 Python의 경우 버전은\n2.5나 3.0과 같은 반면 릴리스는 2.5.1 또는 3.0a1과 같습니다.\n이러한 이중 구조가 필요하지 않으면 둘 다 동일한 값으로 설정하십시오." -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "각주" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "프로젝트 버전" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[그림: %s]" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "프로젝트 릴리스" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[그림]" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "문서를 영어 이외의 언어로 작성하려는 경우, 여기에서 해당 언어 코드로 언어를\n선택할 수 있습니다. 그러면 Sphinx가 생성한 텍스트를 해당 언어로 번역합니다.\n\n지원되는 코드 목록은\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language\n를 참조하십시오." -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "색인" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "프로젝트 언어" -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:340 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "구역, 주제, 표, 조언, 사이드바 안에 있지 않은 제목 노드가 발견됨" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." +msgstr "원본 파일의 파일 이름 접미사. 일반적으로 \".txt\" 또는 \".rst\" 입니다. 이 접미사가\n있는 파일만 문서로 간주됩니다." -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "캡션이 그림 안에 있지 않습니다." +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "원본 파일 접미사" -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "구현되지 않은 노드 유형: %r" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "한 문서는 \"컨텐츠 트리\"의 최상위 노드, 즉 문서 계층 구조의 루트로 간주된다는\n점에서 특별합니다. 일반적으로 이 값은 \"index\" 이지만, \"index\" 문서가\n사용자 정의 템플릿일 경우 이를 다른 파일 이름으로 설정할 수도 있습니다." -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "알 수 없는 %r toplevel_sectioning (클래스 %r)" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "마스터 문서의 이름 (접미사 없이)" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: cmd/quickstart.py:368 #, python-format -msgid "no Babel option known for language %r" -msgstr "%r 언어에 대해 알려진 Babel 옵션이 없습니다" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth:가 너무 크며, 무시합니다." +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "오류: 선택한 루트 경로에 마스터 파일 %s이(가) 이미 있습니다." -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart는 기존 파일을 덮어 쓰지 않습니다." -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "문서 제목이 단일 텍스트 노드가 아님" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "새 파일 이름을 입력하거나 기존 파일의 이름을 바꾸고, Enter를 누르십시오" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "다음 Sphinx 확장 기능 중 사용 설정해야 하는 항목을 지정하십시오:" -#: writers/latex.py:1183 +#: cmd/quickstart.py:397 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "tabularcolumns와 :widths: 옵션이 모두 설정되었습니다. :widths:는 무시됩니다." - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "치수 단위 %s이(가) 잘못되었습니다. 무시합니다." +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "참고: imgmath와 mathjax는 동시에 활성화 할 수 없습니다. imgmath가 선택 취소되었습니다." -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "알 수 없는 색인 항목 유형 %s이(가) 발견됨" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Makefile 및 Windows 명령 파일을 생성할 수 있으므로, sphinx-build를 직접 호출하는\n대신 (예를 들어) `make html'을 실행하기만 하면 됩니다." -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "잘못된 math_eqref_format: %r" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Makefile을 만드시겠습니까? (y/n)" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Windows 명령 파일을 만드시겠습니까? (y/n)" -#: writers/html5.py:431 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format이 %s에 대해 정의되지 않음" +msgid "Creating file %s." +msgstr "%s 파일을 만드는 중입니다." -#: writers/html5.py:441 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "%s 노드에 할당되지 않은 ID" +msgid "File %s already exists, skipping." +msgstr "%s 파일이 이미 존재하여, 건너뜁니다." -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "완료됨: 초기 디렉토리 구조가 생성되었습니다." -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "이제 마스터 파일 %s을(를) 채우고 다른 원본 문서 파일을 만들어야 합니다. " -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Makefile을 사용하여 다음과 같이 문서를 빌드하십시오:\n make builder" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "sphinx-build 명령을 사용하여 다음과 같이 문서를 빌드하십시오:\n sphinx-build -b builder %s %s" -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "여기서 \"builder\"는 지원되는 빌더 중 하나(예: html, latex, linkcheck)입니다." -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nSphinx 프로젝트에 필요한 파일을 생성합니다.\n\nsphinx-quickstart는 대화형 도구로서, 프로젝트에 대한 몇 가지 질문을 한 다음\n완전한 문서 디렉토리와 (sphinx-build와 함께 사용할 수 있는) 견본 Makefile을 생성합니다.\n" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "이미지 크기를 얻어올 수 없습니다. :scale: 옵션을 무시합니다." +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "조용한 모드" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "프로젝트 루트 디렉토리" -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "중복 레이블의 수식 %s, 다른 인스턴스는 %s에 있음" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "구조 옵션" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (내장 함수)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "지정된 경우, 원본과 빌드 디렉토리를 구분합니다" -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s 메서드)" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "지정된 경우, 원본 디렉토리 아래에 빌드 디렉토리를 만듭니다" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (클래스)" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "_templates 등에서 마침표의 대체 문자" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (전역 변수 또는 상수)" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "프로젝트 기본 옵션" -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s의 속성)" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "프로젝트 이름" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "인수" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "작성자 이름" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "예외" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "프로젝트의 버전" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "반환" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "프로젝트의 릴리스" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "반환 형식" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "문서 언어" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (모듈)" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "원본 파일의 접미사" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "함수" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "마스터 문서 이름" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "메서드" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "EPUB 사용" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "클래스" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "확장 기능 옵션" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "데이터" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" +msgstr "%s 확장 기능 사용" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "속성" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "임의의 확장 기능 사용" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "모듈" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefile과 배치 파일 생성" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "중복된 %s 설명 (%s에 대한), 다른 항목은 %s (%s)에 있음" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "makefile 생성" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "makefile을 생성하지 않음" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "버전 %s에서 변경" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "배치 파일 생성" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "버전 %s부터 폐지됨" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "배치 파일을 생성하지 않음" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "Makefile/make.bat에서 make 모드 사용" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (지시문)" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "프로젝트 템플릿" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (지시문 옵션)" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "템플릿 파일에 대한 템플릿 디렉토리" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (역할)" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "템플릿 변수 정의" -#: domains/rst.py:234 -msgid "directive" -msgstr "지시문" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\"이 지정되었지만, \"project\" 또는 \"author\"가 정의되지 않았습니다." -#: domains/rst.py:235 -msgid "directive-option" -msgstr "지시문 옵션" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "오류: 지정된 경로가 디렉토리가 아니거나, Sphinx 파일이 이미 있습니다." -#: domains/rst.py:236 -msgid "role" -msgstr "역할" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart는 빈 디렉토리에만 생성됩니다. 새 루트 경로를 지정하십시오." -#: domains/rst.py:262 +#: cmd/quickstart.py:810 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "중복된 %s %s 설명, 다른 인스턴스는 %s에 있음" +msgid "Invalid template variable: %s" +msgstr "잘못된 템플릿 변수: %s" -#: domains/citation.py:75 +#: directives/other.py:119 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "중복 인용 %s, 다른 인스턴스는 %s에 있음" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "toctree glob 패턴 %r 이(가) 어느 문서와도 일치하지 않습니다" -#: domains/citation.py:92 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "인용 [%s]이(가) 참조되지 않았습니다." - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "주의" +msgid "toctree contains reference to excluded document %r" +msgstr "toctree에 제외된 문서 %r에 대한 참조가 있음" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "조심" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree에 존재하지 않는 문서 %r에 대한 참조가 있음" -#: locale/__init__.py:230 -msgid "Danger" -msgstr "위험" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "toctree에서 중복 항목이 발견됨: %s" -#: locale/__init__.py:231 -msgid "Error" -msgstr "오류" +#: directives/other.py:203 +msgid "Section author: " +msgstr "구역 작성자: " -#: locale/__init__.py:232 -msgid "Hint" -msgstr "힌트" +#: directives/other.py:205 +msgid "Module author: " +msgstr "모듈 작성자: " -#: locale/__init__.py:233 -msgid "Important" -msgstr "중요" +#: directives/other.py:207 +msgid "Code author: " +msgstr "코드 작성자: " -#: locale/__init__.py:234 -msgid "Note" -msgstr "참고" +#: directives/other.py:209 +msgid "Author: " +msgstr "작성자: " -#: locale/__init__.py:235 -msgid "See also" -msgstr "더 보기" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr ".. acks 내용이 목록이 아닙니다" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "팁" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr ".. hlist 내용이 목록이 아닙니다" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "경고" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "csv-table 지시문의 \":file:\" 옵션은 이제 절대 경로를 소스 디렉토리의 상대 경로로 인식합니다. 문서를 업데이트하십시오." -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "모듈에서 자동으로 docstring 삽입" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "내어쓰기에 의해 비 공백 문자가 제거됨" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "doctest 블록의 코드 조각을 자동으로 테스트" +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "잘못된 캡션: %s" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "다른 프로젝트의 Sphinx 문서 간 링크" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "줄 번호 지정이 범위를 벗어남 (1-%d): %r" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "빌드 시 표시하거나 숨길 수 있는 \"할 일\" 항목 작성" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "\"%s\"과(와) \"%s\" 옵션을 모두 사용할 수 없습니다" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "문서의 커버리지 확인" +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "PNG나 SVG 이미지로 렌더링 된 수식 포함" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "MathJax로 브라우저에서 렌더링 하는 수식 포함" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "포함 파일 %r에서 이름이 %r 인 객체를 찾을 수 없습니다" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "설정값을 기반으로 콘텐츠를 조건부 포함" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "분리된 \"lines\" 집합과 함께 \"lineno-match\"를 사용할 수 없습니다" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "문서화 된 Python 객체의 소스 코드에 대한 링크 포함" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "행 지정 %r: 포함 파일 %r에서 가져온 줄이 없습니다" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "GitHub 페이지에 문서를 게시하기 위해 .nojekyll 파일 생성" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%Y년 %m월 %d일" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "유효한 경로 이름을 입력하십시오." +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "색인" -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "텍스트를 입력하십시오." +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "구역, 주제, 표, 조언, 사이드바 안에 있지 않은 제목 노드가 발견됨" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "%s 중 하나를 입력하십시오." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "각주" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "'y' 또는 'n'을 입력하십시오." +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "캡션이 그림 안에 있지 않습니다." -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "파일 접미사를 입력하십시오 (예: '.rst' 또는 '.txt')." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "구현되지 않은 노드 유형: %r" -#: cmd/quickstart.py:229 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Sphinx %s 빠른 시작 유틸리티에 오신 것을 환영합니다." +msgid "[image: %s]" +msgstr "[그림: %s]" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "다음 설정에 대한 값을 입력하십시오 (대괄호로 묶여 있는 기본값이 존재하고\n이 값을 사용하려면 바로 Enter를 누릅니다)." +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[그림]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" -#: cmd/quickstart.py:241 +#: writers/html5.py:431 #, python-format -msgid "Selected root path: %s" -msgstr "선택한 루트 경로: %s" +msgid "numfig_format is not defined for %s" +msgstr "numfig_format이 %s에 대해 정의되지 않음" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "문서의 루트 경로를 입력하십시오." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "%s 노드에 할당되지 않은 ID" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "문서의 루트 경로" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "오류: 선택한 루트 경로에서 기존 conf.py 파일이 발견되었습니다." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart는 기존 Sphinx 프로젝트를 덮어 쓰지 않습니다." +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "새 루트 경로를 입력하십시오 (또는 Enter를 눌러 종료)" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Sphinx 출력을 위한 빌드 디렉토리를 배치하는 두 가지 옵션이 있습니다.\n루트 경로 내에서 \"_build\" 디렉토리를 사용하거나, 루트 경로 내에서\n\"source\"와 \"build\" 디렉토리로 분리합니다." +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "원본과 빌드 디렉토리 분리 (y/n)" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "루트 디렉토리 내에 두 개의 추가 디렉토리가 생성됩니다. 사용자 정의 HTML 템플릿의\n경우 \"_templates\", 사용자 정의 스타일시트 및 기타 정적 파일의 경우 \"_static\"\n입니다. 다른 접두사(\".\" 과 같은)를 입력하여 밑줄 문자를 변경할 수 있습니다." +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "템플릿 및 정적 디렉토리의 이름 접두사" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "이미지 크기를 얻어올 수 없습니다. :scale: 옵션을 무시합니다." -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "프로젝트 이름은 빌드 된 문서의 여러 위치에 표시됩니다." +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "알 수 없는 %r toplevel_sectioning (클래스 %r)" -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "프로젝트 이름" +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "%r 언어에 대해 알려진 Babel 옵션이 없습니다" -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "작성자 이름" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth:가 너무 크며, 무시합니다." -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "Sphinx는 소프트웨어에 대한 \"버전\"과 \"릴리스\"라는 개념을 가지고 있습니다.\n각 버전에는 여러 릴리스가 있을 수 있습니다. 예를 들어 Python의 경우 버전은\n2.5나 3.0과 같은 반면 릴리스는 2.5.1 또는 3.0a1과 같습니다.\n이러한 이중 구조가 필요하지 않으면 둘 다 동일한 값으로 설정하십시오." +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "프로젝트 버전" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "문서 제목이 단일 텍스트 노드가 아님" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "프로젝트 릴리스" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "tabularcolumns와 :widths: 옵션이 모두 설정되었습니다. :widths:는 무시됩니다." -#: cmd/quickstart.py:323 +#: writers/latex.py:1228 +#, python-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "문서를 영어 이외의 언어로 작성하려는 경우, 여기에서 해당 언어 코드로 언어를\n선택할 수 있습니다. 그러면 Sphinx가 생성한 텍스트를 해당 언어로 번역합니다.\n\n지원되는 코드 목록은\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language\n를 참조하십시오." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "프로젝트 언어" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "치수 단위 %s이(가) 잘못되었습니다. 무시합니다." -#: cmd/quickstart.py:339 -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 "원본 파일의 파일 이름 접미사. 일반적으로 \".txt\" 또는 \".rst\" 입니다. 이 접미사가\n있는 파일만 문서로 간주됩니다." +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "알 수 없는 색인 항목 유형 %s이(가) 발견됨" + +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "원본 파일 접미사" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "한 문서는 \"컨텐츠 트리\"의 최상위 노드, 즉 문서 계층 구조의 루트로 간주된다는\n점에서 특별합니다. 일반적으로 이 값은 \"index\" 이지만, \"index\" 문서가\n사용자 정의 템플릿일 경우 이를 다른 파일 이름으로 설정할 수도 있습니다." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "마스터 문서의 이름 (접미사 없이)" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "오류: 선택한 루트 경로에 마스터 파일 %s이(가) 이미 있습니다." +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart는 기존 파일을 덮어 쓰지 않습니다." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:377 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "새 파일 이름을 입력하거나 기존 파일의 이름을 바꾸고, Enter를 누르십시오" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "다음 Sphinx 확장 기능 중 사용 설정해야 하는 항목을 지정하십시오:" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "참고: imgmath와 mathjax는 동시에 활성화 할 수 없습니다. imgmath가 선택 취소되었습니다." +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Makefile 및 Windows 명령 파일을 생성할 수 있으므로, sphinx-build를 직접 호출하는\n대신 (예를 들어) `make html'을 실행하기만 하면 됩니다." +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Makefile을 만드시겠습니까? (y/n)" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Windows 명령 파일을 만드시겠습니까? (y/n)" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "%s 파일을 만드는 중입니다." +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "%s 파일이 이미 존재하여, 건너뜁니다." +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "완료됨: 초기 디렉토리 구조가 생성되었습니다." +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:519 -#, python-format +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" + +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "이제 마스터 파일 %s을(를) 채우고 다른 원본 문서 파일을 만들어야 합니다. " +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "번역된 메시지의 각주 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" -#: cmd/quickstart.py:526 +#: transforms/i18n.py:275 +#, python-brace-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Makefile을 사용하여 다음과 같이 문서를 빌드하십시오:\n make builder" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "번역된 메시지의 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" -#: cmd/quickstart.py:530 -#, python-format +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "sphinx-build 명령을 사용하여 다음과 같이 문서를 빌드하십시오:\n sphinx-build -b builder %s %s" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "번역된 메시지의 인용 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" -#: cmd/quickstart.py:537 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "여기서 \"builder\"는 지원되는 빌더 중 하나(예: html, latex, linkcheck)입니다." +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "번역된 메시지의 용어 참조가 일치하지 않습니다. 원본: {0}, 번역: {1}" -#: cmd/quickstart.py:572 +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" + +#: transforms/__init__.py:258 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nSphinx 프로젝트에 필요한 파일을 생성합니다.\n\nsphinx-quickstart는 대화형 도구로서, 프로젝트에 대한 몇 가지 질문을 한 다음\n완전한 문서 디렉토리와 (sphinx-build와 함께 사용할 수 있는) 견본 Makefile을 생성합니다.\n" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "4 개 열 기반 색인을 찾았습니다. 사용하고 있는 확장 기능의 버그일 수 있습니다: %r" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "자세한 내용은 를 참조하십시오." +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "각주 [%s]이(가) 참조되지 않았습니다." -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "조용한 모드" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "프로젝트 루트 디렉토리" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "각주 [#]이 참조되지 않았습니다." -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "구조 옵션" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "지정된 경우, 원본과 빌드 디렉토리를 구분합니다" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "지정된 경우, 원본 디렉토리 아래에 빌드 디렉토리를 만듭니다" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "읽기 오류: %s, %s" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "_templates 등에서 마침표의 대체 문자" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "쓰기 오류: %s, %s" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "프로젝트 기본 옵션" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "프로젝트 이름" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "작성자 이름" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "잘못된 날짜 형식입니다. 바로 출력하려면 작은 따옴표로 문자열을 인용하십시오: %s" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "프로젝트의 버전" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "프로젝트의 릴리스" +#: util/display.py:82 +msgid "skipped" +msgstr "건너뜀" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "문서 언어" +#: util/display.py:87 +msgid "failed" +msgstr "실패" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "원본 파일의 접미사" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "마스터 문서 이름" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "EPUB 사용" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "알 수 없는 노드 유형: %r" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "확장 기능 옵션" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/quickstart.py:670 +#: util/fileutil.py:89 #, python-format -msgid "enable %s extension" -msgstr "%s 확장 기능 사용" +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "임의의 확장 기능 사용" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "%s 영역에서 문제 발생: 필드가 '%s' 역할을 사용해야 하지만, 해당 역할이 도메인에 없습니다." -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefile과 배치 파일 생성" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "기본 역할 %s을(를) 찾을 수 없음" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "makefile 생성" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "makefile을 생성하지 않음" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree에 존재하지 않는 파일 %r에 대한 참조가 있음" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "배치 파일 생성" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "only 지시문 식을 평가하는 동안 예외 발생: %s" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "배치 파일을 생성하지 않음" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "이전 페이지에서 계속" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "Makefile/make.bat에서 make 모드 사용" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "다음 페이지에 계속" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "프로젝트 템플릿" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "알파벳 이외" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "템플릿 파일에 대한 템플릿 디렉토리" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "기호" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "템플릿 변수 정의" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "숫자" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"quiet\"이 지정되었지만, \"project\" 또는 \"author\"가 정의되지 않았습니다." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "페이지" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "오류: 지정된 경로가 디렉토리가 아니거나, Sphinx 파일이 이미 있습니다." +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "릴리스" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart는 빈 디렉토리에만 생성됩니다. 새 루트 경로를 지정하십시오." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "원격 이미지를 가져올 수 없습니다: %s [%s]" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/images.py:96 #, python-format -msgid "Invalid template variable: %s" -msgstr "잘못된 템플릿 변수: %s" +msgid "Could not fetch remote image: %s [%d]" +msgstr "원격 이미지를 가져올 수 없습니다: %s [%d]" -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "작업 숫자는 양수여야 합니다" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "알 수 없는 이미지 형식: %s…" -#: cmd/build.py:74 +#: transforms/post_transforms/__init__.py:88 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\n소스 파일로부터 문서를 생성합니다.\n\nsphinx-build는 SOURCEDIR에 있는 파일로부터 문서를 생성하여 OUTPUTDIR에 저장합니다.\n구성 설정을 위해 SOURCEDIR에서 'conf.py' 파일을 찾습니다.\n'sphinx-quickstart' 도구는 'conf.py'를 포함하여 템플릿 파일을 생성하는 데 사용할 수 있습니다.\n\nsphinx-build는 다양한 형식으로 문서를 생성할 수 있습니다.\n형식은 명령줄에서 빌더 이름을 지정하여 선택하며, 기본값은 HTML입니다.\n빌더는 문서 처리와 관련한 다른 태스크를 수행할 수도 있습니다.\n\n기본적으로 오래된 모든 항목을 빌드합니다.\n개별 파일명을 지정하여 선택한 파일에 대한 출력만 빌드할 수 있습니다.\n" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "상호 참조에 대한 대체 텍스트를 결정할 수 없습니다. 버그일 수 있습니다." -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "문서 원본 파일의 경로" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "'any' 상호 참조 %r에 대해 둘 이상의 대상이 발견되었습니다: %s 일 수 있습니다" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "출력 디렉토리 경로" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s 참조 대상을 찾을 수 없음: %s" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r 참조 대상을 찾을 수 없음: %s" -#: cmd/build.py:114 -msgid "general options" -msgstr "일반 옵션" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "중단되었습니다!" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "모든 파일 기록 (기본값: 새 파일과 변경된 파일만 기록)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "저장된 환경을 사용하지 않고, 항상 모든 파일 읽기" - -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:157 +#: _cli/util/errors.py:207 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "구성 파일의 설정 무시" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "HTML 템플릿에 값 전달" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "태그를 정의: 태그가 있는 \"only\" 블록을 포함" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "콘솔 출력 옵션" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "사용자 오류인 경우에도 이를 보고하여, 다음에 더 나은 오류 메시지를 제공할 수 있도록 해 주십시오." -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "상세도 높임 (반복 가능)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "사이드바 닫기" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "stdout에 출력하지 않고, stderr에 경고만 표시" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "탐색" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "경고를 포함하여 아무 출력도 하지 않음" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "%(docstitle)s에서 찾기" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "컬러 출력 허용 (기본값: 자동 감지)" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "이 문서 정보" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "컬러 출력을 허용하지 않음 (기본값: 자동 감지)" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "검색" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "저작권" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "주어진 파일에 경고(및 오류)를 기록" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "최종 업데이트: %(last_updated)s" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "경고를 오류로 바꿈" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Sphinx %(sphinx_version)s 버전으로 생성되었습니다." -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "예외 발생 시 전체 추적 표시" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "이전 항목" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "예외 발생 시 Pdb 실행" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "이전 장" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "다음 항목" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "-a 옵션과 파일 이름을 함께 사용할 수 없습니다" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "다음 장" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Index – %(key)s" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "-D 옵션 인수는 name=value 형식이어야 합니다" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "-A 옵션 인수는 name=value 형식이어야 합니다" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "한 페이지에 전체 색인 보기" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "사이드바 닫기" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "현재 문서" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "목차" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "소스 보기" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "검색" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "빠른 검색" #: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 #: themes/basic/searchfield.html:12 msgid "Go" msgstr "이동" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "소스 보기" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "내용" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s에서 찾기" - #: themes/basic/defindex.html:4 msgid "Overview" msgstr "개요" @@ -2683,7 +2883,7 @@ msgstr "모듈 총 색인" msgid "quick access to all modules" msgstr "모든 모듈 조견표" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "전체 색인" @@ -2691,23 +2891,15 @@ msgstr "전체 색인" msgid "all functions, classes, terms" msgstr "함수, 클래스 및 용어 개관" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "현재 문서" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "목차" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "한 페이지에 전체 색인 보기" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "빠른 검색" +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s에서 찾기" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2717,57 +2909,6 @@ msgstr "알파벳별 색인" msgid "can be huge" msgstr "큰 경우가 있으므로 주의" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "이전 항목" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "이전 장" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "다음 항목" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "다음 장" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "탐색" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "%(docstitle)s에서 찾기" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "이 문서 정보" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "저작권" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "최종 업데이트: %(last_updated)s" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Sphinx %(sphinx_version)s 버전으로 생성되었습니다." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2784,43 +2925,42 @@ msgstr "여러 단어를 검색하면 모든 단어가 포함된 일치 항목 msgid "search" msgstr "검색" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "검색 일치 숨기기" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "내용" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "검색 결과" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "검색어와 일치하는 문서가 없습니다. 모든 단어의 철자가 올바른지, 충분한 카테고리를 선택했는지 확인하십시오." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "검색 중" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "검색 준비 중…" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", 문서 - " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "검색 일치 숨기기" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2828,6 +2968,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "버전 %(version)s의 변경 사항 — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,120 +2994,127 @@ msgstr "다른 변경 사항" msgid "Expand sidebar" msgstr "사이드바 열기" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "매개변수" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "변수" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "예외 발생" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (%s 모듈)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (%s 모듈)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (내장 변수)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (내장 클래스)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (%s 클래스)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s의 클래스 메서드)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s의 정적 메서드)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (%s의 특성)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python 모듈 목록" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "모듈" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "폐지됨" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "예외" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "클래스 메서드" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "정적 메서드" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "특성" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "상호 참조 %r에 대해 둘 이상의 대상을 찾았습니다: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (폐지됨)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "매개변수" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "변수" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "예외 발생" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "중복 C++ 선언이며, %s:%s에 정의되었습니다.\n선언은 '.. cpp:%s:: %s' 입니다." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2973,92 +3125,85 @@ msgstr "템플릿 매개변수" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "중복 C++ 선언이며, %s:%s에 정의되었습니다.\n선언은 '.. cpp:%s:: %s' 입니다." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "반환값" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "공용체" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "멤버 변수" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "자료형" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "콘셉트" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "열거형" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "열거자" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "함수 매개변수" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "템플릿 매개변수" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "중복 C 선언이며, %s:%s에 정의되었습니다.\n선언은 '.. c:%s:: %s' 입니다." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "변수" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "매크로" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "구조체" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "환경 변수; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3153,514 +3298,422 @@ msgstr "정의되지 않은 레이블: %r" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "상호 참조를 생성하지 못했습니다. 제목 또는 캡션을 찾을 수 없습니다: %r" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "순환 toctree 참조가 감지되었으며, 무시합니다: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree에 제목이 없는 문서 %r에 대한 참조가 있습니다. 링크가 생성되지 않습니다" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "%s 문서" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "%s 참조" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "알 수 없는 색인 항목 유형 %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "기호" - -#: environment/collectors/asset.py:98 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "image file not readable: %s" -msgstr "이미지 파일을 읽을 수 없음: %s" +msgid "invalid value set (missing closing brace): %s" +msgstr "잘못된 값 세트 (닫는 중괄호 누락): %s" -#: environment/collectors/asset.py:126 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "image file %s not readable: %s" -msgstr "이미지 파일 %s을(를) 읽을 수 없음: %s" +msgid "invalid value set (missing opening brace): %s" +msgstr "잘못된 값 세트 (여는 중괄호 누락): %s" -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "다운로드 가능 파일을 읽을 수 없음: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "잘못된 문자열 리터럴 (닫는 따옴표 누락): %s" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s에 이미 구역 번호가 할당되었습니다 (중첩된 번호 붙인 toctree?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "중단되었습니다!" +msgid "malformed string literal (missing opening quote): %s" +msgstr "잘못된 문자열 리터럴 (여는 따옴표 누락): %s" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "예제" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "예제" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "키워드 매개변수" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "참고" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "기타 매개변수" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "수신" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "참조" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "사용자 오류인 경우에도 이를 보고하여, 다음에 더 나은 오류 메시지를 제공할 수 있도록 해 주십시오." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "경고" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "상호 참조에 대한 대체 텍스트를 결정할 수 없습니다. 버그일 수 있습니다." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "생성" -#: transforms/post_transforms/__init__.py:237 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "'any' 상호 참조 %r에 대해 둘 이상의 대상이 발견되었습니다: %s 일 수 있습니다" +msgid "A mocked object is detected: %r" +msgstr "모의 객체가 감지되었습니다: %r" -#: transforms/post_transforms/__init__.py:299 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s 참조 대상을 찾을 수 없음: %s" +msgid "alias of %s" +msgstr "%s의 별칭" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r 참조 대상을 찾을 수 없음: %s" +msgid "Bases: %s" +msgstr "기반 클래스: %s" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "원격 이미지를 가져올 수 없습니다: %s [%s]" +msgid "invalid value for member-order option: %s" +msgstr "member-order 옵션에 대해 잘못된 값: %s" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "원격 이미지를 가져올 수 없습니다: %s [%d]" +msgid "invalid value for class-doc-from option: %s" +msgstr "class-doc-from 옵션에 대해 잘못된 값: %s" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "Unknown image format: %s..." -msgstr "알 수 없는 이미지 형식: %s…" +msgid "invalid signature for auto%s (%r)" +msgstr "auto%s (%r)에 대한 잘못된 서명" -#: builders/html/__init__.py:113 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTML 페이지는 %(outdir)s에 있습니다." +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "%r의 자동 문서화를 위해 가져올 모듈을 알 수 없습니다 (문서에 \"module\" 또는 \"currentmodule\" 지시문을 배치하거나, 명시적으로 모듈 이름을 지정해 보십시오)" -#: builders/html/__init__.py:348 +#: ext/autodoc/_names.py:89 #, python-format -msgid "Failed to read build info file: %r" -msgstr "빌드 정보 파일을 읽을 수 없습니다: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" - -#: builders/html/__init__.py:366 -msgid "building [html]: " +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:383 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "색인" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "automodule 이름의 \"::\"은 의미가 없음" -#: builders/html/__init__.py:560 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Logo of %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "다음" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "이전" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "%s 파일을 작성합니다." -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "색인 생성 중" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\n에서 Python 모듈 및 패키지를 재귀적으로 찾고\nautomodule 지시문이 있는 패키지 당 하나의 reST 파일을 에 만듭니다.\n\n은 생성에서 제외할 파일 또는 디렉토리 패턴일 수 있습니다.\n\n참고: 기본적으로이 스크립트는 이미 생성된 파일을 덮어 쓰지 않습니다." -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "추가 페이지 작성 중" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "문서에 대한 모듈 경로" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "생성에서 제외할 fnmatch 형식의 파일 또는 디렉토리 패턴" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "다운로드 가능한 파일을 복사하는 중… " +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "모든 출력을 저장할 디렉토리" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "다운로드 가능한 파일 %r을(를) 복사할 수 없습니다: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "목차에 표시할 하위 모듈의 최대 깊이 (기본값: 4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "기존 파일 덮어쓰기" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "html_static_file에 있는 파일을 복사할 수 없습니다: %s: %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "심볼릭 링크를 따라갑니다. collective.recipe.omelette과 결합하면 강력합니다." -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "정적 파일을 복사하는 중" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "파일을 생성하지 않고 스크립트 실행" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "정적 파일을 복사할 수 없습니다: %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "각 모듈에 대한 문서를 개별 페이지에 배치" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "추가 파일을 복사하는 중" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "\"_private\" 모듈 포함" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "추가 파일을 복사할 수 없습니다: %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "목차의 파일 이름 (기본값: modules)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "빌드 정보 파일 쓰기 실패: %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "목차 파일을 만들지 않음" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "검색 색인을 불러올 수 없지만 모든 문서가 작성되지는 않은 것은 아닙니다. 색인이 불완전합니다." +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "모듈/패키지에 대한 제목을 만들지 않음 (예: docstring에 이미 포함된 경우)" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "%s 페이지가 html_sidebars의 두 패턴(%r 및 %r)과 일치합니다" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "서브 모듈 문서 앞에 모듈 문서를 넣음" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "%s 페이지를 렌더링 할 때 유니코드 오류가 발생했습니다. ASCII가 아닌 내용을 포함하는 모든 설정값이 유니코드 문자열인지 확인하십시오." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "PEP-0420 암시적 네임 스페이스 사양에 따라 모듈 경로 해석" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "%s 페이지를 렌더링하는 중에 오류가 발생했습니다.\n원인: %r" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "객체 인벤토리 덤프 중" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "파일 확장자 (기본값: rst)" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "%s에서 검색 인덱스 덤프 중" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "잘못된 js_file: %r, 무시합니다" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "sphinx-quickstart로 전체 프로젝트 생성" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "여러 math_renderers가 등록되어 있습니다. 하지만 math_renderer가 선택되지 않았습니다." +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "--full이 주어졌을 때, sys.path에 module_path 추가" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "알 수 없는 math_renderer %r이(가) 지정되었습니다." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "프로젝트 이름 (기본값: 루트 모듈 이름)" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path 항목 %r이(가) outdir 안에 있습니다" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "--full이 주어졌을 때, 프로젝트 작성자" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path 항목 %r이(가) 없습니다" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "--full이 주어졌을 때, 프로젝트 버전" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "--full이 주어졌을 때, 프로젝트의 릴리스이며 기본값은 --doc-version 값과 같음" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "확장 기능 옵션" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1380 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path 항목 %r이(가) outdir 안에 있습니다" +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1385 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path 항목 %r이(가) 없습니다" +msgid "%s is not a directory." +msgstr "%s은(는) 디렉토리가 아닙니다." -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "로고 파일 %r이(가) 존재하지 않습니다" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" -#: builders/html/__init__.py:1407 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "favicon file %r does not exist" -msgstr "Favicon 파일 %r이(가) 존재하지 않습니다" +msgid "apidoc_modules item %i must be a dict" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "%s %s documentation" -msgstr "%s %s 문서" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:133 +#, python-format +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeX 파일은 %(outdir)s에 있습니다." - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\n(pdf)latex을 통해 작업하려면 해당 디렉토리에서 'make'를 실행하십시오\n(자동으로 수행하려면 여기에서 'make latexpdf'를 사용하십시오)." - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "\"latex_documents\" 설정값이 없으므로, 문서를 작성하지 않습니다" +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "\"latex_documents\" 설정값이 알 수 없는 문서 %s을(를) 참조합니다" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "릴리스" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "TeX 지원 파일을 복사하는 중" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "추가 파일을 복사하는 중" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "알 수 없는 설정 키: latex_elements[%r], 무시합니다." +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "알 수 없는 테마 옵션: latex_theme_options[%r], 무시합니다." - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r에 \"theme\" 설정이 없습니다" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r에 \"%s\" 설정이 없습니다" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: 문서화 할 %r을(를) 결정하지 못했으며, 다음 예외가 발생했습니다:\n%s" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "이전 페이지에서 계속" +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] 자동 요약 생성: %s" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "다음 페이지에 계속" +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" +msgstr "[autosummary] %s에 기록" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "알파벳 이외" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] %s을(를) import 하지 못했습니다.\n가능한 힌트:\n%s" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "숫자" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nautosummary 지시문을 사용하여 ReStructuredText를 생성합니다.\n\nsphinx-autogen은 sphinx.ext.autosummary.generate의 프런트엔드입니다.\n주어진 입력 파일에 포함된 autosummary 지시문에서 reStructuredText 파일을 생성합니다.\n\nautosummary 지시문의 형식은 ``sphinx.ext.autosummary`` Python 모듈에 문서화되어 있으며 다음 명령을 사용하여 읽을 수 있습니다.\n\n pydoc sphinx.ext.autosummary\n" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "페이지" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "rST 파일을 생성할 원본 파일" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "키워드 매개변수" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "모든 출력을 저장할 디렉토리" -#: ext/napoleon/docstring.py:176 +#: ext/autosummary/generate.py:915 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "잘못된 값 세트 (닫는 중괄호 누락): %s" +msgid "default suffix for files (default: %(default)s)" +msgstr "파일의 기본 확장자 (기본값: %(default)s)" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:923 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "잘못된 값 세트 (여는 중괄호 누락): %s" +msgid "custom template directory (default: %(default)s)" +msgstr "사용자 정의 템플릿 디렉토리 (기본값: %(default)s)" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:931 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "잘못된 문자열 리터럴 (닫는 따옴표 누락): %s" +msgid "document imported members (default: %(default)s)" +msgstr "가져온 멤버 문서화 (기본값: %(default)s)" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:940 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "잘못된 문자열 리터럴 (여는 따옴표 누락): %s" - -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "예제" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "예제" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "참고" - -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "기타 매개변수" - -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "수신" - -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "참조" - -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "경고" - -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "생성" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "모듈 __all__ 속성의 구성원만 정확히 문서화합니다. (기본값: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "autosummary가 제외된 문서 %r을(를) 참조합니다. 무시합니다." -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "autosummary: 스텁 파일 %r을(를) 찾을 수 없습니다. autosummary_generate 설정을 확인하십시오." -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "캡션이 있는 자동 요약에는 :toctree: 옵션이 필요합니다. 무시합니다." -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3721,585 @@ msgid "" "%s" msgstr "autosummary: %s을(를) import 하지 못했습니다.\n가능한 힌트:\n%s" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "이름 %s을(를) 해석하지 못함" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "객체 %s을(를) import 하지 못함" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: 파일을 찾을 수 없음: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary: 문서화 할 %r을(를) 결정하지 못했으며, 다음 예외가 발생했습니다:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] 자동 요약 생성: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] %s에 기록" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] %s을(를) import 하지 못했습니다.\n가능한 힌트:\n%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nautosummary 지시문을 사용하여 ReStructuredText를 생성합니다.\n\nsphinx-autogen은 sphinx.ext.autosummary.generate의 프런트엔드입니다.\n주어진 입력 파일에 포함된 autosummary 지시문에서 reStructuredText 파일을 생성합니다.\n\nautosummary 지시문의 형식은 ``sphinx.ext.autosummary`` Python 모듈에 문서화되어 있으며 다음 명령을 사용하여 읽을 수 있습니다.\n\n pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "rST 파일을 생성할 원본 파일" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "모든 출력을 저장할 디렉토리" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "일부 인벤토리에서 몇 가지 문제가 발생했지만, 동작하는 대체 인벤토리로 처리했습니다:" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "파일의 기본 확장자 (기본값: %(default)s)" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "사용자 정의 템플릿 디렉토리 (기본값: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "intersphinx 인벤토리가 이동함: %s -> %s" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "가져온 멤버 문서화 (기본값: %(default)s)" +msgid "(in %s %s)" +msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "모듈 __all__ 속성의 구성원만 정확히 문서화합니다. (기본값: %(default)s)" +msgid "(in %s)" +msgstr "(%s에서)" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Failed to remove %s: %s" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\n에서 Python 모듈 및 패키지를 재귀적으로 찾고\nautomodule 지시문이 있는 패키지 당 하나의 reST 파일을 에 만듭니다.\n\n은 생성에서 제외할 파일 또는 디렉토리 패턴일 수 있습니다.\n\n참고: 기본적으로이 스크립트는 이미 생성된 파일을 덮어 쓰지 않습니다." +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "문서에 대한 모듈 경로" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "생성에서 제외할 fnmatch 형식의 파일 또는 디렉토리 패턴" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "모든 출력을 저장할 디렉토리" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "외부 %s:%s 참조 대상을 찾을 수 없음: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "목차에 표시할 하위 모듈의 최대 깊이 (기본값: 4)" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "%s에 대한 서명을 서식화하는 동안 오류 발생: %s" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "기존 파일 덮어쓰기" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "심볼릭 링크를 따라갑니다. collective.recipe.omelette과 결합하면 강력합니다." +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "%s에 대한 함수 서명을 가져오지 못했습니다: %s" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "파일을 생성하지 않고 스크립트 실행" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "%r에 대한 서명을 업데이트하지 못했습니다. 매개변수를 찾을 수 없습니다: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "각 모듈에 대한 문서를 개별 페이지에 배치" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "%r에 대한 type_comment를 해석하지 못했습니다: %s" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "\"_private\" 모듈 포함" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "%s에서 잘못된 __slots__ 가 발견되었습니다. 무시합니다." -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "목차의 파일 이름 (기본값: modules)" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "%s에 대한 인수를 서식화하는 동안 오류 발생: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "목차 파일을 만들지 않음" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "%s에 대한 생성자 서명을 가져오지 못했습니다: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "모듈/패키지에 대한 제목을 만들지 않음 (예: docstring에 이미 포함된 경우)" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "%s에 대한 메소드 서명을 가져오지 못했습니다: %s" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "서브 모듈 문서 앞에 모듈 문서를 넣음" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "PEP-0420 암시적 네임 스페이스 사양에 따라 모듈 경로 해석" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "%r에 대한 기본 인수 값을 해석하지 못했습니다: %s" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "파일 확장자 (기본값: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: 문서화 할 %s.%s (%r) 을(를) 결정하지 못했으며, 다음 예외가 발생했습니다:\n%s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "sphinx-quickstart로 전체 프로젝트 생성" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "automodule %s에 대해 서명 인수 또는 반환 값 주석이 지정됨" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "--full이 주어졌을 때, sys.path에 module_path 추가" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__은 %r이(가) 아닌 문자열의 목록이어야 합니다 (모듈 %s) -- __all__을 무시합니다" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "프로젝트 이름 (기본값: 루트 모듈 이름)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr ":members: 옵션에 언급된 속성이 없습니다: 모듈 %s, 속성 %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "--full이 주어졌을 때, 프로젝트 작성자" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "%s 속성이 %s 객체에 없음" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "--full이 주어졌을 때, 프로젝트 버전" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "TypeVar(%s)의 별칭" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "--full이 주어졌을 때, 프로젝트의 릴리스이며 기본값은 --doc-version 값과 같음" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "확장 기능 옵션" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML 페이지는 %(outdir)s에 있습니다." -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s은(는) 디렉토리가 아닙니다." +msgid "Failed to read build info file: %r" +msgstr "빌드 정보 파일을 읽을 수 없습니다: %r" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "색인" -#: ext/apidoc/_extension.py:121 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "다음" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "이전" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "색인 생성 중" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "추가 페이지 작성 중" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:192 -#, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "다운로드 가능한 파일을 복사하는 중… " -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "다운로드 가능한 파일 %r을(를) 복사할 수 없습니다: %s" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "html_static_file에 있는 파일을 복사할 수 없습니다: %s: %r" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." -msgstr "%s 파일을 작성합니다." +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "정적 파일을 복사하는 중" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:923 #, python-format -msgid "(in %s v%s)" -msgstr "(%s v%s에서)" +msgid "cannot copy static file %r" +msgstr "정적 파일을 복사할 수 없습니다: %r" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "(%s에서)" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "추가 파일을 복사하는 중" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:938 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +msgid "cannot copy extra file %r" +msgstr "추가 파일을 복사할 수 없습니다: %r" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "Failed to write build info file: %r" +msgstr "빌드 정보 파일 쓰기 실패: %r" + +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "검색 색인을 불러올 수 없지만 모든 문서가 작성되지는 않은 것은 아닙니다. 색인이 불완전합니다." -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "%s 페이지가 html_sidebars의 두 패턴(%r 및 %r)과 일치합니다" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1204 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "%s 페이지를 렌더링 할 때 유니코드 오류가 발생했습니다. ASCII가 아닌 내용을 포함하는 모든 설정값이 유니코드 문자열인지 확인하십시오." -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1217 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1225 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "외부 %s:%s 참조 대상을 찾을 수 없음: %s" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "%s 페이지를 렌더링하는 중에 오류가 발생했습니다.\n원인: %r" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "객체 인벤토리 덤프 중" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "dumping search index in %s" +msgstr "%s에서 검색 인덱스 덤프 중" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "잘못된 js_file: %r, 무시합니다" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "여러 math_renderers가 등록되어 있습니다. 하지만 math_renderer가 선택되지 않았습니다." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "Unknown math_renderer %r is given." +msgstr "알 수 없는 math_renderer %r이(가) 지정되었습니다." -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path 항목 %r이(가) outdir 안에 있습니다" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path 항목 %r이(가) 없습니다" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path 항목 %r이(가) outdir 안에 있습니다" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path 항목 %r이(가) 없습니다" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" +msgid "logo file %r does not exist" +msgstr "로고 파일 %r이(가) 존재하지 않습니다" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "Favicon 파일 %r이(가) 존재하지 않습니다" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "일부 인벤토리에서 몇 가지 문제가 발생했지만, 동작하는 대체 인벤토리로 처리했습니다:" - -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "다음 문제가 있어 어느 인벤토리도 도달하지 못했습니다:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "intersphinx 인벤토리가 이동함: %s -> %s" +msgid "%s %s documentation" +msgstr "%s %s 문서" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "member-order 옵션에 대해 잘못된 값: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r에 \"theme\" 설정이 없습니다" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "class-doc-from 옵션에 대해 잘못된 값: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r에 \"%s\" 설정이 없습니다" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "auto%s (%r)에 대한 잘못된 서명" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "%s에 대한 인수를 서식화하는 동안 오류 발생: %s" +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc: 문서화 할 %s.%s (%r) 을(를) 결정하지 못했으며, 다음 예외가 발생했습니다:\n%s" +msgid "No footnote was found for given reference node %r" +msgstr "" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX 파일은 %(outdir)s에 있습니다." + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "%r의 자동 문서화를 위해 가져올 모듈을 알 수 없습니다 (문서에 \"module\" 또는 \"currentmodule\" 지시문을 배치하거나, 명시적으로 모듈 이름을 지정해 보십시오)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\n(pdf)latex을 통해 작업하려면 해당 디렉토리에서 'make'를 실행하십시오\n(자동으로 수행하려면 여기에서 'make latexpdf'를 사용하십시오)." -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "모의 객체가 감지되었습니다: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "\"latex_documents\" 설정값이 없으므로, 문서를 작성하지 않습니다" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "%s에 대한 서명을 서식화하는 동안 오류 발생: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "\"latex_documents\" 설정값이 알 수 없는 문서 %s을(를) 참조합니다" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "automodule 이름의 \"::\"은 의미가 없음" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "TeX 지원 파일을 복사하는 중" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "automodule %s에 대해 서명 인수 또는 반환 값 주석이 지정됨" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "추가 파일을 복사하는 중" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__은 %r이(가) 아닌 문자열의 목록이어야 합니다 (모듈 %s) -- __all__을 무시합니다" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "알 수 없는 설정 키: latex_elements[%r], 무시합니다." -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr ":members: 옵션에 언급된 속성이 없습니다: 모듈 %s, 속성 %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "알 수 없는 테마 옵션: latex_theme_options[%r], 무시합니다." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "%s에 대한 함수 서명을 가져오지 못했습니다: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s에 이미 구역 번호가 할당되었습니다 (중첩된 번호 붙인 toctree?)" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "%s에 대한 생성자 서명을 가져오지 못했습니다: %s" +msgid "image file not readable: %s" +msgstr "이미지 파일을 읽을 수 없음: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "기반 클래스: %s" +msgid "image file %s not readable: %s" +msgstr "이미지 파일 %s을(를) 읽을 수 없음: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "%s 속성이 %s 객체에 없음" +msgid "download file not readable: %s" +msgstr "다운로드 가능 파일을 읽을 수 없음: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "%s의 별칭" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "순환 toctree 참조가 감지되었으며, 무시합니다: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "TypeVar(%s)의 별칭" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree에 제목이 없는 문서 %r에 대한 참조가 있습니다. 링크가 생성되지 않습니다" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "%s에 대한 메소드 서명을 가져오지 못했습니다: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "%s에서 잘못된 __slots__ 가 발견되었습니다. 무시합니다." +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "%r에 대한 기본 인수 값을 해석하지 못했습니다: %s" +msgid "see %s" +msgstr "%s 문서" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "%r에 대한 서명을 업데이트하지 못했습니다. 매개변수를 찾을 수 없습니다: %s" +msgid "see also %s" +msgstr "%s 참조" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "%r에 대한 type_comment를 해석하지 못했습니다: %s" +msgid "unknown index entry type %r" +msgstr "알 수 없는 색인 항목 유형 %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/lt/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/lt/LC_MESSAGES/sphinx.mo index cf199a84b91436e9a140ae757434602e60db2d93..3b6bca580f355579fcc997d9f1091d020deffa19 100644 GIT binary patch delta 24 fcmca-e$RY^wg9)Gk*, 2010\n" "Language-Team: Lithuanian (http://app.transifex.com/sphinx-doc/sphinx-1/language/lt/)\n" @@ -19,6 +19,127 @@ msgstr "" "Language: lt\n" "Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -33,127 +154,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +322,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,468 +537,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Dėmesio" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Atsargiai" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Pavojinga" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Klaida" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Patarimas" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Svarbu" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Pastaba" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Taip pat žiūrėkite" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Patarimas" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Įspėjimas" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (kuris yra " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[šaltinis]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumentai]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Modulio kodas" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Kodas %s

" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Apžvalga: modulio kodas" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Visi moduliai turintys kodą

" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "invalid css_file: %r, ignored" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:29 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Įtaisytieji" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Modulio lygis" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -739,9 +1175,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -776,6 +1213,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Padaryti" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "originalus įrašas" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -863,879 +1328,960 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Padaryti" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "originalus įrašas" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Skyriaus autorius: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[šaltinis]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Modulio autorius: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Kodo autorius: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumentai]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autorius: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Modulio kodas" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Kodas %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Apžvalga: modulio kodas" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Visi moduliai turintys kodą

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Įtaisytieji" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (itaisytoji funkcija)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Modulio lygis" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metodas)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (klasė)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (globalus kintamasis arba konstanta)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s atributas)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumentais" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Išmeta" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Grąžinamos reikšmės" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Grąžinamos reikšmės tipas" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (modulis)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcija" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metodas" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klasė" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "duomenys" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribudas" -#: builders/__init__.py:275 +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modulis" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktyva)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (rolė)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direktyva" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "rolė" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "Pakeista %s versijoje" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Nebepalaikoma nuo %s versijos" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (kuris yra " +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%Y-%m-%d" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" + +#: cmd/quickstart.py:520 +#, python-format msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:671 #, python-format -msgid "Domain %r is not registered" +msgid "enable %s extension" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "Invalid template variable: %s" msgstr "" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/display.py:87 -msgid "failed" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/osutil.py:131 +#: directives/other.py:169 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Skyriaus autorius: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Modulio autorius: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Kodo autorius: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autorius: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "" + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/docutils.py:789 +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Išnašos" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[paveiksliukas]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%Y-%m-%d" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1744,11 +2290,15 @@ msgstr "[paveiksliukas]" msgid "Index" msgstr "Indeksas" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Išnašos" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "" @@ -1758,884 +2308,534 @@ msgstr "" msgid "unimplemented node type: %r" msgstr "" -#: writers/latex.py:361 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "[image: %s]" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[paveiksliukas]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" msgstr "" -#: writers/latex.py:591 +#: writers/html5.py:441 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "Any IDs not assigned for %s node" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: writers/latex.py:1580 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "dimension unit %s is invalid. Ignored." +msgid "unsupported rubric heading level: %s" msgstr "" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (itaisytoji funkcija)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metodas)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (klasė)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globalus kintamasis arba konstanta)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atributas)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumentais" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Išmeta" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Grąžinamos reikšmės" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Grąžinamos reikšmės tipas" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modulis)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funkcija" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metodas" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klasė" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "duomenys" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribudas" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modulis" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Pakeista %s versijoje" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Nebepalaikoma nuo %s versijos" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktyva)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rolė)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "direktyva" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "rolė" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Dėmesio" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Atsargiai" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Pavojinga" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Klaida" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Patarimas" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Svarbu" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Pastaba" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Taip pat žiūrėkite" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Patarimas" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Įspėjimas" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "" - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "" - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "" - -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:367 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:396 +#: writers/latex.py:1198 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:406 +#: writers/latex.py:1228 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:1615 #, python-format -msgid "Creating file %s." +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: writers/latex.py:1950 #, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:670 +#: transforms/__init__.py:258 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:146 #, python-format -msgid "Invalid template variable: %s" +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" + +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:131 +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "" + +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "tęsinys iš praeito puslapio" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Leidimas" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Paslėpti šoninę juostą" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigacija" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Ieškoti tarp %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Apie šiuos dokumentus" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Paieška" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Pirmyn" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Autoriaus teisės" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Paskutinis atnaujinimas %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Praeita tema" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "praeita dalis" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Kita tema" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "kita dalis" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Pilnas indeksas viename puslapyje" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Šis puslapis" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Rodyti pirminį kodą" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Turinys" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Ieškoti %(docstitle)s" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Greitoji paieška" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Pirmyn" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2682,7 +2882,7 @@ msgstr "Globalus Modulio Indeksas" msgid "quick access to all modules" msgstr "greitas visų modulių pasiekimas" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Bendras indeksas" @@ -2690,23 +2890,15 @@ msgstr "Bendras indeksas" msgid "all functions, classes, terms" msgstr "visos funkcijos, klasės ir terminai" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Šis puslapis" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Pilnas indeksas viename puslapyje" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Greitoji paieška" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Ieškoti %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2716,57 +2908,6 @@ msgstr "Indekso puslapiai pagal raidę" msgid "can be huge" msgstr "gali būti didelis" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Praeita tema" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "praeita dalis" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Kita tema" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "kita dalis" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigacija" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Ieškoti tarp %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Apie šiuos dokumentus" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Autoriaus teisės" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Paskutinis atnaujinimas %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2783,21 +2924,21 @@ msgstr "" msgid "search" msgstr "ieškoti" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Paslėpti paieškos rezultatus" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Turinys" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Paieškos rezultatai" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2807,22 +2948,21 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Paslėpti paieškos rezultatus" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2830,6 +2970,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2851,120 +2996,127 @@ msgstr "Kiti pakeitimai" msgid "Expand sidebar" msgstr "Išplėsti šoninę juostą" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametrai" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Kintamieji" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Sukelia" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (modulyje %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (modulje %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (įtaisytasis kintamasis)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (įtaisytoji klasė)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klasė iš %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s klasės metodas)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s statinis metodas)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduliai" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Atmestas" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "išimtis" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "klasės metodas" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statinis metodas" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (atmestas)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametrai" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Kintamieji" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Sukelia" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2975,92 +3127,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "narys" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipas" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "kintamasis" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makrokomanda" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "aplinkos kintamasis; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3098,571 +3243,479 @@ msgstr "gramatinė leksema" #: domains/std/__init__.py:731 msgid "reference label" -msgstr "nuorodos požymis" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "aplinkos kintamasis" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "programos parinktis" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Modulio indeksas" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +msgstr "nuorodos požymis" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "aplinkos kintamasis" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "programos parinktis" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Modulio indeksas" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indeksas" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "kitas" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "praeitas" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Leidimas" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "tęsinys iš praeito puslapio" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3670,548 +3723,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indeksas" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "kitas" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "praeitas" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/lv/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/lv/LC_MESSAGES/sphinx.mo index f3593f7a573aeb359bd5221d529330a6c914c78a..b377937aa0da7a99bc19812248995c7c953c31d7 100644 GIT binary patch delta 24 fcmX?Sa?WJKb$)I`BV7YS1w%6{LzB&q_;a`bY+nc0 delta 24 fcmX?Sa?WJKb$)IGBV9ua1p@;sW8=+__;a`bY\n" "Language-Team: Latvian (http://app.transifex.com/sphinx-doc/sphinx-1/language/lv/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: lv\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,468 +536,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Uzmanību" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Uzmanies" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Bīstami" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Kļūda" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Mājiens" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Svarīgi" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Piezīme" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Skat.arī" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Padoms" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Brīdinājums" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (iekš " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[kods]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumenti]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Moduļa teksts" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

%s izejas teksts

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Apskats: moduļa teksts" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Visi moduļi, kuriem ir izejas teksti

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Iebūvētie" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Moduļu līmenis" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -738,9 +1174,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Jāizdara" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "sākotnējs ieraksts" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,879 +1327,960 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Jāizdara" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "sākotnējs ieraksts" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Sekcijas autors: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[kods]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Moduļa autors: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Koda autors: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumenti]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autors: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Moduļa teksts" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s izejas teksts

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Apskats: moduļa teksts" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Visi moduļi, kuriem ir izejas teksti

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Iebūvētie" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (iebūvēta funkcija)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Moduļu līmenis" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metods)" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" msgstr "" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (globālais mainīgais vai konstanta)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s atributs)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumenti" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Izmet" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Atgriež" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Atgriežamais tips" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (modulis)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcija" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metods" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klase" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dati" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atributs" -#: builders/__init__.py:275 +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modulis" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktīva)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (role)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direktīva" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "role" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "Mainīts versijā %s" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Neieteicams no versijas %s" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (iekš " +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d.%m.%Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" + +#: cmd/quickstart.py:520 +#, python-format msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:671 #, python-format -msgid "Domain %r is not registered" +msgid "enable %s extension" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "Invalid template variable: %s" msgstr "" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/display.py:87 -msgid "failed" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/osutil.py:131 +#: directives/other.py:169 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Sekcijas autors: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Moduļa autors: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Koda autors: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autors: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "" + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/docutils.py:789 +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Vēres" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[attēls: %s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[attēls]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d.%m.%Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1743,11 +2289,15 @@ msgstr "[attēls]" msgid "Index" msgstr "Indekss" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Vēres" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "" @@ -1757,884 +2307,534 @@ msgstr "" msgid "unimplemented node type: %r" msgstr "" -#: writers/latex.py:361 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" +msgid "[image: %s]" +msgstr "[attēls: %s]" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[attēls]" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: writers/latex.py:591 +#: writers/html5.py:431 #, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" +msgid "numfig_format is not defined for %s" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: writers/html5.py:441 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Any IDs not assigned for %s node" msgstr "" -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "unsupported rubric heading level: %s" msgstr "" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (iebūvēta funkcija)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metods)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globālais mainīgais vai konstanta)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atributs)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumenti" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Izmet" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Atgriež" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Atgriežamais tips" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modulis)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funkcija" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metods" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klase" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dati" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atributs" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modulis" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Mainīts versijā %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Neieteicams no versijas %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktīva)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (role)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "direktīva" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "role" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Uzmanību" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Uzmanies" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Bīstami" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Kļūda" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Mājiens" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Svarīgi" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Piezīme" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Skat.arī" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Padoms" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Brīdinājums" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "" - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "" - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "" - -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:367 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:396 +#: writers/latex.py:1198 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:406 +#: writers/latex.py:1228 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:1615 #, python-format -msgid "Creating file %s." +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: writers/latex.py:1950 #, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:670 +#: transforms/__init__.py:258 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:146 #, python-format -msgid "Invalid template variable: %s" +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" + +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:131 +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "" + +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "turpinājums no iepriekšējās lappuses" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Izlaidums" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Savērst sānjoslu" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigācija" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Meklēt iekš %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Par šiem dokumentiem" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Meklēt" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Izpildīt" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Pēdējas izmaiņas %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "iepriekšēja tēma" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "iepriekšēja sadaļa" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "nākoša tēma" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "nākoša sadaļa" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Pilns indekss vienā lappusē" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Šī lappuse" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Rādīt izejas tekstu" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Saturs" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s meklēšana" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Ātra meklēšana" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Izpildīt" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2681,7 +2881,7 @@ msgstr "Vispārējs moduļu indekss" msgid "quick access to all modules" msgstr "ātra piekļuve visiem moduliem" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Vispārējs indekss" @@ -2689,23 +2889,15 @@ msgstr "Vispārējs indekss" msgid "all functions, classes, terms" msgstr "visas funkcijas, klases un termini" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Šī lappuse" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Pilns indekss vienā lappusē" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Ātra meklēšana" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s meklēšana" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2715,57 +2907,6 @@ msgstr "Lappušu indekss pēc burtiem" msgid "can be huge" msgstr "var būt milzīgs" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "iepriekšēja tēma" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "iepriekšēja sadaļa" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "nākoša tēma" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "nākoša sadaļa" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigācija" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Meklēt iekš %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Par šiem dokumentiem" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Pēdējas izmaiņas %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "meklēt" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Paslēpt atlases vārdus" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Saturs" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Atlases rezultāti" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,22 +2946,21 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Paslēpt atlases vārdus" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2828,6 +2968,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,120 +2994,127 @@ msgstr "Citas izmaiņas" msgid "Expand sidebar" msgstr "Izplest sānjoslu" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametri" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Mainīgie" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Ceļ" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (moduļī %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (moduļī %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (iebūvētais mainīgais)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (iebūvēta klase)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klase iekš %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s klases metods)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s statiskais metods)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduļi" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Nav ieteicams" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "izņēmums" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "klases metods" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statiskais metods" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametri" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Mainīgie" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Ceļ" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2973,92 +3125,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "loceklis" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tips" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "mainīgais" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makross" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "apkārtnes mainīgais; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3096,571 +3241,479 @@ msgstr "gramatiskais marķieris" #: domains/std/__init__.py:731 msgid "reference label" -msgstr "atsauces virsraksts" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "apkārtnes mainīgais" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "programmas opcija" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Moduļu indekss" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +msgstr "atsauces virsraksts" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "apkārtnes mainīgais" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "programmas opcija" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Moduļu indekss" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indekss" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "nākošais" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "iepriekšējs" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Izlaidums" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "turpinājums no iepriekšējās lappuses" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3721,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indekss" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "nākošais" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "iepriekšējs" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/mk/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/mk/LC_MESSAGES/sphinx.mo index a7c10a1c516723d3280ea0bc9ee50f5eb03ce9c0..09ebc75bfbe9e69de2d57367b45e8df51130c91d 100644 GIT binary patch delta 24 fcmaDa_+D^B1`D^Lk*cAmKqiSVS@(g delta 24 fcmaDa_+D^B1`D@=k*=YIf`NgRvGL|&mKqiSVVnl) diff --git a/addons/source-python/packages/site-packages/sphinx/locale/mk/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/mk/LC_MESSAGES/sphinx.po index 15ea01bd4..a0c12c1ee 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/mk/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/mk/LC_MESSAGES/sphinx.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Vasil Vangelovski , 2013\n" "Language-Team: Macedonian (http://app.transifex.com/sphinx-doc/sphinx-1/language/mk/)\n" @@ -19,6 +19,127 @@ msgstr "" "Language: mk\n" "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Предлог за подобрување на Python; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -33,127 +154,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +322,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,476 +537,632 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (во " + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:353 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_suffix %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:363 -#, python-format -msgid "source_parser for %r is already registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:372 +#: builders/texinfo.py:218 #, python-format -msgid "Source parser for %s not registered" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:390 +#: builders/manpage.py:37 #, python-format -msgid "Translator for %r already exists" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:496 +#: builders/manpage.py:64 #, python-format -msgid "enumerable_node %r already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:512 +#: builders/singlehtml.py:35 #, python-format -msgid "math renderer %s is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:529 -#, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:552 +#: builders/gettext.py:243 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:565 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "building [%s]: " msgstr "" -#: registry.py:577 +#: builders/gettext.py:265 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "targets for %d template files" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:229 +#: builders/linkcheck.py:87 #, python-format -msgid "invalid CVE number %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:159 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:561 #, python-format -msgid "invalid CWE number %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Предлог за подобрување на Python; PEP %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" -#: roles.py:317 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid PEP number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:355 +#: builders/epub3.py:83 #, python-format -msgid "invalid RFC number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:118 +#: builders/xml.py:29 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:124 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid option." +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:139 +#: builders/xml.py:103 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:436 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:467 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:568 -#, python-format -msgid "ignoring invalid doctest code: %r" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/imgmath.py:380 +#: builders/_epub_base.py:594 #, python-format -msgid "inline latex %r: %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:48 -#, python-format -msgid "invalid regex %r in %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Вградени" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Ниво на модул" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 #, python-format msgid "module %s could not be imported: %s" msgstr "" @@ -739,9 +1175,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -776,6 +1213,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -863,947 +1328,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "inline latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Автор на секцијата:" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Автор на модул:" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Автор на код:" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "" -#: directives/other.py:209 -msgid "Author: " -msgstr "Автор: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Вградени" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Ниво на модул" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (вградена функција)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s метод)" -#: builders/changes.py:133 +#: domains/javascript.py:186 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (класа)" -#: builders/manpage.py:37 +#: domains/javascript.py:188 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "%s (global variable or constant)" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/manpage.py:71 +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Фрла" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Враќа" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Повратен тип" + +#: domains/javascript.py:374 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "функција" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:232 -#, python-format -msgid "a suitable image for %s builder not found: %s" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "класа" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:275 +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:361 +#: domains/rst.py:262 #, python-format -msgid "%d source files given on command line" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:377 +#: domains/changeset.py:32 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/changeset.py:33 #, python-format -msgid "building [%s]: " +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:410 +#: domains/changeset.py:35 #, python-format -msgid "%d found" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:412 -msgid "none found" -msgstr "" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:109 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:558 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "" - -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "" - -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/texinfo.py:89 +#: cmd/build.py:357 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (во " +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:134 #, python-format -msgid "unknown mimetype for %s, ignoring" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:794 +#: cmd/quickstart.py:230 #, python-format -msgid "writing %s file..." -msgstr "" - -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/gettext.py:266 +#: cmd/quickstart.py:242 #, python-format -msgid "targets for %d template files" -msgstr "" - -#: builders/gettext.py:271 -msgid "reading templates... " +msgid "Selected root path: %s" msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:298 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:309 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"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" +"just set both to the same value." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:324 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:340 +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 "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:397 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: util/i18n.py:245 +#: cmd/quickstart.py:671 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +msgid "enable %s extension" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/rst.py:73 +#: cmd/quickstart.py:810 #, python-format -msgid "default role %s not found" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:166 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/other.py:169 #, python-format -msgid "[image: %s]" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Автор на секцијата:" + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Автор на модул:" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Автор на код:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Автор: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1832,6 +2343,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1848,1871 +2364,1287 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (вградена функција)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s метод)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (класа)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Фрла" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Враќа" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Повратен тип" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "функција" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "класа" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/rst.py:224 +#: writers/latex.py:1228 #, python-format -msgid "%s (role)" -msgstr "" - -#: domains/rst.py:234 -msgid "directive" -msgstr "" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/rst.py:262 +#: writers/latex.py:1615 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/citation.py:75 +#: writers/latex.py:1950 #, python-format -msgid "duplicate citation %s, other instance in %s" +msgid "unknown index entry type %s found" msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:133 +#: transforms/__init__.py:299 #, python-format -msgid "Please enter one of %s." +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:229 +#: util/inventory.py:147 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:241 +#: util/inventory.py:166 #, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:273 +#: util/i18n.py:253 +#, python-format msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:286 +#: util/osutil.py:131 +#, python-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" - -#: cmd/quickstart.py:339 -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 "" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "" - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "" - -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "" - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "" - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "" - -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "" - -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "" - -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "" - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "" - -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "" - -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "" - -#: cmd/quickstart.py:809 -#, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "" - -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "" - -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "" - -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" - -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "" - -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" - -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "" - -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "" - -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "" - -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "" - -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "" - -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "" - -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "" - -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "" - -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "" - -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "" - -#: domains/std/__init__.py:773 domains/std/__init__.py:786 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "" - -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Главна содржина" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "" - -#: themes/basic/relations.html:4 -msgid "Previous topic" +#: util/display.py:87 +msgid "failed" msgstr "" -#: themes/basic/relations.html:6 -msgid "previous chapter" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: themes/basic/relations.html:11 -msgid "Next topic" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: themes/basic/relations.html:13 -msgid "next chapter" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: themes/basic/layout.html:18 -msgid "Navigation" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: themes/basic/layout.html:115 +#: util/fileutil.py:89 #, python-format -msgid "Search within %(docstitle)s" +msgid "Writing evaluated template result to %s" msgstr "" -#: themes/basic/layout.html:124 -msgid "About these documents" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: util/nodes.py:462 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: themes/basic/layout.html:201 +#: util/nodes.py:523 #, python-format -msgid "Last updated on %(last_updated)s." +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: themes/basic/layout.html:204 +#: util/nodes.py:739 #, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: themes/basic/search.html:35 -msgid "search" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Симболи" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: themes/basic/static/searchtools.js:119 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: themes/basic/static/searchtools.js:123 -#, python-brace-format -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "" -#: themes/basic/static/searchtools.js:253 -msgid "Searching" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: themes/basic/static/searchtools.js:474 -msgid ", in " +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: themes/basic/changes/rstsource.html:5 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "%(filename)s — %(docstitle)s" +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "%s:%s reference target not found: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:17 +#: transforms/post_transforms/__init__.py:297 #, python-format -msgid "Automatically generated list of changes in version %(version)s" +msgid "%r reference target not found: %s" msgstr "" -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: domains/python/_annotations.py:529 -msgid "Positional-only parameter separator (PEP 570)" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: domains/python/_annotations.py:540 -msgid "Keyword-only parameters separator (PEP 3102)" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 -#, python-format -msgid "%s() (in module %s)" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 -#, python-format -msgid "%s (in module %s)" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: domains/python/__init__.py:182 -#, python-format -msgid "%s (built-in variable)" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: domains/python/__init__.py:217 -#, python-format -msgid "%s (built-in class)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: domains/python/__init__.py:218 -#, python-format -msgid "%s (class in %s)" +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: domains/python/__init__.py:283 +#: themes/basic/layout.html:115 #, python-format -msgid "%s() (%s class method)" +msgid "Search within %(docstitle)s" +msgstr "" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "" + +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: domains/python/__init__.py:285 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "%s() (%s static method)" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: domains/python/__init__.py:438 +#: themes/basic/layout.html:201 #, python-format -msgid "%s (%s property)" +msgid "Last updated on %(last_updated)s." msgstr "" -#: domains/python/__init__.py:478 +#: themes/basic/layout.html:204 #, python-format -msgid "%s (type alias in %s)" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: domains/python/__init__.py:638 -msgid "Python Module Index" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: domains/python/__init__.py:639 -msgid "modules" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: domains/python/__init__.py:717 -msgid "Deprecated" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: domains/python/__init__.py:743 -msgid "exception" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: domains/python/__init__.py:745 -msgid "class method" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: domains/python/__init__.py:746 -msgid "static method" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: domains/python/__init__.py:748 -msgid "property" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" -#: domains/python/__init__.py:749 -msgid "type alias" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" msgstr "" -#: domains/python/__init__.py:818 -#, python-format -msgid "" -"duplicate object description of %s, other instance in %s, use :no-index: for" -" one of them" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: domains/python/__init__.py:978 -#, python-format -msgid "more than one target found for cross-reference %r: %s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" -#: domains/python/__init__.py:1052 -msgid " (deprecated)" +#: themes/basic/defindex.html:4 +msgid "Overview" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Параметри" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "" -#: domains/python/_object.py:206 -msgid "Variables" +#: themes/basic/defindex.html:9 +msgid "the documentation for" msgstr "" -#: domains/python/_object.py:214 -msgid "Raises" +#: themes/basic/defindex.html:10 +msgid "last updated" msgstr "" -#: domains/cpp/__init__.py:159 -msgid "Template Parameters" +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" msgstr "" -#: domains/cpp/__init__.py:302 -#, python-format -msgid "%s (C++ %s)" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "" + +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" msgstr "" -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 -msgid "Return values" +#: themes/basic/defindex.html:19 +msgid "search this documentation" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 -msgid "union" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 -msgid "member" -msgstr "член" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 -msgid "type" -msgstr "тип" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Главна содржина" -#: domains/cpp/__init__.py:944 -msgid "concept" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 -msgid "enum" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 -msgid "enumerator" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 -msgid "function parameter" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" msgstr "" -#: domains/cpp/__init__.py:952 -msgid "template parameter" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." msgstr "" -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 -#, python-format +#: themes/basic/search.html:28 msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." +"Searching for multiple words only shows matches that contain\n" +" all words." msgstr "" -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "променлива" +#: themes/basic/search.html:35 +msgid "search" +msgstr "" -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "макро" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "" -#: domains/c/__init__.py:753 -msgid "struct" +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." msgstr "" -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" msgstr "" -#: domains/std/__init__.py:175 -msgid "Type" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." msgstr "" -#: domains/std/__init__.py:185 -msgid "Default" +#: themes/basic/static/searchtools.js:526 +msgid ", in " msgstr "" -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" -#: domains/std/__init__.py:319 +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "%s command line option" +msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:321 -msgid "command line option" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" msgstr "" -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" msgstr "" -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" msgstr "" -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" msgstr "" -#: domains/std/__init__.py:730 -msgid "grammar token" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" msgstr "" -#: domains/std/__init__.py:731 -msgid "reference label" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/std/__init__.py:733 -msgid "environment variable" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Параметри" -#: domains/std/__init__.py:735 -msgid "document" +#: domains/python/_object.py:206 +msgid "Variables" msgstr "" -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: domains/std/__init__.py:857 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format -msgid "duplicate %s description of %s, other instance in %s" +msgid "%s() (in module %s)" msgstr "" -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 +#, python-format +msgid "%s (in module %s)" msgstr "" -#: domains/std/__init__.py:1124 +#: domains/python/__init__.py:174 #, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgid "%s (built-in variable)" msgstr "" -#: domains/std/__init__.py:1138 +#: domains/python/__init__.py:209 #, python-format -msgid "the link has no caption: %s" +msgid "%s (built-in class)" msgstr "" -#: domains/std/__init__.py:1153 +#: domains/python/__init__.py:210 #, python-format -msgid "invalid numfig_format: %s (%r)" +msgid "%s (class in %s)" msgstr "" -#: domains/std/__init__.py:1157 +#: domains/python/__init__.py:275 #, python-format -msgid "invalid numfig_format: %s" +msgid "%s() (%s class method)" msgstr "" -#: domains/std/__init__.py:1453 +#: domains/python/__init__.py:277 #, python-format -msgid "undefined label: %r" +msgid "%s() (%s static method)" msgstr "" -#: domains/std/__init__.py:1456 +#: domains/python/__init__.py:430 #, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" +msgid "%s (%s property)" msgstr "" -#: environment/adapters/toctree.py:324 +#: domains/python/__init__.py:470 #, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" +msgid "%s (type alias in %s)" msgstr "" -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" +#: domains/python/__init__.py:624 +msgid "Python Module Index" msgstr "" -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" +#: domains/python/__init__.py:625 +msgid "modules" msgstr "" -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" +#: domains/python/__init__.py:703 +msgid "Deprecated" msgstr "" -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "погледни %s" +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "" -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "погледни %s" +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "" -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" +#: domains/python/__init__.py:732 +msgid "static method" msgstr "" -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Симболи" +#: domains/python/__init__.py:734 +msgid "property" +msgstr "" -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" +#: domains/python/__init__.py:735 +msgid "type alias" msgstr "" -#: environment/collectors/asset.py:126 +#: domains/python/__init__.py:804 #, python-format -msgid "image file %s not readable: %s" +msgid "" +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" msgstr "" -#: environment/collectors/asset.py:163 +#: domains/python/__init__.py:974 #, python-format -msgid "download file not readable: %s" +msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/python/__init__.py:1048 +msgid " (deprecated)" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/cpp/__init__.py:302 +#, python-format +msgid "%s (C++ %s)" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "член" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "тип" + +#: domains/cpp/__init__.py:946 +msgid "concept" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/cpp/__init__.py:954 +msgid "template parameter" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/c/__init__.py:211 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "%s (C %s)" msgstr "" -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "променлива" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "макро" + +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "environment variable; %s" msgstr "" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:116 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" + +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:239 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:348 +#: domains/std/__init__.py:319 #, python-format -msgid "Failed to read build info file: %r" +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "содржина" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "следна" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "претходна" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1124 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1153 #, python-format -msgid "cannot copy static file %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:949 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy extra file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:955 +#: domains/std/__init__.py:1456 #, python-format -msgid "Failed to write build info file: %r" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1224 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "%s %s документација" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3720,7 +3652,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3735,481 +3667,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "содржина" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "следна" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "претходна" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s документација" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "погледни %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "погледни %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.js b/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.js new file mode 100644 index 000000000..abe98cfba --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.js @@ -0,0 +1,63 @@ +Documentation.addTranslations({ + "locale": "nb", + "messages": { + "%(filename)s — %(docstitle)s": "", + "© %(copyright_prefix)s %(copyright)s.": "", + ", in ": "", + "About these documents": "", + "Automatically generated list of changes in version %(version)s": "", + "C API changes": "", + "Changes in Version %(version)s — %(docstitle)s": "", + "Collapse sidebar": "", + "Complete Table of Contents": "", + "Contents": "", + "Copyright": "", + "Created using Sphinx %(sphinx_version)s.": "", + "Expand sidebar": "", + "Full index on one page": "", + "General Index": "", + "Global Module Index": "", + "Go": "", + "Hide Search Matches": "", + "Index": "", + "Index – %(key)s": "", + "Index pages by letter": "", + "Indices and tables:": "", + "Last updated on %(last_updated)s.": "", + "Library changes": "", + "Navigation": "", + "Next topic": "", + "Other changes": "", + "Overview": "", + "Please activate JavaScript to enable the search\n functionality.": "", + "Preparing search...": "", + "Previous topic": "", + "Quick search": "", + "Search": "", + "Search Page": "", + "Search Results": "", + "Search finished, found one page matching the search query.": [ + "", + "" + ], + "Search within %(docstitle)s": "", + "Searching": "", + "Searching for multiple words only shows matches that contain\n all words.": "", + "Show Source": "", + "Table of Contents": "", + "This Page": "", + "Welcome! This is": "", + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.": "", + "all functions, classes, terms": "", + "can be huge": "", + "last updated": "", + "lists all sections and subsections": "", + "next chapter": "", + "previous chapter": "", + "quick access to all modules": "", + "search": "", + "search this documentation": "", + "the documentation for": "" + }, + "plural_expr": "(n != 1)" +}); \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.mo new file mode 100644 index 0000000000000000000000000000000000000000..52352a5b117dc9922715863346f475378ddf0757 GIT binary patch literal 776 zcmcgqOODe(5Dkcxm#kS75{nrz?H>W6&KONT9u&zQq9m~I*k!xH={DVMNQ79h;RYOm zbFe_-7@UQ6Cd|NMSW;3+Rnn{X>i6^Roi9CWx2@l^e$pj>*r|;_S&yv$xYg@@JLI3c zf+aGQRZwujb%pr}6tWdLNP*C>5@EwkR&h~+sSxxf_-%`7=iXHM;DbWl)@EXf%*Q>8 z{uj+$$=8?}GRw&;RGLdc0hWyw-8u_wq%tJcCC|yYEj3w53UNA`C1<1QbP+F?&iuuS zOcXL>E6J1@q!9YyV-keK4RP}vRJTkI%|*&1sI-QcN}xak}I<0Jh7Rj2io literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.po new file mode 100644 index 000000000..b8d3ea7c4 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/locale/nb/LC_MESSAGES/sphinx.po @@ -0,0 +1,4304 @@ +# Translations template for Sphinx. +# Copyright (C) 2025 ORGANIZATION +# This file is distributed under the same license as the Sphinx project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Sphinx\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" +"PO-Revision-Date: 2013-04-02 08:44+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Norwegian Bokmål (http://app.transifex.com/sphinx-doc/sphinx-1/language/nb/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" +"Language: nb\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 +#, python-format +msgid "Cannot find source directory (%s)" +msgstr "" + +#: application.py:223 +#, python-format +msgid "Output directory (%s) is not a directory" +msgstr "" + +#: application.py:228 +msgid "Source directory and destination directory cannot be identical" +msgstr "" + +#: application.py:258 +#, python-format +msgid "Running Sphinx v%s" +msgstr "" + +#: application.py:286 +#, python-format +msgid "" +"This project needs at least Sphinx v%s and therefore cannot be built with " +"this version." +msgstr "" + +#: application.py:305 +msgid "making output directory" +msgstr "" + +#: application.py:310 registry.py:540 +#, python-format +msgid "while setting up extension %s:" +msgstr "" + +#: application.py:317 +msgid "" +"'setup' as currently defined in conf.py isn't a Python callable. Please " +"modify its definition to make it a callable function. This is needed for " +"conf.py to behave as a Sphinx extension." +msgstr "" + +#: application.py:360 +#, python-format +msgid "loading translations [%s]... " +msgstr "" + +#: application.py:384 util/display.py:89 +msgid "done" +msgstr "" + +#: application.py:386 +msgid "not available for built-in messages" +msgstr "" + +#: application.py:400 +msgid "loading pickled environment" +msgstr "" + +#: application.py:408 +#, python-format +msgid "failed: %s" +msgstr "" + +#: application.py:423 +msgid "No builder selected, using default: html" +msgstr "" + +#: application.py:455 +msgid "build finished with problems." +msgstr "" + +#: application.py:457 +msgid "build succeeded." +msgstr "" + +#: application.py:462 +msgid "" +"build finished with problems, 1 warning (with warnings treated as errors)." +msgstr "" + +#: application.py:466 +msgid "build finished with problems, 1 warning." +msgstr "" + +#: application.py:468 +msgid "build succeeded, 1 warning." +msgstr "" + +#: application.py:474 +#, python-format +msgid "" +"build finished with problems, %s warnings (with warnings treated as errors)." +msgstr "" + +#: application.py:478 +#, python-format +msgid "build finished with problems, %s warnings." +msgstr "" + +#: application.py:480 +#, python-format +msgid "build succeeded, %s warnings." +msgstr "" + +#: application.py:1020 +#, python-format +msgid "node class %r is already registered, its visitors will be overridden" +msgstr "" + +#: application.py:1113 +#, python-format +msgid "directive %r is already registered and will not be overridden" +msgstr "" + +#: application.py:1139 application.py:1167 +#, python-format +msgid "role %r is already registered and will not be overridden" +msgstr "" + +#: application.py:1766 +#, python-format +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 "" + +#: application.py:1771 +#, python-format +msgid "the %s extension is not safe for parallel reading" +msgstr "" + +#: application.py:1775 +#, python-format +msgid "" +"the %s extension does not declare if it is safe for parallel writing, " +"assuming it isn't - please ask the extension author to check and make it " +"explicit" +msgstr "" + +#: application.py:1780 +#, python-format +msgid "the %s extension is not safe for parallel writing" +msgstr "" + +#: application.py:1788 application.py:1792 +#, python-format +msgid "doing serial %s" +msgstr "" + +#: registry.py:162 +#, python-format +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format +msgid "" +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "" + +#: config.py:374 +#, python-format +msgid "'%s' must be '0' or '1', got '%s'" +msgstr "" + +#: config.py:379 +#, python-format +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "" + +#: config.py:391 +#, python-format +msgid "invalid number %r for config value %r, ignoring" +msgstr "" + +#: config.py:399 +#, python-format +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "" + +#: config.py:422 +#, python-format +msgid "unknown config value %r in override, ignoring" +msgstr "" + +#: config.py:476 +#, python-format +msgid "No such config value: %r" +msgstr "" + +#: config.py:504 +#, python-format +msgid "Config value %r already present" +msgstr "" + +#: config.py:541 +#, python-format +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" +msgstr "" + +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 +#, python-format +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "" + +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" +msgstr "" + +#: config.py:611 +#, python-format +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" +msgstr "" + +#: config.py:633 +#, python-format +msgid "Failed to convert %r to a frozenset" +msgstr "" + +#: config.py:651 config.py:659 +#, python-format +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgstr "" + +#: config.py:665 +#, python-format +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." +msgstr "" + +#: config.py:686 +#, python-format +msgid "Section %s" +msgstr "" + +#: config.py:687 +#, python-format +msgid "Fig. %s" +msgstr "" + +#: config.py:688 +#, python-format +msgid "Table %s" +msgstr "" + +#: config.py:689 +#, python-format +msgid "Listing %s" +msgstr "" + +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." +msgstr "" + +#: config.py:829 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." +msgstr "" + +#: config.py:846 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." +msgstr "" + +#: config.py:858 +#, python-format +msgid "primary_domain %r not found, ignored." +msgstr "" + +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." +msgstr "" + +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "" + +#: environment/__init__.py:89 +msgid "new config" +msgstr "" + +#: environment/__init__.py:90 +msgid "config changed" +msgstr "" + +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "" + +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "" + +#: environment/__init__.py:350 +#, python-format +msgid "The configuration has changed (1 option: %r)" +msgstr "" + +#: environment/__init__.py:355 +#, python-format +msgid "The configuration has changed (%d options: %s)" +msgstr "" + +#: environment/__init__.py:361 +#, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "" + +#: environment/__init__.py:518 +#, python-format +msgid "Failed to scan documents in %s: %r" +msgstr "" + +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 +#, python-format +msgid "Domain %r is not registered" +msgstr "" + +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "" + +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "" + +#: environment/__init__.py:952 +#, python-format +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "" + +#: locale/__init__.py:229 +msgid "Attention" +msgstr "" + +#: locale/__init__.py:230 +msgid "Caution" +msgstr "" + +#: locale/__init__.py:231 +msgid "Danger" +msgstr "" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "" + +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "" + +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "" + +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" +msgstr "" + +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "" + +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "" + +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "" + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "" + +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" +msgstr "" + +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "" + +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" +msgstr "" + +#: builders/manpage.py:37 +#, python-format +msgid "The manual pages are in %(outdir)s." +msgstr "" + +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "" + +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" +msgstr "" + +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." +msgstr "" + +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "" + +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "" + +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " +msgstr "" + +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" +msgstr "" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "" + +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "" + +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "" + +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" +msgstr "" + +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" +msgstr "" + +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" + +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "" + +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." +msgstr "" + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "" + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "" + +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "" + +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "" + +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "" + +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" +msgstr "" + +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "" + +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "" + +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "" + +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" +msgstr "" + +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "" + +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" +msgstr "" + +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "" + +#: ext/graphviz.py:339 +#, python-format +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "" + +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "" + +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "" + +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "" + +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" + +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "" + +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" + +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" + +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "" + +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "" + +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "" + +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "" + +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "" + +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" +msgstr "" + +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" +msgstr "" + +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" + +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "" + +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" + +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" + +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" +msgstr "" + +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "" + +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" + +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "" + +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "" + +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "" + +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "" + +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "" + +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "" + +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "" + +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "" + +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "" + +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "" + +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "" + +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "" + +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" +msgstr "" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "" + +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "" + +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr "" + +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "" + +#: domains/rst.py:234 +msgid "directive" +msgstr "" + +#: domains/rst.py:235 +msgid "directive-option" +msgstr "" + +#: domains/rst.py:236 +msgid "role" +msgstr "" + +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "" + +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "" + +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "" + +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "" + +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "" + +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "" + +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "" + +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" + +#: cmd/build.py:114 +msgid "general options" +msgstr "" + +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" + +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" + +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "" + +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "" + +#: cmd/build.py:150 +msgid "path options" +msgstr "" + +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" + +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" + +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" + +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "" + +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "" + +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "" + +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" + +#: cmd/build.py:212 +msgid "console output options" +msgstr "" + +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "" + +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "" + +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "" + +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "" + +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "" + +#: cmd/build.py:252 +msgid "warning control options" +msgstr "" + +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "" + +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "" + +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "" + +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "" + +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" + +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "" + +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" +msgstr "" + +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "" + +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "" + +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "" + +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "" + +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "" + +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "" + +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "" + +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" + +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "" + +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "" + +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "" + +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "" + +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "" + +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "" + +#: cmd/quickstart.py:134 +#, python-format +msgid "Please enter one of %s." +msgstr "" + +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "" + +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "" + +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "" + +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "" + +#: cmd/quickstart.py:242 +#, python-format +msgid "Selected root path: %s" +msgstr "" + +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "" + +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "" + +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "" + +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "" + +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "" + +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "" + +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "" + +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "" + +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "" + +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "" + +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "" + +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "" + +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "" + +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "" + +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "" + +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "" + +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "" + +#: cmd/quickstart.py:340 +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 "" + +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "" + +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "" + +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "" + +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "" + +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "" + +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "" + +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "" + +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "" + +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "" + +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "" + +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "" + +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." +msgstr "" + +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." +msgstr "" + +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" + +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "" + +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "" + +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "" + +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "" + +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "" + +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "" + +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "" + +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "" + +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "" + +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "" + +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "" + +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "" + +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "" + +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "" + +#: cmd/quickstart.py:810 +#, python-format +msgid "Invalid template variable: %s" +msgstr "" + +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" +msgstr "" + +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "" + +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "" + +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "" + +#: directives/other.py:205 +msgid "Module author: " +msgstr "" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "" + +#: directives/other.py:209 +msgid "Author: " +msgstr "" + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "" + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" + +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "" + +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "" + +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" +msgstr "" + +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" + +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" + +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "" + +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" + +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "" + +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "" + +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" + +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" + +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" + +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "" + +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" + +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" + +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" + +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" + +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "" + +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" + +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" + +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" + +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" + +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" + +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" + +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" + +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" + +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" + +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" + +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" + +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" + +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" + +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" + +#: _cli/__init__.py:231 +msgid "" +msgstr "" + +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" + +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "" + +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" + +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "" + +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "" + +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" + +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "" + +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" + +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" + +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "" + +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "" + +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" + +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" + +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "" + +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" + +#: util/display.py:82 +msgid "skipped" +msgstr "" + +#: util/display.py:87 +msgid "failed" +msgstr "" + +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" + +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" + +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "" + +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" + +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "" + +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "" + +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "" + +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" + +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "" + +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "" + +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "" + +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "" + +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "" + +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "" + +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "" + +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "" + +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "" + +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "" + +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "" + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "" + +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "" + +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "" + +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" + +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" + +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "" + +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "" + +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "" + +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "" + +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "" + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "" + +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "" + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "" + +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "" + +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "" + +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "" + +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "" + +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "" + +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "" + +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "" + +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "" + +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "" + +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "" + +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "" + +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "" + +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "" + +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "" + +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "" + +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "" + +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "" + +#: themes/basic/search.html:35 +msgid "search" +msgstr "" + +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "" + +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "" + +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "" + +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "" + +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr "" + +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "" + +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "" + +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "" + +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "" + +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "" + +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "" + +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 +#, python-format +msgid "%s() (in module %s)" +msgstr "" + +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 +#, python-format +msgid "%s (in module %s)" +msgstr "" + +#: domains/python/__init__.py:174 +#, python-format +msgid "%s (built-in variable)" +msgstr "" + +#: domains/python/__init__.py:209 +#, python-format +msgid "%s (built-in class)" +msgstr "" + +#: domains/python/__init__.py:210 +#, python-format +msgid "%s (class in %s)" +msgstr "" + +#: domains/python/__init__.py:275 +#, python-format +msgid "%s() (%s class method)" +msgstr "" + +#: domains/python/__init__.py:277 +#, python-format +msgid "%s() (%s static method)" +msgstr "" + +#: domains/python/__init__.py:430 +#, python-format +msgid "%s (%s property)" +msgstr "" + +#: domains/python/__init__.py:470 +#, python-format +msgid "%s (type alias in %s)" +msgstr "" + +#: domains/python/__init__.py:624 +msgid "Python Module Index" +msgstr "" + +#: domains/python/__init__.py:625 +msgid "modules" +msgstr "" + +#: domains/python/__init__.py:703 +msgid "Deprecated" +msgstr "" + +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "" + +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "" + +#: domains/python/__init__.py:732 +msgid "static method" +msgstr "" + +#: domains/python/__init__.py:734 +msgid "property" +msgstr "" + +#: domains/python/__init__.py:735 +msgid "type alias" +msgstr "" + +#: domains/python/__init__.py:804 +#, python-format +msgid "" +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" +msgstr "" + +#: domains/python/__init__.py:974 +#, python-format +msgid "more than one target found for cross-reference %r: %s" +msgstr "" + +#: domains/python/__init__.py:1048 +msgid " (deprecated)" +msgstr "" + +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" + +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "" + +#: domains/cpp/__init__.py:302 +#, python-format +msgid "%s (C++ %s)" +msgstr "" + +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "" + +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "" + +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "" + +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "" + +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "" + +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "" + +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 +#, python-format +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "" + +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "" + +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "" + +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "" + +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" + +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" + +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "" + +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "" + +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" +msgstr "" + +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "" + +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "" + +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "" + +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" + +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "" + +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" + +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" + +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "" + +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "" + +#: domains/std/__init__.py:735 +msgid "document" +msgstr "" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "" + +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" +msgstr "" + +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "" + +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "" + +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" +msgstr "" + +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" +msgstr "" + +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "" + +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "" + +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" + +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "" + +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "" + +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" + +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "" + +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "" + +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "" + +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "" + +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" + +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" + +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "" + +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "" + +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" +msgstr "" + +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "" + +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "" + +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "" + +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" + +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" + +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" + +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" + +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "" + +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "" + +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "" + +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "" + +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "" + +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" + +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" + +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" + +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "" + +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "" + +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "" + +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" + +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" +msgstr "" + +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "" + +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" + +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "" + +#: ext/apidoc/_extension.py:133 +#, python-format +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" + +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "" + +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "" + +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" + +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" + +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" + +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" + +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" + +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" + +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 +#, python-format +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "" + +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" +msgstr "" + +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" +msgstr "" + +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" + +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "" + +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "" + +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "" + +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "" + +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "" + +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "" + +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "" + +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." +msgstr "" + +#: ext/autosummary/__init__.py:239 +#, python-format +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "" + +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" + +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "" + +#: ext/autosummary/__init__.py:652 +#, python-format +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "" + +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "" + +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" + +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" + +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" + +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" + +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "" + +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "" + +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" + +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "" + +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "" + +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." +msgstr "" + +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" + +#: builders/html/__init__.py:372 +#, python-format +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "" + +#: builders/html/__init__.py:496 +msgid "index" +msgstr "" + +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "" + +#: builders/html/__init__.py:783 +#, python-format +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "" + +#: builders/html/__init__.py:807 +#, python-format +msgid "cannot copy downloadable file %r: %s" +msgstr "" + +#: builders/html/__init__.py:853 +#, python-format +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "" + +#: builders/html/__init__.py:871 +#, python-format +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "" + +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 +#, python-format +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "" + +#: builders/html/__init__.py:938 +#, python-format +msgid "cannot copy extra file %r" +msgstr "" + +#: builders/html/__init__.py:944 +#, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "" + +#: builders/html/__init__.py:1038 +#, python-format +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "" + +#: builders/html/__init__.py:1204 +#, python-format +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "" + +#: builders/html/__init__.py:1217 +#, python-format +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "" + +#: builders/html/__init__.py:1225 +#, python-format +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "" + +#: builders/html/__init__.py:1266 +#, python-format +msgid "dumping search index in %s" +msgstr "" + +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" +msgstr "" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "" + +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "" + +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "" + +#: builders/html/__init__.py:1370 +#, python-format +msgid "html_extra_path entry %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1385 +#, python-format +msgid "html_static_path entry %r is placed inside outdir" +msgstr "" + +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 +#, python-format +msgid "logo file %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1425 +#, python-format +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "" + +#: builders/html/__init__.py:1438 +msgid "" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" + +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" +msgstr "" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" +msgstr "" + +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" + +#: builders/latex/transforms.py:121 +#, python-format +msgid "Failed to get a docname for source %r!" +msgstr "" + +#: builders/latex/transforms.py:487 +#, python-format +msgid "No footnote was found for given reference node %r" +msgstr "" + +#: builders/latex/__init__.py:115 +#, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 +msgid "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 +#, python-format +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 +#, python-format +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "" + +#: builders/latex/__init__.py:537 +#, python-format +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" + +#: environment/collectors/asset.py:98 +#, python-format +msgid "image file not readable: %s" +msgstr "" + +#: environment/collectors/asset.py:126 +#, python-format +msgid "image file %s not readable: %s" +msgstr "" + +#: environment/collectors/asset.py:165 +#, python-format +msgid "download file not readable: %s" +msgstr "" + +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "" + +#: environment/adapters/toctree.py:360 +#, python-format +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "" + +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" +msgstr "" + +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" +msgstr "" + +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.js b/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.js index b71a47407..6378774c7 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.js +++ b/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.js @@ -20,7 +20,7 @@ Documentation.addTranslations({ "Go": "G\u00e5", "Hide Search Matches": "Skjul s\u00f8keresultat", "Index": "Index", - "Index – %(key)s": "", + "Index – %(key)s": "Indeks – %(key)s", "Index pages by letter": "Registersider per bokstav", "Indices and tables:": "Registre og tabeller", "Last updated on %(last_updated)s.": "Sist oppdatert %(last_updated)s.", diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.mo index bab6698609cba53b72d698ab0f2b76910bea3866..fc5bb2c0e00d0ed7f9f6398b337a9ef9607aacca 100644 GIT binary patch delta 2585 zcmZY9e@vBC9LMoNf<_21v7L}QYGGBkN9Sa#&l^=0X;<50*RJEh_PP zWUASSsze(qa0E5K7gysOs6@v7)StGw&esCGWe2j!LV-(BrMn*$pca+bT6^7O$2Va* z{cU!<2et02xEuRXCC?yhRVaw-usVhMYbSg7QpWpH0fz1MDC(&`ftq**mC#ohgO^bi zn6TrMs6?lbkGaj4?)R~X`jb#`(s3Tnb7^SdYE;&J3fRuf)A0?FlUf;Tyu$r0#0BKUbokGQ5Es=q-Y1JsE4Tll|Usb zP!*o_7_$a-zn`0QG`Xma<)bR~0BVElP>D5Sy59d*8Y=CJcAyUx@E{i9C@SL%sHgav zbqY1_chrJ@E_4J1))lCA8j-4-Em(p(Q5!gbOZ5H^)6mY(qt5a>)Xx4w?Zn5=pLUjr z`k~4|?WhTL|7O(vT}TnkOIV3-q7pidO5iFM;4i47Ol8p3!Z|b=Fo4Re8@1pr)Gu4F z?H@udbQrb3anyZdsE70vszQ@UQOu914aBfJB^HlbKM!@}P7d|gnJl7%q|8#}W9srLw|JAN0Hu%F#1flSoAyj<$99W0@PWK9JsKs~O( zW>n?}P*3|&T!1H0m6$}`e;c)tzfniy<58D$tU0K_MaXk)ifw$oE{H1Qa!B&SiO z`o?+%9jAd{J$)9u;^SD$owp??ex(0(+2(xn|JbaL77> zdYz8V++aROP5crU;U(K|@@Eo=vnHdCARV=VTzg%JnqQ2n;Br)A4H&QYe*+B#d% z2zz{te0uks;`Z=!o#D1nces5q zSJ9fpfta{wp1#)!boGxXy^yl7sHeOvcwe;>DDDXFTHF;~l^lri2D+jxDL1^cgXK%h zf=+N*Rj{JJA#IhvVO!`~=fO~<)G043uZ+H*_OaI!j&9CO^8UN#*6hx#hqt$fJGz|z cEqytA+!OsEcfBXEDbyN{M93lfXWp>)A4{|J;s5{u delta 2465 zcmYM!drX#99Ki9zHBd1U62VKa>*7_qtq%EdptDNQ5rkNZ5k(Jc4#-jW83ulV~pXWK}Ip=pd@AK}e?Y%kq z?TpNxz|U^}=J2;a)4TtF%5y`=<8}#V;R?JKZ$*AXYaHK*S8?Bg1-KJuVlU=nKTgMw zFoCC#=abL$FGK^+Mb|IIdaOkg z*@pav9{w%B{nP2c6DJrjqjPAhen12Kf+jW|@3Y9(`8+JdLUeu+@<^z`ZFn2n;^Sy% zM(|F&gch=le&*u-t@c}fz z5YEM8=)M=wc%$f1jVHOV@_*6SZyH&6_KVPfb?CxIwBl9hThJQEx1fQZM33Ty=xbevXczmHmw-kTqj+gDGf>i_q~>G;kS`d#H}{jcDuFAl(j| z(C4?J0e4_Ac23?WLmwBmkKIy#CIZvhX{v`~nP zu@o)f9xTJPXys3!3GKlg-~WCttmJ*PvLomh(x+%exqSV(paAW}LiDYv#2Rcw6M7s? zpc}8jKJ+M$qx*h=cjFl}u|+IOy5S96_ziXwI?;q~v<{tbLqDADXlI^BiVnSK;)l_M z2GI4NplAI#dK9P8%Fm#M{Duk4EvEk@6BaY;#`Wj}ccDko635%4TcS_J`7X4=eQ4mf z;`m`S@eh$$;RL$>2sYp-PIRz@{`-0~QvL#LLMwj+UGOwoK{t97y>WbhynhD`JcxWQ z!;v_C3jIu+MZb`~M-zF7SHsS1$2xpA$pyz8K0`CUfG)g*X7~qscGKy<3ro;|^P{C` zVrA(18gyMP+QBBYLoLw_nBcx0U6<_Q!VbKO26!{x_oLrjN04rXZ_vPFXrMpQ?}JPp zvho77Q>Ey9d9((7Yii^CDsNDava}_R?rvk-$pkWKsz^#CUypW z?mQasJG67Zqpi=JH+i&k(L`^=%&?M{aX~R*d7M~>F1!y7)P}b7Q8Z8|TH)?_sr9*U zWOPl*>qzzF&C5s)<)2TVT2Zy6a#^CHV)@dgU3~?&%wGLKd!pgN_O{I(ZOt1Kw>Lk$ xxudzYJW*9qRh{~^;Jx&;=G1|i)6%;>n6)X@SbQ=qEs-jmy*e$man9cK{{Yj1=@$S1 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.po index 1e16f14a9..a8c989b64 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/nb_NO/LC_MESSAGES/sphinx.po @@ -3,14 +3,16 @@ # This file is distributed under the same license as the Sphinx project. # # Translators: +# Lars Stramd, 2025 +# Njam Dal, 2025 # Per Christian Gaustad, 2024 msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" -"Last-Translator: Per Christian Gaustad, 2024\n" +"Last-Translator: Njam Dal, 2025\n" "Language-Team: Norwegian Bokmål (Norway) (http://app.transifex.com/sphinx-doc/sphinx-1/language/nb_NO/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -19,6 +21,127 @@ msgstr "" "Language: nb_NO\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -33,127 +156,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +311,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +324,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,468 +539,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" -msgstr "" +msgstr "Fig. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" -msgstr "" +msgstr "Tabell %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Obs" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Advarsel" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Fare" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Feil" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Hint" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Viktig" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Merknad" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Se også" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tips" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Advarsel" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(i " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[kilde]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumentasjon]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Modul kildekode" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Kildekode for %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Oversikt: modulkildekode" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Alla moduler hvor kildekode finnes

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Innebygde" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Modulnivå" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -739,9 +1177,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -776,6 +1215,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "opprinnelig oppføring" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -863,879 +1330,960 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "opprinnelig oppføring" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Forfatter av avsnitt: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[kilde]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Forfatter av modul: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Forfatter av kildekode: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumentasjon]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Forfatter: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Modul kildekode" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Kildekode for %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Oversikt: modulkildekode" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Alle moduler hvor kildekode finnes

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Innebygde" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (innebygd funksjon)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Modulnivå" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metode)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (klasse)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (global variabel eller konstant)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s attribut)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argument" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Kaster" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Returnere" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Returtype" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (modul)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funksjon" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metode" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klasse" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" -#: builders/__init__.py:275 +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attributt" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktiv)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (rolle)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direktiv" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "rolle" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "Endret i version %s" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Frarådet siden version %s" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr "(i " +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:350 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d. %b %Y" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:378 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:527 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:671 #, python-format -msgid "Domain %r is not registered" +msgid "enable %s extension" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "Invalid template variable: %s" msgstr "" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/display.py:87 -msgid "failed" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/osutil.py:131 +#: directives/other.py:169 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Forfatter av avsnitt: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Forfatter av modul: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Forfatter av kildekode: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Forfatter: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "" + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/docutils.py:789 +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Fotnoter" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[bilde]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d. %b %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1744,11 +2292,15 @@ msgstr "[bilde]" msgid "Index" msgstr "Index" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Fotnoter" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "" @@ -1758,53 +2310,14 @@ msgstr "" msgid "unimplemented node type: %r" msgstr "" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown index entry type %s found" +msgid "[image: %s]" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[bilde]" #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" @@ -1832,7 +2345,12 @@ msgstr "" msgid "Link to this table" msgstr "" -#: writers/html5.py:636 +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + +#: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1848,794 +2366,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 +#: writers/latex.py:386 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (innebygd funksjon)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metode)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (klasse)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (global variabel eller konstant)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attribut)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argument" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Kaster" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Returnere" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Retur type" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funksjon" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metode" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klasse" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "attributt" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" - -#: domains/javascript.py:454 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate %s description of %s, other %s in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Endret i version %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Frarådet siden version %s" - -#: domains/changeset.py:29 +#: writers/latex.py:616 #, python-format -msgid "Removed in version %s" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktiv)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rolle)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "direktiv" - -#: domains/rst.py:235 -msgid "directive-option" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "rolle" - -#: domains/rst.py:262 +#: writers/latex.py:1228 #, python-format -msgid "duplicate description of %s %s, other instance in %s" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/citation.py:75 +#: writers/latex.py:1615 #, python-format -msgid "duplicate citation %s, other instance in %s" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/citation.py:92 +#: writers/latex.py:1950 #, python-format -msgid "Citation [%s] is not referenced." +msgid "unknown index entry type %s found" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Obs" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Advarsel" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Fare" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Feil" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Hint" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Viktig" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Merknad" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Se også" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tips" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Advarsel" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:234 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" - -#: cmd/quickstart.py:339 -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 "" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:367 +#: util/i18n.py:100 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:396 +#: util/i18n.py:253 +#, python-format msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:406 +#: util/osutil.py:131 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: util/docutils.py:325 #, python-format -msgid "Creating file %s." +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/docutils.py:361 #, python-format -msgid "File %s already exists, skipping." +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:519 +#: util/fileutil.py:76 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:530 +#: util/docfields.py:103 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:572 +#: util/nodes.py:462 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "" - -#: cmd/quickstart.py:670 +#: util/nodes.py:523 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "fortsettelse fra forrige side" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "fortsetter på neste side" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Ikke-alfabetisk" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Tall" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "side" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Utgivelse" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:792 +#: transforms/post_transforms/__init__.py:88 msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:131 +#: _cli/util/errors.py:207 msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:157 +#: _cli/util/errors.py:240 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Skjul sidepanelet" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigering" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Søk blant %(docstitle)s" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Om disse dokumentene" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Søk" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Opphavsrett" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Sist oppdatert %(last_updated)s." -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Laget med Sphinx %(sphinx_version)s." -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Forrige emne" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "forrige kapittel" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Neste emne" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "neste kapittel" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Skjul sidepanelet" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Innholdsfortegnelse" +msgid "Index – %(key)s" +msgstr "Indeks – %(key)s" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Søk" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Hele registeret på én side" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Gå" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Denne siden" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Vis kildekode" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Innhold" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Søk %(docstitle)s" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Hurtigsøk" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Gå" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2682,7 +2884,7 @@ msgstr "Globalt modulregister" msgid "quick access to all modules" msgstr "snarvei til alle moduler" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Hovedindex" @@ -2690,23 +2892,15 @@ msgstr "Hovedindex" msgid "all functions, classes, terms" msgstr "alla funksjoner, klasser, termer" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Denne siden" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Innholdsfortegnelse" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Hele registeret på én side" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Hurtigsøk" +msgid "Search %(docstitle)s" +msgstr "Søk %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2716,57 +2910,6 @@ msgstr "Registersider per bokstav" msgid "can be huge" msgstr "kan bli stor" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Forrige emne" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "forrige kapittel" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Neste emne" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "neste kapittel" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigering" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Søk blant %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Om disse dokumentene" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Opphavsrett" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Sist oppdatert %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Laget med Sphinx %(sphinx_version)s." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2783,21 +2926,21 @@ msgstr "Søk etter flere ord viser bare treff som inneholder\n  alle ord" msgid "search" msgstr "søk" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Skjul søkeresultat" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Innhold" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Søkeresultat" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,22 +2948,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Søker" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Forbereder søk …" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", i " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Skjul søkeresultat" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2828,6 +2970,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Endringer i versjon %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,120 +2996,127 @@ msgstr "Andre endringer" msgid "Expand sidebar" msgstr "Utvid sidepanelet" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametere" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variabler" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Hever" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (i modul %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (i modul %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (innebygd variabel)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (innebygd klasse)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klasse i %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s klassemetode)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s statisk metode)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python Modulindex" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduler" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Foreldet" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "untak" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "klassemetode" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statisk metode" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (foreldet)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametere" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variabler" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Hever" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2973,92 +3127,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "medlem" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "type" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variabel" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "miljøvariabel; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3104,563 +3251,471 @@ msgstr "miljøvariabel" #: domains/std/__init__.py:734 msgid "program option" -msgstr "programvalg" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Modulindex" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "se %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "se også %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +msgstr "programvalg" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Modulindex" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "neste" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "forrige" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:240 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Utgivelse" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "fortsettelse fra forrige side" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "fortsetter på neste side" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Ikke-alfabetisk" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Tall" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "side" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3723,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "neste" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "forrige" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "" +msgid "see %s" +msgstr "se %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "" +msgid "see also %s" +msgstr "se også %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ne/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ne/LC_MESSAGES/sphinx.mo index ab15e162d404fa535e965c326650fc5f76e634d6..2df44a69b256a6da0792596604da97422fdb6e5e 100644 GIT binary patch delta 24 fcmccaeBF72p#Zm`k*, 2016\n" "Language-Team: Nepali (http://app.transifex.com/sphinx-doc/sphinx-1/language/ne/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: ne\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,468 +538,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "ध्यानाकर्षण" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "होसियार " -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "खतरा" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "गलत" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "सङ्केत" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "जरुरी" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "टिप्पणी" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "पनि हेर्नुहोस" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tip" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "साबधान" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(in" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[स्रोत]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[docs]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Module code" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Source code for %s

" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "पुनरावलोकन: module code" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

All modules for which code is available

" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "invalid css_file: %r, ignored" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:29 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "बिइल्टिन्स" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "मडुलको तह" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -740,9 +1176,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -777,6 +1214,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "मौलिक इन्ट्री" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -864,879 +1329,960 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "मौलिक इन्ट्री" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "सेक्सनको लेखक" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[स्रोत]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "मडुलको लेखक" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Codeको लेखक " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: directives/other.py:209 -msgid "Author: " -msgstr "लेखक" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Module code" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Source code for %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "पुनरावलोकन: module code" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

All modules for which code is available

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "बिइल्टिन्स" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (built-in function)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "मडुलको तह" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s विधी)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (कक्षा)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (global variable or constant)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s attribute)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Arguments" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Throws" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Returns" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Return type" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (मडुल)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "फन्क्सन" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "विधी" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "कक्षा" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attribute" -#: builders/__init__.py:275 +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "मडुल" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (निर्देशिक)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (भूमिका)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "निर्देशिक" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "भूमिका" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "भर्सन %s मा बदलिएको" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Deprecated since version %s" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr "(in" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" + +#: cmd/quickstart.py:520 +#, python-format msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:671 #, python-format -msgid "Domain %r is not registered" +msgid "enable %s extension" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "Invalid template variable: %s" msgstr "" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/display.py:87 -msgid "failed" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/osutil.py:131 +#: directives/other.py:169 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: directives/other.py:203 +msgid "Section author: " +msgstr "सेक्सनको लेखक" + +#: directives/other.py:205 +msgid "Module author: " +msgstr "मडुलको लेखक" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Codeको लेखक " + +#: directives/other.py:209 +msgid "Author: " +msgstr "लेखक" + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "" + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/docutils.py:789 +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "फूट्नोट्स" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[चित्र]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1745,11 +2291,15 @@ msgstr "[चित्र]" msgid "Index" msgstr "अनुसुची" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "फूट्नोट्स" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "" @@ -1759,885 +2309,535 @@ msgstr "" msgid "unimplemented node type: %r" msgstr "" -#: writers/latex.py:361 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "[image: %s]" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[चित्र]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" msgstr "" -#: writers/latex.py:591 +#: writers/html5.py:441 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "Any IDs not assigned for %s node" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: writers/latex.py:1580 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "dimension unit %s is invalid. Ignored." +msgid "unsupported rubric heading level: %s" msgstr "" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (built-in function)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s विधी)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (कक्षा)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (global variable or constant)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attribute)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Arguments" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Throws" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Returns" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Return type" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (मडुल)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "फन्क्सन" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "विधी" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "कक्षा" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "attribute" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "मडुल" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "भर्सन %s मा बदलिएको" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Deprecated since version %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (निर्देशिक)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (भूमिका)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "निर्देशिक" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "भूमिका" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "ध्यानाकर्षण" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "होसियार " - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "खतरा" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "गलत" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "सङ्केत" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "जरुरी" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "टिप्पणी" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "पनि हेर्नुहोस" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tip" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "साबधान" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "" - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "" - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "" - -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:367 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:396 +#: writers/latex.py:1198 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:406 +#: writers/latex.py:1228 +#, python-format msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:1615 #, python-format -msgid "Creating file %s." +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: writers/latex.py:1950 #, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:670 +#: transforms/__init__.py:258 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:113 #, python-format -msgid "Invalid template variable: %s" +msgid "writing error: %s, %s" msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:131 +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" + +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "" + +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "अघिल्लो पानासँग जोडीएको" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "रीलीज" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "साइडबर सानो बनाउनुहोस्" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "नेभिगेसन " + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "यी डकुमेन्टहरुको बारेमा" + #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "खोज्नुहोस् " -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "जानुहोस्" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "कपिराइट " -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "स्रोत देखाउनुहोस् " +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "विषयसूची" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "यो भन्दा अगाडी %(last_updated)s मा अपडेट भएको" -#: themes/basic/opensearch.xml:4 +#: themes/basic/layout.html:204 #, python-format -msgid "Search %(docstitle)s" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "अघिल्लो विषय " + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "अघिल्लो खन्ड" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "पछिल्लो विषय" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "पछिल्लो खन्ड" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "पुरा अनुसुची एकै पानामा" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "यो पाना" + +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "स्रोत देखाउनुहोस् " + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "छिट्टो खोज्नुहोस्" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "जानुहोस्" + #: themes/basic/defindex.html:4 msgid "Overview" msgstr "पुनरावलोकन " @@ -2683,7 +2883,7 @@ msgstr "ग्लोबल मडुल अनुसुची" msgid "quick access to all modules" msgstr "सबै मोदुलेसमा छिटै जानुहोस्" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "सामान्य अनुसुची" @@ -2691,24 +2891,16 @@ msgstr "सामान्य अनुसुची" msgid "all functions, classes, terms" msgstr "सबै फन्क्सनस्, कक्षाहरू र टर्मस्" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "यो पाना" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" +msgid "Search %(docstitle)s" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "पुरा अनुसुची एकै पानामा" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "छिट्टो खोज्नुहोस्" - #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" msgstr "अक्षर अनुसार अनुसुचीका पाना" @@ -2717,57 +2909,6 @@ msgstr "अक्षर अनुसार अनुसुचीका पान msgid "can be huge" msgstr "धेरै ठुलो हुन सक्छ" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "अघिल्लो विषय " - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "अघिल्लो खन्ड" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "पछिल्लो विषय" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "पछिल्लो खन्ड" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "नेभिगेसन " - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "यी डकुमेन्टहरुको बारेमा" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "कपिराइट " - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "यो भन्दा अगाडी %(last_updated)s मा अपडेट भएको" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2784,21 +2925,21 @@ msgstr "" msgid "search" msgstr "खोज्नुहोस्" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "खोजेको नतिजाहरु लुकाउनुहोस्" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "विषयसूची" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "खोजेको नतिजा" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2806,22 +2947,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "खोजेको नतिजाहरु लुकाउनुहोस्" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2829,6 +2969,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2850,120 +2995,127 @@ msgstr "अरु परिवर्तनहरु " msgid "Expand sidebar" msgstr "साइडबर ठुलो बनाउनुहोस्" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parameters" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "चलहरू" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Raises" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (in मडुल %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (in मडुल %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (built-in चल)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (built-in कक्षा)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (कक्षा in %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s कक्षा विधी)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s static विधी)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python Module Index" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modules" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Deprecated" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "अपबाद" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "कक्षा विधी" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "static विधी" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "(deprecated)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parameters" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "चलहरू" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2974,92 +3126,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "सदस्य" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "किसिम" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "चल" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "बृहत" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "environment variable; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3099,569 +3244,477 @@ msgstr "grammar token" msgid "reference label" msgstr "सन्दर्व सामग्री" -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "environment variable" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "कार्यक्रमका बिकल्प" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "मडुल अनुसुची" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "%s हेर्नुहोस्" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "%s पनि हेर्नुहोस् " - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "environment variable" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "कार्यक्रमका बिकल्प" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "मडुल अनुसुची" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "अनुसुची" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "पछिल्लो" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "अघिल्लो" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "रीलीज" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "अघिल्लो पानासँग जोडीएको" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3669,548 +3722,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "अनुसुची" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "पछिल्लो" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "अघिल्लो" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "" +msgid "see %s" +msgstr "%s हेर्नुहोस्" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "" +msgid "see also %s" +msgstr "%s पनि हेर्नुहोस् " -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/nl/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/nl/LC_MESSAGES/sphinx.mo index 12d58495281da341d9ebb2310f9a486d1b9addb4..f93d3657606904b5ef23a9a2485ee88f31e83dcc 100644 GIT binary patch delta 3821 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, 2021\n" "Language-Team: Dutch (http://app.transifex.com/sphinx-doc/sphinx-1/language/nl/)\n" @@ -25,6 +25,127 @@ msgstr "" "Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "instelling %s.%s komt niet voor in de doorzochte thema configuraties" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "bestand %r in thema pad is geen geldige zipfile of bevat geen thema" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -39,127 +160,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Dit project vereist extensie %s met versie %s of hoger, en kan daarom niet met de geladen versie (%s) worden gebouwd" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Gebeurtenis %r bestaat reeds" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Onbekende gebeurtenisnaam: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Kan bronmap niet vinden (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Bron- en doelmap kunnen niet identiek zijn" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx v%s start op" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Dit project vereist tenminste Sphinx v%s, en kan daarom niet worden gebouwd met deze versie." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "aanmaken doelmap" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' gedefinieerd in conf.py is niet aanroepbaar (geen Python-callable). Pas a.u.b. de definitie aan zodat het een oproepbare functie wordt. Dit is nodig voor conf.py om zich als een Sphinx extensie te gedragen." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "laden van vertalingen [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "klaar" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "mislukt: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Geen bouwer geselecteerd, dus de standaardbouwer wordt gebruikt: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -167,12 +315,12 @@ msgid "" "explicit" msgstr "de %s extensie geeft niet aan of deze veilig is voor parallel lezen, er wordt aangenomen dat dit niet zo is - vraag de auteur van de extensie om dit te controleren en expliciet te maken" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -180,82 +328,214 @@ msgid "" "explicit" msgstr "de %s extensie geeft niet aan of deze veilig is voor parallel schrijven, er wordt aangenomen dat dit niet zo is - vraag de auteur van de extensie om dit te controleren en expliciet te maken" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "seriële verwerking van %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "configuratiemap bevat geen conf.py bestand (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Bouwerklasse %s heeft geen \"name\"-attribuut" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Bouwer %r bestaat reeds (in module %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Bouwernaam %s is niet geregistreerd of beschikbaar via entrypoint" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Bouwernaam %s is niet geregistreerd" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domein %s was reeds geregistreerd" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domein %s nog niet geregistreerd" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser voor %r is reeds geregistreerd" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Broncode-parser voor %s is niet geregistreerd" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "extensie %r is reeds in Sphinx ingevoegd sinds Sphinx-versie %s; deze extensie wordt genegeerd." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Oorspronkelijke exceptie:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Kon extensie %s niet importeren" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "extensie %r heeft geen setup() functie; weet u zeker dat het een Sphinx-extensiemodule is?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Dit project gebruikt extensie %s, maar die extensie heeft Sphinx-versie v%s of hoger nodig; het project kan daarom niet worden gebouwd met deze versie." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "de setup() functie van extensie %r retourneerde een niet-ondersteund object; dit moet None of een metadata dictionary zijn" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "configuratiemap bevat geen conf.py bestand (%s)" + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "kan dictionary-instelling %r niet overschrijven in configuratie, wordt genegeerd (gebruik %r om individuele elementen te overschrijven)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "ongeldig getal %r voor configuratiewaarde %r, wordt genegeerd" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "kan instelling %r niet overschrijven met zo'n waarde van een niet-ondersteund type; wordt genegeerd" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "onbekende configuratiewaarde %r tijdens overschrijven, wordt genegeerd" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Configuratiewaarde %r was reeds aangevoerd" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -263,468 +543,624 @@ msgid "" "%s" msgstr "Een fout heeft zich voorgedaan in uw configuratiebestand:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Sectie %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Fig. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabel %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Codefragment %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r onbekend, wordt genegeerd." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "instelling %s.%s komt niet voor in de doorzochte thema configuraties" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "bestand %r in thema pad is geen geldige zipfile of bevat geen thema" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "bronmap is gewijzigd" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Let op" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Gebeurtenis %r bestaat reeds" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Pas op" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Onbekende gebeurtenisnaam: %s" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Gevaar" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Fout" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Hint" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Belangrijk" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Notitie" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Zie ook" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tip" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Waarschuwing" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Bouwerklasse %s heeft geen \"name\"-attribuut" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Bouwer %r bestaat reeds (in module %s)" +msgid "processing %s" +msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Bouwernaam %s is niet geregistreerd of beschikbaar via entrypoint" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Bouwernaam %s is niet geregistreerd" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "domein %s was reeds geregistreerd" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (in " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "domein %s nog niet geregistreerd" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser voor %r is reeds geregistreerd" +msgid "The HTML page is in %(outdir)s." +msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Broncode-parser voor %s is niet geregistreerd" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "extensie %r is reeds in Sphinx ingevoegd sinds Sphinx-versie %s; deze extensie wordt genegeerd." +msgid "targets for %d template files" +msgstr "" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Oorspronkelijke exceptie:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "Kon extensie %s niet importeren" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "extensie %r heeft geen setup() functie; weet u zeker dat het een Sphinx-extensiemodule is?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Dit project gebruikt extensie %s, maar die extensie heeft Sphinx-versie v%s of hoger nodig; het project kan daarom niet worden gebouwd met deze versie." +msgid "broken link: %s (%s)" +msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "de setup() functie van extensie %r retourneerde een niet-ondersteund object; dit moet None of een metadata dictionary zijn" +msgid "Anchor '%s' not found" +msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[broncode]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[documentatie]" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Modulebroncode" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Broncode voor %s

" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Overzicht: module broncode" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Alle modules waarvoor de broncode beschikbaar is

" +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "" -#: ext/extlinks.py:82 +#: builders/xml.py:29 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "error writing file %s: %s" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:103 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:467 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "ontbrekende '+' of '-' in optie '%s'." +msgid "cannot write image file %r: %s" +msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' is geen geldige optie." +msgid "unknown mimetype for %s, ignoring" +msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' is geen geldige pyversion optie" +msgid "writing %s file..." +msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" +msgstr "bestand %r zoals gegeven op de opdrachtregel is niet aanwezig in de bronmap, wordt genegeerd" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:366 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "%d source files given on command line" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:382 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Builtins" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Moduleniveau" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -745,9 +1181,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -782,6 +1219,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Te doen" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(Het <> bevindt zich in %s, regel %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "originele item" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -869,1779 +1334,1514 @@ msgstr "[graaf: %s]" msgid "[graph]" msgstr "[graaf]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Te doen" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" - -#: ext/todo.py:154 +#: ext/imgmath.py:167 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(Het <> bevindt zich in %s, regel %d.)" - -#: ext/todo.py:166 -msgid "original entry" -msgstr "originele item" - -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: directives/code.py:87 +#: ext/imgmath.py:326 #, python-format -msgid "Invalid caption: %s" -msgstr "Ongeldig onderschrift: %s" +msgid "display latex %r: %s" +msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/imgmath.py:362 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Gebruik van zowel \"%s\" als \"%s\" opties is niet toegestaan" - -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:118 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +msgid "missing '+' or '-' in '%s' option." +msgstr "ontbrekende '+' of '-' in optie '%s'." -#: directives/code.py:276 +#: ext/doctest.py:124 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "Object met naam %r is niet gevonden in include bestand %r" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "\"lineno-match\" kan niet gebruikt worden met een disjuncte set \"lines\"" +msgid "'%s' is not a valid option." +msgstr "'%s' is geen geldige optie." -#: directives/code.py:314 +#: ext/doctest.py:139 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Regels %r: geen regels gebruikt uit include-bestand %r" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' is geen geldige pyversion optie" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/other.py:119 +#: ext/doctest.py:297 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/doctest.py:451 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/other.py:156 +#: ext/doctest.py:568 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/other.py:169 +#: ext/autosectionlabel.py:52 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " -msgstr "Auteur van deze sectie: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Auteur van deze module: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Auteur van deze broncode:" - -#: directives/other.py:209 -msgid "Author: " -msgstr "Auteur: " - -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" - -#: directives/other.py:292 -msgid ".. hlist content is not a list" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: builders/changes.py:29 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "duplicate label %s, other instance in %s" msgstr "" -#: builders/changes.py:56 +#: ext/duration.py:47 #, python-format -msgid "no changes in version %s." +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Builtins" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Moduleniveau" - -#: builders/changes.py:124 -msgid "copying source files..." +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: builders/changes.py:133 -#, python-format -msgid "could not read %r for changelog creation" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: builders/manpage.py:37 +#: ext/duration.py:139 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "%.3fs %s" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[broncode]" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[documentatie]" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Modulebroncode" -#: builders/__init__.py:232 +#: ext/viewcode.py:359 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "

Source code for %s

" +msgstr "

Broncode voor %s

" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Overzicht: module broncode" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Alle modules waarvoor de broncode beschikbaar is

" -#: builders/__init__.py:275 +#: domains/citation.py:75 #, python-format -msgid "all of %d po files" +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/citation.py:92 #, python-format -msgid "targets for %d po files that are specified" +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/__init__.py:309 +#: domains/math.py:73 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "duplicaatlabel van formule %s, andere in %s" -#: builders/__init__.py:330 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "file %r given on command line does not exist, " +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/__init__.py:337 +#: domains/javascript.py:183 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "bestand %r zoals gegeven op de opdrachtregel is niet aanwezig in de bronmap, wordt genegeerd" +msgid "%s() (built-in function)" +msgstr "%s() (ingebouwde functie)" -#: builders/__init__.py:348 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "%s() (%s method)" +msgstr "%s() (%s methode)" -#: builders/__init__.py:361 +#: domains/javascript.py:186 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (klasse)" -#: builders/__init__.py:377 +#: domains/javascript.py:188 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (globale variabele of constante)" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s attribuut)" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumenten" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Werpt" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Returns" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Return type" -#: builders/__init__.py:410 +#: domains/javascript.py:374 #, python-format -msgid "%d found" -msgstr "" +msgid "%s (module)" +msgstr "%s (module)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "functie" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "methode" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klasse" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attribuut" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "module" -#: builders/__init__.py:531 +#: domains/javascript.py:458 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:540 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "%s (directive)" +msgstr "%s (directive)" -#: builders/__init__.py:551 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:558 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "" +msgid "%s (role)" +msgstr "%s (rol)" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" -msgstr "" +#: domains/rst.py:234 +msgid "directive" +msgstr "directive" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "" +#: domains/rst.py:236 +msgid "role" +msgstr "rol" -#: builders/__init__.py:731 -msgid "copying assets" +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:883 +#: domains/changeset.py:32 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +msgid "Added in version %s" msgstr "" -#: builders/epub3.py:84 +#: domains/changeset.py:33 #, python-format -msgid "The ePub file is in %(outdir)s." +msgid "Changed in version %s" +msgstr "Veranderd in versie %s" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "Verouderd sinds versie %s" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" + +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "pad naar doelmap" + +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (in " +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/linkcheck.py:149 +#: cmd/quickstart.py:134 #, python-format -msgid "broken link: %s (%s)" +msgid "Please enter one of %s." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/text.py:29 +#: cmd/quickstart.py:230 #, python-format -msgid "The text files are in %(outdir)s." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:235 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:242 +#, python-format +msgid "Selected root path: %s" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:274 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "" - -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" - -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" - -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" - -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" - -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" - -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" - -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:287 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: environment/__init__.py:86 -msgid "new config" -msgstr "" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" - -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" - -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "bronmap is gewijzigd" - -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" - -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:298 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" - -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" - -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +"The project name will occur in several places in the built documentation." msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Naam van het project" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Auteur(s)" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Versie van het project" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Release van het project" -#: util/i18n.py:245 -#, python-format +#: cmd/quickstart.py:324 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:340 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" - -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" - -#: util/display.py:82 -msgid "skipped" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:350 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" - -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Bestandsnaam van het hoofddocument (zonder bestandsextensie)" -#: util/fileutil.py:76 +#: cmd/quickstart.py:368 #, python-format msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Fout: hoofddocumentbestandsnaam %s is reeds aanwezig op het aangewezen pad." -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Voetnoten" - -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[afbeelding: %s]" - -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[afbeelding]" - -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Index" - -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:407 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "onderschrift niet binnen figuur." - -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +msgid "Creating file %s." msgstr "" -#: writers/latex.py:591 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "File %s already exists, skipping." msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Afgerond: een beginstructuur van mappen is aangemaakt." -#: writers/html5.py:572 writers/latex.py:1106 +#: cmd/quickstart.py:520 #, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: writers/html5.py:431 +#: cmd/quickstart.py:531 #, python-format -msgid "numfig_format is not defined for %s" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: writers/html5.py:496 -msgid "Link to this term" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: writers/html5.py:558 -msgid "Link to this table" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: writers/html5.py:636 -msgid "Link to this code" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: writers/html5.py:638 -msgid "Link to this image" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: writers/html5.py:640 -msgid "Link to this toctree" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "duplicaatlabel van formule %s, andere in %s" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (ingebouwde functie)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s methode)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (klasse)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globale variabele of constante)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attribuut)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumenten" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Werpt" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Returns" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Return type" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (module)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "functie" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "methode" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klasse" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "attribuut" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "module" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Veranderd in versie %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Verouderd sinds versie %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (directive)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rol)" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "release van project" -#: domains/rst.py:234 -msgid "directive" -msgstr "directive" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "documenttaal" -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "bestandsextensie van bronbestanden" -#: domains/rst.py:236 -msgid "role" -msgstr "rol" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "bestandsnaam van hoofddocument" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: domains/citation.py:92 +#: cmd/quickstart.py:671 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Let op" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Pas op" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Gevaar" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Fout" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Hint" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Belangrijk" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Notitie" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Zie ook" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tip" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Waarschuwing" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +msgid "enable %s extension" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "sjabloonmap voor sjabloonbestanden" + +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: cmd/quickstart.py:229 +#: cmd/quickstart.py:810 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "Invalid template variable: %s" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: cmd/quickstart.py:241 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "Selected root path: %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Auteur van deze sectie: " -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: directives/other.py:205 +msgid "Module author: " +msgstr "Auteur van deze module: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Auteur van deze broncode:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Auteur: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: cmd/quickstart.py:273 +#: directives/patches.py:70 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "Ongeldig onderschrift: %s" + +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Gebruik van zowel \"%s\" als \"%s\" opties is niet toegestaan" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: cmd/quickstart.py:297 +#: directives/code.py:235 +#, python-format msgid "" -"The project name will occur in several places in the built documentation." +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Naam van het project" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "Object met naam %r is niet gevonden in include bestand %r" -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Auteur(s)" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "\"lineno-match\" kan niet gebruikt worden met een disjuncte set \"lines\"" -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Regels %r: geen regels gebruikt uit include-bestand %r" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Versie van het project" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Release van het project" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Index" -#: cmd/quickstart.py:323 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Voetnoten" -#: cmd/quickstart.py:339 -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 "" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "onderschrift niet binnen figuur." -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[afbeelding: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[afbeelding]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Bestandsnaam van het hoofddocument (zonder bestandsextensie)" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:441 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Fout: hoofddocumentbestandsnaam %s is reeds aanwezig op het aangewezen pad." +msgid "Any IDs not assigned for %s node" +msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "File %s already exists, skipping." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Afgerond: een beginstructuur van mappen is aangemaakt." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" -#: cmd/quickstart.py:519 +#: writers/latex.py:616 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:526 +#: writers/latex.py:1198 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1228 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "release van project" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "documenttaal" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "bestandsextensie van bronbestanden" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "bestandsnaam van hoofddocument" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "sjabloonmap voor sjabloonbestanden" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:244 #, python-format -msgid "Invalid template variable: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:74 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "pad naar doelmap" +#: util/display.py:87 +msgid "failed" +msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "Vervolgd van vorige pagina" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "Vervolgt op volgende pagina" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Symbolen" -#: cmd/build.py:212 -msgid "console output options" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "pagina" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Release" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "meer dan één doel gevonden voor 'any' kruisverwijzing %r: is mogelijk %s" + +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Zijpaneel inklappen" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigatie" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Zoeken in %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Over deze documenten" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Zoeken" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Zoek" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Laatste aanpassing op %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Vorig onderwerp" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "vorig hoofdstuk" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Volgend onderwerp" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "volgend hoofdstuk" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Volledige index op één pagina" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Deze pagina" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Broncode weergeven" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Inhoudsopgave" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Snel zoeken" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Zoek in %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Zoek" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2688,7 +2888,7 @@ msgstr "Globale Module-index" msgid "quick access to all modules" msgstr "sneltoegang naar alle modules" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Algemene index" @@ -2696,23 +2896,15 @@ msgstr "Algemene index" msgid "all functions, classes, terms" msgstr "alle functies, klasses en begrippen" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Deze pagina" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Volledige index op één pagina" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Snel zoeken" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Zoek in %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2722,57 +2914,6 @@ msgstr "Index pagineerd per letter" msgid "can be huge" msgstr "kan heel groot zijn" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Vorig onderwerp" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "vorig hoofdstuk" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Volgend onderwerp" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "volgend hoofdstuk" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigatie" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Zoeken in %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Over deze documenten" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Laatste aanpassing op %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2789,21 +2930,21 @@ msgstr "" msgid "search" msgstr "zoeken" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Zoekresultaten verbergen" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Inhoudsopgave" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Zoekresultaten" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Uw zoekopdracht leverde geen resultaten op. Zorg ervoor dat alle woorden juist zijn gespeld en dat u voldoende categorieën hebt geselecteerd." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2811,22 +2952,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Bezig met zoeken" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Zoeken aan het voorbereiden..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", in" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Zoekresultaten verbergen" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2834,6 +2974,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Wijzigingen in Versie %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2855,120 +3000,127 @@ msgstr "Andere veranderingen" msgid "Expand sidebar" msgstr "Zijpaneel uitklappen" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 -msgid "Keyword-only parameters separator (PEP 3102)" -msgstr "" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parameters" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variabelen" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Veroorzaakt" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (in module %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (in module %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (geïntegreerde variabele)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (geïntegreerde klasse)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klasse in %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s klassemethode)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (statische methode van %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python-moduleïndex" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modules" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Verouderd" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "exceptie" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "klassemethode" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statische methode" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (verouderd)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parameters" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variabelen" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Veroorzaakt" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2979,746 +3131,526 @@ msgstr "Sjabloonparameters" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "member" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "type" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "concept" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variabele" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "macro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "omgevingsvariabele; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "woordenlijstterm" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "grammaticatoken" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "verwijzingslabel" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "omgevingsvariabele" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "programmaoptie" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "document" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Module-index" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "onderschrift ontbreekt voor link: %s" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "zie %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "zie %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Symbolen" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "meer dan één doel gevonden voor 'any' kruisverwijzing %r: is mogelijk %s" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "" - -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "" - -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:319 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "woordenlijstterm" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "grammaticatoken" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "volgende" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "verwijzingslabel" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "vorige" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "omgevingsvariabele" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "programmaoptie" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "document" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Module-index" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +msgid "the link has no caption: %s" +msgstr "onderschrift ontbreekt voor link: %s" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Sleutelwoordargumenten" + +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Verwijzingen" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:1360 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "" +msgid "Bases: %s" +msgstr "Basisklassen: %s" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:93 #, python-format -msgid "%s %s documentation" -msgstr "%s %s documentatie" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Release" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "Vervolgd van vorige pagina" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "Vervolgt op volgende pagina" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" + +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "bestandsextensie (standaardwaarde: rst)" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "pagina" - -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Sleutelwoordargumenten" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "%s is geen map." + +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Verwijzingen" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3726,7 +3658,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3741,481 +3673,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "bestandsextensie (standaardwaarde: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(in %s)" + +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "%s is not a directory." -msgstr "%s is geen map." - -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "(in %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" -msgstr "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "" + +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "volgende" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "vorige" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "" + +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "" + +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s documentatie" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" -msgstr "Basisklassen: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "zie %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "zie %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.js b/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.js new file mode 100644 index 000000000..0da8306bc --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.js @@ -0,0 +1,63 @@ +Documentation.addTranslations({ + "locale": "no", + "messages": { + "%(filename)s — %(docstitle)s": "", + "© %(copyright_prefix)s %(copyright)s.": "", + ", in ": "", + "About these documents": "", + "Automatically generated list of changes in version %(version)s": "", + "C API changes": "", + "Changes in Version %(version)s — %(docstitle)s": "", + "Collapse sidebar": "", + "Complete Table of Contents": "", + "Contents": "", + "Copyright": "", + "Created using Sphinx %(sphinx_version)s.": "", + "Expand sidebar": "", + "Full index on one page": "", + "General Index": "", + "Global Module Index": "", + "Go": "", + "Hide Search Matches": "", + "Index": "", + "Index – %(key)s": "", + "Index pages by letter": "", + "Indices and tables:": "", + "Last updated on %(last_updated)s.": "", + "Library changes": "", + "Navigation": "", + "Next topic": "", + "Other changes": "", + "Overview": "", + "Please activate JavaScript to enable the search\n functionality.": "", + "Preparing search...": "", + "Previous topic": "", + "Quick search": "", + "Search": "", + "Search Page": "", + "Search Results": "", + "Search finished, found one page matching the search query.": [ + "", + "" + ], + "Search within %(docstitle)s": "", + "Searching": "", + "Searching for multiple words only shows matches that contain\n all words.": "", + "Show Source": "", + "Table of Contents": "", + "This Page": "", + "Welcome! This is": "", + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.": "", + "all functions, classes, terms": "", + "can be huge": "", + "last updated": "", + "lists all sections and subsections": "", + "next chapter": "", + "previous chapter": "", + "quick access to all modules": "", + "search": "", + "search this documentation": "", + "the documentation for": "" + }, + "plural_expr": "(n != 1)" +}); \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.mo new file mode 100644 index 0000000000000000000000000000000000000000..b8c6a723e4aed2ca3a75bbbaafa763213dfeecd2 GIT binary patch literal 768 zcmcgq&2G~`5DtiwkDNIS5{FiF{YQXkQzO#EMUm_hC4u|a9@~qY-DP(Ti4aIU1g`^c z!n3eWLkov;WTcU1q;I}&{(j!S_if2Y{%xg?K4~;vYp0ILe%`Z~f6*+o ze20Z4^OC$pZMYN^V5OYs)?1>I+LGMVyd-B`ZOB?uNb|`&dpViSmg#EcEnct5R3o#l zlFXPz3UL@eB~eVm2%={+8a@u4IUrf$2i_}O0i<>yo`yub8Dg?W$l%ypw4G)xIhT54oQm3~CW*&z6(&al9wrbSkG*`Jr#CB%{Lq_9 zVNtkYcFMJAaccwBGA_nYG)x<`NoOlEy216$Rj5fS3R$|VQy5)x>%BsO+HKa|U`OGM SU1AHdA3b*xw|&8Xe4t;g1M(pN literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.po new file mode 100644 index 000000000..adfc4af01 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/locale/no/LC_MESSAGES/sphinx.po @@ -0,0 +1,4304 @@ +# Translations template for Sphinx. +# Copyright (C) 2025 ORGANIZATION +# This file is distributed under the same license as the Sphinx project. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: Sphinx\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" +"PO-Revision-Date: 2013-04-02 08:44+0000\n" +"Last-Translator: FULL NAME \n" +"Language-Team: Norwegian (http://app.transifex.com/sphinx-doc/sphinx-1/language/no/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Generated-By: Babel 2.17.0\n" +"Language: no\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + +#: extension.py:58 +#, python-format +msgid "" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "" + +#: extension.py:79 +#, python-format +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "" + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 +#, python-format +msgid "Cannot find source directory (%s)" +msgstr "" + +#: application.py:223 +#, python-format +msgid "Output directory (%s) is not a directory" +msgstr "" + +#: application.py:228 +msgid "Source directory and destination directory cannot be identical" +msgstr "" + +#: application.py:258 +#, python-format +msgid "Running Sphinx v%s" +msgstr "" + +#: application.py:286 +#, python-format +msgid "" +"This project needs at least Sphinx v%s and therefore cannot be built with " +"this version." +msgstr "" + +#: application.py:305 +msgid "making output directory" +msgstr "" + +#: application.py:310 registry.py:540 +#, python-format +msgid "while setting up extension %s:" +msgstr "" + +#: application.py:317 +msgid "" +"'setup' as currently defined in conf.py isn't a Python callable. Please " +"modify its definition to make it a callable function. This is needed for " +"conf.py to behave as a Sphinx extension." +msgstr "" + +#: application.py:360 +#, python-format +msgid "loading translations [%s]... " +msgstr "" + +#: application.py:384 util/display.py:89 +msgid "done" +msgstr "" + +#: application.py:386 +msgid "not available for built-in messages" +msgstr "" + +#: application.py:400 +msgid "loading pickled environment" +msgstr "" + +#: application.py:408 +#, python-format +msgid "failed: %s" +msgstr "" + +#: application.py:423 +msgid "No builder selected, using default: html" +msgstr "" + +#: application.py:455 +msgid "build finished with problems." +msgstr "" + +#: application.py:457 +msgid "build succeeded." +msgstr "" + +#: application.py:462 +msgid "" +"build finished with problems, 1 warning (with warnings treated as errors)." +msgstr "" + +#: application.py:466 +msgid "build finished with problems, 1 warning." +msgstr "" + +#: application.py:468 +msgid "build succeeded, 1 warning." +msgstr "" + +#: application.py:474 +#, python-format +msgid "" +"build finished with problems, %s warnings (with warnings treated as errors)." +msgstr "" + +#: application.py:478 +#, python-format +msgid "build finished with problems, %s warnings." +msgstr "" + +#: application.py:480 +#, python-format +msgid "build succeeded, %s warnings." +msgstr "" + +#: application.py:1020 +#, python-format +msgid "node class %r is already registered, its visitors will be overridden" +msgstr "" + +#: application.py:1113 +#, python-format +msgid "directive %r is already registered and will not be overridden" +msgstr "" + +#: application.py:1139 application.py:1167 +#, python-format +msgid "role %r is already registered and will not be overridden" +msgstr "" + +#: application.py:1766 +#, python-format +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 "" + +#: application.py:1771 +#, python-format +msgid "the %s extension is not safe for parallel reading" +msgstr "" + +#: application.py:1775 +#, python-format +msgid "" +"the %s extension does not declare if it is safe for parallel writing, " +"assuming it isn't - please ask the extension author to check and make it " +"explicit" +msgstr "" + +#: application.py:1780 +#, python-format +msgid "the %s extension is not safe for parallel writing" +msgstr "" + +#: application.py:1788 application.py:1792 +#, python-format +msgid "doing serial %s" +msgstr "" + +#: registry.py:162 +#, python-format +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format +msgid "" +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "" + +#: config.py:374 +#, python-format +msgid "'%s' must be '0' or '1', got '%s'" +msgstr "" + +#: config.py:379 +#, python-format +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "" + +#: config.py:391 +#, python-format +msgid "invalid number %r for config value %r, ignoring" +msgstr "" + +#: config.py:399 +#, python-format +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "" + +#: config.py:422 +#, python-format +msgid "unknown config value %r in override, ignoring" +msgstr "" + +#: config.py:476 +#, python-format +msgid "No such config value: %r" +msgstr "" + +#: config.py:504 +#, python-format +msgid "Config value %r already present" +msgstr "" + +#: config.py:541 +#, python-format +msgid "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" +msgstr "" + +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 +#, python-format +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "" + +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" +msgstr "" + +#: config.py:611 +#, python-format +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" +msgstr "" + +#: config.py:633 +#, python-format +msgid "Failed to convert %r to a frozenset" +msgstr "" + +#: config.py:651 config.py:659 +#, python-format +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgstr "" + +#: config.py:665 +#, python-format +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." +msgstr "" + +#: config.py:686 +#, python-format +msgid "Section %s" +msgstr "" + +#: config.py:687 +#, python-format +msgid "Fig. %s" +msgstr "" + +#: config.py:688 +#, python-format +msgid "Table %s" +msgstr "" + +#: config.py:689 +#, python-format +msgid "Listing %s" +msgstr "" + +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." +msgstr "" + +#: config.py:829 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." +msgstr "" + +#: config.py:846 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." +msgstr "" + +#: config.py:858 +#, python-format +msgid "primary_domain %r not found, ignored." +msgstr "" + +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." +msgstr "" + +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "" + +#: environment/__init__.py:89 +msgid "new config" +msgstr "" + +#: environment/__init__.py:90 +msgid "config changed" +msgstr "" + +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "" + +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "" + +#: environment/__init__.py:350 +#, python-format +msgid "The configuration has changed (1 option: %r)" +msgstr "" + +#: environment/__init__.py:355 +#, python-format +msgid "The configuration has changed (%d options: %s)" +msgstr "" + +#: environment/__init__.py:361 +#, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "" + +#: environment/__init__.py:518 +#, python-format +msgid "Failed to scan documents in %s: %r" +msgstr "" + +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 +#, python-format +msgid "Domain %r is not registered" +msgstr "" + +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "" + +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "" + +#: environment/__init__.py:952 +#, python-format +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "" + +#: locale/__init__.py:229 +msgid "Attention" +msgstr "" + +#: locale/__init__.py:230 +msgid "Caution" +msgstr "" + +#: locale/__init__.py:231 +msgid "Danger" +msgstr "" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "" + +#: builders/texinfo.py:41 +#, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "" + +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "" + +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/texinfo.py:85 +#, python-format +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:310 builders/texinfo.py:105 +#, python-format +msgid "processing %s" +msgstr "" + +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "" + +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "" + +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "" + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "" + +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 +#, python-format +msgid "cannot copy image file %r: %s" +msgstr "" + +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "" + +#: builders/texinfo.py:218 +#, python-format +msgid "error writing file Makefile: %s" +msgstr "" + +#: builders/manpage.py:37 +#, python-format +msgid "The manual pages are in %(outdir)s." +msgstr "" + +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "" + +#: builders/manpage.py:64 +#, python-format +msgid "\"man_pages\" config value references unknown document %s" +msgstr "" + +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." +msgstr "" + +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "" + +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "" + +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "" + +#: builders/gettext.py:243 +#, python-format +msgid "The message catalogs are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " +msgstr "" + +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" +msgstr "" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "" + +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "" + +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "" + +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" +msgstr "" + +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" +msgstr "" + +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" + +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "" + +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." +msgstr "" + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "" + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 +#, python-format +msgid "invalid css_file: %r, ignored" +msgstr "" + +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "" + +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "" + +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "" + +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" +msgstr "" + +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "" + +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "" + +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "" + +#: ext/graphviz.py:153 +#, python-format +msgid "External Graphviz file %r not found or reading it failed" +msgstr "" + +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "" + +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" +msgstr "" + +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "" + +#: ext/graphviz.py:339 +#, python-format +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/graphviz.py:344 +#, python-format +msgid "" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" + +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "" + +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "" + +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "" + +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "" + +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "" + +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" + +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "" + +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" + +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "" + +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "" + +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "" + +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "" + +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "" + +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "" + +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" +msgstr "" + +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" +msgstr "" + +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" + +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "" + +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" + +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" + +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" +msgstr "" + +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "" + +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" + +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "" + +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "" + +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "" + +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "" + +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "" + +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "" + +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "" + +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "" + +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "" + +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "" + +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "" + +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "" + +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" +msgstr "" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "" + +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "" + +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr "" + +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "" + +#: domains/rst.py:234 +msgid "directive" +msgstr "" + +#: domains/rst.py:235 +msgid "directive-option" +msgstr "" + +#: domains/rst.py:236 +msgid "role" +msgstr "" + +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "" + +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "" + +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "" + +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "" + +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" + +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "" + +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "" + +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "" + +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" + +#: cmd/build.py:114 +msgid "general options" +msgstr "" + +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" + +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" + +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "" + +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "" + +#: cmd/build.py:150 +msgid "path options" +msgstr "" + +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" + +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" + +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" + +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "" + +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "" + +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "" + +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" + +#: cmd/build.py:212 +msgid "console output options" +msgstr "" + +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "" + +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "" + +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "" + +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "" + +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "" + +#: cmd/build.py:252 +msgid "warning control options" +msgstr "" + +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "" + +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "" + +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "" + +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "" + +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" + +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "" + +#: cmd/build.py:357 +#, python-format +msgid "cannot open warning file '%s': %s" +msgstr "" + +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "" + +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "" + +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "" + +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "" + +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "" + +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "" + +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "" + +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" + +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "" + +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "" + +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "" + +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "" + +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "" + +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "" + +#: cmd/quickstart.py:134 +#, python-format +msgid "Please enter one of %s." +msgstr "" + +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "" + +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "" + +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "" + +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "" + +#: cmd/quickstart.py:242 +#, python-format +msgid "Selected root path: %s" +msgstr "" + +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "" + +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "" + +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "" + +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "" + +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "" + +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "" + +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "" + +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "" + +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "" + +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "" + +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "" + +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "" + +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "" + +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "" + +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "" + +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "" + +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "" + +#: cmd/quickstart.py:340 +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 "" + +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "" + +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "" + +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "" + +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "" + +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "" + +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "" + +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "" + +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "" + +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "" + +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "" + +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "" + +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." +msgstr "" + +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." +msgstr "" + +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" + +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "" + +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "" + +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "" + +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "" + +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "" + +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "" + +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "" + +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "" + +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "" + +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "" + +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "" + +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "" + +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "" + +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "" + +#: cmd/quickstart.py:810 +#, python-format +msgid "Invalid template variable: %s" +msgstr "" + +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" +msgstr "" + +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "" + +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "" + +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "" + +#: directives/other.py:205 +msgid "Module author: " +msgstr "" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "" + +#: directives/other.py:209 +msgid "Author: " +msgstr "" + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "" + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" + +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "" + +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "" + +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" +msgstr "" + +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" + +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" + +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "" + +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" + +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "" + +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "" + +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" + +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" + +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" + +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" + +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "" + +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" + +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" + +#: writers/latex.py:616 +#, python-format +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" + +#: writers/latex.py:1228 +#, python-format +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" + +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" + +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "" + +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" + +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" + +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" + +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" + +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" + +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" + +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" + +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" + +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" + +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" + +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" + +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" + +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" + +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" + +#: _cli/__init__.py:231 +msgid "" +msgstr "" + +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" + +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "" + +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" + +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "" + +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "" + +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" + +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "" + +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" + +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" + +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "" + +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "" + +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" + +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" + +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "" + +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" + +#: util/display.py:82 +msgid "skipped" +msgstr "" + +#: util/display.py:87 +msgid "failed" +msgstr "" + +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" + +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" + +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "" + +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" + +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "" + +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "" + +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "" + +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" + +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "" + +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "" + +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "" + +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "" + +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "" + +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "" + +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "" + +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "" + +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "" + +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "" + +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "" + +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "" + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "" + +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "" + +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "" + +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" + +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" + +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "" + +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "" + +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "" + +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "" + +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "" + +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "" + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "" + +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "" + +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "" + +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "" + +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "" + +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "" + +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "" + +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "" + +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "" + +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "" + +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "" + +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "" + +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "" + +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "" + +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "" + +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "" + +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "" + +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "" + +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "" + +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "" + +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "" + +#: themes/basic/search.html:35 +msgid "search" +msgstr "" + +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "" + +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "" + +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "" +msgstr[1] "" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "" + +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "" + +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr "" + +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "" + +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 +#, python-format +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/versionchanges.html:17 +#, python-format +msgid "Automatically generated list of changes in version %(version)s" +msgstr "" + +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "" + +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "" + +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "" + +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "" + +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "" + +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 +#, python-format +msgid "%s() (in module %s)" +msgstr "" + +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 +#, python-format +msgid "%s (in module %s)" +msgstr "" + +#: domains/python/__init__.py:174 +#, python-format +msgid "%s (built-in variable)" +msgstr "" + +#: domains/python/__init__.py:209 +#, python-format +msgid "%s (built-in class)" +msgstr "" + +#: domains/python/__init__.py:210 +#, python-format +msgid "%s (class in %s)" +msgstr "" + +#: domains/python/__init__.py:275 +#, python-format +msgid "%s() (%s class method)" +msgstr "" + +#: domains/python/__init__.py:277 +#, python-format +msgid "%s() (%s static method)" +msgstr "" + +#: domains/python/__init__.py:430 +#, python-format +msgid "%s (%s property)" +msgstr "" + +#: domains/python/__init__.py:470 +#, python-format +msgid "%s (type alias in %s)" +msgstr "" + +#: domains/python/__init__.py:624 +msgid "Python Module Index" +msgstr "" + +#: domains/python/__init__.py:625 +msgid "modules" +msgstr "" + +#: domains/python/__init__.py:703 +msgid "Deprecated" +msgstr "" + +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "" + +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "" + +#: domains/python/__init__.py:732 +msgid "static method" +msgstr "" + +#: domains/python/__init__.py:734 +msgid "property" +msgstr "" + +#: domains/python/__init__.py:735 +msgid "type alias" +msgstr "" + +#: domains/python/__init__.py:804 +#, python-format +msgid "" +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" +msgstr "" + +#: domains/python/__init__.py:974 +#, python-format +msgid "more than one target found for cross-reference %r: %s" +msgstr "" + +#: domains/python/__init__.py:1048 +msgid " (deprecated)" +msgstr "" + +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" + +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "" + +#: domains/cpp/__init__.py:302 +#, python-format +msgid "%s (C++ %s)" +msgstr "" + +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "" + +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "" + +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "" + +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "" + +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "" + +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "" + +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "" + +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "" + +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "" + +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 +#, python-format +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "" + +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "" + +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "" + +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "" + +#: domains/std/__init__.py:116 +#, python-format +msgid "%s; configuration value" +msgstr "" + +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "" + +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "" + +#: domains/std/__init__.py:239 +#, python-format +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "" + +#: domains/std/__init__.py:319 +#, python-format +msgid "%s command line option" +msgstr "" + +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "" + +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "" + +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "" + +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" + +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "" + +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" + +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" + +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "" + +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "" + +#: domains/std/__init__.py:735 +msgid "document" +msgstr "" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "" + +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" +msgstr "" + +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "" + +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "" + +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" +msgstr "" + +#: domains/std/__init__.py:1153 +#, python-format +msgid "invalid numfig_format: %s (%r)" +msgstr "" + +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" +msgstr "" + +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "" + +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" + +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" +msgstr "" + +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "" + +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" +msgstr "" + +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" +msgstr "" + +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "" + +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "" + +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "" + +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" + +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" + +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" +msgstr "" + +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "" + +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 +#, python-format +msgid "invalid value for member-order option: %s" +msgstr "" + +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 +#, python-format +msgid "invalid signature for auto%s (%r)" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "" + +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "" + +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" +msgstr "" + +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" + +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" + +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" + +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "" + +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "" + +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "" + +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "" + +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "" + +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "" + +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" + +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" + +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" + +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "" + +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "" + +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "" + +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" + +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" +msgstr "" + +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "" + +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" + +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "" + +#: ext/apidoc/_extension.py:133 +#, python-format +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" + +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "" + +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "" + +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" + +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" + +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" + +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" + +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" + +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" + +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 +#, python-format +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "" + +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" +msgstr "" + +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" +msgstr "" + +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" + +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "" + +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "" + +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "" + +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "" + +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "" + +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "" + +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "" + +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." +msgstr "" + +#: ext/autosummary/__init__.py:239 +#, python-format +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "" + +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" + +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "" + +#: ext/autosummary/__init__.py:652 +#, python-format +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "" + +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "" + +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" + +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" + +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" + +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" + +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "" + +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "" + +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" + +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "" + +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "" + +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "" + +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." +msgstr "" + +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" + +#: builders/html/__init__.py:372 +#, python-format +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "" + +#: builders/html/__init__.py:496 +msgid "index" +msgstr "" + +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "" + +#: builders/html/__init__.py:783 +#, python-format +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "" + +#: builders/html/__init__.py:807 +#, python-format +msgid "cannot copy downloadable file %r: %s" +msgstr "" + +#: builders/html/__init__.py:853 +#, python-format +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "" + +#: builders/html/__init__.py:871 +#, python-format +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "" + +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 +#, python-format +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "" + +#: builders/html/__init__.py:938 +#, python-format +msgid "cannot copy extra file %r" +msgstr "" + +#: builders/html/__init__.py:944 +#, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "" + +#: builders/html/__init__.py:1038 +#, python-format +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "" + +#: builders/html/__init__.py:1204 +#, python-format +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "" + +#: builders/html/__init__.py:1217 +#, python-format +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "" + +#: builders/html/__init__.py:1225 +#, python-format +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "" + +#: builders/html/__init__.py:1266 +#, python-format +msgid "dumping search index in %s" +msgstr "" + +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" +msgstr "" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "" + +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "" + +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "" + +#: builders/html/__init__.py:1370 +#, python-format +msgid "html_extra_path entry %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1385 +#, python-format +msgid "html_static_path entry %r is placed inside outdir" +msgstr "" + +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 +#, python-format +msgid "logo file %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "" + +#: builders/html/__init__.py:1425 +#, python-format +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "" + +#: builders/html/__init__.py:1438 +msgid "" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "" + +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" +msgstr "" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" +msgstr "" + +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" + +#: builders/latex/transforms.py:121 +#, python-format +msgid "Failed to get a docname for source %r!" +msgstr "" + +#: builders/latex/transforms.py:487 +#, python-format +msgid "No footnote was found for given reference node %r" +msgstr "" + +#: builders/latex/__init__.py:115 +#, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 +msgid "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "" + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 +#, python-format +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 +#, python-format +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "" + +#: builders/latex/__init__.py:537 +#, python-format +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" + +#: environment/collectors/asset.py:98 +#, python-format +msgid "image file not readable: %s" +msgstr "" + +#: environment/collectors/asset.py:126 +#, python-format +msgid "image file %s not readable: %s" +msgstr "" + +#: environment/collectors/asset.py:165 +#, python-format +msgid "download file not readable: %s" +msgstr "" + +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "" + +#: environment/adapters/toctree.py:360 +#, python-format +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "" + +#: environment/adapters/toctree.py:375 +#, python-format +msgid "toctree contains reference to non-included document %r" +msgstr "" + +#: environment/adapters/toctree.py:378 +#, python-format +msgid "toctree contains reference to non-existing document %r" +msgstr "" + +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pl/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/pl/LC_MESSAGES/sphinx.mo index 236e39b13b6ae3d6be1c58ebdd154ec79ad88d59..c7bc58591f9a452689e556b02248d6725e5cd08a 100644 GIT binary patch delta 5670 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 delta 5691 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 Ld|s1vq1XQa6HbMt diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pl/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/pl/LC_MESSAGES/sphinx.po index 885744a37..1f37e0535 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/pl/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/pl/LC_MESSAGES/sphinx.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Stan Ulbrych, 2025\n" "Language-Team: Polish (http://app.transifex.com/sphinx-doc/sphinx-1/language/pl/)\n" @@ -25,6 +25,127 @@ msgstr "" "Language: pl\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "ustawienie %s.%s nie występuje w żadnej z przeszukiwanych konfiguracji motywów" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "plik %r na ścieżce motywu nie jest poprawnym plikiem zip lub nie zawiera motywu" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -39,127 +160,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Ten projekt potrzebuje rozszerzenia %s co najmniej w wersji %s, dlatego nie może zostać zbudowany z załadowaną wersją (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Zdarzenie %r już obecne" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Nieznana nazwa zdarzenia: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Nie odnaleziono katalogu źródłowego (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Katalog wyjściowy (%s) nie jest katalogiem" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Katalog źródłowy i katalog docelowy nie mogą być identyczne" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Uruchamianie Sphinksa v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Ten projekt potrzebuje Sphinksa w wersji co najmniej %s, dlatego nie może zostać zbudowany z tą wersją." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "tworzenie katalogu wyjścia" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "podczas ustawiania rozszerzenia %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' podany w conf.py nie jest wywoływalny. Prosimy zmienić jego definicję tak, aby była wywoływalną funkcją. Jest to potrzebne w conf.py, aby zachowywało się jak rozszerzenie Sphinksa." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "ładowanie tłumaczeń [%s]..." -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "gotowe" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "niedostępne dla wbudowanych wiadomości" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "ładowanie zapakowanego środowiska" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "nie powiodło się: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Nie wybrano buildera, używamy domyślnego: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "klasa %r jest już zarejestrowana, jej wizytorzy zostaną nadpisani" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -167,12 +315,12 @@ msgid "" "explicit" msgstr "rozszerzenie %s nie deklaruje, czy jest bezpieczne do czytania współbieżnego, zakładamy że nie jest – prosimy zapytać autora rozszerzenie o sprawdzenie i zadeklarowania tego wprost" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -180,82 +328,214 @@ msgid "" "explicit" msgstr "rozszerzenie %s nie deklaruje, czy jest bezpieczne do pisania współbieżnego, zakładamy że nie jest – prosimy zapytać autora rozszerzenia o sprawdzenie i zadeklarowanie tego wprost" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "tworzenie serii %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "folder konfiguracyjny nie zawiera pliku conf.py (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Klasa buildera %s nie ma atrybutu \"name\"" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Builder %r już istnieje (w module %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Builder o nazwie %s jest niezarejestrowany lub dostępny przez punkt wejścia" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Builder o nazwie %s jest niezarejestrowany" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domena %s jest już zarejestrowana" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domena %s nie została jeszcze zarejestrowana" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "%r object_type jest już zarejestrowany" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "%r crossref_type jest już zarejestrowany" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r jest już zarejestrowany" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser dla %r jest już zarejestrowany" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Parser źródeł dla %s jest nie zarejestrowany" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r już zarejestrowany" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "rozszerzenie %r zostało już włączone do Sphinx'a, począwszy od wersji %s; to rozszerzenie jest zignorowane." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Pierwotny wyjątek:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Nie można zaimportować rozszerzenia %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "rozszerzenie %r nie zawiera funkcji setup(); czy to na pewno moduł rozszerzenia Sphinx?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Rozszerzenie %s używane przez ten projekt potrzebuje Sphinksa w wersji co najmniej %s; dlatego nie może zostać zbudowane z tą wersją." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "rozszerzenie %r zwróciło nie wspierany obiekt ze swojej funkcji setup(); powinno zwrócić None lub słownik metadanych" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "folder konfiguracyjny nie zawiera pliku conf.py (%s)" + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "nie można nadpisać słownikowego ustawienia konfiguracji %r, ignorowanie (użyj %r, by ustawić poszczególne elementy)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "niepoprawna liczba %r dla wartości konfiguracji %r, ignorowanie" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "nie można nadpisać ustawienia konfiguracji %r nie wspieranym typem, ignorowanie" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "nieznana wartość konfiguracji %r w nadpisaniu, ignorowanie" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Wartość konfiguracji %r już podana" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "W twoim piku konfiguracyjnym jest błąd składniowy: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Plik konfiguracyjny (albo jeden z modułów przez niego zaimportowanych) wywołał sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -263,468 +543,624 @@ msgid "" "%s" msgstr "W twoim piku konfiguracyjnym jest błąd programowalny: \n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Rozdział %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Rys. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabela %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Listing %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "Wartość konfiguracyjna `{name}` musi być jednym z {candidates}, a podany jest `{current}`." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "Nie odnaleziono primary_domain %r, zignorowano." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "nowa konfiguracja" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "konfiguracja zmieniona" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "ustawienie %s.%s nie występuje w żadnej z przeszukiwanych konfiguracji motywów" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "rozszerzenie zmienione" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "plik %r na ścieżce motywu nie jest poprawnym plikiem zip lub nie zawiera motywu" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "katalog źródłowy został zmieniony" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "Domena %r nie jest zarejestrowana" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Uwaga" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Zdarzenie %r już obecne" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Ostrzeżenie" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Nieznana nazwa zdarzenia: %s" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Niebezpieczeństwo" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Błąd" -#: project.py:72 +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Podpowiedź" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Ważne" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Informacja" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Zobacz także" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Wskazówka" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Ostrzeżenie" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Pliki Texinfo znajdują się w %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "nie znaleziono wartości konfiguracyjnej \"texinfo_documents\"; żadne dokumenty nie zostaną zapisane" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Klasa buildera %s nie ma atrybutu \"name\"" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "wartość konfiguracyjna \"texinfo_documents\" odwołuje się do nieznanego dokumentu %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Builder %r już istnieje (w module %s)" +msgid "processing %s" +msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Builder o nazwie %s jest niezarejestrowany lub dostępny przez punkt wejścia" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "pisanie" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Builder o nazwie %s jest niezarejestrowany" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "domena %s jest już zarejestrowana" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (w " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "domena %s nie została jeszcze zarejestrowana" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "kopiowanie obrazków..." -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "%r object_type jest już zarejestrowany" +msgid "The manual pages are in %(outdir)s." +msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "%r crossref_type jest już zarejestrowany" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r jest już zarejestrowany" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser dla %r jest już zarejestrowany" +msgid "The HTML page is in %(outdir)s." +msgstr "Strona HTML jest w %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Parser źródeł dla %s jest nie zarejestrowany" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r już zarejestrowany" +msgid "The message catalogs are in %(outdir)s." +msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "rozszerzenie %r zostało już włączone do Sphinx'a, począwszy od wersji %s; to rozszerzenie jest zignorowane." +msgid "targets for %d template files" +msgstr "" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Pierwotny wyjątek:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "wczytywanie szablonów... " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "Nie można zaimportować rozszerzenia %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "rozszerzenie %r nie zawiera funkcji setup(); czy to na pewno moduł rozszerzenia Sphinx?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Rozszerzenie %s używane przez ten projekt potrzebuje Sphinksa w wersji co najmniej %s; dlatego nie może zostać zbudowane z tą wersją." +msgid "broken link: %s (%s)" +msgstr "zepsuty odnośnik: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "rozszerzenie %r zwróciło nie wspierany obiekt ze swojej funkcji setup(); powinno zwrócić None lub słownik metadanych" +msgid "Anchor '%s' not found" +msgstr "Nie znaleziono kotwicy '%s'" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "Plik ePub znajduje się w %(outdir)s." -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[źródło]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumentacja]" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Kod modułu" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "

Source code for %s

" -msgstr "

Kod źródłowy modułu %s

" +msgid "invalid css_file: %r, ignored" +msgstr "nieprawidłowy css_file: %r, zignorowano" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Przeglądanie: kod modułu" +#: builders/xml.py:29 +#, python-format +msgid "The XML files are in %(outdir)s." +msgstr "Pliki XML znajdują się w %(outdir)s." -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Wszystkie moduły, dla których jest dostępny kod

" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "błąd zapisu pliku %s: %s" -#: ext/extlinks.py:82 +#: builders/xml.py:103 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Pliki pseudo-XML są w %(outdir)s." + +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/_epub_base.py:436 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/_epub_base.py:467 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "brak '+' lub '-' w opcji '%s'." +msgid "unknown mimetype for %s, ignoring" +msgstr "nieznany mimetype dla %s, ignoruję" -#: ext/doctest.py:124 +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' nie jest prawidłową opcją." +msgid "writing %s file..." +msgstr "pisanie pliku %s..." -#: ext/doctest.py:139 +#: builders/text.py:27 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' nie jest prawidłową opcją pyversion." +msgid "The text files are in %(outdir)s." +msgstr "Pliki tekstowe są w %(outdir)s." -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" msgstr "" -#: ext/doctest.py:297 +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "budowanie [mo]:" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "pisanie wyjścia..." + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "wszystkie z %d plików po" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "wsztstkie pliki źródłowe" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" +msgstr "plik %r podany w wierszu poleceń nie znajduje się w katalogu źródłowym, ignoruję" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:366 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "%d source files given on command line" +msgstr "%d plików źródłowych podano w wierszu poleceń" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d found" +msgstr "znaleziono %d" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "nic nie znaleziono" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "brak zmian w wersji %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Wbudowane" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Poziom modułu" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "kopiowanie plików źródłowych..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -745,9 +1181,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -782,6 +1219,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> znajduje się w pliku %s, w linii %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "oryginalny wpis" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -869,948 +1334,994 @@ msgstr "[wykres: %s]" msgid "[graph]" msgstr "[wykres]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> znajduje się w pliku %s, w linii %d.)" +msgid "display latex %r: %s" +msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "oryginalny wpis" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "Nieprawidłowy podpis: %s" +msgid "missing '+' or '-' in '%s' option." +msgstr "brak '+' lub '-' w opcji '%s'." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "" +msgid "'%s' is not a valid option." +msgstr "'%s' nie jest prawidłową opcją." -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Nie można użyć jednocześnie opcji \"%s\" i \"%s\"" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' nie jest prawidłową opcją pyversion." -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "Nie znaleziono obiektu o nazwie %r w pliku include %r" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Nie można użyć „lineno-match” z rozłącznym zbiorem „lines”" - -#: directives/code.py:314 +#: ext/doctest.py:451 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Specyfikacja linii %r: nie wyciągnięto żadnych linii z pliku include %r" - -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/other.py:119 +#: ext/doctest.py:568 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/autosectionlabel.py:52 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:156 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:47 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autor rozdziału: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autor modułu: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autor kodu: " - -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor: " - -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: builders/changes.py:56 +#: ext/duration.py:139 #, python-format -msgid "no changes in version %s." -msgstr "brak zmian w wersji %s." - -#: builders/changes.py:58 -msgid "writing summary file..." +msgid "%.3fs %s" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Wbudowane" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[źródło]" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Poziom modułu" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "kopiowanie plików źródłowych..." +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumentacja]" -#: builders/changes.py:133 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Kod modułu" -#: builders/manpage.py:37 +#: ext/viewcode.py:359 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "

Source code for %s

" +msgstr "

Kod źródłowy modułu %s

" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Przeglądanie: kod modułu" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "pisanie" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Wszystkie moduły, dla których jest dostępny kod

" -#: builders/manpage.py:71 +#: domains/citation.py:75 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/__init__.py:224 +#: domains/citation.py:92 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +msgid "Citation [%s] is not referenced." +msgstr "Cytat [%s] nie ma odniesienia." -#: builders/__init__.py:232 +#: domains/math.py:73 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "budowanie [mo]:" - -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "pisanie wyjścia..." +msgid "duplicate label of equation %s, other instance in %s" +msgstr "zduplikowana etykieta równania %s, inne wystąpienie w %s" -#: builders/__init__.py:275 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "all of %d po files" -msgstr "wszystkie z %d plików po" +msgid "Invalid math_eqref_format: %r" +msgstr "Nieprawidłowy math_eqref_format: %r" -#: builders/__init__.py:297 +#: domains/javascript.py:183 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s() (built-in function)" +msgstr "%s() (funkcja wbudowana)" -#: builders/__init__.py:309 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "wsztstkie pliki źródłowe" +msgid "%s() (%s method)" +msgstr "%s() (%s metoda)" -#: builders/__init__.py:330 +#: domains/javascript.py:186 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +msgid "%s() (class)" +msgstr "%s() (klasa)" -#: builders/__init__.py:337 +#: domains/javascript.py:188 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "plik %r podany w wierszu poleceń nie znajduje się w katalogu źródłowym, ignoruję" +msgid "%s (global variable or constant)" +msgstr "%s (zmienna globalna lub stała)" -#: builders/__init__.py:348 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s atrybut)" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "%d plików źródłowych podano w wierszu poleceń" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumenty" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Wyrzuca" -#: builders/__init__.py:395 builders/gettext.py:265 -#, python-format -msgid "building [%s]: " -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Zwraca" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Typ zwracany" -#: builders/__init__.py:410 +#: domains/javascript.py:374 #, python-format -msgid "%d found" -msgstr "znaleziono %d" +msgid "%s (module)" +msgstr "%s (moduł)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "nic nie znaleziono" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcja" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metoda" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klasa" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dane" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atrybut" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "moduł" -#: builders/__init__.py:531 +#: domains/javascript.py:458 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:540 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "%s (directive)" +msgstr "%s (dyrektywa)" -#: builders/__init__.py:551 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:558 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +msgid "%s (role)" +msgstr "%s (rola)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "dyrektywa" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:713 +#: domains/rst.py:236 +msgid "role" +msgstr "rola" + +#: domains/rst.py:262 #, python-format -msgid "docnames to write: %s" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr " Dodane w wersji %s" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "Zmienione w wersji %s" -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "" +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "Niezalecane od wersji %s" -#: builders/__init__.py:883 +#: domains/changeset.py:35 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +msgid "Removed in version %s" msgstr "" -#: builders/epub3.py:84 +#: domains/__init__.py:322 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "Plik ePub znajduje się w %(outdir)s." +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:114 +msgid "general options" +msgstr "ogólne opcje" + +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "zapisz wszystkie pliki (domyślnie: zapisz tylko nowe i zmienione pliki)" + +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "nieprawidłowy css_file: %r, zignorowano" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Pliki XML znajdują się w %(outdir)s." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "błąd zapisu pliku %s: %s" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "zastąp ustawienie w pliku konfiguracyjnym" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Pliki pseudo-XML są w %(outdir)s." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "przekaż wartość do szablonów HTML" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Pliki Texinfo znajdują się w %(outdir)s." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "nie znaleziono wartości konfiguracyjnej \"texinfo_documents\"; żadne dokumenty nie zostaną zapisane" +#: cmd/build.py:212 +msgid "console output options" +msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "wartość konfiguracyjna \"texinfo_documents\" odwołuje się do nieznanego dokumentu %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "zwiększ szczegółowość (może być powtórzone)" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (w " +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "kopiowanie obrazków..." +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "zapisz ostrzeżenia (i błędy) do podanego pliku" + +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "zamień ostrzeżenia na błędy" + +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:464 +#: cmd/build.py:357 #, python-format -msgid "cannot write image file %r: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "Argument opcji -D musi mieć postać nazwa=wartość" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "Argument opcji -A musi mieć postać nazwa=wartość" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "nieznany mimetype dla %s, ignoruję" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "pisanie pliku %s..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "warunkowe włączenie treści na podstawie wartości konfiguracyjnych" + +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "wczytywanie szablonów... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Wprowadź poprawną nazwę ścieżki." -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Strona HTML jest w %(outdir)s." +msgid "Please enter one of %s." +msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Wprowadź \"y\" lub \"n\"." -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Podaj rozszerzenie pliku, na przykład '.rst' lub '.txt'." -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Witamy w narzędziu quickstart Sphinksa %s." -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "zepsuty odnośnik: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" -msgstr "Nie znaleziono kotwicy '%s'" +msgid "Selected root path: %s" +msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Pliki tekstowe są w %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Ścieżka root dla dokumentacji" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Błąd: znaleziono istniejący conf.py na wskazanej ścieżce root." -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart nie nadpisze istniejących projektów Sphinx." -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Wprowadź, prosimy, nową ścieżkę root (lub tylko Enter, aby wyjść)" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b %Y" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Rozdziel katalogi source i build (y/n)" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Prefiks nazw dla katalogów templates i static" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Nazwa projektu" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Nazwisko autora" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Wersja projektu" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Wydanie projektu" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Język projektu" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:340 +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 "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Sufiks pliku źródłowego" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:350 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart nie nadpisze istniejącego pliku." -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Wskaż, które z następujących rozszerzeń Sphinx powinny być włączone:" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Stworzyć Makefile? (y/n)" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:86 -msgid "new config" -msgstr "nowa konfiguracja" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "konfiguracja zmieniona" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "rozszerzenie zmienione" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." +msgstr "Tworzenie pliku %s." -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." +msgstr "Plik %s już istnieje, pomijam." -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "katalog źródłowy został zmieniony" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Zakończono: Utworzono początkową strukturę katalogów." -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Domena %r nie jest zarejestrowana" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "tryb cichy" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "błąd odczytu: %s, %s" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "błąd zapisu: %s, %s" - -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Podstawowe opcje projektu" + +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "nazwa projektu" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "nazwiska autorów" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "wersja projektu" + +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "język dokumentu" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "rozszerzenie pliku źródłowego" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "nazwa głównego dokumentu" + +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/nodes.py:423 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Opcje rozszerzeń" + +#: cmd/quickstart.py:671 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +msgid "enable %s extension" +msgstr "włącz rozszerzenie %s" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "utwórz plik makefile" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "nie twórz pliku makefile" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "twórz plik wsadowy" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "nie twórz pliku wsadowego" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: util/display.py:82 -msgid "skipped" -msgstr "pominięte" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/fileutil.py:76 +#: cmd/quickstart.py:810 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "Invalid template variable: %s" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:119 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/rst.py:73 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "default role %s not found" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:156 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/inventory.py:166 +#: directives/other.py:169 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Przypisy" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor rozdziału: " -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[obraz: %s]" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor modułu: " -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[obraz]" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autor kodu: " -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Indeks" +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor: " -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" -msgstr "" +msgid "Invalid caption: %s" +msgstr "Nieprawidłowy podpis: %s" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" -msgstr "" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Nie można użyć jednocześnie opcji \"%s\" i \"%s\"" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "Nie znaleziono obiektu o nazwie %r w pliku include %r" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Nie można użyć „lineno-match” z rozłącznym zbiorem „lines”" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Specyfikacja linii %r: nie wyciągnięto żadnych linii z pliku include %r" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Indeks" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "%s" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Przypisy" -#: writers/latex.py:1939 +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "" + +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "Nieprawidłowy math_eqref_format: %r" +msgid "[image: %s]" +msgstr "[obraz: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[obraz]" #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" @@ -1838,6 +2349,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1854,794 +2370,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "zduplikowana etykieta równania %s, inne wystąpienie w %s" +msgid "no Babel option known for language %r" +msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (funkcja wbudowana)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metoda)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" -#: domains/javascript.py:185 +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" + +#: writers/latex.py:1228 #, python-format -msgid "%s() (class)" -msgstr "%s() (klasa)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: domains/javascript.py:187 +#: writers/latex.py:1615 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (zmienna globalna lub stała)" +msgid "dimension unit %s is invalid. Ignored." +msgstr "%s" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1950 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atrybut)" +msgid "unknown index entry type %s found" +msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumenty" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Wyrzuca" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Zwraca" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Typ zwracany" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (moduł)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funkcja" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metoda" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klasa" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dane" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atrybut" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "moduł" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr " Dodane w wersji %s" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Zmienione w wersji %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Niezalecane od wersji %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (dyrektywa)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rola)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "dyrektywa" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "rola" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "Cytat [%s] nie ma odniesienia." - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Uwaga" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Ostrzeżenie" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Niebezpieczeństwo" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Błąd" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Podpowiedź" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Ważne" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Informacja" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Zobacz także" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Wskazówka" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Ostrzeżenie" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "warunkowe włączenie treści na podstawie wartości konfiguracyjnych" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Wprowadź poprawną nazwę ścieżki." - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Wprowadź \"y\" lub \"n\"." - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Podaj rozszerzenie pliku, na przykład '.rst' lub '.txt'." - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Witamy w narzędziu quickstart Sphinksa %s." - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "" - -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Ścieżka root dla dokumentacji" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Błąd: znaleziono istniejący conf.py na wskazanej ścieżce root." - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart nie nadpisze istniejących projektów Sphinx." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Wprowadź, prosimy, nową ścieżkę root (lub tylko Enter, aby wyjść)" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Rozdziel katalogi source i build (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Prefiks nazw dla katalogów templates i static" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Nazwa projektu" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Nazwisko autora" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Wersja projektu" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Wydanie projektu" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Język projektu" - -#: cmd/quickstart.py:339 -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 "" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Sufiks pliku źródłowego" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "" - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "" - -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart nie nadpisze istniejącego pliku." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Wskaż, które z następujących rozszerzeń Sphinx powinny być włączone:" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "" - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Stworzyć Makefile? (y/n)" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "Tworzenie pliku %s." - -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "Plik %s już istnieje, pomijam." - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Zakończono: Utworzono początkową strukturę katalogów." - -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "tryb cichy" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Podstawowe opcje projektu" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "nazwa projektu" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "nazwiska autorów" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "wersja projektu" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "język dokumentu" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "rozszerzenie pliku źródłowego" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "nazwa głównego dokumentu" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Opcje rozszerzeń" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "" -#: cmd/quickstart.py:670 +#: transforms/__init__.py:299 #, python-format -msgid "enable %s extension" -msgstr "włącz rozszerzenie %s" +msgid "Footnote [%s] is not referenced." +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "utwórz plik makefile" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "nie twórz pliku makefile" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "twórz plik wsadowy" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "błąd odczytu: %s, %s" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "nie twórz pliku wsadowego" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "błąd zapisu: %s, %s" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" +#: util/display.py:82 +msgid "skipped" +msgstr "pominięte" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:809 +#: util/docutils.py:361 #, python-format -msgid "Invalid template variable: %s" +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:74 +#: util/fileutil.py:76 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:109 +#: util/docfields.py:103 +#, python-format msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "ogólne opcje" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:131 +#: util/nodes.py:462 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "zapisz wszystkie pliki (domyślnie: zapisz tylko nowe i zmienione pliki)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "kontynuacja poprzedniej strony" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "ciąg dalszy na następnej stronie" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Niealfabetyczny" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "zastąp ustawienie w pliku konfiguracyjnym" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Symbole" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "przekaż wartość do szablonów HTML" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Liczby" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "strona" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Wydanie" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Nieznany format obrazka: %s..." + +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "zwiększ szczegółowość (może być powtórzone)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "znaleziono więcej niż jeden cel dla cross-referencji „any” %r: może być %s" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "zapisz ostrzeżenia (i błędy) do podanego pliku" - -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "zamień ostrzeżenia na błędy" - -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "Argument opcji -D musi mieć postać nazwa=wartość" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "Argument opcji -A musi mieć postać nazwa=wartość" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Zwiń pasek boczny" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Spis treści" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Nawigacja" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Szukaj pośród %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "O tych dokumentach" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Szukaj" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Szukaj" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Ostatnia modyfikacja %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Poprzedni temat" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "poprzedni rozdział" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Następny temat" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "następny rozdział" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "Indeks – %(key)s" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Cały indeks na jednej stronie" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Ta strona" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Pokaż źródło" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Treść" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Szybkie wyszukiwanie" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Przeszukaj %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Szukaj" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2688,7 +2888,7 @@ msgstr "Globalny indeks modułów" msgid "quick access to all modules" msgstr "szybki dostęp do wszystkich modułów" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Indeks ogólny" @@ -2696,23 +2896,15 @@ msgstr "Indeks ogólny" msgid "all functions, classes, terms" msgstr "wszystkie funkcje, klasy, terminy" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Ta strona" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Spis treści" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "Indeks – %(key)s" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Cały indeks na jednej stronie" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Szybkie wyszukiwanie" +msgid "Search %(docstitle)s" +msgstr "Przeszukaj %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2722,57 +2914,6 @@ msgstr "Strony indeksu alfabetycznie" msgid "can be huge" msgstr "może być ogromny" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Poprzedni temat" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "poprzedni rozdział" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Następny temat" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "następny rozdział" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Nawigacja" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Szukaj pośród %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "O tych dokumentach" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Ostatnia modyfikacja %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2789,21 +2930,21 @@ msgstr "" msgid "search" msgstr "szukaj" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Ukryj wyniki wyszukiwania" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Treść" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Wyniki wyszukiwania" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Twoje wyszukiwanie nie dało żadnych wyników. Upewnij się, że wszystkie słowa są wpisane prawidłowo i że wybrałeś dostateczną ilość kategorii." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2813,22 +2954,21 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Wyszukiwanie" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Inicjalizacja wyszukiwania..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", w " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Ukryj wyniki wyszukiwania" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2836,6 +2976,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Zmiany w wersji %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2857,120 +3002,127 @@ msgstr "Inne zmiany" msgid "Expand sidebar" msgstr "Rozwiń pasek boczny" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametry" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Zmienne" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Wyrzuca" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (w module %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (w module %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (zmienna wbudowana)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (klasa wbudowana)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klasa w module %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s metoda klasy)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s metoda statyczna)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Indeks modułów Pythona" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduły" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Niezalecane" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "wyjątek" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "metoda klasy" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statyczna metoda" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (niezalecane)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametry" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Zmienne" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Wyrzuca" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2981,92 +3133,85 @@ msgstr "Parametry szablonu" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "unia" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "pole" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "typ" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "koncepcja" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "zmienna" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "zmienna środowiskowa; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "Typ" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3124,603 +3269,390 @@ msgstr "Indeks modułów" #: domains/std/__init__.py:857 #, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "zobacz %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "zobacz także %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Symbole" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "znaleziono więcej niż jeden cel dla cross-referencji „any” %r: może być %s" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "" - -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "" - -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." -msgstr "Nieznany format obrazka: %s..." - -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Strony HTML są w %(outdir)s." - -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" -msgstr "" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" - -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "" - -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "" - -#: builders/html/__init__.py:507 -msgid "index" -msgstr "indeks" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" - -#: builders/html/__init__.py:589 -msgid "next" -msgstr "dalej" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "wstecz" - -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "" - -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "" - -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "kopiowanie plików do pobrania..." +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" -msgstr "nie można skopiować pliku statycznego %r" - -#: builders/html/__init__.py:939 -msgid "copying extra files" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:949 +#: domains/std/__init__.py:1456 #, python-format -msgid "cannot copy extra file %r" -msgstr "nie można skopiować dodatkowego pliku %r" +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Wystąpił błąd podczas renderowania strony %s.\nPowód: %r" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Przykład" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Przykłady" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumenty Nazwane" + +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Uwagi" + +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Pozostałe parametry" + +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "nieprawidłowy js_file: %r, zignorowano" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Referencje" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "Podano nieznany math_renderer %r." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" -#: builders/html/__init__.py:1360 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "" +msgid "Bases: %s" +msgstr "Klasy bazowe: %s" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "favicon file %r does not exist" -msgstr "plik favicon %r nie istnieje" +msgid "invalid signature for auto%s (%r)" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:93 #, python-format -msgid "%s %s documentation" -msgstr "%s %s - dokumentacja" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Pliki LaTeX znajdują się w %(outdir)s." +msgid "Would create file %s." +msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "nie znaleziono wartości konfiguracyjnej \"latex_documents\"; żadne dokumenty nie zostaną zapisane" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "wartość konfiguracyjna \"latex_documents\" odwołuje się do nieznanego dokumentu %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Wydanie" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "maksymalna głębokość submodułów wyświetlanych w spisie treści (domyślnie: 4)" + +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "nadpisz istniejące pliki" + +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "wykonaj skrypt bez tworzenia plików" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "nie twórz pliku spisu treści" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "rozszerzenie pliku (domyślnie: rst)" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "kontynuacja poprzedniej strony" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "ciąg dalszy na następnej stronie" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Niealfabetyczny" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Liczby" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "strona" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argumenty Nazwane" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "%s is not a directory." +msgstr "%s nie jest katalogiem." + +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Przykład" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Przykłady" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Uwagi" - -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Pozostałe parametry" - -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Referencje" - -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3728,7 +3660,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3743,481 +3675,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "domyślny sufiks dla plików (domyślnie: %(default)s)" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "maksymalna głębokość submodułów wyświetlanych w spisie treści (domyślnie: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "nadpisz istniejące pliki" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "wykonaj skrypt bez tworzenia plików" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "nie twórz pliku spisu treści" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "rozszerzenie pliku (domyślnie: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr " (w %s)" + +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:193 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "%s is not a directory." -msgstr "%s nie jest katalogiem." +msgid "Failed to get a function signature for %s: %s" +msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "błąd podczas formatowania argumentów dla %s: %s" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +msgid "missing attribute %s in object %s" +msgstr "brakujący atrybut %s w obiekcie %s" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_extension.py:247 -#, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:114 #, python-format -msgid "(in %s v%s)" -msgstr "(w %s v%s)" +msgid "The HTML pages are in %(outdir)s." +msgstr "Strony HTML są w %(outdir)s." -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s)" -msgstr " (w %s)" +msgid "Failed to read build info file: %r" +msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" + +#: builders/html/__init__.py:372 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "indeks" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "dalej" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "wstecz" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "" + +#: builders/html/__init__.py:783 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "kopiowanie plików do pobrania..." + +#: builders/html/__init__.py:807 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:853 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:871 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "" + +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:923 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy static file %r" +msgstr "nie można skopiować pliku statycznego %r" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:938 #, python-format +msgid "cannot copy extra file %r" +msgstr "nie można skopiować dodatkowego pliku %r" + +#: builders/html/__init__.py:944 +#, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Wystąpił błąd podczas renderowania strony %s.\nPowód: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "nieprawidłowy js_file: %r, zignorowano" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "Podano nieznany math_renderer %r." + +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "błąd podczas formatowania argumentów dla %s: %s" +msgid "favicon file %r does not exist" +msgstr "plik favicon %r nie istnieje" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s - dokumentacja" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" +msgstr "" + +#: builders/latex/transforms.py:487 +#, python-format +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Pliki LaTeX znajdują się w %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "nie znaleziono wartości konfiguracyjnej \"latex_documents\"; żadne dokumenty nie zostaną zapisane" + +#: builders/latex/__init__.py:167 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "wartość konfiguracyjna \"latex_documents\" odwołuje się do nieznanego dokumentu %s" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:537 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Bases: %s" -msgstr "Klasy bazowe: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" -msgstr "brakujący atrybut %s w obiekcie %s" +msgid "image file not readable: %s" +msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "zobacz %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "zobacz także %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pt/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/pt/LC_MESSAGES/sphinx.mo index 63175f208042a7a3df9c33e443a18a675662cc0d..eff76c3bf659b997426038399ca462b0f10e6cbb 100644 GIT binary patch delta 24 fcmey(_M2^kI3u^Ak*\n" "Language-Team: Portuguese (http://app.transifex.com/sphinx-doc/sphinx-1/language/pt/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: pt\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,21 +2946,20 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2828,6 +2968,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,119 +2994,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2973,92 +3125,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3086,581 +3231,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3721,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pt_BR/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/pt_BR/LC_MESSAGES/sphinx.mo index f7e1f2be597ba39d7f25e58dbf0200c9eeccf770..8ae151d497c6c2842313d63b0f7cc8d21d800052 100644 GIT binary patch delta 16338 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

L%C=W&Xa#2-U72Q&n_y?g2ctrEBWB`uRMLKk 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 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pt_BR/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/pt_BR/LC_MESSAGES/sphinx.po index 061a6dae1..0972d5e00 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/pt_BR/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/pt_BR/LC_MESSAGES/sphinx.po @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 18:26+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Rafael Fontenelle , 2019-2025\n" "Language-Team: Portuguese (Brazil) (http://app.transifex.com/sphinx-doc/sphinx-1/language/pt_BR/)\n" @@ -24,6 +24,127 @@ msgstr "" "Language: pt_BR\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "Common Vulnerabilities and Exposures; CVE %s" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "número de CVE inválido %s" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "Common Weakness Enumeration; CWE %s" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "número de CWE inválido %s" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Propostas de Melhorias do Python; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "Número de PEP inválido %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "Número de RFC inválido %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "As seções de configuração de tema diferentes de [theme] e [options] não são suportadas (tentei obter um valor de %r)." + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "a configuração %s.%s ocorre em nenhuma das configurações de tema pesquisadas" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "sem suporte à opção de tema %r fornecida" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "o arquivo %r no caminho de tema não é um arquivo zip válido ou contém nenhum tema" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "nenhum tema chamado %r encontrado (faltando theme.toml?)" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "O tema %r tem uma hierarquia circular" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "O tema %r herda de %r, que não é um tema carregado. Temas carregados são: %s" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "O tema %r tem muitos ancestrais" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "nenhum arquivo de configuração de tema encontrado em %r" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "o tema %r não tem a tabela “theme”" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "A tabela \"[theme]\" do tema %r não é uma tabela" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "O tema %r deve definir a configuração \"theme.inherit\"." + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "A tabela \"[options]\" do tema %r não é uma tabela" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "A configuração \"theme.pygments_style\" deve ser uma tabela. Dica: \"%s\"" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "vários arquivos encontrados para o documento \"%s\": %s\nUse %r para a construção." + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "Ignorado documento ilegível %r." + #: extension.py:58 #, python-format msgid "" @@ -38,127 +159,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Este projeto precisa da extensão %s pelo menos na versão %s e, portanto, não pode ser construído com a versão carregada (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Nome de analisador léxico Pygments %r não é conhecido" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "Lexar literal_block %r como \"%s\" resultou em um erro no token: %r. Tentando novamente no modo relaxado." + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Evento %r já presente" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Nome de evento desconhecido: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "O manipulador %r para evento %r levantou uma exceção" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Não foi possível encontrar o diretório de origem (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "O diretório de saída (%s) não é um diretório" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Diretório de origem e o diretório de destino não podem ser idênticos" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Executando Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Este projeto precisa de pelo menos Sphinx v%s e, portanto, não pode ser construído com esta versão." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "criando o diretório de saída" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "enquanto definia a extensão %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "“setup”, conforme definido atualmente em conf.py, não é um invocável do Python. Modifique sua definição para torná-la uma função que pode ser chamada. Isso é necessário para o conf.py se comportar como uma extensão do Sphinx." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "carregando traduções [%s]… " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "feito" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "não disponível para mensagens internas" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "carregando ambiente com pickle" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "falha: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Nenhum construtor selecionado, usando padrão: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "construção finalizada com problemas." -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "construção bem-sucedida." -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "construção finalizada com problemas, 1 aviso. (com avisos tratados como erros)." -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "construção finalizada com problemas, 1 aviso." -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "construção bem-sucedida, 1 aviso." -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "construção finalizada com problemas, %s avisos. (com avisos tratados como erros)." -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "construção finalizada com problemas, %s avisos." -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "construção bem-sucedida, %s avisos." -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "classe de nodo %r já está registrada, seus visitantes serão sobrescritos" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "diretiva %r já está registrada e não será substituída" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "papel %r já está registrado e não será substituído" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -166,12 +314,12 @@ msgid "" "explicit" msgstr "a extensão %s não declara se é segura para leitura em paralelo, supondo que não seja – peça ao autor da extensão para verificar e torná-la explícita" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "a extensão %s não é segura para leitura em paralelo" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -179,82 +327,214 @@ msgid "" "explicit" msgstr "a extensão %s não declara se é segura para escrita em paralelo, supondo que não seja – peça ao autor da extensão para verificar e torná-la explícita" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "a extensão %s não é segura para escrita em paralelo" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "fazendo serial %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "o diretório de configuração não contém um arquivo conf.py (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Classe de construtor %s possui nenhum atributo “name”" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Construtor %r já existe (no módulo %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Nome do construtor %s não registrado ou disponível através do ponto de entrada" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Nome do construtor %s não registrado" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domínio %s já registrado" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domínio %s ainda não registrado" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "A diretiva %r já está registrada para o domínio %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "O papel %r já está registrado para o domínio %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "O índice %r já está registrado para o domínio %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "O object_type %r já está registrado" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "O crossref_type %r já está registrado" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r já está registrado" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser para %r já está registrado" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Analisador de fonte para %s não registrado" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Tradutor para %r já existe" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwargs para add_node() deve ser uma tupla de função (visit, depart): %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r já registrado" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "renderizador matemático %s já está registrado" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "Valor de configuração inválido encontrado: 'language = None'. Atualize sua configuração para um código de idioma válido. Voltando para 'en' (inglês)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "a extensão %r já foi mesclada com Sphinx desde a versão %s; esta extensão é ignorada." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Extensão original:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Não foi possível importar a extensão %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "a extensão %r possui nenhuma função setup(); é realmente um módulo de extensão do Sphinx?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "A extensão %s usada por este projeto precisa de pelo menos Sphinx v%s e, portanto, não pode ser construída com esta versão." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "a extensão %r retornou um objeto não suportado de sua função setup(); deve retornar None ou um dicionário de metadados" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "`None` não é um tipo de arquivo válido para %r." + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "o diretório de configuração não contém um arquivo conf.py (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "'%s' deve ser '0' ou '1', obteve '%s'" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "não foi possível sobrescrever a configuração do dicionário %r ignorando (use %r para definir elementos individuais)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "número inválido %r para valor de configuração %r, ignorando" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "não é possível sobrescrever a configuração %r com tipo sem suporte, ignorando" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "valor de configuração desconhecido %r na sobrescrita, ignorando" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "Valor de configuração inexistente: %r" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Valor da configuração %r já presente" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "não é possível armazenar em cache o valor de configuração não serializável com pickle: %r (porque contém uma função, classe ou objeto de módulo)" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "Valor de configuração inválido encontrado: 'language = None'. Atualize sua configuração para um código de idioma válido. Voltando para 'en' (inglês)." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Há um erro de sintaxe em seu arquivo de configuração: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "O arquivo de configuração (ou um dos módulos que ele importa) chamou sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -262,537 +542,722 @@ msgid "" "%s" msgstr "Há um erro de programável em seu arquivo de configuração:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "Falha ao converter %r em um frozenset" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "Convertendo `source_suffix = %r` para `source_suffix = %r`." -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "O valor de configuração `source_suffix' espera um dicionário, uma string ou uma lista de strings. Em vez disso, obteve \"%r\" (digite %s)." -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Seção %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Fig. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabela %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Listagem %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "O valor da configuração “{name}” deve ser um entre {candidates}, mas “{current}” é fornecido." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "O valor da configuração “{name}” possui tipo “{current.__name__}”; esperava {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "O valor da configuração “{name}” possui tipo “{current.__name__}”; o padrão é “{default.__name__}”." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r não encontrado, ignorado." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "Sphinx agora usa \"index\" como o documento mestre por padrão. Para manter o comportamento pré-2.0, defina \"master_doc = 'contents'\"." -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Nome de analisador léxico Pygments %r não é conhecido" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "Lexar literal_block %r como \"%s\" resultou em um erro no token: %r. Tentando novamente no modo relaxado." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "O suporte para codificações fonte diferentes de UTF-8 está descontinuado e será removido no Sphinx 10. Comente em https://github.com/sphinx-doc/sphinx/issues/13665 se isso causar algum problema." -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "As seções de configuração de tema diferentes de [theme] e [options] não são suportadas (tentei obter um valor de %r)." +#: environment/__init__.py:89 +msgid "new config" +msgstr "nova configuração" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "a configuração %s.%s ocorre em nenhuma das configurações de tema pesquisadas" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "configuração alterada" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "sem suporte à opção de tema %r fornecida" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "extensões alteradas" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "o arquivo %r no caminho de tema não é um arquivo zip válido ou contém nenhum tema" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "a versão do ambiente de construção não é a atual" -#: theming.py:228 +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "diretório de fontes foi alterado" + +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "nenhum tema chamado %r encontrado (faltando theme.toml?)" +msgid "The configuration has changed (1 option: %r)" +msgstr "A configuração foi alterada (1 opção: %r)" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "O tema %r tem uma hierarquia circular" +msgid "The configuration has changed (%d options: %s)" +msgstr "A configuração foi alterada (%d opções: %s)" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "A configuração foi alterada (%d opções: %s, ...)" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "O tema %r herda de %r, que não é um tema carregado. Temas carregados são: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Este ambiente é incompatível com o construtor selecionado, por favor escolha outro diretório de doctree." -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "O tema %r tem muitos ancestrais" +msgid "Failed to scan documents in %s: %r" +msgstr "Falha ao procurar documentos em %s: %r" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" -msgstr "nenhum arquivo de configuração de tema encontrado em %r" +msgid "Domain %r is not registered" +msgstr "O domínio %r ainda não está registrado" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "o tema %r não tem a tabela “theme”" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "o documento não está incluído em nenhum toctree" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "A tabela \"[theme]\" do tema %r não é uma tabela" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "toctree autorreferenciada encontrada. Ignorado." -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "O tema %r deve definir a configuração \"theme.inherit\"." +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "o documento é referenciado em vários toctrees: %s, selecionando: %s <- %s" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "A tabela \"[options]\" do tema %r não é uma tabela" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Atenção" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "A configuração \"theme.pygments_style\" deve ser uma tabela. Dica: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Cuidado" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Evento %r já presente" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Perigo" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Nome de evento desconhecido: %s" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Erro" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "O manipulador %r para evento %r levantou uma exceção" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Dica" -#: project.py:72 +#: locale/__init__.py:234 +msgid "Important" +msgstr "Importante" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Nota" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Ver também" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Dica" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Aviso" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Os arquivos Texinfo estão em %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "vários arquivos encontrados para o documento \"%s\": %s\nUse %r para a construção." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nExecute \"make\" nesse diretório para executá-los com makeinfo\n(use \"make info\" aqui para fazer isso automaticamente)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "Ignorado documento ilegível %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "nenhuma valor de configuração “texinfo_documents” encontrado; nenhum documento será escrito" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Classe de construtor %s possui nenhum atributo “name”" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "o valor da configuração “texinfo_documents” faz referência a documento desconhecido %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Construtor %r já existe (no módulo %s)" +msgid "processing %s" +msgstr "processando %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Nome do construtor %s não registrado ou disponível através do ponto de entrada" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "escrevendo" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Nome do construtor %s não registrado" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "resolvendo referências…" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "domínio %s já registrado" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (em " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "domínio %s ainda não registrado" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "copiando imagens… " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "A diretiva %r já está registrada para o domínio %s" +msgid "cannot copy image file %r: %s" +msgstr "não foi possível copiar arquivo de imagem %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "O papel %r já está registrado para o domínio %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "copiando arquivos de suporte Texinfo" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "O índice %r já está registrado para o domínio %s" +msgid "error writing file Makefile: %s" +msgstr "erro ao escrever o arquivo Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "O object_type %r já está registrado" +msgid "The manual pages are in %(outdir)s." +msgstr "As páginas de manual estão em %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "O crossref_type %r já está registrado" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "nenhum valor de configuração “man_pages” encontrado; nenhuma página de manual será escrita" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r já está registrado" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "o valor da configuração “man_pages” faz referência a um documento desconhecido %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser para %r já está registrado" +msgid "The HTML page is in %(outdir)s." +msgstr "A página HTML está em %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Analisador de fonte para %s não registrado" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "montando documento único" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Tradutor para %r já existe" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "escrevendo arquivos adicionais" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "kwargs para add_node() deve ser uma tupla de função (visit, depart): %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "O construtor fictício não gera arquivos." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r já registrado" +msgid "The message catalogs are in %(outdir)s." +msgstr "Os catálogos de mensagens estão em %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "renderizador matemático %s já está registrado" +msgid "building [%s]: " +msgstr "construindo [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "a extensão %r já foi mesclada com Sphinx desde a versão %s; esta extensão é ignorada." +msgid "targets for %d template files" +msgstr "alvos para os %d arquivos de modelo" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Extensão original:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "lendo modelos… " -#: registry.py:545 +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "escrevendo catálogos de mensagens… " + +#: builders/linkcheck.py:87 #, python-format -msgid "Could not import extension %s" -msgstr "Não foi possível importar a extensão %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Procure por quaisquer erros na saída acima ou em %(outdir)s/output.txt" -#: registry.py:552 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "a extensão %r possui nenhuma função setup(); é realmente um módulo de extensão do Sphinx?" +msgid "broken link: %s (%s)" +msgstr "link quebrado: %s (%s)" -#: registry.py:565 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "A extensão %s usada por este projeto precisa de pelo menos Sphinx v%s e, portanto, não pode ser construída com esta versão." +msgid "Anchor '%s' not found" +msgstr "Âncora “%s” não encontrada" -#: registry.py:577 +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "linkcheck_allowed_redirects. Esperava um dicionário." + +#: builders/linkcheck.py:799 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "a extensão %r retornou um objeto não suportado de sua função setup(); deve retornar None ou um dicionário de metadados" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "Falha ao compilar regex em linkcheck_allowed_redirects: %r %s" -#: registry.py:612 +#: builders/epub3.py:83 #, python-format -msgid "`None` is not a valid filetype for %r." -msgstr "`None` não é um tipo de arquivo válido para %r." +msgid "The ePub file is in %(outdir)s." +msgstr "O arquivo ePub está em %(outdir)s." + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "escrevendo o arquivo nav.xhtml..." + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "o valor da configuração “epub_language” (ou “language”) não deve estar vazio para EPUB3" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "o valor da configuração “epub_uid” deve ser XML NAME para EPUB3" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "o valor da configuração “epub_title” (ou “html_title”) não deve estar vazio para EPUB3" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "o valor da configuração “epub_author” não deve estar vazio para EPUB3" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "o valor da configuração “epub_contributor” não deve estar vazio para EPUB3" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "o valor da configuração “epub_description” não deve estar vazio para EPUB3" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "o valor da configuração “epub_publisher” não deve estar vazio para EPUB3" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "o valor da configuração “epub_copyright” (ou “copyright”) não deve estar vazio para EPUB3" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "o valor da configuração “epub_identifier” não deve estar vazio para EPUB3" -#: roles.py:206 +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "o valor da configuração “version” não deve estar vazio para EPUB3" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "Common Vulnerabilities and Exposures; CVE %s" +msgid "invalid css_file: %r, ignored" +msgstr "css_file inválido: %r, ignorado" -#: roles.py:229 +#: builders/xml.py:29 #, python-format -msgid "invalid CVE number %s" -msgstr "número de CVE inválido %s" +msgid "The XML files are in %(outdir)s." +msgstr "Os arquivos XML estão em %(outdir)s." -#: roles.py:251 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "Common Weakness Enumeration; CWE %s" +msgid "error writing file %s: %s" +msgstr "erro ao escrever o arquivo %s: %s" -#: roles.py:274 +#: builders/xml.py:103 #, python-format -msgid "invalid CWE number %s" -msgstr "número de CWE inválido %s" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Os arquivos pseudo-XML estão em %(outdir)s." -#: roles.py:294 +#: builders/_epub_base.py:223 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Propostas de Melhorias do Python; PEP %s" +msgid "duplicated ToC entry found: %s" +msgstr "entrada de tabela de conteúdos duplicada encontrada: %s" -#: roles.py:317 +#: builders/_epub_base.py:436 #, python-format -msgid "invalid PEP number %s" -msgstr "Número de PEP inválido %s" +msgid "cannot read image file %r: copying it instead" +msgstr "não foi possível ler o arquivo de imagem %r: copiando-o" -#: roles.py:355 +#: builders/_epub_base.py:467 #, python-format -msgid "invalid RFC number %s" -msgstr "Número de RFC inválido %s" +msgid "cannot write image file %r: %s" +msgstr "não foi possível escrever arquivo de imagem %r: %s" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[código-fonte]" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow não encontrado – copiando arquivos de imagem" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "realçando código de módulo… " +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "escrevendo o arquivo mimetype..." -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[documentos]" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "escrevendo o arquivo META-INF/container.xml..." -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Código do módulo" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "escrevendo o arquivo content.opf..." -#: ext/viewcode.py:353 +#: builders/_epub_base.py:594 #, python-format -msgid "

Source code for %s

" -msgstr "

Código-fonte para %s

" - -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Visão geral: código do módulo" +msgid "unknown mimetype for %s, ignoring" +msgstr "tipo mime desconhecido para %s, ignorando" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Todos os módulos onde este código está disponível

" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "o nodo tem um nível inválido" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "O link codificado %r pode ser substituído por um extlink (tente usar %r)" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "escrevendo o arquivo toc.ncx..." -#: ext/autosectionlabel.py:52 +#: builders/_epub_base.py:802 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "a seção \"%s\" fica rotulada como \"%s\"" +msgid "writing %s file..." +msgstr "escrevendo arquivo %s…" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/text.py:27 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "rótulo duplicada %s, outra instância em %s" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "Link para esta equação" - -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "=================== durações de leitura mais lentas ====================" +msgid "The text files are in %(outdir)s." +msgstr "Os arquivos texto estão em %(outdir)s." -#: ext/doctest.py:118 +#: builders/__init__.py:229 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "faltando “+” ou “-” na opção “%s”." +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "uma imagem adequada para o construtor %s não encontrada: %s (%s)" -#: ext/doctest.py:124 +#: builders/__init__.py:237 #, python-format -msgid "'%s' is not a valid option." -msgstr "“%s” não é uma opção válida." +msgid "a suitable image for %s builder not found: %s" +msgstr "uma imagem adequada para o construtor %s não encontrada: %s" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "“%s” não é uma opção de pyversion válida" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "construindo [mo]: " -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "Tipo de TestCode inválido" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "escrevendo saída… " -#: ext/doctest.py:297 +#: builders/__init__.py:280 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Teste de doctests nos fontes finalizada, confira os resultados em %(outdir)s/output.txt." +msgid "all of %d po files" +msgstr "todos os %d arquivos po" -#: ext/doctest.py:457 +#: builders/__init__.py:302 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "nenhum código/saída no bloco %s em %s:%s" +msgid "targets for %d po files that are specified" +msgstr "alvos para %d arquivos po que estão especificados" -#: ext/doctest.py:568 +#: builders/__init__.py:314 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "ignorando código de doctest inválido: %r" +msgid "targets for %d po files that are out of date" +msgstr "alvos para %d arquivos po que estão desatualizados" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "todos os arquivos-fonte" -#: ext/imgmath.py:162 +#: builders/__init__.py:335 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "o comando LaTeX %r não pode ser executado (necessário para exibir matemáticas), verifique a configuração imgmath_latex" +msgid "file %r given on command line does not exist, " +msgstr "arquivo %r fornecido na linha de comando não existe," -#: ext/imgmath.py:181 +#: builders/__init__.py:342 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "o comando %s %r não pode ser executado (necessário para exibir matemáticas), verifique a configuração imgmath_%s" +"file %r given on command line is not under the source directory, ignoring" +msgstr "o arquivo %r fornecido na linha de comando não está dentro do diretório fonte, ignorando" -#: ext/imgmath.py:344 +#: builders/__init__.py:353 #, python-format -msgid "display latex %r: %s" -msgstr "exibe latex %r: %s" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "o arquivo %r fornecido na linha de comando não é um documento válido, ignorando" -#: ext/imgmath.py:380 +#: builders/__init__.py:366 #, python-format -msgid "inline latex %r: %s" -msgstr "latex em linha %r: %s" +msgid "%d source files given on command line" +msgstr "%d arquivos-fonte dados na linha de comando" -#: ext/coverage.py:48 +#: builders/__init__.py:382 #, python-format -msgid "invalid regex %r in %s" -msgstr "regex inválida %r em %s" +msgid "targets for %d source files that are out of date" +msgstr "alvos para %d arquivos fonte que estão desatualizados" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" -msgstr "o módulo %s não pôde ser importado: %s" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "procurando por arquivos agora desatualizados… " -#: ext/coverage.py:148 +#: builders/__init__.py:415 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "os seguintes módulos estão documentados, mas não foram especificados em coverage_modules: %s" +msgid "%d found" +msgstr "%d encontrado" -#: ext/coverage.py:158 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "os seguintes módulos estão especificados em coverage_modules, mas não foram documentados" +#: builders/__init__.py:417 +msgid "none found" +msgstr "nenhum encontrado" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." -msgstr "Teste de cobertura nos fontes finalizada, confira os resultados em %(outdir)s{sep}python.txt." +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "tornando um ambiente pickle" -#: ext/coverage.py:187 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "regex inválida %r em coverage_c_regexes" +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "verificando consistência" -#: ext/coverage.py:260 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "api c não documentada: %s [%s] no arquivo %s" +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "nenhum alvo está desatualizado." -#: ext/coverage.py:452 -#, python-format -msgid "undocumented python function: %s :: %s" -msgstr "função python não documentada: %s :: %s" +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "atualizando ambiente: " -#: ext/coverage.py:473 +#: builders/__init__.py:499 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "classe python não documentada: %s :: %s" +msgid "%s added, %s changed, %s removed" +msgstr "%s adicionado(s), %s alterado(s), %s removido(s)" -#: ext/coverage.py:492 +#: builders/__init__.py:536 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "método python não documentado: %s :: %s :: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "O Sphinx não consegue carregar o documento mestre (%s) porque ele corresponde a um padrão de exclusão embutido %r. Mova seu documento mestre para um local diferente." -#: ext/imgconverter.py:44 +#: builders/__init__.py:545 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "Não é possível executar o comando de conversão de imagem %r. 'sphinx.ext.imgconverter' requer ImageMagick por padrão. Verifique se ele está instalado ou defina a opção 'image_converter' para um comando de conversão personalizado.\n\nRastreamento: %s" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "O Sphinx não consegue carregar o documento mestre (%s) porque ele corresponde a um padrão de exclusão especificado no conf.py, %r. Remova este padrão do conf.py." -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:556 #, python-format msgid "" -"convert exited with error:\n" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "O Sphinx não consegue carregar o documento mestre (%s) porque ele não está incluído no include_patterns = %r personalizado. Certifique-se de que um padrão em include_patterns corresponda ao documento mestre." + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "O Sphinx não consegue carregar o documento mestre (%s). O documento mestre deve estar no diretório fonte ou em um subdiretório dele." + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "lendo fontes… " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "docnames para escrever: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "nenhum docname para escrever!" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "preparando documentos" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "copiando ativos" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "O arquivo de visão geral está em %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "nenhuma alteração na versão %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "escrevendo arquivo de resumo…" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Internos" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Nível do Módulo" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "copiando arquivos-fonte…" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "não foi possível ler %r para criação do changelog" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "regex inválida %r em %s" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "o módulo %s não pôde ser importado: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "os seguintes módulos estão documentados, mas não foram especificados em coverage_modules: %s" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "os seguintes módulos estão especificados em coverage_modules, mas não foram documentados: %s" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "Teste de cobertura nos fontes finalizada, confira os resultados em %(outdir)s{sep}python.txt." + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "regex inválida %r em coverage_c_regexes" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "api c não documentada: %s [%s] no arquivo %s" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "função python não documentada: %s :: %s" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "classe python não documentada: %s :: %s" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "método python não documentado: %s :: %s :: %s" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "O link codificado %r pode ser substituído por um extlink (tente usar %r)" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Por fazer" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "Entrada de “TODO” encontrada: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(A <> está localizada na %s, linha %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "entrada original" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "Não é possível executar o comando de conversão de imagem %r. 'sphinx.ext.imgconverter' requer ImageMagick por padrão. Verifique se ele está instalado ou defina a opção 'image_converter' para um comando de conversão personalizado.\n\nRastreamento: %s" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" "[stderr]\n" "%r\n" "[stdout]\n" @@ -868,879 +1333,960 @@ msgstr "[gráfico: %s]" msgid "[graph]" msgstr "[gráfico]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Por fazer" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "o comando LaTeX %r não pode ser executado (necessário para exibir matemáticas), verifique a configuração imgmath_latex" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" -msgstr "Entrada de “TODO” encontrada: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "o comando %s %r não pode ser executado (necessário para exibir matemáticas), verifique a configuração imgmath_%s" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "exibe latex %r: %s" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(A <> está localizada na %s, linha %d.)" +msgid "inline latex %r: %s" +msgstr "latex em linha %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "entrada original" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "Link para esta equação" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "espaços não em branco eliminados por dedent" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "faltando “+” ou “-” na opção “%s”." -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" -msgstr "Legenda inválida: %s" +msgid "'%s' is not a valid option." +msgstr "“%s” não é uma opção válida." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "especificação de número de linha está fora da faixa(1-%d): %r" +msgid "'%s' is not a valid pyversion option" +msgstr "“%s” não é uma opção de pyversion válida" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "Tipo de TestCode inválido" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Não é possível usar as opções “%s” e “%s” juntas" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Teste de doctests nos fontes finalizada, confira os resultados em %(outdir)s/output.txt." -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "Arquivo incluído '%s' não encontrado ou sua leitura falhou" +msgid "no code/output in %s block at %s:%s" +msgstr "nenhum código/saída no bloco %s em %s:%s" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "A codificação %r usada para ler o arquivo incluído '%s' parece estar errada, tente passar uma opção :encoding:" +msgid "ignoring invalid doctest code: %r" +msgstr "ignorando código de doctest inválido: %r" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "O objeto chamado %r não foi encontrado no arquivo incluído %r" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "a seção \"%s\" fica rotulada como \"%s\"" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Não é possível usar “lineo-match” com um conjunto separado de “lines”" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "rótulo duplicada %s, outra instância em %s" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Especificação de linha %r: nenhuma linha obtida do arquivo incluído %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "A duração da leitura %.3fs excedeu a duração limite %.3fs" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "A opção \":file:\" para a diretiva csv-table agora reconhece um caminho absoluto como um caminho relativo do diretório de fontes. Por favor, atualize seu documento." +"====================== total reading duration ==========================" +msgstr "====================== duração total da leitura ==========================" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "o padrão de glob do toctree %r não correspondeu a nenhum documento." +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "Tempo total da leitura de %d arquivo%s: %dm %.3fs" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree contém referência ao documento excluído %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "=================== durações de leitura mais lentas ====================" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree contém referência ao documento inexistente %r" +msgid "%.3fs %s" +msgstr "%.3fs %s" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "entrada duplicada encontrada no toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[código-fonte]" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autor da seção: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "realçando código de módulo… " -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autor do módulo: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[documentos]" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autor do código: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Código do módulo" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Código-fonte para %s

" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr ".. conteúdo acks não está na lista" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Visão geral: código do módulo" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr ".. conteúdo hlist não está na lista" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Todos os módulos onde este código está disponível

" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "O arquivo de visão geral está em %(outdir)s." +msgid "duplicate citation %s, other instance in %s" +msgstr "citação duplicada %s, outra instância em %s" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." -msgstr "nenhuma alteração na versão %s." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "escrevendo arquivo de resumo…" - -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Internos" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Nível do Módulo" - -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "copiando arquivos-fonte…" +msgid "Citation [%s] is not referenced." +msgstr "citação [%s] não é referenciada." -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" -msgstr "não foi possível ler %r para criação do changelog" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "rótulo duplicado da equação %s, outra instância em %s" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "As páginas de manual estão em %(outdir)s." +msgid "Invalid math_eqref_format: %r" +msgstr "math_eqref_format inválido: %r" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "nenhum valor de configuração “man_pages” encontrado; nenhuma página de manual será escrita" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (função interna)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "escrevendo" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (método %s)" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "o valor da configuração “man_pages” faz referência a um documento desconhecido %s" +msgid "%s() (class)" +msgstr "%s() (classe)" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "uma imagem adequada para o construtor %s não encontrada: %s (%s)" +msgid "%s (global variable or constant)" +msgstr "%s (variável global ou constante)" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "uma imagem adequada para o construtor %s não encontrada: %s" +msgid "%s (%s attribute)" +msgstr "%s (atributo %s)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "construindo [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumentos" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "escrevendo saída… " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Lança" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "todos os %d arquivos po" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Retorna" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "alvos para %d arquivos po que estão especificados" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Tipo de retorno" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "alvos para %d arquivos po que estão desatualizados" +msgid "%s (module)" +msgstr "%s (módulo)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "todos os arquivos-fonte" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "função" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "arquivo %r fornecido na linha de comando não existe," +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "método" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "o arquivo %r fornecido na linha de comando não está dentro do diretório fonte, ignorando" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "classe" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "o arquivo %r fornecido na linha de comando não é um documento válido, ignorando" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dado" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "%d arquivos-fonte dados na linha de comando" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atributo" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "alvos para %d arquivos fonte que estão desatualizados" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "módulo" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " -msgstr "construindo [%s]: " - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "procurando por arquivos agora desatualizados… " +msgid "duplicate %s description of %s, other %s in %s" +msgstr "descrição duplicada de %s de %s, outro %s em %s" -#: builders/__init__.py:410 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "%d found" -msgstr "%d encontrado" +msgid "%s (directive)" +msgstr "%s (diretiva)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "nenhum encontrado" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s: (opção diretiva)" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "tornando um ambiente pickle" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (papel)" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "verificando consistência" +#: domains/rst.py:234 +msgid "directive" +msgstr "diretiva" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "nenhum alvo está desatualizado." +#: domains/rst.py:235 +msgid "directive-option" +msgstr "opção diretiva" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "atualizando ambiente: " +#: domains/rst.py:236 +msgid "role" +msgstr "papel" -#: builders/__init__.py:494 +#: domains/rst.py:262 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s adicionado(s), %s alterado(s), %s removido(s)" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "descrição duplicada de %s %s, outra instância em %s" -#: builders/__init__.py:531 +#: domains/changeset.py:32 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "O Sphinx não consegue carregar o documento mestre (%s) porque ele corresponde a um padrão de exclusão embutido %r. Mova seu documento mestre para um local diferente." +msgid "Added in version %s" +msgstr "Adicionado na versão %s" -#: builders/__init__.py:540 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "O Sphinx não consegue carregar o documento mestre (%s) porque ele corresponde a um padrão de exclusão especificado no conf.py, %r. Remova este padrão do conf.py." +msgid "Changed in version %s" +msgstr "Alterado na versão %s" -#: builders/__init__.py:551 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "O Sphinx não consegue carregar o documento mestre (%s) porque ele não está incluído no include_patterns = %r personalizado. Certifique-se de que um padrão em include_patterns corresponda ao documento mestre." +msgid "Deprecated since version %s" +msgstr "Descontinuado desde a versão %s" -#: builders/__init__.py:558 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "O Sphinx não consegue carregar o documento mestre (%s). O documento mestre deve estar no diretório fonte ou em um subdiretório dele." - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "lendo fontes… " +msgid "Removed in version %s" +msgstr "Removido na versão %s" -#: builders/__init__.py:713 +#: domains/__init__.py:322 #, python-format -msgid "docnames to write: %s" -msgstr "docnames para escrever: %s" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "nenhum docname para escrever!" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "número de tarefas deve ser um número positivo" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "preparando documentos" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "Para mais informações, visite ." -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "copiando ativos" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nGera documentação de arquivos fonte.\n\nsphinx-build gera documentação a partir dos arquivos em SOURCEDIR e os coloca\nem OUTPUTDIR. Ele procura por \"conf.py\" em SOURCEDIR para a configuração\ndefinições. A ferramenta \"sphinx-quickstart\" pode ser usada para gerar\narquivos de modelo, incluindo \"conf.py\"\n\nsphinx-build pode criar documentação em diferentes formatos. Um formato é\nselecionado especificando o nome do construtor na linha de comandos; o padrão\né HTML. Os construtores também podem realizar outras tarefas relacionadas à\ndocumentação em processamento.\n\nPor padrão, tudo o que está desatualizado é construído. Saída apenas para\nselecionado os arquivos podem ser construídas especificando nomes de arquivos\nindividuais.\n" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "caracteres de origem não codificáveis, substituindo por “?”: %r" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "caminho para os arquivos-fonte da documentação" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "O arquivo ePub está em %(outdir)s." +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "caminho para o diretório de saída" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "escrevendo o arquivo nav.xhtml..." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "(opcional) uma lista de arquivos específicos para reconstruir. Ignorado se --write-all for especificado" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "o valor da configuração “epub_language” (ou “language”) não deve estar vazio para EPUB3" +#: cmd/build.py:114 +msgid "general options" +msgstr "opções gerais" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "o valor da configuração “epub_uid” deve ser XML NAME para EPUB3" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "construtor para usar (padrão: 'html')" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "o valor da configuração “epub_title” (ou “html_title”) não deve estar vazio para EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "executa em paralelo com N processos, quando possível. 'auto' usa o número de núcleos da CPU" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "o valor da configuração “epub_author” não deve estar vazio para EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "escrever todos os arquivos (padrão: escrever apenas arquivos novos e alterados)" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "o valor da configuração “epub_contributor” não deve estar vazio para EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "não usa um ambiente salvo, sempre lê todos os arquivos" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "o valor da configuração “epub_description” não deve estar vazio para EPUB3" +#: cmd/build.py:150 +msgid "path options" +msgstr "opções de caminho" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "o valor da configuração “epub_publisher” não deve estar vazio para EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "diretório para arquivos de doctree e de ambiente (padrão: OUTPUT_DIR/.doctrees)" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "o valor da configuração “epub_copyright” (ou “copyright”) não deve estar vazio para EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "diretório para o arquivo de configuração (conf.py) (padrão: SOURCE_DIR)" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "o valor da configuração “epub_identifier” não deve estar vazio para EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "usa nenhum arquivo de configuração, apenas usa configurações das opções -D" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "o valor da configuração “version” não deve estar vazio para EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "sobrescreve a configuração no arquivo de configuração" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "css_file inválido: %r, ignorado" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "passa um valor para modelos em HTML" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Os arquivos XML estão em %(outdir)s." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "define tag: inclui blocos “only” com TAG" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "erro ao escrever o arquivo %s: %s" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "modo exigente: avisa sobre todas as referências em falta" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Os arquivos pseudo-XML estão em %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" +msgstr "opções de saída do console" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Os arquivos Texinfo estão em %(outdir)s." +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "aumenta o nível de detalhamento (pode ser repetido)" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nExecute \"make\" nesse diretório para executá-los com makeinfo\n(use \"make info\" aqui para fazer isso automaticamente)." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "nenhuma saída para stdout, apenas avisos na stderr" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "nenhuma valor de configuração “texinfo_documents” encontrado; nenhum documento será escrito" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "nenhuma saída, nem mesmo avisos" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "o valor da configuração “texinfo_documents” faz referência a documento desconhecido %s" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "emite saída colorida (padrão: detectar automaticamente)" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "processando %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "não emite saída colorida (padrão: detectar automaticamente)" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "resolvendo referências…" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "opções de controle de aviso" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (em " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "escreve avisos (e erros) para o arquivo fornecido" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "copiando imagens… " +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "transforma avisos em erros" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "não foi possível copiar arquivo de imagem %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "mostra rastro completo quando ocorrer exceção" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "copiando arquivos de suporte Texinfo" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "executa Pdb quando ocorrer exceção" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "erro ao escrever o arquivo Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "levanta uma exceção quando ocorrerem avisos" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "entrada de tabela de conteúdos duplicada encontrada: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "não é possível combinar a opção -a e nomes de arquivos" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "não foi possível ler o arquivo de imagem %r: copiando-o" +msgid "cannot open warning file '%s': %s" +msgstr "não foi possível abrir o arquivo de aviso '%s': %s" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "não foi possível escrever arquivo de imagem %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "o argumento da opção -D deve estar no formato nome=valor" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow não encontrado – copiando arquivos de imagem" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "o argumento da opção -A deve estar no formato nome=valor" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "escrevendo o arquivo mimetype..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "insere docstrings automaticamente a partir de módulos" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "escrevendo o arquivo META-INF/container.xml..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "testa trechos de código automaticamente em blocos de doctest" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "escrevendo o arquivo content.opf..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "cria link entre documentação Sphinx de diferentes projetos" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "tipo mime desconhecido para %s, ignorando" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "escreve entradas “todo” que podem ser mostradas ou ocultadas na construção" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "o nodo tem um nível inválido" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "verifica por cobertura da documentação" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "escrevendo o arquivo toc.ncx..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "inclui matemática, renderizada como imagens PNG ou SVG" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "escrevendo arquivo %s…" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "inclui matemática, renderizada no navegador por MathJax" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "O construtor fictício não gera arquivos." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "inclusão condicional de conteúdo com base nos valores de configuração" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Os catálogos de mensagens estão em %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "inclui links para o código-fonte dos objetos Python documentados" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "alvos para os %d arquivos de modelo" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "cria um arquivo .nojekyll para publicar o documento em páginas do GitHub" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "lendo modelos… " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Insira um nome de caminho válido." -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "escrevendo catálogos de mensagens… " +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Insira algum texto." -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "A página HTML está em %(outdir)s." +msgid "Please enter one of %s." +msgstr "Insira um entre %s." -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "montando documento único" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Insira “y” ou “n”." -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "escrevendo arquivos adicionais" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Insira um sufixo de arquivo, p.ex., “.rst” ou “.txt”." -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Procure por quaisquer erros na saída acima ou em %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Bem-vindo ao utilitário de início rápido do Sphinx %s." -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "link quebrado: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Digite valores para as seguintes configurações (basta pressionar Enter\npara aceitar um valor padrão, se houver um entre colchetes)." -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" -msgstr "Âncora “%s” não encontrada" +msgid "Selected root path: %s" +msgstr "Caminho raiz selecionado: %s" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "Falha ao compilar regex em linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Insira o caminho raiz para a documentação." -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Os arquivos texto estão em %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Caminho raiz para a documentação" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "referências de nota de rodapé inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Erro: um conf.py existente foi encontrado no caminho raiz selecionado." -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "referências inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart não vai sobrescrever projetos Sphinx existentes." -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "referências de citação inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Insira um novo caminho raiz (ou pressione Enter para sair)" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "referências de termo inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "não foi possível calcular o progresso da tradução!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Você tem duas opções para definir o diretório de construção para a saída\nSphinx. Você pode usar um diretório \"_build\" no caminho raiz ou separar\nos diretórios de \"origem\" e \"construção\" no caminho raiz." -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "nenhum elemento traduzido!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Separar os diretórios de origem e de construção (y/n)" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "Um índice de 4 colunas encontrado. Pode ser um erro de extensões que você usa: %r" - -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Nota de rodapé [%s] não é referenciada." - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "Nota de rodapé [*] não é referenciada." +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Dentro do diretório raiz, mais dois diretórios serão criados; \"_templates\"\npara modelos HTML personalizados e \"_static\" para folhas de estilo (CSS)\npersonalizadas e outros arquivos estáticos. Você pode inserir outro prefixo\n(como \".\") para substituir o sublinhado." -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Nota de rodapé [#] não é referenciada." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Prefixo do nome para o diretório de modelos e de arquivos estáticos" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "Uso:" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "O nome do projeto vai aparecer em vários lugares na documentação construída." -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "{0} [OPÇÕES] []" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Nome do projeto" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr " O gerador de documentação Sphinx." +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Nome(s) de autor(es)" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "Comandos:" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "O Sphinx tem a noção de uma \"versão\" e um \"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 precisa dessa estrutura dupla, apenas defina ambos\ncom o mesmo valor." -#: _cli/__init__.py:98 -msgid "Options" -msgstr "Opções" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Versão do projeto" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "Para mais informações, visite https://www.sphinx-doc.org/pt-br/master/man/." +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Lançamento do projeto" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "{0}: erro: {1}\nExecute '{0} --help' para informações" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr " Gerencia documentação com Sphinx" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Se os documentos forem escritos em um idioma diferente do inglês, você\npode selecionar um idioma aqui pelo seu código de idioma. O Sphinx,\nentão, traduzirá o texto gerado para esse idioma.\n\nPara obter uma lista dos códigos suportados, consulte\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "Mostra a versão e sai." +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Idioma do projeto" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "Mostra esta mensagem e sai" +#: cmd/quickstart.py:340 +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 "O sufixo do nome de arquivo para arquivos fonte. Normalmente, isso é\n\".txt\" ou \".rst\". Apenas arquivos com este sufixo são considerados\ndocumentos." -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "Logging" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Sufixo de arquivos-fonte" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "Aumenta a verbosidade (pode ser repetido)" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Um documento é especial por ser considerado o nó superior da \"árvore de\nconteúdo\", ou seja, é a raiz da estrutura hierárquica dos documentos.\nNormalmente, isso é \"index\", mas se o documento \"index\" for um modelo\npersonalizado, você também poderá configurá-lo para outro nome de arquivo." -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "Só imprime erros e avisos." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Nome do seu documento mestre (sem sufixo)" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "Nenhuma saída" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Erro: o arquivo mestre %s já foi encontrado no caminho raiz selecionado." -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart não vai sobrescrever o arquivo existente." -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "Veja 'sphinx --help'.\n" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Insira um novo nome de arquivo, ou renomeie o arquivo existente e pressione Enter" -#: environment/__init__.py:86 -msgid "new config" -msgstr "nova configuração" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Indique qual das seguintes extensões do Sphinx devem ser habilitadas:" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "configuração alterada" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Nota: imgmath e mathjax não podem ser habilitados ao mesmo tempo. imgmath foi desmarcado." -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "extensões alteradas" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Um Makefile e um arquivo de comando do Windows podem ser gerados para você,\npara que você só precise executar, p.ex., \"make html\" em vez de invocar o\nsphinx-build diretamente." -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "a versão do ambiente de construção não é a atual" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Criar um Makefile? (y/n)" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "diretório de fontes foi alterado" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Criar um arquivo de comando do Windows? (y/n)" -#: environment/__init__.py:325 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "A configuração foi alterada (1 opção: %r)" +msgid "Creating file %s." +msgstr "Criando o arquivo %s." -#: environment/__init__.py:330 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "A configuração foi alterada (%d opções: %s)" +msgid "File %s already exists, skipping." +msgstr "O arquivo %s já existe, ignorando." -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "A configuração foi alterada (%d opções: %s, ...)" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Finalizado: uma estrutura de diretório inicial foi criada." -#: environment/__init__.py:379 +#: cmd/quickstart.py:520 +#, python-format msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Este ambiente é incompatível com o construtor selecionado, por favor escolha outro diretório de doctree." +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Agora você deve preencher seu arquivo mestre %s e criar outros arquivos-fonte\nda documentação. " -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "Falha ao procurar documentos em %s: %r" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Use o Makefile para construir os documentos, assim:\n make construtor" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 +#: cmd/quickstart.py:531 #, python-format -msgid "Domain %r is not registered" -msgstr "O domínio %r ainda não está registrado" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "o documento não está incluído em nenhum toctree" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Use o comando sphinx-build para construir os documentos, assim:\n sphinx-build -b construtor %s %s" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "toctree autorreferenciada encontrada. Ignorado." +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "sendo “construtor” um dos construtores aceitos, p.ex., html, latex ou linkcheck." -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "o documento é referenciado em vários toctrees: %s, selecionando: %s <- %s" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nGera os arquivos necessários para um projeto Sphinx.\n\nO sphinx-quickstart é uma ferramenta interativa que faz algumas perguntas\nsobre o seu projeto e gera um diretório de documentação completo e um\nMakefile de amostra para ser usado com o sphinx-build.\n" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "erro de leitura: %s, %s" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "modo silencioso" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "erro de escrita: %s, %s" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "raiz do projeto" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "locale_dir %s não existe" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Opção Estrutura" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "Localidade de Babel inválida: %r." +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "se especificado, separa diretórios de fonte e de construção" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Formato de data inválido. Envolva a string com aspas simples se desejar emiti-la diretamente: %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "se especificado, cria o dir de construção sob o dir fonte" -#: util/docfields.py:103 +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "substituto para ponto em _templates etc." + +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Opções básicas do projeto" + +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "nome do projeto" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "nomes de autores" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "versão do projeto" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "lançamento do projeto" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "idioma dos documentos" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "sufixo de arquivos-fonte" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "nome do documento mestre" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "usa epub" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Opções extensão" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "habilita a extensão %s" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "habilita extensões arbitrárias" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Criação de Makefile e arquivo Batch" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "cria makefile" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "não cria makefile" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "cria arquivo batch" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "não cria arquivo batch" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "usa modo make para Makefile/make.bat" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Modelo de projeto" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "diretório para arquivos de modelos" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "define uma variável modelo" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "“quiet” está especificada, mas “project” ou “author” não foi." + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "Problema no domínio %s: o campo deveria usar o papel \"%s\", mas esse papel não está no domínio." +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Erro: o caminho especificado não é um diretório, ou arquivos sphinx já existem." -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r foi descontinuado para entradas de índice (da entrada %r). Use \"pair: %s\"." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart só gera em um diretório vazio. Especifique um novo caminho raiz." -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree contém referência ao arquivo inexistente %r" +msgid "Invalid template variable: %s" +msgstr "Variável de modelo inválida: %s" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "exceção ao avaliar apenas a expressão da diretiva: %s" - -#: util/display.py:82 -msgid "skipped" -msgstr "ignorado" - -#: util/display.py:87 -msgid "failed" -msgstr "falhou" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "o padrão de glob do toctree %r não correspondeu a nenhum documento." -#: util/osutil.py:131 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "Cancelada a tentativa de cópia de %s para %s (o caminho de destino possui dados existentes)." +msgid "toctree contains reference to excluded document %r" +msgstr "toctree contém referência ao documento excluído %r" -#: util/docutils.py:309 +#: directives/other.py:156 #, python-format -msgid "unknown directive name: %s" -msgstr "nome de diretiva desconhecido: %s" +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree contém referência ao documento inexistente %r" -#: util/docutils.py:345 +#: directives/other.py:169 #, python-format -msgid "unknown role name: %s" -msgstr "nome de papel desconhecido: %s" +msgid "duplicated entry found in toctree: %s" +msgstr "entrada duplicada encontrada no toctree: %s" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor da seção: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor do módulo: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autor do código: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr ".. conteúdo acks não está na lista" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr ".. conteúdo hlist não está na lista" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "A opção \":file:\" para a diretiva csv-table agora reconhece um caminho absoluto como um caminho relativo do diretório de fontes. Por favor, atualize seu documento." + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "espaços não em branco eliminados por dedent" -#: util/docutils.py:789 +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" -msgstr "tipo de nó desconhecido: %r" +msgid "Invalid caption: %s" +msgstr "Legenda inválida: %s" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "Cancelada a tentativa de cópia do modelo renderizado %s para %s (o caminho de destino possui dados existentes)." +msgid "line number spec is out of range(1-%d): %r" +msgstr "especificação de número de linha está fora da faixa(1-%d): %r" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "Escrevendo resultado do modelo avaliado para %s" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Não é possível usar as opções “%s” e “%s” juntas" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" -msgstr "papel padrão %s não encontrado" +msgid "Include file '%s' not found or reading it failed" +msgstr "Arquivo incluído '%s' não encontrado ou sua leitura falhou" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "inventário <%s> contém definições duplicadas de %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "A codificação %r usada para ler o arquivo incluído '%s' parece estar errada, tente passar uma opção :encoding:" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "inventário <%s> contém várias definições para %s" +msgid "Object named %r not found in include file %r" +msgstr "O objeto chamado %r não foi encontrado no arquivo incluído %r" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Notas de rodapé" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Não é possível usar “lineo-match” com um conjunto separado de “lines”" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[imagem: %s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Especificação de linha %r: nenhuma linha obtida do arquivo incluído %r" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[imagem]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1749,11 +2295,15 @@ msgstr "[imagem]" msgid "Index" msgstr "Índice" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "nó de título encontrado não na section, topic, table, admonition ou sidebar" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Notas de rodapé" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "legenda não dentro de uma imagem." @@ -1763,59 +2313,20 @@ msgstr "legenda não dentro de uma imagem." msgid "unimplemented node type: %r" msgstr "tipo de nó não implementado: %r" -#: writers/latex.py:361 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "toplevel_sectioning %r desconhecido para a classe %r" +msgid "[image: %s]" +msgstr "[imagem: %s]" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "nenhuma opção Babel conhecida para o idioma %r" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[imagem]" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: grande demais, ignorado." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "Link para esta definição" -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "modelo %s não encontrado; carregando do legado %s em vez disso" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "título do documento não é um nó único em Text" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "nível de cabeçalho de rubric não suportado: %s" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "tabularcolumns e opção :widths: foram fornecidas. :widths: foi ignorada." - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "a unidade de dimensão %s é inválida. Ignorada." - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "tipo desconhecido de entrada de índice %s encontrado" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "math_eqref_format inválido: %r" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "Link para esta definição" - -#: writers/html5.py:431 +#: writers/html5.py:431 #, python-format msgid "numfig_format is not defined for %s" msgstr "numfig_format não está definido para %s" @@ -1837,6 +2348,11 @@ msgstr "Link para este cabeçalho" msgid "Link to this table" msgstr "Link para esta tabela" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "nível de cabeçalho de rubric não suportado: %s" + #: writers/html5.py:636 msgid "Link to this code" msgstr "Link para este código" @@ -1853,794 +2369,478 @@ msgstr "Link para este toctree" msgid "Could not obtain image size. :scale: option is ignored." msgstr "Não foi possível obter o tamanho da imagem. A opção :scale: foi ignorada." -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "toplevel_sectioning %r desconhecido para a classe %r" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "rótulo duplicado da equação %s, outra instância em %s" +msgid "no Babel option known for language %r" +msgstr "nenhuma opção Babel conhecida para o idioma %r" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (função interna)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: grande demais, ignorado." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (método %s)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "modelo %s não encontrado; carregando do legado %s em vez disso" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "título do documento não é um nó único em Text" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "tabularcolumns e opção :widths: foram fornecidas. :widths: foi ignorada." -#: domains/javascript.py:185 +#: writers/latex.py:1228 #, python-format -msgid "%s() (class)" -msgstr "%s() (classe)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "Foi fornecido o colspec %s, que parece usar sintaxe tabular. Mas esta tabela não pode ser renderizada como uma tabela; o colspec fornecido será ignorado." -#: domains/javascript.py:187 +#: writers/latex.py:1615 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variável global ou constante)" +msgid "dimension unit %s is invalid. Ignored." +msgstr "a unidade de dimensão %s é inválida. Ignorada." -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1950 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (atributo %s)" +msgid "unknown index entry type %s found" +msgstr "tipo desconhecido de entrada de índice %s encontrado" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumentos" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "Uso:" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Lança" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "{0} [OPÇÕES] []" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Retorna" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr " O gerador de documentação Sphinx." -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Tipo de retorno" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "Comandos:" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (módulo)" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "Opções" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "função" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "Para mais informações, visite https://www.sphinx-doc.org/pt-br/master/man/." -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "método" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "{0}: erro: {1}\nExecute '{0} --help' para informações" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "classe" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr " Gerencia documentação com Sphinx" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dado" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "Mostra a versão e sai." -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atributo" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "Mostra esta mensagem e sai" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "módulo" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "Logging" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "descrição duplicada de %s de %s, outro %s em %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "Aumenta a verbosidade (pode ser repetido)" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "Adicionado na versão %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "Só imprime erros e avisos." -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Alterado na versão %s" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "Nenhuma saída" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Descontinuado desde a versão %s" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "Removido na versão %s" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "Veja 'sphinx --help'.\n" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (diretiva)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "referências de nota de rodapé inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" -#: domains/rst.py:191 domains/rst.py:202 +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "referências inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" + +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "referências de citação inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" + +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "referências de termo inconsistentes na mensagem traduzida. original: {0}, traduzida: {1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "não foi possível calcular o progresso da tradução!" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "nenhum elemento traduzido!" + +#: transforms/__init__.py:258 #, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (opção diretiva)" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "Um índice de 4 colunas encontrado. Pode ser um erro de extensões que você usa: %r" -#: domains/rst.py:224 +#: transforms/__init__.py:299 #, python-format -msgid "%s (role)" -msgstr "%s (papel)" +msgid "Footnote [%s] is not referenced." +msgstr "Nota de rodapé [%s] não é referenciada." -#: domains/rst.py:234 -msgid "directive" -msgstr "diretiva" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "Nota de rodapé [*] não é referenciada." -#: domains/rst.py:235 -msgid "directive-option" -msgstr "opção diretiva" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Nota de rodapé [#] não é referenciada." -#: domains/rst.py:236 -msgid "role" -msgstr "papel" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "inventário <%s> contém definições duplicadas de %s" -#: domains/rst.py:262 +#: util/inventory.py:166 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "descrição duplicada de %s %s, outra instância em %s" +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "inventário <%s> contém várias definições para %s" -#: domains/citation.py:75 +#: util/i18n.py:100 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "citação duplicada %s, outra instância em %s" +msgid "reading error: %s, %s" +msgstr "erro de leitura: %s, %s" -#: domains/citation.py:92 +#: util/i18n.py:113 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "citação [%s] não é referenciada." +msgid "writing error: %s, %s" +msgstr "erro de escrita: %s, %s" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Atenção" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s não existe" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Cuidado" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "Localidade de Babel inválida: %r." -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Perigo" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Erro" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Dica" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Importante" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Nota" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Ver também" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Dica" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Aviso" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "insere docstrings automaticamente a partir de módulos" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "testa trechos de código automaticamente em blocos de doctest" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "cria link entre documentação Sphinx de diferentes projetos" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "escreve entradas “todo” que podem ser mostradas ou ocultadas na construção" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "verifica por cobertura da documentação" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "inclui matemática, renderizada como imagens PNG ou SVG" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "inclui matemática, renderizada no navegador por MathJax" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "inclusão condicional de conteúdo com base nos valores de configuração" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "inclui links para o código-fonte dos objetos Python documentados" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "cria um arquivo .nojekyll para publicar o documento em páginas do GitHub" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Insira um nome de caminho válido." - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Insira algum texto." - -#: cmd/quickstart.py:133 +#: util/i18n.py:253 #, python-format -msgid "Please enter one of %s." -msgstr "Insira um entre %s." - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Insira “y” ou “n”." - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Insira um sufixo de arquivo, p.ex., “.rst” ou “.txt”." - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Bem-vindo ao utilitário de início rápido do Sphinx %s." - -#: cmd/quickstart.py:234 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Digite valores para as seguintes configurações (basta pressionar Enter\npara aceitar um valor padrão, se houver um entre colchetes)." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Formato de data inválido. Envolva a string com aspas simples se desejar emiti-la diretamente: %s" -#: cmd/quickstart.py:241 +#: util/osutil.py:131 #, python-format -msgid "Selected root path: %s" -msgstr "Caminho raiz selecionado: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Insira o caminho raiz para a documentação." - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Caminho raiz para a documentação" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Erro: um conf.py existente foi encontrado no caminho raiz selecionado." - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart não vai sobrescrever projetos Sphinx existentes." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Insira um novo caminho raiz (ou pressione Enter para sair)" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Você tem duas opções para definir o diretório de construção para a saída\nSphinx. Você pode usar um diretório \"_build\" no caminho raiz ou separar\nos diretórios de \"origem\" e \"construção\" no caminho raiz." - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Separar os diretórios de origem e de construção (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Dentro do diretório raiz, mais dois diretórios serão criados; \"_templates\"\npara modelos HTML personalizados e \"_static\" para folhas de estilo (CSS)\npersonalizadas e outros arquivos estáticos. Você pode inserir outro prefixo\n(como \".\") para substituir o sublinhado." - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Prefixo do nome para o diretório de modelos e de arquivos estáticos" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "O nome do projeto vai aparecer em vários lugares na documentação construída." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Nome do projeto" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Nome(s) de autor(es)" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "O Sphinx tem a noção de uma \"versão\" e um \"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 precisa dessa estrutura dupla, apenas defina ambos\ncom o mesmo valor." - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Versão do projeto" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Lançamento do projeto" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Se os documentos forem escritos em um idioma diferente do inglês, você\npode selecionar um idioma aqui pelo seu código de idioma. O Sphinx,\nentão, traduzirá o texto gerado para esse idioma.\n\nPara obter uma lista dos códigos suportados, consulte\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Idioma do projeto" - -#: cmd/quickstart.py:339 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 "O sufixo do nome de arquivo para arquivos fonte. Normalmente, isso é\n\".txt\" ou \".rst\". Apenas arquivos com este sufixo são considerados\ndocumentos." - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Sufixo de arquivos-fonte" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "Cancelada a tentativa de cópia de %s para %s (o caminho de destino possui dados existentes)." -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "Um documento é especial por ser considerado o nó superior da \"árvore de\nconteúdo\", ou seja, é a raiz da estrutura hierárquica dos documentos.\nNormalmente, isso é \"index\", mas se o documento \"index\" for um modelo\npersonalizado, você também poderá configurá-lo para outro nome de arquivo." +#: util/display.py:82 +msgid "skipped" +msgstr "ignorado" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Nome do seu documento mestre (sem sufixo)" +#: util/display.py:87 +msgid "failed" +msgstr "falhou" -#: cmd/quickstart.py:367 +#: util/docutils.py:325 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Erro: o arquivo mestre %s já foi encontrado no caminho raiz selecionado." - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart não vai sobrescrever o arquivo existente." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Insira um novo nome de arquivo, ou renomeie o arquivo existente e pressione Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Indique qual das seguintes extensões do Sphinx devem ser habilitadas:" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Nota: imgmath e mathjax não podem ser habilitados ao mesmo tempo. imgmath foi desmarcado." - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Um Makefile e um arquivo de comando do Windows podem ser gerados para você,\npara que você só precise executar, p.ex., \"make html\" em vez de invocar o\nsphinx-build diretamente." - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Criar um Makefile? (y/n)" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Criar um arquivo de comando do Windows? (y/n)" +msgid "unknown directive name: %s" +msgstr "nome de diretiva desconhecido: %s" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: util/docutils.py:361 #, python-format -msgid "Creating file %s." -msgstr "Criando o arquivo %s." +msgid "unknown role name: %s" +msgstr "nome de papel desconhecido: %s" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/docutils.py:805 #, python-format -msgid "File %s already exists, skipping." -msgstr "O arquivo %s já existe, ignorando." - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Finalizado: uma estrutura de diretório inicial foi criada." +msgid "unknown node type: %r" +msgstr "tipo de nó desconhecido: %r" -#: cmd/quickstart.py:519 +#: util/fileutil.py:76 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Agora você deve preencher seu arquivo mestre %s e criar outros arquivos-fonte\nda documentação. " - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Use o Makefile para construir os documentos, assim:\n make construtor" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "Cancelada a tentativa de cópia do modelo renderizado %s para %s (o caminho de destino possui dados existentes)." -#: cmd/quickstart.py:530 +#: util/fileutil.py:89 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Use o comando sphinx-build para construir os documentos, assim:\n sphinx-build -b construtor %s %s" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "sendo “construtor” um dos construtores aceitos, p.ex., html, latex ou linkcheck." - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nGera os arquivos necessários para um projeto Sphinx.\n\nO sphinx-quickstart é uma ferramenta interativa que faz algumas perguntas\nsobre o seu projeto e gera um diretório de documentação completo e um\nMakefile de amostra para ser usado com o sphinx-build.\n" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "Para mais informações, visite ." - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "modo silencioso" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "raiz do projeto" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Opção Estrutura" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "se especificado, separa diretórios de fonte e de construção" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "se especificado, cria o dir de construção sob o dir fonte" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "substituto para ponto em _templates etc." - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Opções básicas do projeto" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "nome do projeto" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "nomes de autores" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "versão do projeto" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "lançamento do projeto" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "idioma dos documentos" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "sufixo de arquivos-fonte" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "nome do documento mestre" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "usa epub" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Opções extensão" +msgid "Writing evaluated template result to %s" +msgstr "Escrevendo resultado do modelo avaliado para %s" -#: cmd/quickstart.py:670 +#: util/docfields.py:103 #, python-format -msgid "enable %s extension" -msgstr "habilita a extensão %s" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "habilita extensões arbitrárias" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Criação de Makefile e arquivo Batch" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "cria makefile" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "não cria makefile" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "cria arquivo batch" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "não cria arquivo batch" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "usa modo make para Makefile/make.bat" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Modelo de projeto" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "diretório para arquivos de modelos" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "define uma variável modelo" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "“quiet” está especificada, mas “project” ou “author” não foi." - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Erro: o caminho especificado não é um diretório, ou arquivos sphinx já existem." - -#: cmd/quickstart.py:792 msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart só gera em um diretório vazio. Especifique um novo caminho raiz." +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Problema no domínio %s: o campo deveria usar o papel \"%s\", mas esse papel não está no domínio." -#: cmd/quickstart.py:809 +#: util/rst.py:73 #, python-format -msgid "Invalid template variable: %s" -msgstr "Variável de modelo inválida: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "número de tarefas deve ser um número positivo" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nGera documentação de arquivos fonte.\n\nsphinx-build gera documentação a partir dos arquivos em SOURCEDIR e os coloca\nem OUTPUTDIR. Ele procura por \"conf.py\" em SOURCEDIR para a configuração\ndefinições. A ferramenta \"sphinx-quickstart\" pode ser usada para gerar\narquivos de modelo, incluindo \"conf.py\"\n\nsphinx-build pode criar documentação em diferentes formatos. Um formato é\nselecionado especificando o nome do construtor na linha de comandos; o padrão\né HTML. Os construtores também podem realizar outras tarefas relacionadas à\ndocumentação em processamento.\n\nPor padrão, tudo o que está desatualizado é construído. Saída apenas para\nselecionado os arquivos podem ser construídas especificando nomes de arquivos\nindividuais.\n" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "caminho para os arquivos-fonte da documentação" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "caminho para o diretório de saída" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "(opcional) uma lista de arquivos específicos para reconstruir. Ignorado se --write-all for especificado" - -#: cmd/build.py:114 -msgid "general options" -msgstr "opções gerais" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "construtor para usar (padrão: 'html')" +msgid "default role %s not found" +msgstr "papel padrão %s não encontrado" -#: cmd/build.py:131 +#: util/nodes.py:462 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "executa em paralelo com N processos, quando possível. 'auto' usa o número de núcleos da CPU" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "%r não é mais suportsdo para entradas de índice (da entrada %r). Use \"pair: %s\"." -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "escrever todos os arquivos (padrão: escrever apenas arquivos novos e alterados)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "não usa um ambiente salvo, sempre lê todos os arquivos" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree contém referência ao arquivo inexistente %r" -#: cmd/build.py:150 -msgid "path options" -msgstr "opções de caminho" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "exceção ao avaliar apenas a expressão da diretiva: %s" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "diretório para arquivos de doctree e de ambiente (padrão: OUTPUT_DIR/.doctrees)" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "continuação da página anterior" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "diretório para o arquivo de configuração (conf.py) (padrão: SOURCE_DIR)" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "continua na próxima página" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "usa nenhum arquivo de configuração, apenas usa configurações das opções -D" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Não alfabético" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "sobrescreve a configuração no arquivo de configuração" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Símbolos" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "passa um valor para modelos em HTML" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Números" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "define tag: inclui blocos “only” com TAG" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "página" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "modo exigente: avisa sobre todas as referências em falta" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Release" -#: cmd/build.py:212 -msgid "console output options" -msgstr "opções de saída do console" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "Não foi possível obter imagem remota: %s [%s]" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "aumenta o nível de detalhamento (pode ser repetido)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "Não foi possível obter imagem remota: %s [%d]" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "nenhuma saída para stdout, apenas avisos na stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Formato de imagem desconhecido: %s…" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "nenhuma saída, nem mesmo avisos" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "Não foi possível determinar o texto reserva para a referência cruzada. Pode ser um bug." -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "emite saída colorida (padrão: detectar automaticamente)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "mais de um alvo localizado para “any” referência cruzada %r: poderia ser %s" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "não emite saída colorida (padrão: detectar automaticamente)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:alvo de referência %s não encontrado: %s" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "opções de controle de aviso" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "alvo de referência %r não encontrado: %s" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "escreve avisos (e erros) para o arquivo fornecido" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Interrompido!" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "transforma avisos em erros" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "Erro de marcação reStructuredText!" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "mostra rastro completo quando ocorrer exceção" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "Erro de codificação!" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "executa Pdb quando ocorrer exceção" +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "Erro de recursão!" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "levanta uma exceção quando ocorrerem avisos" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 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 1.000 em conf.py com, por exemplo:" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "não é possível combinar a opção -a e nomes de arquivos" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "Iniciando depurador:" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" -msgstr "não foi possível abrir o arquivo de aviso '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "O traceback completo foi salvo em:" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "o argumento da opção -D deve estar no formato nome=valor" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "Para relatar este erro aos desenvolvedores, por favor abra uma issue em . Obrigado!" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "o argumento da opção -A deve estar no formato nome=valor" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Por favor, relate isso também se houver um erro do usuário, para que uma mensagem de erro melhor possa ser fornecida na próxima vez." #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Recolher painel lateral" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Tabela de Conteúdo" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navegação" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Pesquisar dentro de %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Sobre esses documentos" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Buscar" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Ir" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Última atualização em %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Criada usando Sphinx %(sphinx_version)s." + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Tópico anterior" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "capítulo anterior" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Próximo tópico" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "próximo capítulo" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "Índice – %(key)s" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Índice completo em página única" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Essa Página" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Exibir Fonte" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Conteúdos" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Busca rápida" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Buscar em %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Ir" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2668,109 +2868,50 @@ msgstr "Tabela Completa dos Conteúdos" #: themes/basic/defindex.html:17 msgid "lists all sections and subsections" -msgstr "Listar todas seções e subseções" - -#: domains/std/__init__.py:773 domains/std/__init__.py:786 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Página de Busca" - -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "Buscar nessa documentação" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Índice Global de Módulos" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "acesso rápido para todos os módulos" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Índice Geral" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "todas funções, classes, termos" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Essa Página" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "Índice – %(key)s" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Índice completo em página única" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Busca rápida" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Páginas de índice por letra" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "pode ser enorme" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Tópico anterior" +msgstr "Listar todas seções e subseções" -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "capítulo anterior" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Página de Busca" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Próximo tópico" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "Buscar nessa documentação" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "próximo capítulo" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Índice Global de Módulos" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navegação" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "acesso rápido para todos os módulos" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Pesquisar dentro de %(docstitle)s" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Índice Geral" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Sobre esses documentos" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "todas funções, classes, termos" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Tabela de Conteúdo" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." +msgid "Search %(docstitle)s" +msgstr "Buscar em %(docstitle)s" -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Última atualização em %(last_updated)s." +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Páginas de índice por letra" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Criada usando Sphinx %(sphinx_version)s." +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "pode ser enorme" #: themes/basic/search.html:20 msgid "" @@ -2788,21 +2929,21 @@ msgstr "Pesquisando por várias palavras só mostra correspondências\nque cont msgid "search" msgstr "buscar" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Esconder Resultados da Busca" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Conteúdos" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Resultados da Busca" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Sua busca não encontrou nenhum documento. Por favor, confirme se todas as palavras estão grafadas corretamente e se você selecionou categorias suficientes." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2811,22 +2952,21 @@ msgstr[0] "Pesquisa concluída, encontrada uma página que correspondendo à con msgstr[1] "Pesquisa finalizada, encontradas ${resultCount} páginas correspondendo à consulta da pesquisa." msgstr[2] "Pesquisa finalizada, encontradas ${resultCount} páginas correspondendo à consulta da pesquisa." -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Buscando" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Preparando a busca..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", em " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Esconder Resultados da Busca" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2834,6 +2974,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Modificações na versão %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2855,120 +3000,127 @@ msgstr "Outras alterações" msgid "Expand sidebar" msgstr "Expandir painel lateral" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "Separador de parâmetros somente-posicionais (PEP 570)" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "Separador de parâmetros somente-nomeados (PEP 3102)" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parâmetros" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variáveis" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Levanta" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (no módulo %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (no módulo %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variável interna)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (classe interna)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (classe em %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (método de classe %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (método estático %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (propriedade %s )" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "%s (apelido de tipo em %s)" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Índice de Módulos Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "módulos" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Descontinuado" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "exceção" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "método de classe" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "método estático" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "propriedade" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "apelido de tipo" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "descrição duplicada de objeto de %s, outra instância em %s, use :no-index: para um deles" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "mais de um alvo localizado para referência cruzada %r: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (descontinuado)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parâmetros" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variáveis" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Levanta" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Declaração C++ duplicada, também definida em %s:%s.\nA declaração é '.. cpp:%s:: %s'." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2979,92 +3131,85 @@ msgstr "Parâmetros do Modelo" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Declaração C++ duplicada, também definida em %s:%s.\nA declaração é '.. cpp:%s:: %s'." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Valores de retorno" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "união" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "membro" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipo" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "conceito" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerador" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "parâmetro de função" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "parâmetro de modelo" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "Declaração C duplicada, também definida em %s:%s.\nA declaração é '.. c:%s:: %s'." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "variável" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "macro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "struct" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "variável de ambiente; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "%s; valor de configuração" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "Type" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "Default" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3159,514 +3304,422 @@ msgstr "rótulo não definido: %r" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "Falha ao criar uma referência cruzada. Título ou legenda não encontrado: %r" -#: environment/adapters/toctree.py:324 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "referências circulares à toctree detectadas, ignorando: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree contém referência ao documento %r que não possui título: nenhum link será gerado" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "toctree contém referência ao documento não incluído %r" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "toctree contém referência a documento inexistente %r" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "veja %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "veja também %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "tipo desconhecido de entrada de índice %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Símbolos" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "arquivo de imagem não legível: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "arquivo de imagem %s não legível: %s" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "arquivo de download não legível: %s" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s já tem números de seção atribuídos (toctree numerada aninhada?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Interrompido!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "Erro de marcação reStructuredText!" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "Erro de codificação!" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "Erro de recursão!" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 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 1.000 em conf.py com, por exemplo:" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "Iniciando depurador:" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "O traceback completo foi salvo em:" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "Para relatar este erro aos desenvolvedores, por favor abra uma issue em . Obrigado!" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Por favor, relate isso também se houver um erro do usuário, para que uma mensagem de erro melhor possa ser fornecida na próxima vez." - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "Não foi possível determinar o texto reserva para a referência cruzada. Pode ser um bug." - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "mais de um alvo localizado para “any” referência cruzada %r: poderia ser %s" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:alvo de referência %s não encontrado: %s" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "alvo de referência %r não encontrado: %s" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "Não foi possível obter imagem remota: %s [%s]" - -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "Não foi possível obter imagem remota: %s [%d]" +msgid "invalid value set (missing closing brace): %s" +msgstr "valor inválido definido (faltando chave de fechamento): %s" -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." -msgstr "Formato de imagem desconhecido: %s…" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "valor inválido definido (faltando chave de abertura): %s" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "As páginas HTML estão em %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" +msgstr "string literal malformada (faltando aspas de fechamento): %s" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" -msgstr "Falha ao ler o arquivo de informações de construção: %r" +msgid "malformed string literal (missing opening quote): %s" +msgstr "string literal malformada (faltando aspas de abertura): %s" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "build_info incompatível, copiando .buildinfo para .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Exemplo" -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "construindo [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Exemplos" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "o modelo %s foi alterado desde a construção anterior, todos os documentos serão reconstruídos" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumentos de Palavras-chave" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "índice" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Notas" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "Logo de %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Outros Parâmetros" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "próximo" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "Recebe" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "anterior" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Referências" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "gerando índices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Avisos" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "escrevendo páginas adicionais" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "Yields" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "não foi possível copiar arquivo de imagem '%s': %s" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "copiando arquivos baixáveis… " +msgid "A mocked object is detected: %r" +msgstr "Um objeto simulado foi detectado: %r" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "não foi possível copiar o arquivo baixável %r: %s" +msgid "alias of %s" +msgstr "apelido de %s" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "Falha ao copiar um arquivo no diretório \"static\" do tema: %s: %r" +msgid "Bases: %s" +msgstr "Base: %s" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "Falha ao copiar um arquivo em html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" +msgstr "valor inválido para a opção member-order: %s" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "copiando arquivos estáticos" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "valor inválido para a opção class-doc-from: %s" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" -msgstr "não foi possível copiar o arquivo estático %r" +msgid "invalid signature for auto%s (%r)" +msgstr "assinatura inválida para auto%s (%r)" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "copiando arquivos extras" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "não sei qual módulo importar para documentação automática %r (tente colocar uma diretiva “module” ou “currentmodule” no documento ou forneça um nome explícito para o módulo)" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" -msgstr "não foi possível copiar o arquivo extra %r" +msgid "signature arguments given for automodule: '%s'" +msgstr "argumentos de assinatura dados para automodule: '%s'" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" -msgstr "Falha ao escrever o arquivo de informações de construção: %r" +msgid "return annotation given for automodule: '%s'" +msgstr "anotação de retorno dada para automodule: '%s'" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "não foi possível carregar o índice de pesquisa, mas nem todos os documentos serão construídos: o índice ficará incompleto." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "“::” no nome de automodule não faz sentido" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "a página %s corresponde a dois padrões em html_sidebars: %r e %r" +msgid "Failed to remove %s: %s" +msgstr "Falha ao remover %s: %s" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "Criaria o arquivo %s." + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "ocorreu um erro Unicode ao renderizar a página %s. Verifique se todos os valores de configuração que contêm conteúdo não ASCII são strings Unicode." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nProcura recursivamente em módulos e pacotes Python e cria um\narquivo reST com diretivas automodule por pacote no .\n\nOs s podem ser padrões de arquivo e/ou diretório que serão\nexcluídos da geração.\n\nNota: Por padrão, este script não substituirá os arquivos já criados." -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "caminho para o módulo a ser documentado" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Ocorreu um erro ao renderizar a página %s.\nMotivo: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "padrões de diretório e/ou arquivo no estilo fnmatch para excluir da geração" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "despejando inventário de objetos" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "diretório para colocar toda a saída" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "despejando índice de pesquisa em %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "profundidade máxima de submódulos para mostrar no TOC (padrão: 4)" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "js_file inválido: %r, ignorado" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "sobrescreve arquivos existentes" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Muitos math_renders estão registrados, mas nenhum math_renderer está selecionado." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "segue links simbólicos. Poderoso quando combinado com collective.recipe.omelette." -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "math_renderer desconhecido %r é fornecido." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "escreve o script sem criar arquivos" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "entrada de html_extra_path %r está posicionada dentro de outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "coloca a documentação para cada módulo em sua própria página" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "a entrada de html_extra_path %r não existe" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "inclui módulos “_private”" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "entrada de html_static_path %r está posicionada dento de outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "nome de arquivo da tabela de conteúdo (padrão: modules)" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "a entrada de html_static_path %r não existe" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "não cria um arquivo de tabela de conteúdo" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "o arquivo logo %r não existe" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "não cria títulos para os pacotes de módulo/pacote (p.ex., quando as docstrings já os contêm)" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "o arquivo favicon %r não existe" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "coloca documentação de módulo antes da documentação do submódulo" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "Os valores em 'html_sidebars' devem ser uma lista de strings. Pelo menos um padrão possui um valor de string: %s. Mude para `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "interpreta caminhos de módulos de acordo com a especificação de espaços de nomes implícitos PEP-0420" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "HTML 4 não encontra mais suporte no Sphinx. (\"html4_writer=True\" detectado nas opções de configuração)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "Lista de opções separadas por vírgulas para passar para a diretiva automodule (ou usar SPHINX_APIDOC_OPTIONS)." -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" -msgstr "Documentação %s %s" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "sufixo dos arquivos (padrão: rst)" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" -msgstr "falha ao ler o arquivo quebrado de informações de construção (versão desconhecida)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "Remove os arquivos existentes no diretório de saída que não foram gerados" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "falha ao ler o arquivo quebrado de informações de construção: (entrada de configuração ausente)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "gera um projeto completo com sphinx-quickstart" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" -msgstr "falha ao ler o arquivo quebrado de informações de construção: (entrada de tags ausente)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "acrescenta module_path a sys.path, usando quando --full é fornecido" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Os arquivos LaTeX estão em %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "nome do projeto (padrão nome do módulo raiz)" + +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "autor(e)s do projeto, usado quando --full é fornecido" + +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "versão do projeto, usado quando --full é fornecido" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "lançamento do projeto, usado quando --full é fornecido, padrão é --doc-version" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nExecute \"make\" nesse diretório para executá-los com (pdf)latex\n(use \"make latexpdf\" aqui para fazer isso automaticamente)." +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "opções de extensão" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "nenhuma valor da configuração “latex_documents” encontrado; nenhum documento será escrito" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "habilita extensões arbitrárias, usadas quando --full é fornecido" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "o valor da configuração “latex_documents” faz referência a um documento desconhecido %s" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Release" +msgid "enable %s extension, used when --full is given" +msgstr "habilita a extensão %s, usada quando --full é fornecido" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "copiando arquivos de suporte TeX" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "%s não é um diretório." -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "copiando arquivos adicionais" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "Executando apidoc" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Chave configuração desconhecida: latex_elements[%r], ignorado." +msgid "apidoc_modules item %i must be a dict" +msgstr "item apidoc_modules %i deve ser um dict" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Opção de tema desconhecida: latex_theme_options[%r], ignorada." - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "Falha ao obter um docname!" +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "item apidoc_modules %i deve ter uma chave \"path\"" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" -msgstr "Falha ao obter o docname para a fonte %r!" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "item apidoc_modules %i \"path\" deve ser uma string" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "Nenhuma nota de rodapé foi encontrada para o nó de referência %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "item apidoc_modules %i \"path\" não é uma pasta existente: %s" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r não possui a configuração \"theme\"" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "item apidoc_modules %i deve ter uma chave \"destination\"" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r não possui a configuração \"%s\"" +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "item apidoc_modules %i \"destination\" deve ser uma string" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "continuação da página anterior" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "item apidoc_modules %i \"destination\" deveria ser uma caminho relativo" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "continua na próxima página" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "item apidoc_modules %i não consegue criar o diretório de destino: %s" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Não alfabético" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "item apidoc_modules %i \"%s\" deve ser um int" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Números" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "item apidoc_modules %i \"%s\" deve ser um booleano" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "página" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "item apidoc_modules %i tem chaves inesperadas: %s" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argumentos de Palavras-chave" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "item apidoc_modules %i \"%s\" deve ser uma sequência" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "valor inválido definido (faltando chave de fechamento): %s" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "item apidoc_modules %i \"%s\" deve conter strings" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "valor inválido definido (faltando chave de abertura): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: falhou em determinar %r a ser documentado, a seguinte exceção foi levantada:\n%s" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "string literal malformada (faltando aspas de fechamento): %s" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] gerando autosummary para: %s" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "string literal malformada (faltando aspas de abertura): %s" +msgid "[autosummary] writing to %s" +msgstr "[autosummary] escrevendo em %s" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Exemplo" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] falha ao importar %s\nPossíveis dicas:\n%s" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Exemplos" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nGera ReStructuredText usando diretivas de resumo automático.\n\nsphinx-autogen é um frontend para sphinx.ext.autosummary.generate.\nEle gera os arquivos reStructuredText a partir de diretivas autosummary\ncontidas nos arquivos de entrada fornecidos.\n\nO formato da diretiva autosummary está documentado no módulo Python\n``sphinx.ext.autosummary`` e pode ser lido usando:\n\n pydoc sphinx.ext.autosummary\n" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Notas" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "arquivos-fonte para gerar arquivos rST" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Outros Parâmetros" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "diretório para colocar toda a saída" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "Recebe" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "sufixo padrão para arquivos (padrão: %(default)s)" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Referências" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "diretório de modelos personalizado (padrão: %(default)s)" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Avisos" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "documenta membros importados (padrão: %(default)s)" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "documenta exatamente os membros no módulo atributo __all__. (padrão: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "referências de autosummmary excluíram o documento %r. Ignorado." -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "autosummary: arquivo stub não encontrado %r. Verifique sua configuração autosummary_generate." -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "Um autosummary com legenda requer a opção :toctree:. Ignorado." -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3674,548 +3727,585 @@ msgid "" "%s" msgstr "autosummary: falha ao importar %s\nPossíveis dicas:\n%s" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "falha ao analisar o nome %s" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "falha ao importar o objecto %s" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "Os itens resumidos não devem incluir o módulo atual. Substitua %r por %r." -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: arquivo não encontrado: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "autosummary gera arquivos .rst internamente. Mas seu source_suffix não contém .rst. Ignorado." -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary: falhou em determinar %r a ser documentado, a seguinte exceção foi levantada:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "Identificador de projeto intersphinx `%r` inválido em intersphinx_mapping. Os identificadores do projeto devem ser strings não vazias." -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] gerando autosummary para: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "Valor inválido `%r` em intersphinx_mapping[%r]. Esperava-se uma tupla ou lista de dois elementos." -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] escrevendo em %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "Valor inválido `%r` em intersphinx_mapping[%r]. Os valores devem ser um par (URI alvo, locais de inventário)." -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] falha ao importar %s\nPossíveis dicas:\n%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "Valor de URI alvo inválido `%r` em intersphinx_mapping[%r][0]. Os URIs alvo devem ser strings exclusivas e não vazias." -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nGera ReStructuredText usando diretivas de resumo automático.\n\nsphinx-autogen é um frontend para sphinx.ext.autosummary.generate.\nEle gera os arquivos reStructuredText a partir de diretivas autosummary\ncontidas nos arquivos de entrada fornecidos.\n\nO formato da diretiva autosummary está documentado no módulo Python\n``sphinx.ext.autosummary`` e pode ser lido usando:\n\n pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "Valor de URI alvo inválido `%r` em intersphinx_mapping[%r][0]. Os URIs alvo devem ser exclusivos (outra instância em intersphinx_mapping[%r])." -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "arquivos-fonte para gerar arquivos rST" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "Valor de locais de inventário inválido `%r` em intersphinx_mapping[%r][1]. Os locais de inventário devem ser strings não vazias ou None." -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "diretório para colocar toda a saída" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "Configuração de `intersphinx_mapping` inválida (1 erro)." + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "Configuração de `intersphinx_mapping` inválida (%s erros)." + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "Uma entrada intersphinx_mapping inválida foi adicionada após a normalização." + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "carregando inventário intersphinx '%s' de %s ..." + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "encontrados alguns problemas com alguns dos inventários, mas eles tem alternativas em funcionamento:" + +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "falha ao alcançar todos os inventários com os seguintes problemas:\n%s" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "sufixo padrão para arquivos (padrão: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "o inventário intersphinx foi movido: %s -> %s" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "diretório de modelos personalizado (padrão: %(default)s)" +msgid "(in %s %s)" +msgstr "(em %s %s)" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "documenta membros importados (padrão: %(default)s)" +msgid "(in %s)" +msgstr "(em %s)" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "documenta exatamente os membros no módulo atributo __all__. (padrão: %(default)s)" +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "Inventário '%s': correspondências duplicadas encontradas para %s:%s" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" -msgstr "Remove os arquivos existentes no diretório de saída que não foram gerados" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "Inventário '%s': várias correspondências encontradas para %s:%s" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Failed to remove %s: %s" -msgstr "Falha ao remover %s: %s" +msgid "inventory for external cross-reference not found: %r" +msgstr "inventário para referência cruzada externa não encontrado: %r" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nProcura recursivamente em módulos e pacotes Python e cria um\narquivo reST com diretivas automodule por pacote no .\n\nOs s podem ser padrões de arquivo e/ou diretório que serão\nexcluídos da geração.\n\nNota: Por padrão, este script não substituirá os arquivos já criados." +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "sufixo inválido de referência cruzada externa: %r" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "caminho para o módulo a ser documentado" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "domínio para referência cruzada externa não encontrado: %r" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "padrões de diretório e/ou arquivo no estilo fnmatch para excluir da geração" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "alvo da referência externa %s:%s não encontrado: %s" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "diretório para colocar toda a saída" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "erro ao formatar assinatura para %s: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "profundidade máxima de submódulos para mostrar no TOC (padrão: 4)" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "Ignorando __all__ inválido no módulo %s: %r" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "sobrescreve arquivos existentes" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "Falha ao obter uma assinatura de função para %s: %s" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "segue links simbólicos. Poderoso quando combinado com collective.recipe.omelette." +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "Falha ao atualizar a assinatura para %r: parâmetro não encontrado: %s" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "escreve o script sem criar arquivos" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "Falha ao analisar type_comment para %r: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "coloca a documentação para cada módulo em sua própria página" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "__slots__ inválido encontrado em %s. Ignorado." -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "inclui módulos “_private”" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "erro ao formatar argumentos para %s: %s" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "nome de arquivo da tabela de conteúdo (padrão: modules)" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "Falha ao obter uma assinatura de construtor para %s: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "não cria um arquivo de tabela de conteúdo" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "Falha ao obter uma assinatura de método para %s: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "não cria títulos para os pacotes de módulo/pacote (p.ex., quando as docstrings já os contêm)" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "Falha ao obter uma assinatura para %s: %s" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "coloca documentação de módulo antes da documentação do submódulo" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Falha ao analisar um valor de argumento padrão para %r: %s" -#: ext/apidoc/_cli.py:152 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "interpreta caminhos de módulos de acordo com a especificação de espaços de nomes implícitos PEP-0420" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "o atributo %s está listado em :members:, mas está faltando pois não foi encontrado no objeto %r" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." -msgstr "Lista de opções separadas por vírgulas para passar para a diretiva automodule (ou usar SPHINX_APIDOC_OPTIONS)." - -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "sufixo dos arquivos (padrão: rst)" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: falhou em determinar %s.%s (%r) a ser documentado, a seguinte exceção foi levantada:\n%s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "gera um projeto completo com sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "argumentos de assinatura ou anotação de retorno fornecidos para automodule %s" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "acrescenta module_path a sys.path, usando quando --full é fornecido" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ deve ser uma lista de strings, não %r (no módulo %s) -- ignorando __all__" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "nome do projeto (padrão nome do módulo raiz)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "faltando atributo mencionado na opção :members: : módulo %s, atributo %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "autor(e)s do projeto, usado quando --full é fornecido" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "faltando atributo %s no objeto %s" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "versão do projeto, usado quando --full é fornecido" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "apelido de TypeVar(%s)" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "lançamento do projeto, usado quando --full é fornecido, padrão é --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "falha ao ler o arquivo quebrado de informações de construção (versão desconhecida)" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "opções de extensão" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "falha ao ler o arquivo quebrado de informações de construção: (entrada de configuração ausente)" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" -msgstr "habilita extensões arbitrárias, usadas quando --full é fornecido" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "falha ao ler o arquivo quebrado de informações de construção: (entrada de tags ausente)" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "habilita a extensão %s, usada quando --full é fornecido" +msgid "The HTML pages are in %(outdir)s." +msgstr "As páginas HTML estão em %(outdir)s." -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s não é um diretório." - -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" -msgstr "Executando apidoc" +msgid "Failed to read build info file: %r" +msgstr "Falha ao ler o arquivo de informações de construção: %r" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" -msgstr "item apidoc_modules %i deve ser um dict" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "build_info incompatível, copiando .buildinfo para .buildinfo.bak" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" -msgstr "item apidoc_modules %i deve ter uma chave \"path\"" +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "construindo [html]: " -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "item apidoc_modules %i \"path\" deve ser uma string" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "o modelo %s foi alterado desde a construção anterior, todos os documentos serão reconstruídos" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" -msgstr "item apidoc_modules %i \"path\" não é uma pasta existente: %s" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "índice" -#: ext/apidoc/_extension.py:133 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "item apidoc_modules %i deve ter uma chave \"destination\"" +msgid "Logo of %s" +msgstr "Logo de %s" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "item apidoc_modules %i \"destination\" deve ser uma string" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "próximo" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "item apidoc_modules %i \"destination\" deveria ser uma caminho relativo" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "anterior" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "item apidoc_modules %i não consegue criar o diretório de destino: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "gerando índices" -#: ext/apidoc/_extension.py:178 -#, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "item apidoc_modules %i \"%s\" deve ser um int" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "escrevendo páginas adicionais" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "item apidoc_modules %i \"%s\" deve ser um booleano" +msgid "cannot copy image file '%s': %s" +msgstr "não foi possível copiar arquivo de imagem '%s': %s" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "item apidoc_modules %i tem chaves inesperadas: %s" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "copiando arquivos baixáveis… " -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" -msgstr "item apidoc_modules %i \"%s\" deve ser uma sequência" +msgid "cannot copy downloadable file %r: %s" +msgstr "não foi possível copiar o arquivo baixável %r: %s" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "item apidoc_modules %i \"%s\" deve conter strings" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "Falha ao copiar um arquivo no diretório \"static\" do tema: %s: %r" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:871 #, python-format -msgid "Would create file %s." -msgstr "Criaria o arquivo %s." +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Falha ao copiar um arquivo em html_static_file: %s: %r" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(em %s v%s)" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "copiando arquivos estáticos" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:923 #, python-format -msgid "(in %s)" -msgstr "(em %s)" +msgid "cannot copy static file %r" +msgstr "não foi possível copiar o arquivo estático %r" -#: ext/intersphinx/_resolve.py:108 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "Inventário '%s': correspondências duplicadas encontradas para %s:%s" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "copiando arquivos extras" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:938 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "Inventário '%s': várias correspondências encontradas para %s:%s" +msgid "cannot copy extra file %r" +msgstr "não foi possível copiar o arquivo extra %r" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "inventário para referência cruzada externa não encontrado: %r" +msgid "Failed to write build info file: %r" +msgstr "Falha ao escrever o arquivo de informações de construção: %r" -#: ext/intersphinx/_resolve.py:392 -#, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "sufixo inválido de referência cruzada externa: %r" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "não foi possível carregar o índice de pesquisa, mas nem todos os documentos serão construídos: o índice ficará incompleto." -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1038 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "domínio para referência cruzada externa não encontrado: %r" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "a página %s corresponde a dois padrões em html_sidebars: %r e %r" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1204 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "alvo da referência externa %s:%s não encontrado: %s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "ocorreu um erro Unicode ao renderizar a página %s. Verifique se todos os valores de configuração que contêm conteúdo não ASCII são strings Unicode." -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "Identificador de projeto intersphinx `%r` inválido em intersphinx_mapping. Os identificadores do projeto devem ser strings não vazias." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "O tema '%s' não oferece suporte a esta versão do Sphinx, porque ele usa o campo 'style' em modelos HTML, que foi descontinuado no Sphinx 5.1 e removido no Sphinx 7.0. O tema deve ser atualizado para usar o campo 'styles' em vez disso. Veja https://www.sphinx-doc.org/pt-br/master/development/html_themes/templating.html#styles" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "Valor inválido `%r` em intersphinx_mapping[%r]. Esperava-se uma tupla ou lista de dois elementos." +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Ocorreu um erro ao renderizar a página %s.\nMotivo: %r" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "despejando inventário de objetos" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "Valor inválido `%r` em intersphinx_mapping[%r]. Os valores devem ser um par (URI alvo, locais de inventário)." +msgid "dumping search index in %s" +msgstr "despejando índice de pesquisa em %s" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "Valor de URI alvo inválido `%r` em intersphinx_mapping[%r][0]. Os URIs alvo devem ser strings exclusivas e não vazias." +msgid "invalid js_file: %r, ignored" +msgstr "js_file inválido: %r, ignorado" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Muitos math_renders estão registrados, mas nenhum math_renderer está selecionado." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "Valor de URI alvo inválido `%r` em intersphinx_mapping[%r][0]. Os URIs alvo devem ser exclusivos (outra instância em intersphinx_mapping[%r])." +msgid "Unknown math_renderer %r is given." +msgstr "math_renderer desconhecido %r é fornecido." -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "Valor de locais de inventário inválido `%r` em intersphinx_mapping[%r][1]. Os locais de inventário devem ser strings não vazias ou None." +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "entrada de html_extra_path %r está posicionada dentro de outdir" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "Configuração de `intersphinx_mapping` inválida (1 erro)." +#: builders/html/__init__.py:1370 +#, python-format +msgid "html_extra_path entry %r does not exist" +msgstr "a entrada de html_extra_path %r não existe" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1385 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "Configuração de `intersphinx_mapping` inválida (%s erros)." +msgid "html_static_path entry %r is placed inside outdir" +msgstr "entrada de html_static_path %r está posicionada dento de outdir" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "Uma entrada intersphinx_mapping inválida foi adicionada após a normalização." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "a entrada de html_static_path %r não existe" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "carregando inventário intersphinx '%s' de %s ..." +msgid "logo file %r does not exist" +msgstr "o arquivo logo %r não existe" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "o arquivo favicon %r não existe" + +#: builders/html/__init__.py:1425 +#, python-format msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "encontrados alguns problemas com alguns dos inventários, mas eles tem alternativas em funcionamento:" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "Os valores em 'html_sidebars' devem ser uma lista de strings. Pelo menos um padrão possui um valor de string: %s. Mude para `html_sidebars = %r`." -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "falha ao alcançar todos os inventários com os seguintes problemas:" +#: builders/html/__init__.py:1438 +msgid "" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 não encontra mais suporte no Sphinx. (\"html4_writer=True\" detectado nas opções de configuração)" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "o inventário intersphinx foi movido: %s -> %s" +msgid "%s %s documentation" +msgstr "Documentação %s %s" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "valor inválido para a opção member-order: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r não possui a configuração \"theme\"" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "valor inválido para a opção class-doc-from: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r não possui a configuração \"%s\"" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "assinatura inválida para auto%s (%r)" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "Falha ao obter um docname!" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "erro ao formatar argumentos para %s: %s" +msgid "Failed to get a docname for source %r!" +msgstr "Falha ao obter o docname para a fonte %r!" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc: falhou em determinar %s.%s (%r) a ser documentado, a seguinte exceção foi levantada:\n%s" +msgid "No footnote was found for given reference node %r" +msgstr "Nenhuma nota de rodapé foi encontrada para o nó de referência %r" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Os arquivos LaTeX estão em %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "não sei qual módulo importar para documentação automática %r (tente colocar uma diretiva “module” ou “currentmodule” no documento ou forneça um nome explícito para o módulo)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nExecute \"make\" nesse diretório para executá-los com (pdf)latex\n(use \"make latexpdf\" aqui para fazer isso automaticamente)." -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "Um objeto simulado foi detectado: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "nenhuma valor da configuração “latex_documents” encontrado; nenhum documento será escrito" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "erro ao formatar assinatura para %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "o valor da configuração “latex_documents” faz referência a um documento desconhecido %s" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "“::” no nome de automodule não faz sentido" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "copiando arquivos de suporte TeX" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "argumentos de assinatura ou anotação de retorno fornecidos para automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "copiando arquivos adicionais" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ deve ser uma lista de strings, não %r (no módulo %s) -- ignorando __all__" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Chave configuração desconhecida: latex_elements[%r], ignorado." -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "faltando atributo mencionado na opção :members: : módulo %s, atributo %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Opção de tema desconhecida: latex_theme_options[%r], ignorada." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "Falha ao obter uma assinatura de função para %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s já tem números de seção atribuídos (toctree numerada aninhada?)" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "Falha ao obter uma assinatura de construtor para %s: %s" +msgid "image file not readable: %s" +msgstr "arquivo de imagem não legível: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "Base: %s" +msgid "image file %s not readable: %s" +msgstr "arquivo de imagem %s não legível: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "faltando atributo %s no objeto %s" +msgid "download file not readable: %s" +msgstr "arquivo de download não legível: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "apelido de %s" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "referências circulares à toctree detectadas, ignorando: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "apelido de TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree contém referência ao documento %r que não possui título: nenhum link será gerado" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "Falha ao obter uma assinatura de método para %s: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "toctree contém referência ao documento não incluído %r" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "__slots__ inválido encontrado em %s. Ignorado." +msgid "toctree contains reference to non-existing document %r" +msgstr "toctree contém referência a documento inexistente %r" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "Falha ao analisar um valor de argumento padrão para %r: %s" +msgid "see %s" +msgstr "veja %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "Falha ao atualizar a assinatura para %r: parâmetro não encontrado: %s" +msgid "see also %s" +msgstr "veja também %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "Falha ao analisar type_comment para %r: %s" +msgid "unknown index entry type %r" +msgstr "tipo desconhecido de entrada de índice %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pt_PT/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/pt_PT/LC_MESSAGES/sphinx.mo index aa597d0e42607c101bde98b63204e54b80004c87..7e0494233e2a0b265b07c6c7b856156addb07d3c 100644 GIT binary patch delta 2340 zcmYM!Z)nw37{Ku}-P-P5^Us~L-8t>rRyv2WoBbVelcZn{dl6dDi^8p9Z;D#@q9Ofi ztkO}2{i76TwHJcYh%Q5kh}39~fm2Asf(fHWwF+%m*+~0-?Lg!1ety4m&w0-CJil}A zXN9*4$wa2~?ZDq_{MYl}SL)sWf4@|OP{r-9ScbEh!V=!Ruf%Fxhzs$?cz-)C=Dr;l zUa#6{^F!BmVcyr+xx^NP&!x^l_%5(_VVk5e79!=z4Y{7P1g4?hL z-$j;&q3B_xhHw-M>>tMBK$MBCIU1lTj^B+Yv=Qs@5j48t@J@!2&vO6E4RtoR9s; zE9{Q<`;pM$P#iyoiJ6|{Lcc>dnnDwrMk~C8ZZwBM=hfmp*nn>Q1X@`SHsX#rK7=d{ zN72rVqn$m2CNfb){~h=_PWT-caepaJm`79t*YWluHlZy&h<0KGeI%#QL?_X}(`ej3 z(Ro+U1X8qRE-pX|T{NHmJ0Z(}3mVXX&Df83p$kXQz$ego-^TmNc>f!kz#q62ub^?4 z63lfg&_}iw?Z}j%({1~H2V;{BIs z2gcCEzd_H^56HSC%yQvIAw%UH`xLrh8Evq#RcL2g;(aUf3hQ_?vCVk(5Td^uJxIu~ z3oT?2?Z_uc=x`b>^hZql{lCbC6`7U`>(To)=nu~ZH1iH*YIqv0_$4f0Kl&_3(FCT@ z0{%f0Pcdk#t8qOpK?{BqYyAFq#R<8K;7r3DFVGmx9189KH(eL{)w1N|8rDxEV&tNl_b5f17 z79GDIEubU16-{tE+L>KwLVIiJzZ(rP;KCyMY(_ALU!w~yVjGrlvbYTGXn@DC5x1h1 z?T+Jz(S%2%r_jTCHs1e)cJe}&{!>JlWxxcgDT8i?6?hyA=uc`neKnCLbl$CKqHWO! z(SV)t{z(H^vd50IGQ zAiD7=+PRZx<>$~i7tlvi#tC;_+LN9uUaokkq_`zrUs0LAd38%Zm%ptwe@k(DCOfzI JQO)bAe*sw#&0+um delta 2370 zcmYM!eP~uy9Ki82x3*_5&bGPS_Dp-`T+LGVq6^cS=vuxINiRw@`y)Y1D#;}Oi1MNd z(OM&_jS4J!GZF1=Av7eZv03}02txwf5`?7I+l;cpM&IvtpmBFU_ndprIltfUp8LGe zdaN}WEzRi({B`qR&3{*pt^fZnrb3ub^IyCK3-d$Z2qm0sr?CucumoFTdo^B0y8|!9 zhp`x+zzjZzJfDOE zh)fyYMFZ(a13ZOR;#Lb8UKMUTts?iR)y1WQEWG%Z>JqyXdOD??P!2^q2nIH z8r+97@Bngzqp>}JEEP^-;*IY(8R<{a3+O`Ah{k~OIGJHNy3ic-`6ajtSD*{;MKkNg zdH7cBA4b<1MJqFgR`&dK>Te|f#Ex7>`#>?y#B%ihRmc&p;j{hJ*`0yUl1IwjHn!tw1-r>)(j|$Iu0akfMbzqa*0VW9Y== zI2R{ke+}Q730xUn6ir&VFq7-h0B%4hSc_CKY(y8_g3J}R$NmI;1>H#U;Sf5$A6@7; zR^m`>pFt~d4h{TwWG^Klt8{AMEOeo2oXNJYLkBFQ3}$vCTA7<-dn0m$O`HsD2TpE6 z^lR!x)(A(?M2@2s`2v|bjAN1Ce-2@|n@iA)s?mWQ z{T=xLeWl}QAjO<~t`1G039a~YZ1ekXxrw^lx<2W>rytZWUV{d3D^jI!AG+XPbfIU^ zjC-Sp&DP3*rj_HRZPegyrF zpF$Trj4m{QCh$43b~uS4B diff --git a/addons/source-python/packages/site-packages/sphinx/locale/pt_PT/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/pt_PT/LC_MESSAGES/sphinx.po index e31127cdb..625358ad0 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/pt_PT/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/pt_PT/LC_MESSAGES/sphinx.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Komiya Takeshi , 2016\n" "Language-Team: Portuguese (Portugal) (http://app.transifex.com/sphinx-doc/sphinx-1/language/pt_PT/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: pt_PT\n" "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,468 +538,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Atenção" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Cuidado" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Perigo" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Erro" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Dica" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Importante" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Nota" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Veja também" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Dica" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Aviso" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (em " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[código fonte]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[documentos]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Código do módulo" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Código fonte de %s

" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Visão geral: código do módulo" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Todos os módulos onde este código está disponível

" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "invalid css_file: %r, ignored" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:29 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Internos" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Módulos" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -740,9 +1176,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -777,6 +1214,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Por fazer" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "entrada original" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -864,1779 +1329,1514 @@ msgstr "[gráfico: %s]" msgid "[graph]" msgstr "[gráfico]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Por fazer" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "entrada original" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autor da secção: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[código fonte]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autor do módulo: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autor do código: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[documentos]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Código do módulo" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Código fonte de %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Visão geral: código do módulo" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Todos os módulos onde este código está disponível

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Internos" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (função interna)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Módulos" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (método %s)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (classe)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (variável global ou constante)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (atributo %s)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Parâmetros" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Gera" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Retorno" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Tipo de retorno" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (módulo)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "função" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "método" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "classe" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dados" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atributo" -#: builders/__init__.py:275 +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "módulo" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (directiva)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (papel)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "directiva" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "papel" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "Alterado na versão %s" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Obsoleto desde a versão %s" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (em " +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" - -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" - -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: environment/__init__.py:86 -msgid "new config" -msgstr "" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" - -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" - -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" - -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" - -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" - -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" - -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" - -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" - -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" - -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" - -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "" - -#: util/i18n.py:146 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "locale_dir %s does not exist" -msgstr "" - -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +msgid "Creating file %s." msgstr "" -#: util/i18n.py:245 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +msgid "File %s already exists, skipping." msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: util/nodes.py:423 +#: cmd/quickstart.py:520 #, python-format msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" - -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" - -#: util/display.py:82 -msgid "skipped" -msgstr "" - -#: util/display.py:87 -msgid "failed" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" - -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" - -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: util/fileutil.py:76 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" - -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "" - -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" - -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Notas de rodapé" - -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[imagem: %s]" - -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[imagem]" - -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Índice" - -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:538 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" - -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "" - -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: writers/latex.py:1183 +#: cmd/quickstart.py:573 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (função interna)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (método %s)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (classe)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variável global ou constante)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (atributo %s)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Parâmetros" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Gera" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Retorno" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Tipo de retorno" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (módulo)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "função" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "método" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "classe" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dados" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atributo" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "módulo" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Alterado na versão %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Obsoleto desde a versão %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (directiva)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (papel)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "directiva" - -#: domains/rst.py:235 -msgid "directive-option" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "papel" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Atenção" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Cuidado" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Perigo" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Erro" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Dica" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Importante" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Nota" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Veja também" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Dica" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Aviso" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: cmd/quickstart.py:234 +#: cmd/quickstart.py:793 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: cmd/quickstart.py:241 +#: cmd/quickstart.py:810 #, python-format -msgid "Selected root path: %s" +msgid "Invalid template variable: %s" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor da secção: " -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor do módulo: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autor do código: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: cmd/quickstart.py:286 +#: directives/patches.py:70 msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: cmd/quickstart.py:339 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Índice" + +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Notas de rodapé" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[imagem: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[imagem]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:431 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "numfig_format is not defined for %s" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "File %s already exists, skipping." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:519 +#: writers/latex.py:616 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:526 +#: writers/latex.py:1198 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1228 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:244 #, python-format -msgid "Invalid template variable: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:74 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "continuação da página anterior" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "" + +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Símbolos" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Versão" -#: cmd/build.py:212 -msgid "console output options" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Recolher painel lateral" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navegação" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Pesquisar dentro de %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Sobre estes documentos" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Pesquisar" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Ir" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Copyright" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Última actualização em %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Tópico anterior" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "capítulo anterior" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Próximo tópico" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "próximo capítulo" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Índice completo numa página" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Esta Página" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Exibir Fonte" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Conteúdo" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Pesquisa rápida" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Pesquisar %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Ir" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2683,7 +2883,7 @@ msgstr "Índice Global de Módulos" msgid "quick access to all modules" msgstr "acesso rápido a todos os módulos" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Índice Geral" @@ -2691,23 +2891,15 @@ msgstr "Índice Geral" msgid "all functions, classes, terms" msgstr "todas as funções, classes, termos" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Esta Página" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Índice completo numa página" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Pesquisa rápida" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Pesquisar %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2717,57 +2909,6 @@ msgstr "Paginas de índice por letra" msgid "can be huge" msgstr "pode ser enorme" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Tópico anterior" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "capítulo anterior" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Próximo tópico" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "próximo capítulo" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navegação" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Pesquisar dentro de %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Sobre estes documentos" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Última actualização em %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2784,21 +2925,21 @@ msgstr "" msgid "search" msgstr "pesquisar" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Esconder Resultados da Pesquisa" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Conteúdo" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Resultados da Pesquisa" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "A sua pesquisa não encontrou nenhum documento. Por favor, confirme que todas as palavras estão escritas corretamente e que selecionou categorias suficientes." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2807,22 +2948,21 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "A Pesquisar" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "A preparar a pesquisa..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", em" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Esconder Resultados da Pesquisa" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2830,6 +2970,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2851,120 +2996,127 @@ msgstr "Outras alterações" msgid "Expand sidebar" msgstr "Expandir painel lateral" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parâmetros" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variáveis" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Levanta" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (no módulo %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (no módulo %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variável interna)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (classe interna)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (classe em %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (método de classe %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (método estático %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Índice de Módulos do Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "módulos" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Obsoleto" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "excepção" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "método de classe" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "método estático" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (obsoleto)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parâmetros" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variáveis" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Levanta" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2975,746 +3127,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "membro" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tipo" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "variável" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "macro" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "variável de ambiente; %s" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "Termo de glossário" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "token de gramática" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "rótulo de referência" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "variável de ambiente" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "opção de programa" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Índice de Módulos" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "ver %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "ver também %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Símbolos" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 +#: domains/c/__init__.py:211 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +msgid "%s (C %s)" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "variável" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "macro" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" +msgid "environment variable; %s" +msgstr "variável de ambiente; %s" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:116 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:239 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: transforms/post_transforms/images.py:143 +#: domains/std/__init__.py:319 #, python-format -msgid "Unknown image format: %s..." +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "Termo de glossário" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "índice" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "token de gramática" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "rótulo de referência" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "próximo" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "variável de ambiente" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "anterior" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "opção de programa" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Índice de Módulos" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "Documentação %s %s" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Versão" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "continuação da página anterior" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3722,7 +3654,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3737,481 +3669,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "%s is not a directory." +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "(em %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "índice" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "próximo" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "anterior" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "Documentação %s %s" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "ver %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "ver também %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ro/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ro/LC_MESSAGES/sphinx.mo index 1205f1588da214630d17b2334762df9d853d7a84..c499abb77173a03511f98e02df1b649d20d0a1dc 100644 GIT binary patch delta 2468 zcmYM#duY~G7{Ku}H{I1;buOoFF3q`Y+ba>IQW?xkg*2_kNClmf!W!CT&}P0(DM_&q z=O11c7@`b|#E}$c3Aw)f)F!%LGt z6s8>v{B-g+gTGJGEdBqpHZz3D6xZQI+=BduZL!>rMU*?R01w9UNi3#(4)d`eb8!&M z@fOlP8H%z($fja0QWp|v$Hi#J)i@2CumsyN2RqTg$I!$+#9BOurT808#S8{_+*#2| z%%HpwA0U2M94p$;neM`L+>Z`$DAs>~CUhRB;}vwE>u7*mI0^qnVuw_+G?831!76kG zYSHl@#7yFcyF%Ks&s0kG! zRbeJtUxi7M4U6K7WoW}S(e-G+XOZ8~!iO{7js|=kZGQwG#uI1)*U_1d;vCGOV0{8j zpblNB)w!&{OVLP$iEKd2&&LKY;}pu<B9EY3^aPq{GdgYy zI&NF6--)*0o5%V$@Nkd{GrEDP_y;=kzhc8tbbxe5H$WaAd$1hscM1)325t9gEMJP{ zel(#0oQZ>I0x3!EfE}~Zy_|+)dxT!cDm0PhXotsQ`6+bipGH?`GmhO3v|VR>{|*|s z8`+I;CfbX}OJ3o@fLE~suf-Q>h2t~JiWWpm&>5DYiOoa%FF?2Eel*|;WRjsi)^9|& zY8$ecVIR^z8M=6I3E#y#usfD7qAT+Sn)%o0q5ByPJc0(gjpB+=>R?i6(M1 zmfuGw^clKk-^B8@SRTft1OCIq9Gu7rGGG-tU;^#3xvZbcK>f%ZFqv+yuF zfsfJgFQ7BOjOEym>{=KuVf|g=NkntWs?mW~q75F8HlcggiYD*|8lW@2??MBdM%$f5 z6T5_S@mqB3QV6mHbI{whayskp-fpI10k$E@g_Gz~_M#p8(172e2@Ih#8;Qd9q49!F@kqePGv(q1M`q$5^B&bT8^&7D)h@{ zEt=2{G{Ifbx1xv886QW-`3Q-Z3}3|t187D==!}0yugz_AZ>N@xpNUeepVkkAEjrpab27&bS5* zSdU)AMl|te^enWZ-z9s|6?q#&dF7_&tuHh;ZFs49(|k%juV$`D>FLWlm64rTcu#Gj VJaONm#JxSci}F)@ju)3@{Rfs&*1-S( delta 2487 zcmYM#YfRQv9Ki7-7r6$Ah@hxXfyxMkB#TU46r+~ebp^BeLT#;9s6oZD%M&bDq2}x& z)>^Ezh{}wpnJs&PJ>_P(>P5}gV)4SIu5z{9y14p&@oce&=X1{apL2e{bI$+33(W_c zlRp$^JQw)!tAgK8GOYdob9YV%=TPmyOneaegq~R6j8my^$0_(~tnb58>W8ri$FTr^ z#{{P3PV`TPN(y;2EJB`zW^~|kbl@7Cj$K%Wn=v1Eqk)If@hLRHudo5X#hIAR!)aKB z&c8U?g4rP%!nG8Z@t|#@A%q?1iU%+Y_n;HJAKMS3i50`}jnT1SIheIJ_0!?FG(`g}W<;LiAb5Aq57`Rc(#=oVkiYTS|A z(IeV`Cfb9}+lR*45!+uXWd9v7NJASAqXBamosLE5%1h9G<>&;J$S0i7S064x$9;wd zI)e85F4o6m{TDQ$(>M$NO;T{;S==25&PUI(5hu8be2He*`_Mt;l94!w>~0*pF`E$5@W3SRX@o<`|m!Z|F879pbI;N9$gwQO45d03N}=r0jsbI7oY)eLML2__PZB70d zZH_*VCNhYQ`v_;_L39D*==>+qqxhqY{ZCN%n+A?GR1n3ju1B}74V|bHef~gn3-a=W z0W^WVXn+Ip`KM@rqiDY|G_hZCE@m*fM_4n1{a-?15e;6mPV|hoVJ+@LatmLgTX`HE z_!k;5lULaU3ec5RpzZU}fc5BnEy$^cc07dZ(RrJaM0LOoXvdYYz78kuH9B!`tZzXR z>Bm+0dTgJ}UlZTyPzr2(6G3%apbP4Md>-!2j7m*yGtu`{{smV)Ykw2 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ro/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/ro/LC_MESSAGES/sphinx.po index 752414c9c..84ba52d46 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/ro/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/ro/LC_MESSAGES/sphinx.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Razvan Stefanescu , 2015-2017\n" "Language-Team: Romanian (http://app.transifex.com/sphinx-doc/sphinx-1/language/ro/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: ro\n" "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Propuneri de Îmbunătățire Python; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Proiectul necesită minim Sphinx v%s și de aceea nu poate fi construit cu această versiune." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "eșuat: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,468 +538,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Fig. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabelul %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Cod %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Atenție" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Avertisment" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Pericol" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Eroare" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Sugestie" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Important" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Notă" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Vezi și" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Sfat" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Atenționare" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(în" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Propuneri de Îmbunătățire Python; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[sursă]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[documentație]" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Codul modulului" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Codul sursă pentru %s

" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Prezentare generală: codul modulului" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Toate modulele pentru care este disponibil codul sursă

" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "invalid css_file: %r, ignored" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:29 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Integrate" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Nivelul modul" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -740,9 +1176,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -777,6 +1214,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "De făcut" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "înregistrarea inițială" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -864,1779 +1329,1514 @@ msgstr "[grafic: %s]" msgid "[graph]" msgstr "[grafic]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "De făcut" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" -msgstr "înregistrarea inițială" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autorul secțiunii:" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[sursă]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autorul modulului:" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autorul codului:" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[documentație]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor:" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Codul modulului" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Codul sursă pentru %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Prezentare generală: codul modulului" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Toate modulele pentru care este disponibil codul sursă

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:92 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:56 +#: domains/math.py:73 #, python-format -msgid "no changes in version %s." +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Integrate" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (funcție integrată)" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Nivelul modul" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (metoda %s)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (clasă)" -#: builders/changes.py:133 +#: domains/javascript.py:188 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (variabilă globală sau constantă)" -#: builders/manpage.py:37 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (atribut %s)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumente" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Generează" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Întoarce" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Tipul întors" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (modul)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funcție" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metodă" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "clasă" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribut" -#: builders/__init__.py:275 +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" + +#: domains/javascript.py:458 #, python-format -msgid "all of %d po files" +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (directive)" +msgstr "%s (directivă)" -#: builders/__init__.py:309 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are out of date" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (rol)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "directivă" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:330 +#: domains/rst.py:236 +msgid "role" +msgstr "rol" + +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/changeset.py:32 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:348 +#: domains/changeset.py:33 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "Changed in version %s" +msgstr "Schimbat în versiunea %s" -#: builders/__init__.py:361 +#: domains/changeset.py:34 #, python-format -msgid "%d source files given on command line" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Învechit începând cu versiunea %s" -#: builders/__init__.py:377 +#: domains/changeset.py:35 #, python-format -msgid "targets for %d source files that are out of date" +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/__init__.py:322 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: cmd/build.py:357 #, python-format -msgid "error writing file %s: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr "(în" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:464 +#: cmd/quickstart.py:134 #, python-format -msgid "cannot write image file %r: %s" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:242 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" - -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" - -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: environment/__init__.py:86 -msgid "new config" -msgstr "" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" - -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" - -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" - -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" - -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" - -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" - -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" - -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" - -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" - -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" - -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "" - -#: util/i18n.py:146 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "locale_dir %s does not exist" -msgstr "" - -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +msgid "Creating file %s." msgstr "" -#: util/i18n.py:245 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +msgid "File %s already exists, skipping." msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: util/nodes.py:423 +#: cmd/quickstart.py:520 #, python-format msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" - -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" - -#: util/display.py:82 -msgid "skipped" -msgstr "" - -#: util/display.py:87 -msgid "failed" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" - -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" - -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: util/fileutil.py:76 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" - -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "" - -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" - -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Note de subsol" - -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[figura: %s]" - -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[figură]" - -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Index" - -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:538 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" - -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "" - -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: writers/latex.py:1183 +#: cmd/quickstart.py:573 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" - -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" - -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" - -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (funcție integrată)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (metoda %s)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (clasă)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (variabilă globală sau constantă)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (atribut %s)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumente" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Generează" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Întoarce" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Tipul întors" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funcție" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metodă" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "clasă" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribut" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Schimbat în versiunea %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Învechit începând cu versiunea %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (directivă)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rol)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "directivă" - -#: domains/rst.py:235 -msgid "directive-option" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "rol" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Atenție" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Avertisment" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Pericol" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Eroare" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Sugestie" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Important" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Notă" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Vezi și" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Sfat" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Atenționare" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: cmd/quickstart.py:234 +#: cmd/quickstart.py:793 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: cmd/quickstart.py:241 +#: cmd/quickstart.py:810 #, python-format -msgid "Selected root path: %s" +msgid "Invalid template variable: %s" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autorul secțiunii:" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autorul modulului:" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autorul codului:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: cmd/quickstart.py:286 +#: directives/patches.py:70 msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: cmd/quickstart.py:339 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Index" + +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Note de subsol" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[figura: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[figură]" + +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:431 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "numfig_format is not defined for %s" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" + +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" + +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "File %s already exists, skipping." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:519 +#: writers/latex.py:616 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:526 +#: writers/latex.py:1198 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1228 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:809 +#: util/i18n.py:244 #, python-format -msgid "Invalid template variable: %s" +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/build.py:74 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "continuare din pagina precedentă" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "" + +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Simboluri" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Versiune" -#: cmd/build.py:212 -msgid "console output options" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Ascundere bară laterală" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigare" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Caută în %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Despre aceste documente" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Căutare" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Caută" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Drepturi de autor" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Ultima actualizare la %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using
Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Subiectul precedent" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "capitolul precedent" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Subiectul următor" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "capitolul următor" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Index complet" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Această Pagină" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Vezi Sursa" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Cuprins" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Căutare rapidă" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Caută %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Caută" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2683,7 +2883,7 @@ msgstr "Index Module Globale" msgid "quick access to all modules" msgstr "acces rapid la toate modulele" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Index General" @@ -2691,23 +2891,15 @@ msgstr "Index General" msgid "all functions, classes, terms" msgstr "toate funcțiile, clasele, termenii" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Această Pagină" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Index complet" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Căutare rapidă" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "Caută %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2717,57 +2909,6 @@ msgstr "Indexează paginile dupa literă" msgid "can be huge" msgstr "poate fi extrem de mare" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Subiectul precedent" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "capitolul precedent" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Subiectul următor" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "capitolul următor" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigare" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Caută în %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Despre aceste documente" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Drepturi de autor" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Ultima actualizare la %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2784,21 +2925,21 @@ msgstr "" msgid "search" msgstr "căutare" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Ascunde Rezultatele Căutării" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Cuprins" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Rezultatele Căutării" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Căutarea nu a identificat nici un document. Te rog să te asiguri că toate cuvintele sunt scrise corect și că ai selectat suficiente categorii." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2807,22 +2948,21 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Căutare" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Se pregătește căutarea..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", în" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Ascunde Rezultatele Căutării" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2830,6 +2970,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2851,120 +2996,127 @@ msgstr "Alte schimbări" msgid "Expand sidebar" msgstr "Expandare bară laterală" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametrii" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variabile" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Generează" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (în modulul %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (în modulul %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (variabilă integrată)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (clasă integrată)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (clasa în %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (metoda clasei %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (metoda statică %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Indexul de Module Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "module" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Învechit" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "excepție" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "metoda clasei" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "metodă statică" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "(învechit)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametrii" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variabile" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Generează" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2975,746 +3127,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "membru" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tip" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enumerator" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "variabilă" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "macro" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "variabilă de mediu; %s" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "termen de glosar" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "element de gramatică" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "etichetă de referință" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "variabilă de mediu" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "opțiune a programului" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Index al modulelor" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "vezi %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "vezi și %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Simboluri" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 +#: domains/c/__init__.py:211 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +msgid "%s (C %s)" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "variabilă" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "macro" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" +msgid "environment variable; %s" +msgstr "variabilă de mediu; %s" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:116 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:239 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: transforms/post_transforms/images.py:143 +#: domains/std/__init__.py:319 #, python-format -msgid "Unknown image format: %s..." +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "termen de glosar" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "element de gramatică" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "etichetă de referință" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "următor" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "variabilă de mediu" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "precedent" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "opțiune a programului" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Index al modulelor" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "%s %s documentație" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Versiune" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "continuare din pagina precedentă" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3722,7 +3654,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3737,481 +3669,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "%s is not a directory." +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "(în %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "următor" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "precedent" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s documentație" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "vezi %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "vezi și %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ru/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ru/LC_MESSAGES/sphinx.mo index 817d79035a8119ea941409f98581fdad61a7b7a9..81c63b5d1f0c70b3bb8e08dcff4b91a13917f8e8 100644 GIT binary patch delta 12513 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 g$jtCCX#~f-7{sbqrUI|07%dDvj6}9 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ru/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/ru/LC_MESSAGES/sphinx.po index 51b9e1cc4..5f191d8a5 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/ru/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/ru/LC_MESSAGES/sphinx.po @@ -17,7 +17,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Dunaevsky Maxim , 2024\n" "Language-Team: Russian (http://app.transifex.com/sphinx-doc/sphinx-1/language/ru/)\n" @@ -28,6 +28,127 @@ msgstr "" "Language: ru\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "Common Vulnerabilities and Exposures; CVE %s" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "неправильный номер CVE %s" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "Common Weakness Enumeration; CWE %s" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "неправильный номер CWE %s" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Предложения об улучшениях Python; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "неправильный номер PEP %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "неправильный номер RFC %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "Разделы конфигурации темы, отличные от [theme] и [option], не поддерживаются (попытка получения значения из %r)." + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "параметр %s.%s не встречается ни в одной из найденных настроек тем" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "указана неподдерживаемая опция темы %r" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "файл %r указанной темы не является корректным ZIP-архивов или не содержит тему" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "не найдена тема %r (потерян theme.toml?)" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "Тема %r имеет циклическое наследование" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "Тема %r наследуется от темы %r, которая не загружена. Загруженные темы: %s" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "У темы %r слишком много предков" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "файл конфигурации темы не найден в %r" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "тема %r не имеет таблицы \"theme\"" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "В теме %r \"[theme]\" не является таблицей" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "В теме %r должна быть определена настройка \"theme.inherit\"" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "В теме %r \"[options]\" не является таблицей" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "Настройка \"theme.pygments_style\" должна быть таблицей. Подсказка: \"%s\"" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "найдено несколько файлов для документа \"%s\": %s\nДля сборки используется %r ." + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "Пропущен нечитаемый документ %r." + #: extension.py:58 #, python-format msgid "" @@ -42,127 +163,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Проекту требуется расширение %s версии не ниже %s, и, следовательно, он не может быть собран с загруженной версией (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Неизвестный лексер Pygments %r" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "Разбор literal_block %r как \"%s\" завершилось ошибкой на токене: %r. Перезапуск в relaxed mode." + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Событие %r уже существует" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Неизвестное событие: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "Обработчик %r для события %r возбудил исключение" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Не удалось найти исходный каталог (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Целевой путь (%s) не является каталогом" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Исходный и целевой каталоги не должны совпадать" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Запуск Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Проект требует версию Sphinx не ниже v%s и не может быть построен текущей версией." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "создание целевого каталога" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "при настройку расширения %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "загрузка переводов [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "готово" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "недоступно для встроенных сообщений" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "загрузка фиксированного окружения" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "ошибка: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Сборщик не указан, по умолчанию используется html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "сборка завершена с проблемами." -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "сборка успешна." -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "сборка завершена с проблемами, 1 предупреждение (с предупреждениями, рассматриваемыми как ошибки)." -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "сборка завершена с проблемами, 1 предупреждение." -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "сборка успешна, 1 предупреждение." -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "сборка завершена с проблемами, %s предупреждений (в том числе с предупреждениями, рассматриваемыми как ошибки)." -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "сборка завершена с проблемами, %s предупреждений." -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "сборка успешна, %s предупреждение(-ий)." -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "узел класса %r уже зарегистрирован, его посетители будут переопределены" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -170,12 +318,12 @@ msgid "" "explicit" msgstr "расширение %s не определено как безопасное для параллельного чтения; если вы полагаете что это не так - пожалуйста, попросите автора проверить и явно указать это" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "расширение %s не безопасно для параллельного чтения" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -183,82 +331,214 @@ msgid "" "explicit" msgstr "расширение %s не объявлено как безопасное для параллельное записи; если вы считаете что это не так - пожалуйста, попросите автора проверить и явно указать это" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "расширение %s не безопасно использует параллельную записи" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "в конфигурационной папке нет файла conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Отсутствует аттрибут \"name\" у класса сборщика %s." + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Сборщик %r уже существует (в модуле %s)." + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Сборщик %s не зарегистрирован явно или через ресурсы пакетов." + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Сборщик %s не зарегистрирован." + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "домен %s уже зарегистрирован" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "домен %s не зарегистрирован" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "Директива %r уже зарегистрирована в домене %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "Роль %r уже зарегистрирована в домене %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "Индекс %r уже зарегистрирован в домене %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "object_type %r уже зарегистрирован" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "%r crossref_type уже зарегистрирован" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r уже зарегистрирован" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser для %r уже зарегистрирован" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Парсер исходного кода %s не зарегистрирован" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Перевод для %r уже существует" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwargs для функции add_node() должны быть кортежем (visit, depart): %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r уже зарегистрирован" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "Движок отрисовки math %s уже зарегистрирован" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "Обнаружено некорректное значение настройки: 'language = None'. Обновите настройки, указав корректный код языка. Откат к 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "расширение %r является частью Sphinx начиная с версии %s; это расширение игнорируется." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Изначальное исключение:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Не удалось загрузить расширение %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "расширение %r не определяет функцию setup(); это действительно модуль расширения Sphinx?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Расширению %s, используемому в этом проекте, требуется версия Sphinx не ниже v%s, поэтому он не может быть собран с этой версией." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "расширение %r вернуло неподдерживаемый объект из функции setup() function; оно должно вернуть None или словарь метаданных" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "`None` не является корректным типом файла для %r." + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "в конфигурационной папке нет файла conf.py file (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "не удалось переопределить настройку словаря %r, пропускается (используйте %r для установки значений отдельных элементов)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "недопустимое число %r для настройки %r, пропускается" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "не удалось переопределить настройку %r с неподдерживаемым типом, пропускается" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "неизвестное значение параметра конфигурации %r в переопределении, пропускается" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "Нет такого значения конфигурации: %r" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Ключ конфигурации %r уже существует" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "Обнаружено некорректное значение настройки: 'language = None'. Обновите настройки, указав корректный код языка. Откат к 'en' (English)." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Синтаксическая ошибка в вашем файле конфигурации: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Файл конфигурации (или один из импортированных модулей) вызвал sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -266,2385 +546,2305 @@ msgid "" "%s" msgstr "В вашем файле конфигурации программная ошибка:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "Преобразование `source_suffix = %r` в `source_suffix = %r`." -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "Значением настройки `source_suffix' может быть словарь, строка или список строк. Вместо этого указано значение `%r' (тип %s)." -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Раздел %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Рис. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Таблица %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Список %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "Для настройки `{name}` возможны значения {candidates}, но указано `{current}`." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "Значение настройки `{name}' имеет тип `{current.__name__}'; ожидается {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "Значение настройки `{name}' имеет тип `{current.__name__}', приведено к значению по умолчанию `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r не найден, пропускается." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Неизвестный лексер Pygments %r" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "Разбор literal_block %r как \"%s\" завершилось ошибкой на токене: %r. Перезапуск в relaxed mode." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "Разделы конфигурации темы, отличные от [theme] и [option], не поддерживаются (попытка получения значения из %r)." +#: environment/__init__.py:89 +msgid "new config" +msgstr "новая конфигурация" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "параметр %s.%s не встречается ни в одной из найденных настроек тем" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "конфигурация изменена" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "указана неподдерживаемая опция темы %r" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "расширения изменились" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "файл %r указанной темы не является корректным ZIP-архивов или не содержит тему" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "версия окружения сборки отличается от текущей" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "каталог исходных файлов изменился" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "не найдена тема %r (потерян theme.toml?)" +msgid "The configuration has changed (1 option: %r)" +msgstr "Конфигурация изменилась (1 опция: %r)" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "Тема %r имеет циклическое наследование" +msgid "The configuration has changed (%d options: %s)" +msgstr "Конфигурация изменилась (%d опций: %s)" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "Конфигурация изменилась (%d опций: %s, ...)" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "Тема %r наследуется от темы %r, которая не загружена. Загруженные темы: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Это окружение несовместимо с выбранным сборщиком, пожалуйста, выберите другой каталог doctree." -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "У темы %r слишком много предков" +msgid "Failed to scan documents in %s: %r" +msgstr "Ошибка сканирования документов в %s: %r" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" -msgstr "файл конфигурации темы не найден в %r" +msgid "Domain %r is not registered" +msgstr "Домен %r не зарегистрирован" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "тема %r не имеет таблицы \"theme\"" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "документ не включен ни в одно оглавление" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "В теме %r \"[theme]\" не является таблицей" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "найдено оглавление, ссылающееся на само себя. Пропускается." -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "В теме %r должна быть определена настройка \"theme.inherit\"" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "В теме %r \"[options]\" не является таблицей" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Внимание" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "Настройка \"theme.pygments_style\" должна быть таблицей. Подсказка: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Осторожно" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Событие %r уже существует" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Опасно" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Неизвестное событие: %s" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Ошибка" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "Обработчик %r для события %r возбудил исключение" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Подсказка" -#: project.py:72 +#: locale/__init__.py:234 +msgid "Important" +msgstr "Важно" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Примечание" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "См. также" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Совет" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Предупреждение" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Файлы Texinfo находятся в %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "найдено несколько файлов для документа \"%s\": %s\nДля сборки используется %r ." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "Пропущен нечитаемый документ %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "не найдено значение настройки \"texinfo_documents\"; документы не были записаны" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Отсутствует аттрибут \"name\" у класса сборщика %s." +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "значение настройки \"texinfo_documents\" указывает на несуществующий документ %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Сборщик %r уже существует (в модуле %s)." +msgid "processing %s" +msgstr "обработка %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Сборщик %s не зарегистрирован явно или через ресурсы пакетов." +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "запись" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Сборщик %s не зарегистрирован." +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "разрешение ссылок..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "домен %s уже зарегистрирован" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (в " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "домен %s не зарегистрирован" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "копирование изображений..." -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "Директива %r уже зарегистрирована в домене %s" +msgid "cannot copy image file %r: %s" +msgstr "Не получается скопировать файл изображения %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "Роль %r уже зарегистрирована в домене %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "копирование файлов поддержки Texinfo" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "Индекс %r уже зарегистрирован в домене %s" +msgid "error writing file Makefile: %s" +msgstr "ошибка записи Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "object_type %r уже зарегистрирован" +msgid "The manual pages are in %(outdir)s." +msgstr "Страницы руководств находятся в %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "%r crossref_type уже зарегистрирован" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "не найдено значение настройки \"man_pages\"; страницы руководств не были записаны" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r уже зарегистрирован" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "Значение параметра \"man_pages\" ссылается на неизвестный документ %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser для %r уже зарегистрирован" +msgid "The HTML page is in %(outdir)s." +msgstr "Страница HTML находится в %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Парсер исходного кода %s не зарегистрирован" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "сборка единого документа" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Перевод для %r уже существует" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "запись дополнительных файлов" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "kwargs для функции add_node() должны быть кортежем (visit, depart): %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Глупый сборщик не генерирует файлы." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r уже зарегистрирован" +msgid "The message catalogs are in %(outdir)s." +msgstr "Каталоги сообщений находятся в %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "Движок отрисовки math %s уже зарегистрирован" +msgid "building [%s]: " +msgstr "сборка [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "расширение %r является частью Sphinx начиная с версии %s; это расширение игнорируется." +msgid "targets for %d template files" +msgstr "цели для %d файлов шаблонов" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Изначальное исключение:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "чтение шаблонов..." -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "Не удалось загрузить расширение %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "запись каталогов сообщений... " -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "расширение %r не определяет функцию setup(); это действительно модуль расширения Sphinx?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Расширению %s, используемому в этом проекте, требуется версия Sphinx не ниже v%s, поэтому он не может быть собран с этой версией." +msgid "broken link: %s (%s)" +msgstr "сломанная ссылка: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "расширение %r вернуло неподдерживаемый объект из функции setup() function; оно должно вернуть None или словарь метаданных" - -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." -msgstr "`None` не является корректным типом файла для %r." +msgid "Anchor '%s' not found" +msgstr "Якорь '%s' не найден" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "Common Vulnerabilities and Exposures; CVE %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" -#: roles.py:229 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid CVE number %s" -msgstr "неправильный номер CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "Ошибка компиляции регулярного выражения в linkcheck_allowed_redirects: %r %s" -#: roles.py:251 +#: builders/epub3.py:83 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "Common Weakness Enumeration; CWE %s" +msgid "The ePub file is in %(outdir)s." +msgstr "Файл ePub находится в %(outdir)s." -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" -msgstr "неправильный номер CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "запись файла nav.xhtml..." -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Предложения об улучшениях Python; PEP %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "настройка \"epub_language\" (или \"language\") должна быть не пустой при использовании EPUB3" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" -msgstr "неправильный номер PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "значение настройки \"epub_uid\" должно быть равно XML NAME для EPUB3" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" -msgstr "неправильный номер RFC %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "значение настройки \"epub_title\" (или \"html_title\") должно быть не пустым для EPUB3" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[исходный код]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "значение настройки \"epub_author\" должно быть не пустым для EPUB3" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "подсветка кода модуля... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "значение настройки \"epub_contributor\" должно быть не пустым для EPUB3" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[документация]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "значение настройки \"epub_description\" должно быть не пустым для EPUB3" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Код модуля" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "значение настройки \"epub_publisher\" должно быть не пустым для EPUB3" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Исходный код %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "значение настройки \"epub_copyright\" (или \"copyright\") должно быть не пустым для EPUB3" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Обзор: исходный код модуля" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "значение настройки \"epub_identifier\" должно быть не пустым для EPUB3" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Все модули, в которых есть код

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "значение настройки \"version\" должно быть не пустым для EPUB3" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "прямая ссылка %r должна быть заменена на extlink (попробуйте использовать %r)" +msgid "invalid css_file: %r, ignored" +msgstr "некорректный css_file: %r, пропускается" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "секция \"%s\" отмечена как \"%s\"" +msgid "The XML files are in %(outdir)s." +msgstr "Файлы XML находятся в %(outdir)s." -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "повтоярющаяся метка %s, другой экземпляр в %s" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "Ссылка на эту формулу" +msgid "error writing file %s: %s" +msgstr "ошибка записи файла %s: %s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Файлы pseudo-XML находятся в %(outdir)s." -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "не указан '+' или '-' в опции '%s'." +msgid "duplicated ToC entry found: %s" +msgstr "найден повторяющийся элемент оглавления: %s" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' — некорректная опция." +msgid "cannot read image file %r: copying it instead" +msgstr "Не получается считать файл изображение %r: скопируйте его" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' некорректная опция pyversion" +msgid "cannot write image file %r: %s" +msgstr "Не получается записать файл изображения %r: %s" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "неправильный тип TestCode" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow не найден - копирование файлов изображений" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Тестирование doctests в исходном каталоге завершено, посмотрите результаты в %(outdir)s/output.txt." +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "запись файла mimetype..." -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "запись файла META-INF/container.xml..." -#: ext/doctest.py:568 -#, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "пропускается некорректный код doctest: %r" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "запись файла content.opf..." -#: ext/imgmath.py:162 +#: builders/_epub_base.py:594 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "Команда LaTeX %r не может быть выполнена (требуется для отображения математики), проверьте настройку imgmath_latex" +msgid "unknown mimetype for %s, ignoring" +msgstr "неизвестный mimetype для %s, пропускается" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "Команда %s %r не может быть выполнена (требуется для отображения математики), проверьте настройку imgmath_%s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "неправильный уровень узла" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" -msgstr "отображение latex %r: %s" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "запись файла toc.ncx..." -#: ext/imgmath.py:380 +#: builders/_epub_base.py:802 #, python-format -msgid "inline latex %r: %s" -msgstr "встроенный LaTeX %r: %s" +msgid "writing %s file..." +msgstr "записывается %s файл..." -#: ext/coverage.py:48 +#: builders/text.py:27 #, python-format -msgid "invalid regex %r in %s" -msgstr "некорректное регулярное выражение %r в %s" +msgid "The text files are in %(outdir)s." +msgstr "Текстовые файлы находятся в %(outdir)s." -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:229 #, python-format -msgid "module %s could not be imported: %s" -msgstr "модуль %s не может быть импортирован: %s" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "подходящий образ для сборщика %s не найден: %s (%s)" -#: ext/coverage.py:148 +#: builders/__init__.py:237 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "следующие модули документированы но не указаны в coverage_modules: %s" +msgid "a suitable image for %s builder not found: %s" +msgstr "подходящий образ для сборщика %s не найден: %s" -#: ext/coverage.py:158 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "следующие модули указаны в coverage_modules но не документированы" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "сборка [mo]:" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." -msgstr "" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "запись вывода..." -#: ext/coverage.py:187 +#: builders/__init__.py:280 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "некорректное регулярное выражение %r в coverage_c_regexes" +msgid "all of %d po files" +msgstr "все из %d po-файлов" -#: ext/coverage.py:260 +#: builders/__init__.py:302 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "недокументированный C API: %s [%s] в файле %s" +msgid "targets for %d po files that are specified" +msgstr "цели для %d файлов PO указаны" -#: ext/coverage.py:452 +#: builders/__init__.py:314 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "недокументированная функция Python: %s :: %s" +msgid "targets for %d po files that are out of date" +msgstr "цели для %d файлов PO устарели" -#: ext/coverage.py:473 -#, python-format -msgid "undocumented python class: %s :: %s" -msgstr "недокументированный класс Python: %s :: %s" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "все исходные файлы" -#: ext/coverage.py:492 +#: builders/__init__.py:335 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "недокументированный метод Python: %s :: %s :: %s" +msgid "file %r given on command line does not exist, " +msgstr "файл %r, указанный в аргументах командной строки, не существует," -#: ext/imgconverter.py:44 +#: builders/__init__.py:342 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "Не удалось запустить команду преобразования изображений %r. По умолчанию для 'sphinx.ext.imgconverter' требуется ImageMagick. Убедитесь, что он установлен, или укажите в опции 'image_converter' собственную команду преобразования.\n\nВывод: %s" +"file %r given on command line is not under the source directory, ignoring" +msgstr "файл %r, переданный в командной строке, не найден в исходном каталоге, пропускается" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:353 #, python-format -msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "преобразование выполнено с ошибкой:\n[stderr]\n%r\n[stdout]\n%r" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "файл %r, переданный в командной строке, не является корректным документом, пропускается" -#: ext/imgconverter.py:83 +#: builders/__init__.py:366 #, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "команда преобразования %r не может быть запущена, проверьте настройку image_converter" - -#: ext/graphviz.py:138 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "В директиве graphviz нельзя одновременно использовать аргументы content и filename" +msgid "%d source files given on command line" +msgstr "%d исходных файлов передано в командной строке" -#: ext/graphviz.py:153 +#: builders/__init__.py:382 #, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "Внешний файл Graphviz %r не найден или недоступен для чтения" +msgid "targets for %d source files that are out of date" +msgstr "цели для %d не обновлённых исходных файлов" -#: ext/graphviz.py:164 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "Пропускается директива \"graphviz\" без содержимого." +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "ищем файлы, устаревшие на данный момент... " -#: ext/graphviz.py:287 +#: builders/__init__.py:415 #, python-format -msgid "graphviz_dot executable path must be set! %r" -msgstr "Путь к исполняемому файлу graphviz_dot должен быть задан! %r" +msgid "%d found" +msgstr "%d найден" -#: ext/graphviz.py:328 -#, python-format -msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "команда dot %r не может быть выполнена (требуется для graphviz output), проверьте настройки graphviz_dot" - -#: ext/graphviz.py:339 -#, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "" - -#: ext/graphviz.py:344 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "" - -#: ext/graphviz.py:367 -#, python-format -msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" -msgstr "" - -#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 -#, python-format -msgid "dot code %r: %s" -msgstr "код dot %r: %s" - -#: ext/graphviz.py:493 ext/graphviz.py:501 -#, python-format -msgid "[graph: %s]" -msgstr "[иллюстрация: %s]" - -#: ext/graphviz.py:495 ext/graphviz.py:503 -msgid "[graph]" -msgstr "[иллюстрация]" - -#: ext/todo.py:61 -msgid "Todo" -msgstr "План" - -#: ext/todo.py:94 -#, python-format -msgid "TODO entry found: %s" -msgstr "найдена запись TODO: %s" - -#: ext/todo.py:152 -msgid "<>" -msgstr "<<исходная запись>>" - -#: ext/todo.py:154 -#, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<<Исходная запись>> находится в %s, строка %d.)" - -#: ext/todo.py:166 -msgid "original entry" -msgstr "исходный элемент" +#: builders/__init__.py:417 +msgid "none found" +msgstr "ничего не найдено" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: builders/__init__.py:424 +msgid "pickling environment" msgstr "" -#: directives/code.py:87 -#, python-format -msgid "Invalid caption: %s" -msgstr "Неправильный заголовок: %s" +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "проверка целостности" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 -#, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "указанный номер строки находится за границами диапазона(1-%d): %r" +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "нет устаревших целей." -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Нельзя одновременно использовать опции \"%s\" и \"%s\"" +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "обновление окружения:" -#: directives/code.py:231 +#: builders/__init__.py:499 #, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +msgid "%s added, %s changed, %s removed" +msgstr "%s добавлено, %s изменено, %s удалено" -#: directives/code.py:235 +#: builders/__init__.py:536 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" - -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "Объект с названием %r не найден в подключенном файле %r" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "Sphinx не может загрузить основной документ (%s) потому что он соответствует встроенному шаблону исключений %r. Пожалуйста, переместите свой основной документ в другое расположение." -#: directives/code.py:314 +#: builders/__init__.py:545 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Указаны строки %r: ни одна строка не вставлена из файла %r" - -#: directives/patches.py:71 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "Опция \":file:\" директивы csv-table теперь рассчитывает абсолютный путь относительно исходного каталога. Пожалуйста, обновите свой документ." +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "Sphinx не может загрузить основной документ (%s), потому что он соответствует шаблону исключений, указанному в conf.py, %r. Пожалуйста, удалите этот шаблон из conf.py." -#: directives/other.py:119 +#: builders/__init__.py:556 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "глобальный шаблон toctree %r не соответствует ни одному документу" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "Sphinx не может загрузить основной документ (%s), потому что он не включен ни в один из настроенных include_patterns = %r. Убедитесь, что шаблон в include_patterns соответствует основному документу." -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: builders/__init__.py:563 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "дерево оглавления содержит ссылку на исключённый документ %r" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "Sphinx не удалось загрузить основной документ (%s). Основной документ должен размещаться внутри исходного каталога или в одном из его подкаталогов." -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "дерево оглавления содержит ссылку на несуществующий документ %r" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "чтение исходных файлов..." -#: directives/other.py:169 +#: builders/__init__.py:725 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "повторяющееся значение в дереве оглавления: %s" - -#: directives/other.py:203 -msgid "Section author: " -msgstr "Автор раздела: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Автор модуля: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Автор кода:" +msgid "docnames to write: %s" +msgstr "названия документов для записи: %s" -#: directives/other.py:209 -msgid "Author: " -msgstr "Автор: " +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "содержимое .. acks не является списком" +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "подготовка документов" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "содержимое .. hlist не является списком" +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "копирование материалов" #: builders/changes.py:29 #, python-format msgid "The overview file is in %(outdir)s." msgstr "Обзорный файл находится в %(outdir)s." -#: builders/changes.py:56 +#: builders/changes.py:65 #, python-format msgid "no changes in version %s." msgstr "нет изменений в версии %s." -#: builders/changes.py:58 +#: builders/changes.py:67 msgid "writing summary file..." msgstr "запись итогового файла..." -#: builders/changes.py:70 +#: builders/changes.py:79 msgid "Builtins" msgstr "Встроенные функции" -#: builders/changes.py:72 +#: builders/changes.py:81 msgid "Module level" msgstr "Модуль" -#: builders/changes.py:124 +#: builders/changes.py:137 msgid "copying source files..." msgstr "копирование исходных файлов..." -#: builders/changes.py:133 +#: builders/changes.py:146 #, python-format msgid "could not read %r for changelog creation" msgstr "не удалось прочитать %r для создания журнала изменений" -#: builders/manpage.py:37 +#: ext/coverage.py:48 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Страницы руководств находятся в %(outdir)s." - -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "не найдено значение настройки \"man_pages\"; страницы руководств не были записаны" - -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "запись" +msgid "invalid regex %r in %s" +msgstr "некорректное регулярное выражение %r в %s" -#: builders/manpage.py:71 +#: ext/coverage.py:140 ext/coverage.py:301 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "Значение параметра \"man_pages\" ссылается на неизвестный документ %s" +msgid "module %s could not be imported: %s" +msgstr "модуль %s не может быть импортирован: %s" -#: builders/__init__.py:224 +#: ext/coverage.py:148 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "подходящий образ для сборщика %s не найден: %s (%s)" +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "следующие модули документированы но не указаны в coverage_modules: %s" -#: builders/__init__.py:232 +#: ext/coverage.py:158 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "подходящий образ для сборщика %s не найден: %s" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "сборка [mo]:" +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "запись вывода..." +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" -#: builders/__init__.py:275 +#: ext/coverage.py:187 #, python-format -msgid "all of %d po files" -msgstr "все из %d po-файлов" +msgid "invalid regex %r in coverage_c_regexes" +msgstr "некорректное регулярное выражение %r в coverage_c_regexes" -#: builders/__init__.py:297 +#: ext/coverage.py:260 #, python-format -msgid "targets for %d po files that are specified" -msgstr "цели для %d файлов PO указаны" +msgid "undocumented c api: %s [%s] in file %s" +msgstr "недокументированный C API: %s [%s] в файле %s" -#: builders/__init__.py:309 +#: ext/coverage.py:452 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "цели для %d файлов PO устарели" +msgid "undocumented python function: %s :: %s" +msgstr "недокументированная функция Python: %s :: %s" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "все исходные файлы" +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "недокументированный класс Python: %s :: %s" -#: builders/__init__.py:330 +#: ext/coverage.py:492 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "файл %r, указанный в аргументах командной строки, не существует," +msgid "undocumented python method: %s :: %s :: %s" +msgstr "недокументированный метод Python: %s :: %s :: %s" -#: builders/__init__.py:337 +#: ext/extlinks.py:82 #, python-format msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "файл %r, переданный в командной строке, не найден в исходном каталоге, пропускается" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "прямая ссылка %r должна быть заменена на extlink (попробуйте использовать %r)" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "файл %r, переданный в командной строке, не является корректным документом, пропускается" +#: ext/todo.py:61 +msgid "Todo" +msgstr "План" -#: builders/__init__.py:361 +#: ext/todo.py:94 #, python-format -msgid "%d source files given on command line" -msgstr "%d исходных файлов передано в командной строке" - -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "цели для %d не обновлённых исходных файлов" - -#: builders/__init__.py:395 builders/gettext.py:265 -#, python-format -msgid "building [%s]: " -msgstr "сборка [%s]: " +msgid "TODO entry found: %s" +msgstr "найдена запись TODO: %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "ищем файлы, устаревшие на данный момент... " +#: ext/todo.py:152 +msgid "<>" +msgstr "<<исходная запись>>" -#: builders/__init__.py:410 +#: ext/todo.py:154 #, python-format -msgid "%d found" -msgstr "%d найден" +msgid "(The <> is located in %s, line %d.)" +msgstr "(<<Исходная запись>> находится в %s, строка %d.)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "ничего не найдено" +#: ext/todo.py:166 +msgid "original entry" +msgstr "исходный элемент" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "" +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "Не удалось запустить команду преобразования изображений %r. По умолчанию для 'sphinx.ext.imgconverter' требуется ImageMagick. Убедитесь, что он установлен, или укажите в опции 'image_converter' собственную команду преобразования.\n\nВывод: %s" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "проверка целостности" +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "преобразование выполнено с ошибкой:\n[stderr]\n%r\n[stdout]\n%r" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "нет устаревших целей." +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "команда преобразования %r не может быть запущена, проверьте настройку image_converter" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "обновление окружения:" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "В директиве graphviz нельзя одновременно использовать аргументы content и filename" -#: builders/__init__.py:494 +#: ext/graphviz.py:153 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s добавлено, %s изменено, %s удалено" +msgid "External Graphviz file %r not found or reading it failed" +msgstr "Внешний файл Graphviz %r не найден или недоступен для чтения" + +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "Пропускается директива \"graphviz\" без содержимого." -#: builders/__init__.py:531 +#: ext/graphviz.py:287 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "Sphinx не может загрузить основной документ (%s) потому что он соответствует встроенному шаблону исключений %r. Пожалуйста, переместите свой основной документ в другое расположение." +msgid "graphviz_dot executable path must be set! %r" +msgstr "Путь к исполняемому файлу graphviz_dot должен быть задан! %r" -#: builders/__init__.py:540 +#: ext/graphviz.py:328 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "Sphinx не может загрузить основной документ (%s), потому что он соответствует шаблону исключений, указанному в conf.py, %r. Пожалуйста, удалите этот шаблон из conf.py." +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "команда dot %r не может быть выполнена (требуется для graphviz output), проверьте настройки graphviz_dot" -#: builders/__init__.py:551 +#: ext/graphviz.py:339 #, python-format msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "Sphinx не может загрузить основной документ (%s), потому что он не включен ни в один из настроенных include_patterns = %r. Убедитесь, что шаблон в include_patterns соответствует основному документу." +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" -#: builders/__init__.py:558 +#: ext/graphviz.py:344 #, python-format msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "Sphinx не удалось загрузить основной документ (%s). Основной документ должен размещаться внутри исходного каталога или в одном из его подкаталогов." - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "чтение исходных файлов..." +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "" -#: builders/__init__.py:713 +#: ext/graphviz.py:367 #, python-format -msgid "docnames to write: %s" -msgstr "названия документов для записи: %s" - -#: builders/__init__.py:715 -msgid "no docnames to write!" +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "подготовка документов" - -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "копирование материалов" - -#: builders/__init__.py:883 +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "неперекодируемые исходные символы, заменены на \"?\": %r" +msgid "dot code %r: %s" +msgstr "код dot %r: %s" -#: builders/epub3.py:84 +#: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "Файл ePub находится в %(outdir)s." +msgid "[graph: %s]" +msgstr "[иллюстрация: %s]" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "запись файла nav.xhtml..." +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[иллюстрация]" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "настройка \"epub_language\" (или \"language\") должна быть не пустой при использовании EPUB3" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "Команда LaTeX %r не может быть выполнена (требуется для отображения математики), проверьте настройку imgmath_latex" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "значение настройки \"epub_uid\" должно быть равно XML NAME для EPUB3" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "Команда %s %r не может быть выполнена (требуется для отображения математики), проверьте настройку imgmath_%s" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "значение настройки \"epub_title\" (или \"html_title\") должно быть не пустым для EPUB3" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "отображение latex %r: %s" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "значение настройки \"epub_author\" должно быть не пустым для EPUB3" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "встроенный LaTeX %r: %s" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "значение настройки \"epub_contributor\" должно быть не пустым для EPUB3" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "Ссылка на эту формулу" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "значение настройки \"epub_description\" должно быть не пустым для EPUB3" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "не указан '+' или '-' в опции '%s'." -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "значение настройки \"epub_publisher\" должно быть не пустым для EPUB3" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "'%s' — некорректная опция." -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "значение настройки \"epub_copyright\" (или \"copyright\") должно быть не пустым для EPUB3" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' некорректная опция pyversion" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "значение настройки \"epub_identifier\" должно быть не пустым для EPUB3" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "неправильный тип TestCode" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "значение настройки \"version\" должно быть не пустым для EPUB3" +#: ext/doctest.py:297 +#, python-format +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Тестирование doctests в исходном каталоге завершено, посмотрите результаты в %(outdir)s/output.txt." -#: builders/epub3.py:279 builders/html/__init__.py:1291 +#: ext/doctest.py:451 #, python-format -msgid "invalid css_file: %r, ignored" -msgstr "некорректный css_file: %r, пропускается" +msgid "no code/output in %s block at %s:%s" +msgstr "" -#: builders/xml.py:31 +#: ext/doctest.py:568 #, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Файлы XML находятся в %(outdir)s." +msgid "ignoring invalid doctest code: %r" +msgstr "пропускается некорректный код doctest: %r" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 +#: ext/autosectionlabel.py:52 #, python-format -msgid "error writing file %s: %s" -msgstr "ошибка записи файла %s: %s" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "секция \"%s\" отмечена как \"%s\"" -#: builders/xml.py:101 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Файлы pseudo-XML находятся в %(outdir)s." +msgid "duplicate label %s, other instance in %s" +msgstr "повтоярющаяся метка %s, другой экземпляр в %s" -#: builders/texinfo.py:45 +#: ext/duration.py:47 #, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Файлы Texinfo находятся в %(outdir)s." +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: builders/texinfo.py:48 +#: ext/duration.py:117 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +"====================== total reading duration ==========================" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "не найдено значение настройки \"texinfo_documents\"; документы не были записаны" - -#: builders/texinfo.py:89 +#: ext/duration.py:124 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "значение настройки \"texinfo_documents\" указывает на несуществующий документ %s" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" + +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 +#: ext/duration.py:139 #, python-format -msgid "processing %s" -msgstr "обработка %s" +msgid "%.3fs %s" +msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "разрешение ссылок..." +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[исходный код]" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (в " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "подсветка кода модуля... " -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "копирование изображений..." +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[документация]" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Код модуля" + +#: ext/viewcode.py:359 #, python-format -msgid "cannot copy image file %r: %s" -msgstr "Не получается скопировать файл изображения %r: %s" +msgid "

Source code for %s

" +msgstr "

Исходный код %s

" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "копирование файлов поддержки Texinfo" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Обзор: исходный код модуля" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "ошибка записи Makefile: %s" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Все модули, в которых есть код

" -#: builders/_epub_base.py:223 +#: domains/citation.py:75 #, python-format -msgid "duplicated ToC entry found: %s" -msgstr "найден повторяющийся элемент оглавления: %s" +msgid "duplicate citation %s, other instance in %s" +msgstr "повторное цитирование %s, другой экземпляр в %s" -#: builders/_epub_base.py:433 +#: domains/citation.py:92 #, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "Не получается считать файл изображение %r: скопируйте его" +msgid "Citation [%s] is not referenced." +msgstr "Ссылка на цитату [%s] отсутствует." -#: builders/_epub_base.py:464 +#: domains/math.py:73 #, python-format -msgid "cannot write image file %r: %s" -msgstr "Не получается записать файл изображения %r: %s" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "повторяющаяся метка уравнения %s, также используется в %s" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow не найден - копирование файлов изображений" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "Неправильный math_eqref_format: %r" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "запись файла mimetype..." +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (встроенная функция)" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "запись файла META-INF/container.xml..." +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (метод %s)" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "запись файла content.opf..." +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (класс)" -#: builders/_epub_base.py:591 +#: domains/javascript.py:188 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "неизвестный mimetype для %s, пропускается" +msgid "%s (global variable or constant)" +msgstr "%s (глобальная переменная или константа)" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "неправильный уровень узла" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (атрибут %s)" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "запись файла toc.ncx..." +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Аргументы" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "записывается %s файл..." +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Бросает исключение" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "Глупый сборщик не генерирует файлы." +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Результат" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Каталоги сообщений находятся в %(outdir)s." +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Тип результата" -#: builders/gettext.py:266 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d template files" -msgstr "цели для %d файлов шаблонов" +msgid "%s (module)" +msgstr "%s (модуль)" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "чтение шаблонов..." +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "функция" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "запись каталогов сообщений... " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "метод" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Страница HTML находится в %(outdir)s." +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "класс" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "сборка единого документа" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "данные" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "запись дополнительных файлов" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "атрибут" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "модуль" -#: builders/linkcheck.py:149 +#: domains/javascript.py:458 #, python-format -msgid "broken link: %s (%s)" -msgstr "сломанная ссылка: %s (%s)" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "повтор описания %s для %s, другое %s в %s" -#: builders/linkcheck.py:548 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "Anchor '%s' not found" -msgstr "Якорь '%s' не найден" +msgid "%s (directive)" +msgstr "%s (директива)" -#: builders/linkcheck.py:758 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "Ошибка компиляции регулярного выражения в linkcheck_allowed_redirects: %r %s" +msgid ":%s: (directive option)" +msgstr ":%s: (опция директивы)" -#: builders/text.py:29 +#: domains/rst.py:224 #, python-format -msgid "The text files are in %(outdir)s." -msgstr "Текстовые файлы находятся в %(outdir)s." +msgid "%s (role)" +msgstr "%s (роль)" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "противоречивые ссылки на сноску в переведённом сообщении. Оригинал: {0}, перевод: {1}" +#: domains/rst.py:234 +msgid "directive" +msgstr "директива" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "противоречивые ссылки в переведённом сообщении. Оригинал: {0}, перевод: {1}" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "противоречивые ссылки на цитату в переведённом сообщении. Оригинал: {0}, перевод: {1}" +#: domains/rst.py:236 +msgid "role" +msgstr "роль" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "противоречивая ссылка на термин в переведённом сообщении. Оригинал: {0}, перевод: {1}" +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "повторное описание %s %s, другой экземпляр в %s" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 +#: domains/changeset.py:32 #, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" +msgid "Added in version %s" +msgstr "Добавлено в версии %s" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "не удалось рассчитать прогресс перевода!" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "Изменено в версии %s" -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "нет переведённых элементов!" +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "Устарело, начиная с версии %s" -#: transforms/__init__.py:253 +#: domains/changeset.py:35 #, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "Найден четырёхстолбцовый индекс. Это может быть ошибкой используемого вами расширения: %r" +msgid "Removed in version %s" +msgstr "Удалено в версии %s" -#: transforms/__init__.py:294 +#: domains/__init__.py:322 #, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Сссылка на сноску [%s] не определена." +msgid "%s %s" +msgstr "%s %s" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "Ссылка на сноску [*] не определена." +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "номер задания должен быть положительным числом" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Ссылка на сноску [#] отсутствует." +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "Для получения дополнительной информации посетите ." -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "Использование:" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nСоздание документации из исходных файлов.\n\nsphinx-build создает документацию из файлов в SOURCEDIR и помещает ее в\nOUTPUTDIR. Он ищет 'conf.py' в SOURCEDIR для определения настроек\nконфигурации. Инструмент 'sphinx-quickstart' может быть использован для\nсоздания файлов шаблонов, включая 'conf.py'\n\nsphinx-build может создавать документацию в различных форматах. Формат\nвыбирается путем указания названия сборщика в аргументах командной\nстроки; по умолчанию используется HTML. Сборщики также могут\n выполнять другие задачи, связанные с обработкой документации.\n\nПо умолчанию собирается все что устарело. Вывод только для выбранных\nфайлов может быть реализован путем указания отдельных имен файлов.\n" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "{0} [ОПЦИИ] []" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "путь к исходным файлам документации" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "Генератор документации Sphinx." +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "путь к целевому каталогу" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "Команды:" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "(опционально) список файлов для пересборки. Пропускается если указано --write-all" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "Опции" +#: cmd/build.py:114 +msgid "general options" +msgstr "основные опции" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "Для получения дополнительной информации посетите https://www.sphinx-doc.org/en/master/man/." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "используемый сборщик (по умолчанию: 'html')" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/build.py:131 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "{0}: ошибка: {1}\nВыполните '{0} --help' для получения информации" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "запустить параллельно N процессов, если возможно. 'auto' соответствует числу ядер CPU" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "Управление документацией со Sphinx." +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "записать все файлы (по умолчанию: записать только новые и изменённые файлы)" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "Показать версию и выйти." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "не использовать сохраненное окружение, всегда читать все файлы" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "Показать это сообщение и выйти." +#: cmd/build.py:150 +msgid "path options" +msgstr "опции пути" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "Журналирование" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "каталог для дерева документов и файлов окружения (по умолчанию: OUTPUT_DIR/.doctrees)" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "Увеличить подробность (можно указать несколько раз)" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "каталог с файлом конфигурации (conf.py) (по умолчанию: SOURCE_DIR)" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "Выводить только ошибки и предупреждения." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "не использовать конфигурационный файл, только настройки, указанные в опциях -D" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "переопределяет настройки в конфигурационном файле" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "передать значение в шаблон HTML" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "См. 'sphinx --help'.\n" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "определить тег: включить \"только\" блоги с ТЕГОМ" -#: environment/__init__.py:86 -msgid "new config" -msgstr "новая конфигурация" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "придирчивый режим: предупреждать обо всех потерянных ссылках" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "конфигурация изменена" +#: cmd/build.py:212 +msgid "console output options" +msgstr "опции вывода в терминал" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "расширения изменились" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "увеличить детальность (может повторяться несколько раз)" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "версия окружения сборки отличается от текущей" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "без вывода в stdout, только предупреждения в stderr" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "каталог исходных файлов изменился" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "Конфигурация изменилась (1 опция: %r)" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "использовать цветной вывод (по умолчанию: автоопределение)" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "Конфигурация изменилась (%d опций: %s)" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "не использовать цветной вывод (по умолчанию: автоопределение)" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "Конфигурация изменилась (%d опций: %s, ...)" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "настройки предупреждений" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Это окружение несовместимо с выбранным сборщиком, пожалуйста, выберите другой каталог doctree." +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "запись предупреждений (и ошибок) в указанный файл" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "Ошибка сканирования документов в %s: %r" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "обрабатывать предупреждение как ошибки" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Домен %r не зарегистрирован" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "отображать полный traceback при исключении" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "документ не включен ни в одно оглавление" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "запустить Pdb при исключении" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "найдено оглавление, ссылающееся на само себя. Пропускается." +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "возбудить исключение при предупреждении" + +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "Невозможно совмещать ключ -a и названия файлов" -#: environment/__init__.py:889 +#: cmd/build.py:357 #, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "ошибка чтения: %s, %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "аргументы с опцией -D должны быть указаны в виде пар название=значение" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "ошибка записи: %s, %s" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "аргумент опции -A должен быть указан в виде пары название=значение" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "locale_dir %s не существует" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "автоматически вставлены docstrings из модулей" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "автоматическое тестирование фрагментов кода в блоках doctest" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Неправильный формат даты. Оберните строку в одинарные кавычки, если хоитет вывести её \"как есть\": %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "связь между разными проектами Sphinx" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "Проблема в домене %s: предполагается, что в поле должна использоваться роль '%s', но этой роли нет в домене." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "укажите записи \"todo\", которые могут быть показаны или скрыты при сборке" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r считается устаревшим для записей индекса (из записи %r). Вместо этого используйте 'pair: %s'." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "проверка полноты документации" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "оглавление содержит ссылку на несуществующий файл %r" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "включить математику, отображаемую как изображения PNG или SVG" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "исключение при вычислении значения директивы only: %s" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "включить математику, отображаемую в браузере с помомощью MathJax" -#: util/display.py:82 -msgid "skipped" -msgstr "пропущено" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "условное включение содержимого на основе значений конфигурации" -#: util/display.py:87 -msgid "failed" -msgstr "сбой" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "включить ссылки на исходный код документируемых объектов Python" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "создать файл .nojekyll для публикации документа на GitHub Pages" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Пожалуйста, укажите корректный путь." -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Пожалуйста, введите текст." -#: util/docutils.py:789 +#: cmd/quickstart.py:134 #, python-format -msgid "unknown node type: %r" -msgstr "неизвестный тип узла: %r" +msgid "Please enter one of %s." +msgstr "Пожалуйста, введите одно из %s." -#: util/fileutil.py:76 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Пожалуйста, введите 'y' или 'n'." -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "Запись результатов обработки шаблона в %s" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Пожалуйста, введите расширение файла, например, '.rst' или '.txt'." -#: util/rst.py:73 +#: cmd/quickstart.py:230 #, python-format -msgid "default role %s not found" -msgstr "роль по умолчанию %s не найдена" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Добро пожаловать в утилиту quickstart Sphinx %s." -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "инвентарь <%s> содержит повторяющиеся определения %s" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Пожалуйста, введите значения для следующих настроек (нажмите Enter для\nиспользования значения по умолчанию, оно указано в квадратных скобках)." -#: util/inventory.py:166 +#: cmd/quickstart.py:242 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "инвентарь <%s> содержит множество определений для %s" +msgid "Selected root path: %s" +msgstr "Выбранный корневой путь: %s" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Сноски" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Введите корневой путь для документации." -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[рисунок: %s]" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Корневой каталог документации" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[рисунок]" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Ошибка: по указанному корневому пути уже существует conf.py." -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Алфавитный указатель" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart не будет перезаписывать существующие проекты Sphinx." + +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Пожалуйста, укажите новый корневой путь (или нажмите Enter для выхода)" -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:274 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "заголовок не внутри иллюстрации." +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Разделить каталоги исходных файлов и результатов сборки (y/n)" -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "нереализованный тип узла: %r" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Внутри корневого каталога могут быт ьсозданы 2 каталога; \"_templates\"\nдля собственных шаблонов HTML и \"_static\" для таблиц стилей и других статичных\nфайлов. Вы можете ввести другой префикс (например, \".\") для замены знака подчёркивания." -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "неизвестный %r toplevel_sectioning для класса %r" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Префикс имен каталогов с шаблонами и статикой" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "неизвестная опция Babel для языка %r" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "Название проекта будет встречаться в нескольких местах рабочей документации." -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "слишком большое значение :maxdepth:, пропускается." +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Название проекта" -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "шаблон %s не найден; вместо этого загружается унаследованный %s" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Имя(ена) автора(ов)" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "заголовок документа не является одиночным Text node" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx использует понятия \"версия\" и \"релиз\" для \nпрограммного обеспечения. Каждая версия может иметь несколько релизов. Например, для\nPyhon версии выглядят как 2.5 или 3.0, при этом релизы\nвыглядят как 2.5.1 или 3.0a1. Если вам не нужна двойная структура,\nпросто используйте одно и то же значение для обоих параметров." -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "неподдерживаемый уровень заголовка рубрики: %s" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Версия проекта" -#: writers/latex.py:1183 +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Релиз проекта" + +#: cmd/quickstart.py:324 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "заданы tabularcolumns и опция :widths:. :widths: пропускается." +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Если для написания документации используется язык, отличный от английского,\nвы можете указать его здесь, выбрав нужный код языка. Затем Sphinx переведёт генерируемый текст на этот язык.\n\nДля получения списка поддерживаемых кодов см.\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "неправильная единица измерения %s. Пропускается." +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Язык проекта" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "найдена запись неизвестного типа индекса %s" +#: cmd/quickstart.py:340 +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 "Расширение исходных файлов. Как правило, это \".txt\"\nили \".rst\". Только файлы с указанным расширением считаются документами." -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "Неправильный math_eqref_format: %r" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Суффикс исходный файлов" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "Ссылка на это определение" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "" -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format не определён для %s" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Название основного документа (без суффикса)" -#: writers/html5.py:441 +#: cmd/quickstart.py:368 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "Любые ID не разрешены для узла %s" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Ошибка: основной файл %s уже существует в корневом каталоге по указанному пути." -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "Ссылка на этот термин" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart не перезапишет существующий файл." -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "Ссылка на этот заголовок" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Введите имя нового файла, или переименуйте существующий файл и нажмите Enter" -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "Ссылка на эту таблицу" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Укажите, какие из расширений Sphinx должны быть включены:" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "Ссылка на этот код" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Примечание: imgmath и mathjax не могут быть включены одновременно. imgmath выключен." -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "Ссылка на это изображение" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Makefile и командный файл Windows могут быть сгенерированы,\nчтобы вы могли выполнять `make html' вместо прямого вызова\nsphinx-build." -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "Ссылка на это оглавление" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Создать Makefile? (y/n)" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "Не удалось получить размеры изображения. Опция :scale: пропускается." +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Создать файл команд Windows? (y/n)" -#: domains/__init__.py:322 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "Creating file %s." +msgstr "Создание файла %s." -#: domains/math.py:73 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "повторяющаяся метка уравнения %s, также используется в %s" +msgid "File %s already exists, skipping." +msgstr "Файл %s уже существует, пропускаем." -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (встроенная функция)" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Завершено: Исходная структура каталогов создана." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: cmd/quickstart.py:520 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (метод %s)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Теперь вам нужно заполнить свой основной файл %s и создать другие\nисходные файлы документации. " -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (класс)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Используйте Makefile для сборки документации, например:\n make builder" -#: domains/javascript.py:187 +#: cmd/quickstart.py:531 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (глобальная переменная или константа)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Используйте команду sphinx-build для сборки документации, например:\n sphinx-build -b builder %s %s" -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (атрибут %s)" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "где \"builder\" - один из поддерживаемых сборщиков, например, html, latex или linkcheck." -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Аргументы" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nГенерирует необходимые файлы для проекта Sphinx.\n\nsphinx-quickstart это интерактивный инструмент, который задаст вам несколько вопросов о вашем\nпроекте и затем полностью сгенерирует каталог документации и пример\nMakefile для использования со sphinx-build.\n" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Бросает исключение" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "тихий режим" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Результат" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "корень проекта" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Тип результата" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Опции структуры" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (модуль)" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "если указано, разделить исходный и целевой каталоги" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "функция" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "если указано, разместить целевой каталог в исходном" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "метод" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "замена точки в _templates и т. п." -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "класс" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Основные настройки проекта" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "данные" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "название проекта" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "атрибут" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "имена авторов" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "модуль" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "повтор описания %s для %s, другое %s в %s" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "версия проекта" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "Добавлено в версии %s" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "релиз проекта" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Изменено в версии %s" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "язык документа" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Устарело, начиная с версии %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "суффикс исходных файлов" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "Удалено в версии %s" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "название основного документа" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (директива)" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "использовать epub" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (опция директивы)" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Опции расширения" -#: domains/rst.py:224 +#: cmd/quickstart.py:671 #, python-format -msgid "%s (role)" -msgstr "%s (роль)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "директива" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" +msgid "enable %s extension" +msgstr "включить расширение %s" -#: domains/rst.py:236 -msgid "role" -msgstr "роль" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "включить произвольные расширения" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "повторное описание %s %s, другой экземпляр в %s" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Создание Makefile и Batchfile" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "повторное цитирование %s, другой экземпляр в %s" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "создать Makefile" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "Ссылка на цитату [%s] отсутствует." +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "не создавать Makefile" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Внимание" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "создать batchfile" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Осторожно" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "не создавать batchfile" -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Опасно" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "использовать make-mode для Makefile/make.bat" -#: locale/__init__.py:231 -msgid "Error" -msgstr "Ошибка" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Шаблонизация проекта" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Подсказка" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "каталог шаблонов для файлов шаблонов" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Важно" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "определить переменную шаблона" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Примечание" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "указано \"quiet\", но \"project\" или \"author\" не заданы." -#: locale/__init__.py:235 -msgid "See also" -msgstr "См. также" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Ошибка: указанный путь не является каталогом или файлы Sphinx в нём уже существуют." -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Совет" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart генерирует только в пустой каталог. Пожалуйста, укажите новый корневой путь." -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Предупреждение" +#: cmd/quickstart.py:810 +#, python-format +msgid "Invalid template variable: %s" +msgstr "Неправильная переменная шаблона: %s" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "автоматически вставлены docstrings из модулей" +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" +msgstr "глобальный шаблон toctree %r не соответствует ни одному документу" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "автоматическое тестирование фрагментов кода в блоках doctest" +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" +msgstr "дерево оглавления содержит ссылку на исключённый документ %r" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "связь между разными проектами Sphinx" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "дерево оглавления содержит ссылку на несуществующий документ %r" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "укажите записи \"todo\", которые могут быть показаны или скрыты при сборке" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "повторяющееся значение в дереве оглавления: %s" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "проверка полноты документации" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Автор раздела: " -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "включить математику, отображаемую как изображения PNG или SVG" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Автор модуля: " -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "включить математику, отображаемую в браузере с помомощью MathJax" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Автор кода:" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "условное включение содержимого на основе значений конфигурации" +#: directives/other.py:209 +msgid "Author: " +msgstr "Автор: " -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "включить ссылки на исходный код документируемых объектов Python" +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "содержимое .. acks не является списком" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "создать файл .nojekyll для публикации документа на GitHub Pages" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "содержимое .. hlist не является списком" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Пожалуйста, укажите корректный путь." +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "Опция \":file:\" директивы csv-table теперь рассчитывает абсолютный путь относительно исходного каталога. Пожалуйста, обновите свой документ." -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Пожалуйста, введите текст." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" -#: cmd/quickstart.py:133 +#: directives/code.py:87 #, python-format -msgid "Please enter one of %s." -msgstr "Пожалуйста, введите одно из %s." +msgid "Invalid caption: %s" +msgstr "Неправильный заголовок: %s" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Пожалуйста, введите 'y' или 'n'." +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" +msgstr "указанный номер строки находится за границами диапазона(1-%d): %r" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Пожалуйста, введите расширение файла, например, '.rst' или '.txt'." +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Нельзя одновременно использовать опции \"%s\" и \"%s\"" -#: cmd/quickstart.py:229 +#: directives/code.py:231 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Добро пожаловать в утилиту quickstart Sphinx %s." +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: cmd/quickstart.py:234 +#: directives/code.py:235 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Пожалуйста, введите значения для следующих настроек (нажмите Enter для\nиспользования значения по умолчанию, оно указано в квадратных скобках)." +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: cmd/quickstart.py:241 +#: directives/code.py:276 #, python-format -msgid "Selected root path: %s" -msgstr "Выбранный корневой путь: %s" +msgid "Object named %r not found in include file %r" +msgstr "Объект с названием %r не найден в подключенном файле %r" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Введите корневой путь для документации." +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Корневой каталог документации" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Указаны строки %r: ни одна строка не вставлена из файла %r" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Ошибка: по указанному корневому пути уже существует conf.py." +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart не будет перезаписывать существующие проекты Sphinx." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Пожалуйста, укажите новый корневой путь (или нажмите Enter для выхода)" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Алфавитный указатель" -#: cmd/quickstart.py:273 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Разделить каталоги исходных файлов и результатов сборки (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Внутри корневого каталога могут быт ьсозданы 2 каталога; \"_templates\"\nдля собственных шаблонов HTML и \"_static\" для таблиц стилей и других статичных\nфайлов. Вы можете ввести другой префикс (например, \".\") для замены знака подчёркивания." - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Префикс имен каталогов с шаблонами и статикой" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "Название проекта будет встречаться в нескольких местах рабочей документации." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Название проекта" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Сноски" -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Имя(ена) автора(ов)" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "заголовок не внутри иллюстрации." -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "Sphinx использует понятия \"версия\" и \"релиз\" для \nпрограммного обеспечения. Каждая версия может иметь несколько релизов. Например, для\nPyhon версии выглядят как 2.5 или 3.0, при этом релизы\nвыглядят как 2.5.1 или 3.0a1. Если вам не нужна двойная структура,\nпросто используйте одно и то же значение для обоих параметров." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "нереализованный тип узла: %r" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Версия проекта" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[рисунок: %s]" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Релиз проекта" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[рисунок]" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Если для написания документации используется язык, отличный от английского,\nвы можете указать его здесь, выбрав нужный код языка. Затем Sphinx переведёт генерируемый текст на этот язык.\n\nДля получения списка поддерживаемых кодов см.\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "Ссылка на это определение" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Язык проекта" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "numfig_format не определён для %s" -#: cmd/quickstart.py:339 -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 "Расширение исходных файлов. Как правило, это \".txt\"\nили \".rst\". Только файлы с указанным расширением считаются документами." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "Любые ID не разрешены для узла %s" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Суффикс исходный файлов" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "Ссылка на этот термин" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "Ссылка на этот заголовок" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Название основного документа (без суффикса)" +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "Ссылка на эту таблицу" -#: cmd/quickstart.py:367 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Ошибка: основной файл %s уже существует в корневом каталоге по указанному пути." - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart не перезапишет существующий файл." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Введите имя нового файла, или переименуйте существующий файл и нажмите Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Укажите, какие из расширений Sphinx должны быть включены:" +msgid "unsupported rubric heading level: %s" +msgstr "неподдерживаемый уровень заголовка рубрики: %s" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Примечание: imgmath и mathjax не могут быть включены одновременно. imgmath выключен." +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "Ссылка на этот код" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Makefile и командный файл Windows могут быть сгенерированы,\nчтобы вы могли выполнять `make html' вместо прямого вызова\nsphinx-build." +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "Ссылка на это изображение" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Создать Makefile? (y/n)" +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "Ссылка на это оглавление" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Создать файл команд Windows? (y/n)" +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "Не удалось получить размеры изображения. Опция :scale: пропускается." -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:386 #, python-format -msgid "Creating file %s." -msgstr "Создание файла %s." +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "неизвестный %r toplevel_sectioning для класса %r" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "File %s already exists, skipping." -msgstr "Файл %s уже существует, пропускаем." +msgid "no Babel option known for language %r" +msgstr "неизвестная опция Babel для языка %r" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Завершено: Исходная структура каталогов создана." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "слишком большое значение :maxdepth:, пропускается." -#: cmd/quickstart.py:519 +#: writers/latex.py:616 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Теперь вам нужно заполнить свой основной файл %s и создать другие\nисходные файлы документации. " +msgid "template %s not found; loading from legacy %s instead" +msgstr "шаблон %s не найден; вместо этого загружается унаследованный %s" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "заголовок документа не является одиночным Text node" -#: cmd/quickstart.py:526 +#: writers/latex.py:1198 msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Используйте Makefile для сборки документации, например:\n make builder" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "заданы tabularcolumns и опция :widths:. :widths: пропускается." -#: cmd/quickstart.py:530 +#: writers/latex.py:1228 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Используйте команду sphinx-build для сборки документации, например:\n sphinx-build -b builder %s %s" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "где \"builder\" - один из поддерживаемых сборщиков, например, html, latex или linkcheck." +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "неправильная единица измерения %s. Пропускается." -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nГенерирует необходимые файлы для проекта Sphinx.\n\nsphinx-quickstart это интерактивный инструмент, который задаст вам несколько вопросов о вашем\nпроекте и затем полностью сгенерирует каталог документации и пример\nMakefile для использования со sphinx-build.\n" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "найдена запись неизвестного типа индекса %s" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "Для получения дополнительной информации посетите ." +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "Использование:" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "тихий режим" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "{0} [ОПЦИИ] []" -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "корень проекта" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "Генератор документации Sphinx." -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Опции структуры" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "Команды:" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "если указано, разделить исходный и целевой каталоги" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "Опции" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "если указано, разместить целевой каталог в исходном" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "Для получения дополнительной информации посетите https://www.sphinx-doc.org/en/master/man/." -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "замена точки в _templates и т. п." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "{0}: ошибка: {1}\nВыполните '{0} --help' для получения информации" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Основные настройки проекта" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "Управление документацией со Sphinx." -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "название проекта" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "Показать версию и выйти." -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "имена авторов" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "Показать это сообщение и выйти." -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "версия проекта" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "Журналирование" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "релиз проекта" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "Увеличить подробность (можно указать несколько раз)" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "язык документа" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "Выводить только ошибки и предупреждения." -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "суффикс исходных файлов" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "название основного документа" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "использовать epub" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "См. 'sphinx --help'.\n" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Опции расширения" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "противоречивые ссылки на сноску в переведённом сообщении. Оригинал: {0}, перевод: {1}" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" -msgstr "включить расширение %s" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "противоречивые ссылки в переведённом сообщении. Оригинал: {0}, перевод: {1}" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "включить произвольные расширения" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "противоречивые ссылки на цитату в переведённом сообщении. Оригинал: {0}, перевод: {1}" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Создание Makefile и Batchfile" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "противоречивая ссылка на термин в переведённом сообщении. Оригинал: {0}, перевод: {1}" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "создать Makefile" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "не удалось рассчитать прогресс перевода!" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "не создавать Makefile" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "нет переведённых элементов!" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "создать batchfile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "Найден четырёхстолбцовый индекс. Это может быть ошибкой используемого вами расширения: %r" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "не создавать batchfile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "Сссылка на сноску [%s] не определена." -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "использовать make-mode для Makefile/make.bat" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "Ссылка на сноску [*] не определена." -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Шаблонизация проекта" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Ссылка на сноску [#] отсутствует." -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "каталог шаблонов для файлов шаблонов" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "инвентарь <%s> содержит повторяющиеся определения %s" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "определить переменную шаблона" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "инвентарь <%s> содержит множество определений для %s" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "указано \"quiet\", но \"project\" или \"author\" не заданы." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "ошибка чтения: %s, %s" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Ошибка: указанный путь не является каталогом или файлы Sphinx в нём уже существуют." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "ошибка записи: %s, %s" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart генерирует только в пустой каталог. Пожалуйста, укажите новый корневой путь." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s не существует" -#: cmd/quickstart.py:809 +#: util/i18n.py:244 #, python-format -msgid "Invalid template variable: %s" -msgstr "Неправильная переменная шаблона: %s" +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "номер задания должен быть положительным числом" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Неправильный формат даты. Оберните строку в одинарные кавычки, если хоитет вывести её \"как есть\": %s" -#: cmd/build.py:74 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nСоздание документации из исходных файлов.\n\nsphinx-build создает документацию из файлов в SOURCEDIR и помещает ее в\nOUTPUTDIR. Он ищет 'conf.py' в SOURCEDIR для определения настроек\nконфигурации. Инструмент 'sphinx-quickstart' может быть использован для\nсоздания файлов шаблонов, включая 'conf.py'\n\nsphinx-build может создавать документацию в различных форматах. Формат\nвыбирается путем указания названия сборщика в аргументах командной\nстроки; по умолчанию используется HTML. Сборщики также могут\n выполнять другие задачи, связанные с обработкой документации.\n\nПо умолчанию собирается все что устарело. Вывод только для выбранных\nфайлов может быть реализован путем указания отдельных имен файлов.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "путь к исходным файлам документации" +#: util/display.py:82 +msgid "skipped" +msgstr "пропущено" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "путь к целевому каталогу" +#: util/display.py:87 +msgid "failed" +msgstr "сбой" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "(опционально) список файлов для пересборки. Пропускается если указано --write-all" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "основные опции" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "используемый сборщик (по умолчанию: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "неизвестный тип узла: %r" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "запустить параллельно N процессов, если возможно. 'auto' соответствует числу ядер CPU" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "записать все файлы (по умолчанию: записать только новые и изменённые файлы)" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "Запись результатов обработки шаблона в %s" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "не использовать сохраненное окружение, всегда читать все файлы" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Проблема в домене %s: предполагается, что в поле должна использоваться роль '%s', но этой роли нет в домене." -#: cmd/build.py:150 -msgid "path options" -msgstr "опции пути" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "роль по умолчанию %s не найдена" -#: cmd/build.py:157 +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "каталог для дерева документов и файлов окружения (по умолчанию: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "каталог с файлом конфигурации (conf.py) (по умолчанию: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "оглавление содержит ссылку на несуществующий файл %r" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "не использовать конфигурационный файл, только настройки, указанные в опциях -D" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "исключение при вычислении значения директивы only: %s" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "переопределяет настройки в конфигурационном файле" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "продолжение с предыдущей страницы" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "передать значение в шаблон HTML" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "продолжается на следующей странице" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "определить тег: включить \"только\" блоги с ТЕГОМ" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Не-алфавитный" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "придирчивый режим: предупреждать обо всех потерянных ссылках" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Символы" -#: cmd/build.py:212 -msgid "console output options" -msgstr "опции вывода в терминал" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Числа" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "увеличить детальность (может повторяться несколько раз)" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "страница" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "без вывода в stdout, только предупреждения в stderr" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Выпуск" + +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "Не удалось получить изображение из внешнего источника: %s [%s]" + +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "Не удалось получить изображение из внешнего источника: %s [%d]" + +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Неизвестный формат изображения: %s..." -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "использовать цветной вывод (по умолчанию: автоопределение)" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "не использовать цветной вывод (по умолчанию: автоопределение)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "для перекрёстной ссылки 'any' найдено больше одной цели %r: должно быть %s" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "настройки предупреждений" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s цель перекрёстной ссылки не найдена: %s" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "запись предупреждений (и ошибок) в указанный файл" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r цель перекрёстной ссылки не найдена: %s" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "обрабатывать предупреждение как ошибки" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Прервано!" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "отображать полный traceback при исключении" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "запустить Pdb при исключении" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "возбудить исключение при предупреждении" +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "Невозможно совмещать ключ -a и названия файлов" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "аргументы с опцией -D должны быть указаны в виде пар название=значение" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "Полный журнал будет сохранен в:" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "аргумент опции -A должен быть указан в виде пары название=значение" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "Чтобы сообщить об этой ошибке разработчикам, пожалуйста, откройте запрос в . Спасибо!" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Свернуть боковую панель" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Оглавление" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Навигация" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Поиск в документе «%(docstitle)s»" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Об этих документах" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Поиск" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Искать" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Авторские права" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Обновлено: %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Создано с использованием Sphinx %(sphinx_version)s." + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Предыдущий раздел" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "предыдущая глава" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Следующий раздел" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "следующая глава" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "Индекс – %(key)s" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Полный алфавитный указатель на одной странице" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Эта страница" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Исходный текст" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Содержание" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Быстрый поиск" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Поиск в документе «%(docstitle)s»" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Искать" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2691,7 +2891,7 @@ msgstr "Алфавитный указатель модулей" msgid "quick access to all modules" msgstr "сводный список всех модулей" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Алфавитный указатель" @@ -2699,23 +2899,15 @@ msgstr "Алфавитный указатель" msgid "all functions, classes, terms" msgstr "все функции, классы, переменные и константы" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Эта страница" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Оглавление" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "Индекс – %(key)s" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Полный алфавитный указатель на одной странице" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Быстрый поиск" +msgid "Search %(docstitle)s" +msgstr "Поиск в документе «%(docstitle)s»" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2725,57 +2917,6 @@ msgstr "Указатели по буквам алфавита" msgid "can be huge" msgstr "может быть очень большим" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Предыдущий раздел" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "предыдущая глава" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Следующий раздел" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "следующая глава" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Навигация" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Поиск в документе «%(docstitle)s»" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Об этих документах" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Авторские права" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Обновлено: %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Создано с использованием Sphinx %(sphinx_version)s." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2792,21 +2933,21 @@ msgstr "Поиск по нескольким словам отображает msgid "search" msgstr "искать" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Снять выделение" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Содержание" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Результаты поиска" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "По вашему поиску не найдено ни одного документа. Проверьте, что все слова написаны без ошибок, и что вы выбрали достаточно категорий." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2816,22 +2957,21 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Идёт поиск" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Подготовка поиска…" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " -msgstr ", в" - -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +msgstr ", в" + +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Снять выделение" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2839,6 +2979,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Изменения в версии %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2860,120 +3005,127 @@ msgstr "Другие изменения" msgid "Expand sidebar" msgstr "Развернуть боковую панель" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Параметры" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Переменные" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Исключение" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (в модуле %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (в модуле %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (встроенная переменная)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (встроенный класс)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (класс в %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (метод класса %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (статический метод %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (свойство %s)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "%s (псевдоним типа в %s)" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Содержание модулей Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "модули" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Устарело" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "исключение" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "метод класса" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "статический метод" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "свойство" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "псевдоним типа" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "повторное описание объекта %s, другой экземпляр в %s, используйте :no-index: для одного из них" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "найдено больше одной цели для перекрёстной ссылки %r: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "(использование не рекомендуется)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Параметры" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Переменные" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Исключение" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Повторная декларация C++, также определено как %s:%s.\nДекларация в '.. cpp:%s:: %s'." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2984,92 +3136,85 @@ msgstr "Параметры шаблона" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Повторная декларация C++, также определено как %s:%s.\nДекларация в '.. cpp:%s:: %s'." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "Возвращаемые значения" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "объединение" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "поле" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "тип" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "концепт" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "перечисляемый тип" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "перечислитель" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "параметр функции" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "параметр шаблона" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "Повторная декларация C, также определено как %s:%s.\nДекларация в '.. c:%s:: %s'." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "переменная" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "макрос" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "структура" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "переменная окружения; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "%s; значение настройки" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "Тип" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "По умолчанию" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3109,621 +3254,408 @@ msgstr "токен грамматики" msgid "reference label" msgstr "текст ссылки" -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "переменная окружения" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "опция программы" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "документ" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Состав модуля" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "duplicate %s description of %s, other instance in %s" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "numfig выключен. :numref: пропускается." - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "Ошибка создания перекрёстной ссылки. Какой-либо номер не присвоен: %s" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "ссылка без заголовка: %s" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "неправильный numfig_format: %s (%r)" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "неправильный numfig_format: %s" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "неопределённая метка: %r" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "Ошибка создания перекрёстной ссылки. Заголовок или подзаголовок не найдены: %r" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "обнаружены циклические ссылки в оглавлении, пропускается: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "оглавление содержит ссылку на документ %r, у которого нет заголовка: ссылка не будет сгенерирована" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "toctree содержит ссылку на не включенный документ %r" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "см. %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "также см. %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "неизвестная запись типа индекса %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Символы" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "нечитаемое изображение: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "файл изображения %s не читается: %s" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "загружаемый файл не читается: %s" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Прервано!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "Полный журнал будет сохранен в:" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "Чтобы сообщить об этой ошибке разработчикам, пожалуйста, откройте запрос в . Спасибо!" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "для перекрёстной ссылки 'any' найдено больше одной цели %r: должно быть %s" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s цель перекрёстной ссылки не найдена: %s" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "%r цель перекрёстной ссылки не найдена: %s" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "Не удалось получить изображение из внешнего источника: %s [%s]" - -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "Не удалось получить изображение из внешнего источника: %s [%d]" - -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." -msgstr "Неизвестный формат изображения: %s..." - -#: builders/html/__init__.py:113 -#, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Страницы HTML находятся в %(outdir)s." - -#: builders/html/__init__.py:348 -#, python-format -msgid "Failed to read build info file: %r" -msgstr "Ошибка чтения при сборке файла info: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "несоответствие build_info, копирование .buildinfo в .buildinfo.bak" - -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "сборка [html]: " - -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "шаблон %s был изменён с момента предыдущей сборки, все документы будут пересобраны" - -#: builders/html/__init__.py:507 -msgid "index" -msgstr "указатель" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "переменная окружения" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "Логотип %s" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "опция программы" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "вперёд" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "документ" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "назад" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Состав модуля" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "генерация индексов" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" +msgstr "duplicate %s description of %s, other instance in %s" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "запись дополнительных страниц" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "numfig выключен. :numref: пропускается." -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "не удалось скопировать файл изображения '%s': %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "Ошибка создания перекрёстной ссылки. Какой-либо номер не присвоен: %s" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "копирование загружаемых файлов..." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" +msgstr "ссылка без заголовка: %s" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1153 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "не удалось скопировать загружаемый файл %r: %s" +msgid "invalid numfig_format: %s (%r)" +msgstr "неправильный numfig_format: %s (%r)" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1157 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "Ошибка копирования файла в каталог 'static' темы: %s: %r" +msgid "invalid numfig_format: %s" +msgstr "неправильный numfig_format: %s" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1453 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "Ошибка копирования файла в html_static_file: %s: %r" +msgid "undefined label: %r" +msgstr "неопределённая метка: %r" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "копирование файлов статики" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "Ошибка создания перекрёстной ссылки. Заголовок или подзаголовок не найдены: %r" -#: builders/html/__init__.py:934 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy static file %r" -msgstr "не удалось копировать файл статики %r" +msgid "invalid value set (missing closing brace): %s" +msgstr "задано неправильное значение (пропущена закрывающая скобка): %s" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "копирование дополнительных файлов" +#: ext/napoleon/docstring.py:185 +#, python-format +msgid "invalid value set (missing opening brace): %s" +msgstr "задано неправильное значение (пропущена открывающая скобка): %s" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "cannot copy extra file %r" -msgstr "не удалось скопировать дополнительный файл %r" +msgid "malformed string literal (missing closing quote): %s" +msgstr "неправильный строковый литерал (пропущена закрывающая кавычка): %s" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to write build info file: %r" -msgstr "Ошибка записи при сборке файла info: %r" +msgid "malformed string literal (missing opening quote): %s" +msgstr "неправильный стороковый литерал (пропущена открывающая кавычка): %s" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Пример" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "страница %s соответствует двум шаблонам в html_sidebars: %r и %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Примеры" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Именованные аргументы" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Ошибка при рендере страницы %s.\nПричина: %r" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Заметки" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "выгрузка объекта инвентаря" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Другие параметры" + +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "Получает" + +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Ссылки" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Предупрждения" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" -#: builders/html/__init__.py:1265 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "dumping search index in %s" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1308 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "invalid js_file: %r, ignored" -msgstr "некорректный js_file: %r, пропускается" +msgid "alias of %s" +msgstr "псевдоним для %s" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Зарегистрировано несколько math_renderers. Однако, ни один math_renderer не выбран." +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "Базовые классы: %s" -#: builders/html/__init__.py:1346 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Unknown math_renderer %r is given." -msgstr "Передан неизвестный math_renderer %r ." +msgid "invalid value for member-order option: %s" +msgstr "некорректное значение для опции member-order: %s" -#: builders/html/__init__.py:1360 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "элемент html_extra_path %r размещён внутри целевого каталога" +msgid "invalid value for class-doc-from option: %s" +msgstr "некорректное значение для опции for class-doc-from: %s" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "элемент html_extra_path %r не существует" +msgid "invalid signature for auto%s (%r)" +msgstr "неправильная сигнатура для auto%s (%r)" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "элемент html_static_path %r размещён внутри целевого каталога" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_names.py:89 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "элемент html_static_path %r не существует" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_names.py:93 #, python-format -msgid "logo file %r does not exist" -msgstr "файл логотипа %r не существует" +msgid "return annotation given for automodule: '%s'" +msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" в названии автомодуля не имеет смысла" + +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "favicon file %r does not exist" -msgstr "Файл favicon %r не существует" +msgid "Failed to remove %s: %s" +msgstr "Ошибка удаления %s: %s" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "Значения в 'html_sidebars' должны быть списком строк. По крайней мере один шаблон имеет строковое значение: %s. Замените на `html_sidebars = %r`." +msgid "Would create file %s." +msgstr "Нужно создать файл %s." -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:28 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "HTML 4 больше не поддерживается Sphinx. (строка \"html4_writer=True\" обнаружена в настройках)" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" -msgstr "документация %s %s" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "путь к модулю в документе" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" -msgstr "ошибка чтения файла сборки info (неизвестная версия)" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "стиль fnmatch для шаблонов файлов и/или каталогов для исключения из генерации" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "сбой при чтении файла info для сломанной сборки (пропущено значение настройки)" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "каталог для размещения всего вывода" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" -msgstr "ошибка чтения сломанной сборки файла info (отсутствует запись tags)" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "максимальная глубина субмодулей для отображения в оглавлении (по умолчанию: 4)" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Файлы LaTeX находятся в %(outdir)s." +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "перезаписать существующие файлы" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:91 msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nЗапустите 'make' в этом каталоге для выполнения с помощью (pdf)latex\n(используйте `make latexpdf' здесь, чтобы сделать это автоматически)." - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "не найдено значение настройки \"latex_documents\"; документы не будут записаны" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "следовать по символическим ссылкам. Эффективно сочетается с collective.recipe.omelette." -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "значение настройки \"latex_documents\" ссылается на неизвестный документ %s" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "запуск сценария без создания файлов" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Выпуск" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "разместить документацию каждого модуля на его собственной странице" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "копирование файлов поддержки TeX" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "включая модули \"_private\"" -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "копирование дополнительных файлов" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "имя файла с оглавлением (по умолчанию: modules)" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Неизвестный ключ конфигурации: latex_elements[%r], пропускается." +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "не создавать файл с оглавлением" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Неизвестная опция темы: latex_theme_options[%r], пропускается." +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "не создавать заголовки для модулей/пакета пакетов (например, если docstrings уже содержат их)" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "Ошибка получения названия документа!" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "разместить документацию модуля перед документацией подмодуля" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" -msgstr "Сбой получения названия документа для источника %r!" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" -msgstr "Не найдена сноска для указанного узла %r" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r не имеет настройки \"theme\"" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "расширение файла (по умолчанию: rst)" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r не имеет настройки \"%s\"" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "Удалить из целевого каталога файлы, которые не были сгенерированы" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "продолжение с предыдущей страницы" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "генерация полного проекта с помощью sphinx-quickstart" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "продолжается на следующей странице" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "добавить module_path в sys.path, используется совместно с --full" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Не-алфавитный" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "название проекта (по умолчанию: название корневого модуля)" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Числа" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "автор(ы) проекта, используется совместно с --full" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "страница" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "версия проекта, используется совместно с --full" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Именованные аргументы" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "релиз проекта, используется совместно с --full, по умолчанию --doc-version" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "задано неправильное значение (пропущена закрывающая скобка): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "опции расширения" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "задано неправильное значение (пропущена открывающая скобка): %s" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "неправильный строковый литерал (пропущена закрывающая кавычка): %s" +msgid "enable %s extension, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "неправильный стороковый литерал (пропущена открывающая кавычка): %s" - -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Пример" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Примеры" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Заметки" +msgid "%s is not a directory." +msgstr "%s не каталог." -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Другие параметры" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "Получает" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" +msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Ссылки" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Предупрждения" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." -msgstr "autosummary ссылается на исключённый документ %r. Пропускается." +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "Озаглавленное autosummary требует опцию :toctree:. пропускается." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "autosummary: ошибка импорта %s.\nВозможные подсказки:\n%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" -msgstr "ошибка разбора имени %s" +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" -msgstr "ошибка импорта объекта %s" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" -msgstr "autosummary_generate: файл не найден: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." -msgstr "autosummary генерирует внутри файлы .rst . Но ваш source_suffix не содержит .rst. Пропускается." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "[autosummary] генерация autosummary для: %s" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "[autosummary] запись в %s" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3731,7 +3663,7 @@ msgid "" "%s" msgstr "[autosummary] ошибка импорта %s.\nВозможные подсказки:\n%s" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3746,481 +3678,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "исходные файлы для генерации файлов rST для" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "каталог для размещения всех файлов вывода" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "расширение файлов по умолчанию (по умолчанию: %(default)s)" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "собственный каталог шаблонов (по умолчанию: %(default)s)" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" -msgstr "Удалить из целевого каталога файлы, которые не были сгенерированы" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." +msgstr "autosummary ссылается на исключённый документ %r. Пропускается." + +#: ext/autosummary/__init__.py:239 +#, python-format +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "" + +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "Озаглавленное autosummary требует опцию :toctree:. пропускается." + +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "autosummary: ошибка импорта %s.\nВозможные подсказки:\n%s" + +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "ошибка импорта объекта %s" + +#: ext/autosummary/__init__.py:652 +#, python-format +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "" + +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "autosummary_generate: файл не найден: %s" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "autosummary генерирует внутри файлы .rst . Но ваш source_suffix не содержит .rst. Пропускается." + +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "Неправильный идентификатор проекта intersphinx `%r` d intersphinx_mapping. Идентификаторы проектов должны быть непустыми строками." + +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "Неправильное значение `%r` в intersphinx_mapping[%r]. Ожидается кортеж или список из двух элементов." + +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "Неправильное значение `%r` в intersphinx_mapping[%r]. Значения должны быть парами (целевой URI, расположение инвентаря)." + +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "Некорректное значение целевого URL `%r` в intersphinx_mapping[%r][0]. Целевые URI должны быть уникальными не пустыми строками." + +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "Неправильный целевой URI `%r` в intersphinx_mapping[%r][0]. Целевые URI должны быть уникальными (другой экземпляр в intersphinx_mapping[%r])." -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_load.py:122 #, python-format -msgid "Failed to remove %s: %s" -msgstr "Ошибка удаления %s: %s" - -#: ext/apidoc/_cli.py:28 msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "путь к модулю в документе" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "Некорректная настройка `intersphinx_mapping` (1 ошибка)." -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "стиль fnmatch для шаблонов файлов и/или каталогов для исключения из генерации" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "Некорректная конфигурация `intersphinx_mapping` (%s ошибок)." -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "каталог для размещения всего вывода" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "После нормализации была добьавлена некорректная запись intersphinx_mapping." -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "максимальная глубина субмодулей для отображения в оглавлении (по умолчанию: 4)" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "загрузка инвентаря intersphinx '%s' из %s ..." -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "перезаписать существующие файлы" +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "следовать по символическим ссылкам. Эффективно сочетается с collective.recipe.omelette." +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "запуск сценария без создания файлов" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "инвентарь intersphinx перемещён: %s -> %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "разместить документацию каждого модуля на его собственной странице" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "включая модули \"_private\"" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(в %s)" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "имя файла с оглавлением (по умолчанию: modules)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "инвентарь '%s': найден повтор для %s:%s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "не создавать файл с оглавлением" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "инвентарь '%s': найдено несколько совпадений для %s:%s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "не создавать заголовки для модулей/пакета пакетов (например, если docstrings уже содержат их)" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "инвентарь для внешних перекрёстных ссылок не найден: %r" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "разместить документацию модуля перед документацией подмодуля" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "неправильный суффикс перекрёстной ссылки: %r" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "домен для внешней перекрёстной ссылки не найден: %r" -#: ext/apidoc/_cli.py:160 -msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "расширение файла (по умолчанию: rst)" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "ошибка при форматировании сигнатуры для %s: %s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "генерация полного проекта с помощью sphinx-quickstart" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "добавить module_path в sys.path, используется совместно с --full" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "Ошибка получения сигнатуры функции для %s: %s" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "название проекта (по умолчанию: название корневого модуля)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "Ошибка обновления сигнатуры для %r: параметр не найден: %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "автор(ы) проекта, используется совместно с --full" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "Ошибка разбора type_comment для %r: %s" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "версия проекта, используется совместно с --full" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "Некорректные __slots__ найдены в %s. Пропускается." -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "релиз проекта, используется совместно с --full, по умолчанию --doc-version" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "ошибка форматирования аргументов для %s: %s" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "опции расширения" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "Ошибка получения сигнатуры конструктора для %s: %s" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" -msgstr "" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "Ошибка получения сигнатуры метода для %s: %s" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "%s is not a directory." -msgstr "%s не каталог." +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Ошибка разбора значения по умолчанию для аргумента %r: %s" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" -msgstr "" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "пропущен атрибут упомянутый в опции :members:: модуль %s, атрибут %s" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +msgid "missing attribute %s in object %s" +msgstr "не указан атрибут %s в объекте %s" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +msgid "alias of TypeVar(%s)" +msgstr "псевдоним для TypeVar(%s)" -#: ext/apidoc/_extension.py:147 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "ошибка чтения файла сборки info (неизвестная версия)" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "сбой при чтении файла info для сломанной сборки (пропущено значение настройки)" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "ошибка чтения сломанной сборки файла info (отсутствует запись tags)" + +#: builders/html/__init__.py:114 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "Страницы HTML находятся в %(outdir)s." -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:337 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "" +msgid "Failed to read build info file: %r" +msgstr "Ошибка чтения при сборке файла info: %r" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "несоответствие build_info, копирование .buildinfo в .buildinfo.bak" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "сборка [html]: " + +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "шаблон %s был изменён с момента предыдущей сборки, все документы будут пересобраны" + +#: builders/html/__init__.py:496 +msgid "index" +msgstr "указатель" + +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" +msgstr "Логотип %s" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "вперёд" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "назад" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "генерация индексов" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "запись дополнительных страниц" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +msgid "cannot copy image file '%s': %s" +msgstr "не удалось скопировать файл изображения '%s': %s" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "копирование загружаемых файлов..." -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "не удалось скопировать загружаемый файл %r: %s" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "Ошибка копирования файла в каталог 'static' темы: %s: %r" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:871 #, python-format -msgid "Would create file %s." -msgstr "Нужно создать файл %s." +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Ошибка копирования файла в html_static_file: %s: %r" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(в %s v%s)" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "копирование файлов статики" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:923 #, python-format -msgid "(in %s)" -msgstr "(в %s)" +msgid "cannot copy static file %r" +msgstr "не удалось копировать файл статики %r" -#: ext/intersphinx/_resolve.py:108 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "инвентарь '%s': найден повтор для %s:%s" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "копирование дополнительных файлов" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:938 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "инвентарь '%s': найдено несколько совпадений для %s:%s" +msgid "cannot copy extra file %r" +msgstr "не удалось скопировать дополнительный файл %r" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "инвентарь для внешних перекрёстных ссылок не найден: %r" +msgid "Failed to write build info file: %r" +msgstr "Ошибка записи при сборке файла info: %r" -#: ext/intersphinx/_resolve.py:392 -#, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "неправильный суффикс перекрёстной ссылки: %r" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1038 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "домен для внешней перекрёстной ссылки не найден: %r" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "страница %s соответствует двум шаблонам в html_sidebars: %r и %r" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1204 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "Неправильный идентификатор проекта intersphinx `%r` d intersphinx_mapping. Идентификаторы проектов должны быть непустыми строками." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "Неправильное значение `%r` в intersphinx_mapping[%r]. Ожидается кортеж или список из двух элементов." +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Ошибка при рендере страницы %s.\nПричина: %r" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "выгрузка объекта инвентаря" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "Неправильное значение `%r` в intersphinx_mapping[%r]. Значения должны быть парами (целевой URI, расположение инвентаря)." +msgid "dumping search index in %s" +msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "Некорректное значение целевого URL `%r` в intersphinx_mapping[%r][0]. Целевые URI должны быть уникальными не пустыми строками." +msgid "invalid js_file: %r, ignored" +msgstr "некорректный js_file: %r, пропускается" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Зарегистрировано несколько math_renderers. Однако, ни один math_renderer не выбран." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "Неправильный целевой URI `%r` в intersphinx_mapping[%r][0]. Целевые URI должны быть уникальными (другой экземпляр в intersphinx_mapping[%r])." +msgid "Unknown math_renderer %r is given." +msgstr "Передан неизвестный math_renderer %r ." -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "элемент html_extra_path %r размещён внутри целевого каталога" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "Некорректная настройка `intersphinx_mapping` (1 ошибка)." +#: builders/html/__init__.py:1370 +#, python-format +msgid "html_extra_path entry %r does not exist" +msgstr "элемент html_extra_path %r не существует" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1385 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "Некорректная конфигурация `intersphinx_mapping` (%s ошибок)." +msgid "html_static_path entry %r is placed inside outdir" +msgstr "элемент html_static_path %r размещён внутри целевого каталога" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "После нормализации была добьавлена некорректная запись intersphinx_mapping." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "элемент html_static_path %r не существует" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "загрузка инвентаря intersphinx '%s' из %s ..." +msgid "logo file %r does not exist" +msgstr "файл логотипа %r не существует" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "Файл favicon %r не существует" + +#: builders/html/__init__.py:1425 +#, python-format msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "Значения в 'html_sidebars' должны быть списком строк. По крайней мере один шаблон имеет строковое значение: %s. Замените на `html_sidebars = %r`." -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "не удалось получить доступ ни к одному из инвентарей по следующим причинам:" +#: builders/html/__init__.py:1438 +msgid "" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 больше не поддерживается Sphinx. (строка \"html4_writer=True\" обнаружена в настройках)" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "инвентарь intersphinx перемещён: %s -> %s" +msgid "%s %s documentation" +msgstr "документация %s %s" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "некорректное значение для опции member-order: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r не имеет настройки \"theme\"" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "некорректное значение для опции for class-doc-from: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r не имеет настройки \"%s\"" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "неправильная сигнатура для auto%s (%r)" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "Ошибка получения названия документа!" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "ошибка форматирования аргументов для %s: %s" +msgid "Failed to get a docname for source %r!" +msgstr "Сбой получения названия документа для источника %r!" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "" +msgid "No footnote was found for given reference node %r" +msgstr "Не найдена сноска для указанного узла %r" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Файлы LaTeX находятся в %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nЗапустите 'make' в этом каталоге для выполнения с помощью (pdf)latex\n(используйте `make latexpdf' здесь, чтобы сделать это автоматически)." -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "не найдено значение настройки \"latex_documents\"; документы не будут записаны" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "ошибка при форматировании сигнатуры для %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "значение настройки \"latex_documents\" ссылается на неизвестный документ %s" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" в названии автомодуля не имеет смысла" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "копирование файлов поддержки TeX" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "копирование дополнительных файлов" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Неизвестный ключ конфигурации: latex_elements[%r], пропускается." -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "пропущен атрибут упомянутый в опции :members:: модуль %s, атрибут %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Неизвестная опция темы: latex_theme_options[%r], пропускается." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "Ошибка получения сигнатуры функции для %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "Ошибка получения сигнатуры конструктора для %s: %s" +msgid "image file not readable: %s" +msgstr "нечитаемое изображение: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "Базовые классы: %s" +msgid "image file %s not readable: %s" +msgstr "файл изображения %s не читается: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "не указан атрибут %s в объекте %s" +msgid "download file not readable: %s" +msgstr "загружаемый файл не читается: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "псевдоним для %s" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "обнаружены циклические ссылки в оглавлении, пропускается: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "псевдоним для TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "оглавление содержит ссылку на документ %r, у которого нет заголовка: ссылка не будет сгенерирована" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "Ошибка получения сигнатуры метода для %s: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "toctree содержит ссылку на не включенный документ %r" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "Некорректные __slots__ найдены в %s. Пропускается." +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "Ошибка разбора значения по умолчанию для аргумента %r: %s" +msgid "see %s" +msgstr "см. %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "Ошибка обновления сигнатуры для %r: параметр не найден: %s" +msgid "see also %s" +msgstr "также см. %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "Ошибка разбора type_comment для %r: %s" +msgid "unknown index entry type %r" +msgstr "неизвестная запись типа индекса %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/si/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/si/LC_MESSAGES/sphinx.mo index fa7d11bfbaf52f8b8b857dcd069a5125c3c5bded..07b38c471ba939c3298f207927af2ed6782acc6b 100644 GIT binary patch delta 996 zcmYMyOGs346vy#1&Zwg^O=3PPbw~xVg04wEaN$ZQm`y=#fkR*XE zT8J%Nh#2ESMA3!Ni)!J<7D)qvEnKt^i?s0j!vkLKy`TU2KhFPg?_$GvL%3ZTdtqF? zJm-0KBZ^M0m8e-6;VKs6TRelGuo?>($KQAgEp}X=Ld7k37CTV=GN?SavB)g6yA-%B z%j+}_VL6VvA#&R|FC~2D^{-G1nZ*>YU=lxKDQ;m2e#a`@!2}+n`o~#Cj`^*Yf_C^4 zwZa)x$2nA@C2wCx#@Yvuzj*ss)Iql-I;H8N(sP>zvL|LrBVdSQ@T z>NnVkYj_E_u@)1IZpCIihu2XHyXQW{O5zX$e2)6JHn0f`sQ!_1&cBU9iVvp4uw6f1$vFGuB y)J|LYRb>~};0@Fc22m3{n0y~?%m0hkMH4~C0_$UDHQ0h`Kj`skY$onQjmsnXiguNU zZ8Tg*E*s&t6Gw3ePP)^`WskV2z?`=)p%(NSQ@D=R_zmN@iQDlHHef(iExZv^)VB^E z#%Rc*cKQsp!k4IlE2uqQ)=a3a|ME7PaG>w5re~ z>YY7A9q|(kaoOV!*hc&vyD-7zJ=lY3Jd1m=fLh>$JA-w^kFgt{qrSC`D$ai&4@q9M zCUjziIaHznJb^b*?f~v4zJ}Vs9aMqo2TMVejPiqFx)2Vf3kT*)K~s>-968jT d3p1Hx+3b8Qez&3~qPw&>URu1bF%yZc%D+{tV$=Wt diff --git a/addons/source-python/packages/site-packages/sphinx/locale/si/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/si/LC_MESSAGES/sphinx.po index 565d88027..6aef2ccb7 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/si/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/si/LC_MESSAGES/sphinx.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: callkalpa , 2013\n" "Language-Team: Sinhala (http://app.transifex.com/sphinx-doc/sphinx-1/language/si/)\n" @@ -19,6 +19,127 @@ msgstr "" "Language: si\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -33,127 +154,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +322,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,468 +537,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" +msgstr "දෝෂය" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "හැඟවීම" + +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:235 +msgid "Note" +msgstr "සටහන" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "මෙයද බලන්න" + +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: project.py:72 +#: locale/__init__.py:238 +msgid "Warning" +msgstr "අනතුරු ඇඟවීම" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "" + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[source]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[docs]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:594 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." msgstr "" -#: ext/imgmath.py:344 +#: builders/_epub_base.py:802 #, python-format -msgid "display latex %r: %s" +msgid "writing %s file..." msgstr "" -#: ext/imgmath.py:380 +#: builders/text.py:27 #, python-format -msgid "inline latex %r: %s" +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -739,9 +1175,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -776,6 +1213,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "කිරීමට තිබෙන" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -863,949 +1328,995 @@ msgstr "[graph: %s]" msgid "[graph]" msgstr "[graph]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "කිරීමට තිබෙන" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "කේත ලේඛක:" - -#: directives/other.py:209 -msgid "Author: " -msgstr "ලේඛක:" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[source]" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "ක්‍රියාව" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "දත්ත" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "Changed in version %s" +msgstr "%s වෙළුමේ වෙනස් කල" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "" - -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: util/docutils.py:309 +#: cmd/quickstart.py:671 #, python-format -msgid "unknown directive name: %s" +msgid "enable %s extension" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/rst.py:73 +#: cmd/quickstart.py:810 #, python-format -msgid "default role %s not found" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:166 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/other.py:169 #, python-format -msgid "[image: %s]" -msgstr "[image: %s]" +msgid "duplicated entry found in toctree: %s" +msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[image]" +#: directives/other.py:203 +msgid "Section author: " +msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:205 +msgid "Module author: " +msgstr "" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "කේත ලේඛක:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "ලේඛක:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" msgstr "" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/texinfo.py:1303 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "unimplemented node type: %r" msgstr "" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[image: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[image]" + #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" msgstr "" @@ -1832,6 +2343,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1848,794 +2364,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" + +#: writers/latex.py:1228 #, python-format -msgid "%s (global variable or constant)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1615 #, python-format -msgid "%s (%s attribute)" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "ක්‍රියාව" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "දත්ත" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "%s වෙළුමේ වෙනස් කල" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "" - -#: domains/rst.py:234 -msgid "directive" -msgstr "" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "දෝෂය" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "හැඟවීම" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "සටහන" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "මෙයද බලන්න" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "අනතුරු ඇඟවීම" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "" - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "" - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "" - -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" - -#: cmd/quickstart.py:339 -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 "" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "" - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "" - -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "" - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:670 +#: util/i18n.py:146 #, python-format -msgid "enable %s extension" +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:792 +#: util/nodes.py:462 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:809 +#: util/nodes.py:523 #, python-format -msgid "Invalid template variable: %s" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "සංකේත" -#: cmd/build.py:114 -msgid "general options" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "නිකුත් කිරීම" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:157 +#: transforms/post_transforms/__init__.py:88 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "ගමන් කිරීම" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "මෙම ලේඛණ ගැන" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "සොයන්න" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:357 +#: themes/basic/layout.html:201 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "පෙර මාතෘකාව" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "පෙර පරිච්ඡේදය" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "ඊළඟ මාතෘකාව" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "ඊළඟ පරිච්ඡේදය" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "සොයන්න" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "යන්න" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "මෙම පිටුව" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "මූලය පෙන්වන්න" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "අන්තර්ගතය" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "ඉක්මන් සෙවුම" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s සොයන්න" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "යන්න" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2682,7 +2882,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2690,23 +2890,15 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "මෙම පිටුව" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "ඉක්මන් සෙවුම" +#: themes/basic/opensearch.xml:4 +#, python-format +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s සොයන්න" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2716,57 +2908,6 @@ msgstr "" msgid "can be huge" msgstr "විශාල විය හැක" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "පෙර මාතෘකාව" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "පෙර පරිච්ඡේදය" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "ඊළඟ මාතෘකාව" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "ඊළඟ පරිච්ඡේදය" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "ගමන් කිරීම" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "මෙම ලේඛණ ගැන" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2783,21 +2924,21 @@ msgstr "" msgid "search" msgstr "සොයන්න" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "අන්තර්ගතය" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "සෙවුම් ප්‍රතිඵල" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,27 +2946,31 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "සොයමින්..." -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "සෙවුම සූදානම් කරමින්...." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "" + +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" msgstr "" #: themes/basic/changes/versionchanges.html:17 @@ -2849,119 +2994,126 @@ msgstr "වෙනත් වෙනස්කම්" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "පරාමිතීන්" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "විචල්‍ය" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "පරාමිතීන්" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "විචල්‍ය" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2973,746 +3125,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "සාමාජික" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "වර්ගය" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 -#, python-format -msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "විචල්‍යය" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "මැක්‍රෝ" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "%s බලන්න" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "%s ද බලන්න" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "සංකේත" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 +#, python-format msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/c/__init__.py:211 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "%s (C %s)" msgstr "" -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "විචල්‍යය" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "මැක්‍රෝ" + +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "%r reference target not found: %s" +msgid "environment variable; %s" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:116 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:239 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:348 +#: domains/std/__init__.py:319 #, python-format -msgid "Failed to read build info file: %r" +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "ඊළඟ" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "පෙර" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1124 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1153 #, python-format -msgid "cannot copy static file %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:949 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy extra file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:955 +#: domains/std/__init__.py:1456 #, python-format -msgid "Failed to write build info file: %r" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1224 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "" + +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" + +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "%s %s ලේඛණය" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "නිකුත් කිරීම" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3720,7 +3652,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3735,481 +3667,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "%s is not a directory." +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "(%s හි%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "ඊළඟ" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "පෙර" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "%s %s ලේඛණය" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "%s බලන්න" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "%s ද බලන්න" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sk/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sk/LC_MESSAGES/sphinx.mo index 09411c2b877ef511ab6e48fcd265dc99336e66ba..5ea13ec5e7f18a952a92e3775f7baf6ba878ba56 100644 GIT binary patch delta 9809 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 Qmo7PZw`S@7+uytV5BZA8OaK4? delta 10158 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 N6^{b$e&wwDe*rq2SknLi diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sk/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/sk/LC_MESSAGES/sphinx.po index 8acd93e5f..4beab5e58 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/sk/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/sk/LC_MESSAGES/sphinx.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Slavko , 2013-2019,2021\n" "Language-Team: Slovak (http://app.transifex.com/sphinx-doc/sphinx-1/language/sk/)\n" @@ -21,6 +21,127 @@ msgstr "" "Language: sk\n" "Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "nastavenie %s.%s nenájdené v žiadnom z nastavení témy" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "zadaná nepodporovaná voľba témy %r" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "súbor %r v ceste témy nie je platný súbor ZIP alebo neobsahuje tému" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -35,127 +156,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Tento projekt vyžaduje rozšírenie %s s verziou minimálne %s, a teda ho nemožno zostaviť s načítanou verziou (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Neznáme meno lexera Pygments %r" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Udalosť %r už existuje" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Neznáme meno udalosti %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "Obsluha %r udalosti %r vyvolala výnimku" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Nemožno nájsť zdrojový priečinok (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Výstupný adresár (%s) nie je adresár" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Zdrojový a cieľový priečinok nemôžu byť rovnaké" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Spúšťanie Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Tento projekt vyžaduje aspoň Sphinx v%s a preto s touto verziou nemôže byť zostavený." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "vytváranie výstupnej zložky" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "pri nastavovaní rozšírenia %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' definovaný v conf.py nie je funkciou. Prosím, upravte jeho definíciu tak, aby to bola funkcia. Je to potrebné, aby sa conf.py mohol správať ako rozšírenie Sphinx." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "načítanie prekladov [%s]…" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "hotovo" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "nedostupné pre zabudované správy" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "načítanie uloženého prostredia " -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "zlyhalo: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Nebol zvolený builder, bude použitý predvolený: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "trieda uzla %r už je registrovaná, jej metódy (visitors) budú prepísané" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -163,12 +311,12 @@ msgid "" "explicit" msgstr "rozšírenie %s nedeklaruje, či je bezpečné pri paralelnom čítaní, predpokladá sa, že nie - prosím, požiadajte autora aby to skontroloval a explicitne to nastavil" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "rozšírenie %s nie je bezpečné pre paralelné zostavenie" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -176,82 +324,214 @@ msgid "" "explicit" msgstr "rozšírenie %s nedeklaruje, či je bezpečné pri paralelnom čítaní, predpokladáme, že nie je – prosím, požiadajte autora aby to skontroloval a explicitne to nastavil" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "rozšírenie %s nie je bezpečné pre paralelné zostavenie" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "sériové spracovanie %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "konfiguračný priečinok neobsahuje súbor conf.py (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Trieda builder %s nemá atribút „name”" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Builder %r už existuje (v module %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Builder s menom %s nie je registrovaný ani dostupný cez vstupný bod" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Builder s menom %s nie je registrovaný" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "doména %s už je zaregistrovaná" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "doména %s ešte nie je zaregistrovaná" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "Direktíva %r už je registrovaná v doméne %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "Rola %r už je registrovaná v doméne %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "Index %r už je registrovaný v doméne %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr " object_type %r už je registrovaný" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "crossref_type %r už je registrovaný" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r už je registrovaný" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser pre %r už je registrovaný" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Analyzátor pre %s nie je registrovaný" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Translator pre %r už existuje" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r už je registrovaný" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "rozšírenie %r bolo zlúčené so Sphinx od verzie %s; toto rozšírenie je ignorované." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Pôvodná výnimka:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Nemožno importovať rozšírenie %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "rozšírenie %r nemá funkciu setup(); je to naozaj modul rozšírenia Sphinx?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Rozšírenie %s použité týmto projektom vyžaduje aspoň Sphinx v%s; takže ho nemožno zostaviť s touto verziou." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "rozšírenie %r vrátilo so svojej funkcie setup() nepodporovaný objekt; musí vrátiť None alebo slovník metadát" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "konfiguračný priečinok neobsahuje súbor conf.py (%s)" + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "nemožno prepísať slovník nastavenia %r, ignorované (použite %r na nastavenie jednotlivých prvkov)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "neplatný počet %r pre konfiguračnú hodnotu %r, ignorované" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "nemožno prepísať konfiguračné nastavenie %r s nepodporovaným typom, ignorované" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "neznáma konfiguračná hodnota %r v prepísaní, ignorované" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Konfiguračná hodnota %r už existuje" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Vo svojom konfiguračnom súbore máte chybu: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Konfiguračný súbor (alebo jeden z modulov, ktoré importuje) volal sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -259,469 +539,625 @@ msgid "" "%s" msgstr "V konfiguračnom súbore je programová chyba:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Sekcia %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Obr. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabuľka %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Výpis %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "Konfiguračná hodnota `{name}` má byť jedno z {candidates}, ale je zadané `{current}`." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "Konfiguračná hodnota `{name}' má typ `{current.__name__}'; očakávané {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "Konfiguračná hodnota `{name}' má typ `{current.__name__}', predvolene `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r nenájdená, ignorované." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Neznáme meno lexera Pygments %r" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "nová konfigurácia" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "zmenená konfigurácia" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "nastavenie %s.%s nenájdené v žiadnom z nastavení témy" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "zmenené rozšírenie" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "zadaná nepodporovaná voľba témy %r" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "prostredie zostavenia nie je aktuálne" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "súbor %r v ceste témy nie je platný súbor ZIP alebo neobsahuje tému" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "zdrojový adresár zmenený" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Toto prostredie nie je kompatibilné zo zvoleným zostavovačom, prosím, zvoľte iný adresár doctree." -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "Zlyhalo skenovanie dokumentov v %s: %r" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "Doména %r nie je zaregistrovaná" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "dokument nie je zahrnutý v žiadnom strome obsahu" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "nájdený na seba odkazujúci strom obsahu. Ignorované." -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Výstraha" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Udalosť %r už existuje" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Upozornenie" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Neznáme meno udalosti %s" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Nebezpečné" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "Obsluha %r udalosti %r vyvolala výnimku" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Chyba" -#: project.py:72 +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Rada" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Dôležité" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Poznámka" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Viď aj" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tip" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Varovanie" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Súbory Texinfo sú v %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nSpustite v tomto adresári 'make' na ich spustenie pomocou makeinfo\n(použite tu 'make info' aby to bolo spustené automaticky)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "nebola nájdená konfiguračná voľba „texinfo_documents”; dokumenty nebudú zapísané" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Trieda builder %s nemá atribút „name”" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "konfiguračná voľba „texinfo_documents” odkazuje na neznámy dokument %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Builder %r už existuje (v module %s)" +msgid "processing %s" +msgstr "spracovanie %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Builder s menom %s nie je registrovaný ani dostupný cez vstupný bod" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "zapisovanie" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Builder s menom %s nie je registrovaný" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "riešenie odkazov…" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "doména %s už je zaregistrovaná" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(v" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "doména %s ešte nie je zaregistrovaná" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "kopírovanie obrázkov…" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "Direktíva %r už je registrovaná v doméne %s" +msgid "cannot copy image file %r: %s" +msgstr "nemožno kopírovať súbor obrázka %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "Rola %r už je registrovaná v doméne %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "kopírovanie podporných súborov Texinfo" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "Index %r už je registrovaný v doméne %s" +msgid "error writing file Makefile: %s" +msgstr "chyba zápisu súboru Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr " object_type %r už je registrovaný" +msgid "The manual pages are in %(outdir)s." +msgstr "Manuálové stránky sú v %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "crossref_type %r už je registrovaný" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "nebola nájdená konfiguračná voľba „man_pages”; manuálové stránky nebudú zapísané" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r už je registrovaný" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "konfiguračná voľba „man_pages” odkazuje na neznámy dokument %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser pre %r už je registrovaný" +msgid "The HTML page is in %(outdir)s." +msgstr "Stránky HTML sú v %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Analyzátor pre %s nie je registrovaný" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "zostavovanie spoločného dokumentu" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Translator pre %r už existuje" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "zapisovanie dodatočných súborov" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Zostavovač dummy negeneruje žiadne súbory." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r už je registrovaný" +msgid "The message catalogs are in %(outdir)s." +msgstr "Katalógy správ sú v %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "" +msgid "building [%s]: " +msgstr "zostavovanie [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "rozšírenie %r bolo zlúčené so Sphinx od verzie %s; toto rozšírenie je ignorované." +msgid "targets for %d template files" +msgstr "" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Pôvodná výnimka:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "čítanie šablón… " -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "Nemožno importovať rozšírenie %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "zapisovanie katalógov správ…" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "rozšírenie %r nemá funkciu setup(); je to naozaj modul rozšírenia Sphinx?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Hľadajte akékoľvek chyby v predošlom výstupe alebo v %(outdir)s/output.txt" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Rozšírenie %s použité týmto projektom vyžaduje aspoň Sphinx v%s; takže ho nemožno zostaviť s touto verziou." +msgid "broken link: %s (%s)" +msgstr "poškodený odkaz: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "rozšírenie %r vrátilo so svojej funkcie setup() nepodporovaný objekt; musí vrátiť None alebo slovník metadát" +msgid "Anchor '%s' not found" +msgstr "Kotva „%s” nenájdená" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "Súbory ePub sú v %(outdir)s." + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "zapisovanie súboru nav.xhtml..." + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_language” (alebo „language”) nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "konfiguračná hodnota „epub_uid” má byť XML NAME pre EPUB3" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_title” (alebo „html_title”) nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_author” nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_contributor” nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_description” nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_publisher” nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_copyright” (alebo „copyright”) nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "konfiguračná hodnota „epub_identifier” nesmie byť prázdna pri EPUB3" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "konfiguračná hodnota „version” nesmie byť prázdna pri EPUB3" -#: roles.py:251 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "invalid css_file: %r, ignored" +msgstr "neplatný css_file: %r, ignorovaný" -#: roles.py:274 +#: builders/xml.py:29 #, python-format -msgid "invalid CWE number %s" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "Súbory XML sú v %(outdir)s." -#: roles.py:294 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +msgid "error writing file %s: %s" +msgstr "chyba zápisu súboru %s: %s" -#: roles.py:317 +#: builders/xml.py:103 #, python-format -msgid "invalid PEP number %s" -msgstr "" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Súbory pseudo-XML sú v %(outdir)s." -#: roles.py:355 +#: builders/_epub_base.py:223 #, python-format -msgid "invalid RFC number %s" +msgid "duplicated ToC entry found: %s" +msgstr "nájdená duplicitná položka Obsahu: %s" + +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "nemožno čítať súbor obrázku %r: jeho kopírovanie namiesto toho" + +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "nemožno zapísať súbor obrázka %r: %s" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow nenájdené – kopírovanie súborov obrázkov" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "zapisovanie súboru mimetype…" + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "zapisovanie súboru META-INF/container.xml…" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "zapisovanie súboru content.opf..." + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "neznámy typ MIME pre %s, ignorovaný" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[zdroj]" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "zapisovanie súboru toc.ncx..." -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "zvýrazňovanie syntaxe kódu modulu... " +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "zapisovanie súboru %s…" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumenty]" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "Textové súbory sú v %(outdir)s." -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Kód modulu" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "vhodný obrázok pre zostavovač %s nenájdený: %s (%s)" -#: ext/viewcode.py:353 +#: builders/__init__.py:237 #, python-format -msgid "

Source code for %s

" -msgstr "

Zdrojový kód %s

" +msgid "a suitable image for %s builder not found: %s" +msgstr "vhodný obrázok pre zostavovač %s nenájdený: %s" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Prehľad: kód modulu" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "zostavenie [mo]: " -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Všetky moduly, pre ktoré je dostupný kód

" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "zápis výstupu…" -#: ext/extlinks.py:82 +#: builders/__init__.py:280 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +msgid "all of %d po files" +msgstr "všetky z %d súborov po" -#: ext/autosectionlabel.py:52 +#: builders/__init__.py:302 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "targets for %d po files that are specified" +msgstr "ciele pre %d po súborov, ktoré boli zadané" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/__init__.py:314 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "duplicitná menovka %s, ďalší výskyt v %s" +msgid "targets for %d po files that are out of date" +msgstr "ciele pre %d po súborov, ktoré sú zastarané" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "všetky zdrojové súbory" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/duration.py:90 +#: builders/__init__.py:342 +#, python-format msgid "" -"====================== slowest reading durations =======================" +"file %r given on command line is not under the source directory, ignoring" +msgstr "súbor %r zadaný v príkazovom riadku nie je v zdrojovom adresári, ignorujem" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:118 +#: builders/__init__.py:366 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "chýbajúce „+” alebo „-” vo voľbe „%s”." +msgid "%d source files given on command line" +msgstr "%d zdrojové súbory zadané v príkazovom riadku" -#: ext/doctest.py:124 +#: builders/__init__.py:382 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' nie je platná voľba." +msgid "targets for %d source files that are out of date" +msgstr "ciele pre %d zdrojových súborov, ktoré sú zastarané" -#: ext/doctest.py:139 +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "hľadanie zastaraných súborov…" + +#: builders/__init__.py:415 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "„%s” nie je platná voľba pyversion" +msgid "%d found" +msgstr "%d nájdené" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "neplatný typ TestCode" +#: builders/__init__.py:417 +msgid "none found" +msgstr "nenájdené" -#: ext/doctest.py:297 +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "ukladanie prostredia" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "kontrolovanie konzistencie" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "žiadne ciele nie sú zastarané." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "aktualizácia prostredia:" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "%s pridané, %s zmenené, %s odstránené" + +#: builders/__init__.py:536 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:545 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:556 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:563 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "Nemožno spustiť príkaz LaTeX %r (potrebný na zobrazenie math), skontrolujte nastavenia imgmath_latex" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "čítanie zdrojov…" -#: ext/imgmath.py:181 +#: builders/__init__.py:725 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +msgid "docnames to write: %s" +msgstr "mená dokumentov na zapísanie: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "príprava dokumentov" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 #, python-format -msgid "display latex %r: %s" -msgstr "zobrazený latex %r: %s" +msgid "The overview file is in %(outdir)s." +msgstr "Súbor prehľadu je v %(outdir)s." -#: ext/imgmath.py:380 +#: builders/changes.py:65 #, python-format -msgid "inline latex %r: %s" -msgstr "vnorený latex %r: %s" +msgid "no changes in version %s." +msgstr "žiadne zmeny vo verzii %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "zapisovanie súboru prehľadu…" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Zabudované funkcie" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Úroveň modulu" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "kopírovanie zdrojových súborov…" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "nemožno čítať %r na vytvorenie položky záznamu zmien" #: ext/coverage.py:48 #, python-format @@ -741,9 +1177,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -778,16 +1215,44 @@ msgstr "nedokumentovaná trieda Python: %s :: %s" msgid "undocumented python method: %s :: %s :: %s" msgstr "nedokumentovaná metóda Python: %s :: %s :: %s" -#: ext/imgconverter.py:44 +#: ext/extlinks.py:82 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 -#, python-format +#: ext/todo.py:61 +msgid "Todo" +msgstr "ToDo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "Nájdená položka TODO: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> je umiestnená v %s, riadok %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "pôvodná položka" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format msgid "" "convert exited with error:\n" "[stderr]\n" @@ -865,948 +1330,994 @@ msgstr "[graf: %s]" msgid "[graph]" msgstr "[graf]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "ToDo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" -msgstr "Nájdená položka TODO: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "Nemožno spustiť príkaz LaTeX %r (potrebný na zobrazenie math), skontrolujte nastavenia imgmath_latex" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> je umiestnená v %s, riadok %d.)" +msgid "display latex %r: %s" +msgstr "zobrazený latex %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "pôvodná položka" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "vnorený latex %r: %s" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "Neplatný popis: %s" +msgid "missing '+' or '-' in '%s' option." +msgstr "chýbajúce „+” alebo „-” vo voľbe „%s”." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "špecifikácia čísla riadku je mimo rozsahu (1-%d): %r" +msgid "'%s' is not a valid option." +msgstr "'%s' nie je platná voľba." -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Nemožno použiť obe voľby „%s” a „%s”" +msgid "'%s' is not a valid pyversion option" +msgstr "„%s” nie je platná voľba pyversion" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "neplatný typ TestCode" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "Objekt s menom %r nebol nájdený vo vloženom súbore %r" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Nemožno použiť „lineno-match” s rozdelenou množinou „lines”" - -#: directives/code.py:314 +#: ext/doctest.py:451 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Riadok %r: žiadne riadky z vloženého súboru %r" - -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "voľba \":file:\" direktívy csv-table teraz rozpoznáva absolútnu cestu ako relatívnu k zdrojovému adresáru. Prosím, aktualizujte svoj dokument." +msgid "no code/output in %s block at %s:%s" +msgstr "" -#: directives/other.py:119 +#: ext/doctest.py:568 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/autosectionlabel.py:52 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "strom obsahu obsahuje odkaz na vylúčený dokument %r" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: directives/other.py:156 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "strom obsahu obsahuje odkaz na neexistujúci dokument %r" +msgid "duplicate label %s, other instance in %s" +msgstr "duplicitná menovka %s, ďalší výskyt v %s" -#: directives/other.py:169 +#: ext/duration.py:47 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autor sekcie:" - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autor modulu:" - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autor kódu:" - -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor:" - -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." -msgstr "Súbor prehľadu je v %(outdir)s." +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" -#: builders/changes.py:56 +#: ext/duration.py:139 #, python-format -msgid "no changes in version %s." -msgstr "žiadne zmeny vo verzii %s." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "zapisovanie súboru prehľadu…" +msgid "%.3fs %s" +msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Zabudované funkcie" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[zdroj]" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Úroveň modulu" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "zvýrazňovanie syntaxe kódu modulu... " -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "kopírovanie zdrojových súborov…" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumenty]" -#: builders/changes.py:133 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "nemožno čítať %r na vytvorenie položky záznamu zmien" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Kód modulu" -#: builders/manpage.py:37 +#: ext/viewcode.py:359 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Manuálové stránky sú v %(outdir)s." +msgid "

Source code for %s

" +msgstr "

Zdrojový kód %s

" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "nebola nájdená konfiguračná voľba „man_pages”; manuálové stránky nebudú zapísané" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Prehľad: kód modulu" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "zapisovanie" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Všetky moduly, pre ktoré je dostupný kód

" -#: builders/manpage.py:71 +#: domains/citation.py:75 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "konfiguračná voľba „man_pages” odkazuje na neznámy dokument %s" +msgid "duplicate citation %s, other instance in %s" +msgstr "duplicitná citácia %s, ďalší výskyt v %s" -#: builders/__init__.py:224 +#: domains/citation.py:92 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "vhodný obrázok pre zostavovač %s nenájdený: %s (%s)" +msgid "Citation [%s] is not referenced." +msgstr "Citácia [%s] nie je odkazovaná." -#: builders/__init__.py:232 +#: domains/math.py:73 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "vhodný obrázok pre zostavovač %s nenájdený: %s" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "zostavenie [mo]: " - -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "zápis výstupu…" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "duplicitná menovka vzorca %s, ďalší výskyt v %s" -#: builders/__init__.py:275 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "all of %d po files" -msgstr "všetky z %d súborov po" +msgid "Invalid math_eqref_format: %r" +msgstr "neplatný math_eqref_format: %r" -#: builders/__init__.py:297 +#: domains/javascript.py:183 #, python-format -msgid "targets for %d po files that are specified" -msgstr "ciele pre %d po súborov, ktoré boli zadané" +msgid "%s() (built-in function)" +msgstr "%s() (zabudovaná funkcia)" -#: builders/__init__.py:309 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "ciele pre %d po súborov, ktoré sú zastarané" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "všetky zdrojové súbory" +msgid "%s() (%s method)" +msgstr "%s() (metóda %s)" -#: builders/__init__.py:330 +#: domains/javascript.py:186 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +msgid "%s() (class)" +msgstr "%s() (trieda)" -#: builders/__init__.py:337 +#: domains/javascript.py:188 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "súbor %r zadaný v príkazovom riadku nie je v zdrojovom adresári, ignorujem" +msgid "%s (global variable or constant)" +msgstr "%s (globálna premenná alebo konštanta)" -#: builders/__init__.py:348 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (atribút %s)" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "%d zdrojové súbory zadané v príkazovom riadku" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumenty" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "ciele pre %d zdrojových súborov, ktoré sú zastarané" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Vyvoláva" -#: builders/__init__.py:395 builders/gettext.py:265 -#, python-format -msgid "building [%s]: " -msgstr "zostavovanie [%s]: " +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Vracia" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "hľadanie zastaraných súborov…" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Návratový typ" -#: builders/__init__.py:410 +#: domains/javascript.py:374 #, python-format -msgid "%d found" -msgstr "%d nájdené" +msgid "%s (module)" +msgstr "%s (modul)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "nenájdené" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcia" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "ukladanie prostredia" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metóda" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "kontrolovanie konzistencie" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "trieda" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "žiadne ciele nie sú zastarané." +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dáta" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "aktualizácia prostredia:" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribút" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s pridané, %s zmenené, %s odstránené" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" -#: builders/__init__.py:531 +#: domains/javascript.py:458 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "duplicitný %s popis %s, ďalší výskyt%s v %s" -#: builders/__init__.py:540 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktíva)" -#: builders/__init__.py:551 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid ":%s: (directive option)" +msgstr "%s (voľba direktívy)" -#: builders/__init__.py:558 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s (role)" +msgstr "%s (rola)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "direktíva" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "čítanie zdrojov…" +#: domains/rst.py:236 +msgid "role" +msgstr "rola" -#: builders/__init__.py:713 +#: domains/rst.py:262 #, python-format -msgid "docnames to write: %s" -msgstr "mená dokumentov na zapísanie: %s" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "duplicitný popis %s %s, ďalší výskyt v %s" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "príprava dokumentov" - -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "Zmenené vo verzii %s" -#: builders/__init__.py:883 +#: domains/changeset.py:34 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "nedekódovateľné zdrojové znaky, nahradené „?”: %r" +msgid "Deprecated since version %s" +msgstr "Zastarané od verzie %s" -#: builders/epub3.py:84 +#: domains/changeset.py:35 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "Súbory ePub sú v %(outdir)s." +msgid "Removed in version %s" +msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "zapisovanie súboru nav.xhtml..." +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_language” (alebo „language”) nesmie byť prázdna pri EPUB3" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "počet úloh musí byť kladné číslo" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "konfiguračná hodnota „epub_uid” má byť XML NAME pre EPUB3" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_title” (alebo „html_title”) nesmie byť prázdna pri EPUB3" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nGeneruje dokumentáciu zo zdrojových súborov.\n\nsphinx-build generuje dokumentáciu zo súborov v SOURCEDIR a umiestni ju\nv OUTPUTDIR. Konfiguračné voľby hľadá v 'conf.py' v SOURCEDIR.\nNa generovanie súborov šablón, vrátane 'conf.py' možno použiť nástroj\n'sphinx-quickstart'\n\nsphinx-build dokáže vytvoriť dokumentáciu v rôznych formátoch. Formát je\nzvolený zadaním mena zostavovača v príkazovom riadku; predvolene\nHTML. Zostavovače môžu vykonávať aj iné úlohy, ktoré súvisia so spracovaním\ndokuemntácie.\n\nPredvolene je zostavené všetko, čo bolo zmenené. Výstup len zvolených súborov\nmôže byť zostavený zadaním jednotlivých mien súborov.\n" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_author” nesmie byť prázdna pri EPUB3" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "cesta k zdrojovým súborom dokumentácie" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_contributor” nesmie byť prázdna pri EPUB3" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "cesta k výstupnej zložke" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_description” nesmie byť prázdna pri EPUB3" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_publisher” nesmie byť prázdna pri EPUB3" +#: cmd/build.py:114 +msgid "general options" +msgstr "všeobecné voľby" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_copyright” (alebo „copyright”) nesmie byť prázdna pri EPUB3" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "konfiguračná hodnota „epub_identifier” nesmie byť prázdna pri EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "konfiguračná hodnota „version” nesmie byť prázdna pri EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "zapísať všetky súbory (predvolene: zapísať len nové a zmenené súbory)" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "neplatný css_file: %r, ignorovaný" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "nepoužívať uložené prostredie, vždy čítať všetky súbory" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Súbory XML sú v %(outdir)s." +#: cmd/build.py:150 +msgid "path options" +msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "chyba zápisu súboru %s: %s" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Súbory pseudo-XML sú v %(outdir)s." +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Súbory Texinfo sú v %(outdir)s." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nSpustite v tomto adresári 'make' na ich spustenie pomocou makeinfo\n(použite tu 'make info' aby to bolo spustené automaticky)." +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "prepíše nastavenie konfiguračného súboru" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "nebola nájdená konfiguračná voľba „texinfo_documents”; dokumenty nebudú zapísané" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "pošle hodnotu do šablón HTML" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "konfiguračná voľba „texinfo_documents” odkazuje na neznámy dokument %s" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "spracovanie %s" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "riešenie odkazov…" +#: cmd/build.py:212 +msgid "console output options" +msgstr "voľby výstupu konzoly" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr "(v" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "zvýšiť rozvláčnosť (možno opakovať)" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "kopírovanie obrázkov…" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "žiadny výstup, len upozornenia na stderr" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "nemožno kopírovať súbor obrázka %r: %s" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "vôbec žiadny výstup, ani upozornenia" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "kopírovanie podporných súborov Texinfo" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "generovať farebný výstup (predvolene: automaticky detegovať)" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "chyba zápisu súboru Makefile: %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "negenerovať farebný výstup (predvolene: automaticky detegovať)" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "nájdená duplicitná položka Obsahu: %s" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "nemožno čítať súbor obrázku %r: jeho kopírovanie namiesto toho" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "zapísať varovania (a chyby) do zadaného súboru" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "nemožno zapísať súbor obrázka %r: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "prepnúť upozornenia na chyby" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Pillow nenájdené – kopírovanie súborov obrázkov" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "pri výnimke zobraziť úplné chybové hlásenie" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "zapisovanie súboru mimetype…" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "pri výnimke spustiť Pdb" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "zapisovanie súboru META-INF/container.xml…" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "zapisovanie súboru content.opf..." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "nemožno kombinovať voľbu -a a mená súborov" -#: builders/_epub_base.py:591 +#: cmd/build.py:357 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "neznámy typ MIME pre %s, ignorovaný" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "zapisovanie súboru toc.ncx..." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "argument voľby -D musí byť v tvare meno=hodnota" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "zapisovanie súboru %s…" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "argument voľby -A musí byť v tvare meno=hodnota" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "Zostavovač dummy negeneruje žiadne súbory." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "automaticky vložiť dokumentačné reťazce z modulov" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Katalógy správ sú v %(outdir)s." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "automaticky testovať kúsky kódu v blokoch dokumentačných reťazcov" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "prepojenie medzi dokumentáciou Sphinx rôznych modulov" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "čítanie šablón… " +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "písať položky „todo”, ktoré môžu byť zobrazené alebo skryté pri zostavení" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "zapisovanie katalógov správ…" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Stránky HTML sú v %(outdir)s." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "zahrnúť math, spracované ako obrázky PNG alebo SVG" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "zostavovanie spoločného dokumentu" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "zahrnúť math, spracované prehliadačom pomocou MathJax" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "zapisovanie dodatočných súborov" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "podmienečné zahrnutie obsahu na základe konfiguračných volieb" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Hľadajte akékoľvek chyby v predošlom výstupe alebo v %(outdir)s/output.txt" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "zahrnúť odkazy na zdrojový kód dokumentovaných objektov Python" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "poškodený odkaz: %s (%s)" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "vytvoriť súbor .nojekyll na publikovanie dokumentu na GitHub" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "Kotva „%s” nenájdená" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Prosím, zadajte platnú cestu." -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Prosím, zadajte nejaký text." -#: builders/text.py:29 +#: cmd/quickstart.py:134 #, python-format -msgid "The text files are in %(outdir)s." -msgstr "Textové súbory sú v %(outdir)s." +msgid "Please enter one of %s." +msgstr "Prosím, zadajte jedno z 1%s." -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Prosím, zadajte buď 'y' alebo 'n'." -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Prosím, zadajte príponu súboru, napr. '.rst' alebo '.txt'." -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Vitajte v nástroji Sphinx %s quickstart." -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:235 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 +#: cmd/quickstart.py:242 #, python-format -msgid "%b %d, %Y" -msgstr "%d. %b %Y" +msgid "Selected root path: %s" +msgstr "Zvolená cesta koreňa: %s" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Zadajte cestu koreňa tejto dokumentácie." -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Cesta koreňa dokumentácie" -#: transforms/__init__.py:253 -#, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Chyba: nájdený existujúci conf.py v zadanej ceste koreňa." -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Poznámka pod čiarou [%s] nie je odkazovaná." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart neprepíše existujúce projekty Sphinx." -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Prosím, zadajte novú cestu koreňa (alebo len Enter na skončenie)" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Poznámka pod čiarou [#] nie je odkazovaná." +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Sú dve možnosti umiestnenia adresára zostavenia s výstupom Sphinx.\nMôžete použiť buď adresár „_build” v koreni alebo môžete mať oddelené\nadresáre „source” a „build” v ceste koreňa." -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Oddeliť zdrojový a výstupný adresár (y/n)" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "V koreňovom adresári budú vytvorená dva ďalšie adresáre; \"_templates\"\npre vlastné šablóny HTML a \"_static\" pre vlastné CSS a iné statické súbory\nMôžete zadať inú predponu (napr. „.”), ktorá nahradí podčiarkovník." -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Predpona mena adresárov templates a static" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "Meno projektu bude na viacerých miestach zostavenej dokumentácie." -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Názov projektu" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Meno(á) autora(ov)" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:309 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" +"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" +"just set both to the same value." +msgstr "Sphinx má predstavu o \"version\" a \"release\" softvéru. Každá\nverzia môže mať viacero vydaní. Napríklad, pre Python je verzia\nniečo ako 2.5 alebo 3.0, zatiaľčo vydanie je niečo ako 2.5.1\nalebo 3.0a1. Ak nepotrebuje dvojitú štruktúru, jednoducho nastavte\noboje na rovnakú hodnotu." -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Verzia projektu" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Vydanie projektu" -#: environment/__init__.py:86 -msgid "new config" -msgstr "nová konfigurácia" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Ak má byť dokumentácia písaná v inom ako Anglickom jazyku,\nmôžete tu zvoliť jazyk pomocou jeho kódu. Sphinx bude potom\nprekladať text, ktorý generuje, do tohoto jazyka.\n\nZoznam podporovaných jazykov nájdete na\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: environment/__init__.py:87 -msgid "config changed" -msgstr "zmenená konfigurácia" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Jazyk projektu" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "zmenené rozšírenie" +#: cmd/quickstart.py:340 +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 "Prípona mena zdrojových súborov. Zvyčajne to je buď „.txt”\nalebo „.rst”. Len súbory s touto príponou sú považované za dokumenty." -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "prostredie zostavenia nie je aktuálne" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Prípona zdrojových súborov" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "zdrojový adresár zmenený" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Jeden dokument je špeciálny v tom, že je považovaný za vrcholový uzol\n„stromu obsahu”, čiže je to koreň hierarchickej štruktúry dokumentov.\nBežne to je „index”, ale ak je Váš „index” vlastnou šablónou, môžete\npoužiť aj iné meno súboru." -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Meno hlavného dokumentu (bez prípony)" -#: environment/__init__.py:330 +#: cmd/quickstart.py:368 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Chyba: nájdený existujúci hlavný súbor %s v zadanej ceste koreňa." -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart neprepíše existujúci súbor." -#: environment/__init__.py:379 +#: cmd/quickstart.py:378 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Toto prostredie nie je kompatibilné zo zvoleným zostavovačom, prosím, zvoľte iný adresár doctree." +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Prosím, zadajte nové meno súboru alebo premenujte existujúci súbor a stlačte Enter" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "Zlyhalo skenovanie dokumentov v %s: %r" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Informuje, ktoré z nasledujúcich rozšírení Sphinx majú byť zapnuté:" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Doména %r nie je zaregistrovaná" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Pozor: imgmath a mathjax nemožno zapnúť naraz. výber imgmath bol zrušený." -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "dokument nie je zahrnutý v žiadnom strome obsahu" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Súbory Makefile a príkazový súbor Windows môže byť pre Vás vygenerovaný\ntakže stačí spustiť napr. len `make html' namiesto priameho spúšťania sphinx-build." -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "nájdený na seba odkazujúci strom obsahu. Ignorované." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Vytvoriť Makefile? (y/n)" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Vytvoriť príkazový súbor Windows? (y/n) " -#: util/i18n.py:100 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "reading error: %s, %s" -msgstr "chyba čítania: %s, %s" +msgid "Creating file %s." +msgstr "Vytváranie súboru %s." -#: util/i18n.py:113 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "writing error: %s, %s" -msgstr "chyba zápisu: %s: %s" +msgid "File %s already exists, skipping." +msgstr "Súbor %s už existuje, preskočené." -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Dokončené: Počiatočná štruktúra adresára bola vytvorená." -#: util/i18n.py:236 +#: cmd/quickstart.py:520 #, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Teraz môže vyplniť svoj hlavný súbor %s a vytvoriť ostatné zdrojové súbory\ndokumentácie. " -#: util/i18n.py:245 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Neplatný formát dátumu. Použije jednoduché úvodzovky, ak ho chcete priamo vo výstupe: %s" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Na zostavenie dokumentácie použite Makefile, napr.:\n make builder" -#: util/docfields.py:103 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Na zostavenie dokumentácie použite príkaz sphinx-build, napr.:\n sphinx-build -b builder %s %s" -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:538 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "kde „builder” je jeden z podporovaných formátov, napr. html, latex alebo linkcheck." -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "strom obsahu obsahuje neexistujúci súbor %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nGenereuje požadované súbory projektu Sphinx.\n\nsphinx-quickstart je interaktívny nástroj, ktorý kladie niekoľko otázok o Vašom\nprojekte a potom generuje kompletný adresár dokumentácie a vzorový\nMakefile, na použitie so sphinx-build.\n" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "tichý režim" -#: util/display.py:82 -msgid "skipped" -msgstr "preskočené" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "koreň projektu" -#: util/display.py:87 -msgid "failed" -msgstr "zlyhalo" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Voľby štruktúry" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "ak je zadané, oddeliť zdrojový a výstupný adresár" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "ak je zadané, vytvoriť výstupný adresár v zdrojovom" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "náhrada za bodku v _templates apod." -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" -msgstr "neznámy typ uzla: %r" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Základné voľby projektu" -#: util/fileutil.py:76 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "názov projektu" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "mená autorov" -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "predvolená rola %s nenájdená" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "verzia projektu" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "vydanie projektu" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "jazyk dokumentácie" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Poznámky pod čiarou" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "prípona zdrojových súborov" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[obrázok: %s]" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "meno hlavného dokumentu" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[obrázok]" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "použiť epub" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Index" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Voľby rozšírenia" -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" +msgstr "zapnúť rozšírenie %s" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "zapnúť konkrétne rozšírenia" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Vytvorenie Makefile a Batchfile" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "vytvoriť makefile" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "nevytvoriť makefile" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "vytvoriť batchfile" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "nevytvoriť batchfile" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "použiť režim make pre Makefile/make.bat" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Šablóny projektu" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "adresár šablóny pre súbory šablóny" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "definovať premennú šablóny" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "bolo zadané „quiet”, ale nebol zadaný „project” alebo „author”." + +#: cmd/quickstart.py:786 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Chyba: zadaná cesta nie je adresár alebo súbory sphinx už existujú." -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "titulok nie je vo vnútri figure." +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart generuje len do prázdneho adresára. Prosím, zadajte novú cestu koreňa." -#: writers/texinfo.py:1303 +#: cmd/quickstart.py:810 #, python-format -msgid "unimplemented node type: %r" -msgstr "neimplementovaný typ uzla: %r" +msgid "Invalid template variable: %s" +msgstr "Neplatná premenná šablóny: %s" -#: writers/latex.py:361 +#: directives/other.py:119 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "no Babel option known for language %r" -msgstr "žiadna známa voľba Babel pre jazyk %r" +msgid "toctree contains reference to excluded document %r" +msgstr "strom obsahu obsahuje odkaz na vylúčený dokument %r" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "príliš veľké :maxdepth:, ignorované." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "strom obsahu obsahuje odkaz na neexistujúci dokument %r" -#: writers/latex.py:591 +#: directives/other.py:169 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "názov dokumentu nie je jeden uzol Text" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor sekcie:" -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor modulu:" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autor kódu:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:1183 +#: directives/patches.py:70 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "sú zadané obe, tabularcolumns aj voľba :widths:. :widths: je ignorované." +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "voľba \":file:\" direktívy csv-table teraz rozpoznáva absolútnu cestu ako relatívnu k zdrojovému adresáru. Prosím, aktualizujte svoj dokument." + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" + +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" +msgstr "Neplatný popis: %s" -#: writers/latex.py:1580 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "dimension unit %s is invalid. Ignored." +msgid "line number spec is out of range(1-%d): %r" +msgstr "špecifikácia čísla riadku je mimo rozsahu (1-%d): %r" + +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Nemožno použiť obe voľby „%s” a „%s”" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:1939 +#: directives/code.py:235 #, python-format -msgid "unknown index entry type %s found" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: directives/code.py:276 #, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "neplatný math_eqref_format: %r" +msgid "Object named %r not found in include file %r" +msgstr "Objekt s menom %r nebol nájdený vo vloženom súbore %r" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Nemožno použiť „lineno-match” s rozdelenou množinou „lines”" + +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Riadok %r: žiadne riadky z vloženého súboru %r" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d. %b %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Index" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Poznámky pod čiarou" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "titulok nie je vo vnútri figure." + +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "neimplementovaný typ uzla: %r" + +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[obrázok: %s]" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[obrázok]" #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" @@ -1834,6 +2345,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1850,795 +2366,479 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "Nemožno získať veľkosť obrázku. voľba :scale: je ignorovaná." -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "duplicitná menovka vzorca %s, ďalší výskyt v %s" +msgid "no Babel option known for language %r" +msgstr "žiadna známa voľba Babel pre jazyk %r" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (zabudovaná funkcia)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "príliš veľké :maxdepth:, ignorované." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (metóda %s)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (trieda)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "názov dokumentu nie je jeden uzol Text" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (globálna premenná alebo konštanta)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "sú zadané obe, tabularcolumns aj voľba :widths:. :widths: je ignorované." -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (atribút %s)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumenty" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Vyvoláva" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" +msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Vracia" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Návratový typ" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funkcia" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metóda" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "trieda" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dáta" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribút" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "duplicitný %s popis %s, ďalší výskyt%s v %s" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Zmenené vo verzii %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Zastarané od verzie %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktíva)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "%s (voľba direktívy)" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rola)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "direktíva" - -#: domains/rst.py:235 -msgid "directive-option" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "rola" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "duplicitný popis %s %s, ďalší výskyt v %s" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "duplicitná citácia %s, ďalší výskyt v %s" - -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "Citácia [%s] nie je odkazovaná." - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Výstraha" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Upozornenie" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Nebezpečné" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Chyba" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Rada" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Dôležité" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Poznámka" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Viď aj" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tip" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Varovanie" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "automaticky vložiť dokumentačné reťazce z modulov" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "automaticky testovať kúsky kódu v blokoch dokumentačných reťazcov" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "prepojenie medzi dokumentáciou Sphinx rôznych modulov" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "písať položky „todo”, ktoré môžu byť zobrazené alebo skryté pri zostavení" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "zahrnúť math, spracované ako obrázky PNG alebo SVG" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "zahrnúť math, spracované prehliadačom pomocou MathJax" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "podmienečné zahrnutie obsahu na základe konfiguračných volieb" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "zahrnúť odkazy na zdrojový kód dokumentovaných objektov Python" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "vytvoriť súbor .nojekyll na publikovanie dokumentu na GitHub" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Prosím, zadajte platnú cestu." - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Prosím, zadajte nejaký text." - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "Prosím, zadajte jedno z 1%s." - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Prosím, zadajte buď 'y' alebo 'n'." - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Prosím, zadajte príponu súboru, napr. '.rst' alebo '.txt'." - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Vitajte v nástroji Sphinx %s quickstart." - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "Zvolená cesta koreňa: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Zadajte cestu koreňa tejto dokumentácie." - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Cesta koreňa dokumentácie" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Chyba: nájdený existujúci conf.py v zadanej ceste koreňa." - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart neprepíše existujúce projekty Sphinx." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Prosím, zadajte novú cestu koreňa (alebo len Enter na skončenie)" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Sú dve možnosti umiestnenia adresára zostavenia s výstupom Sphinx.\nMôžete použiť buď adresár „_build” v koreni alebo môžete mať oddelené\nadresáre „source” a „build” v ceste koreňa." +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Oddeliť zdrojový a výstupný adresár (y/n)" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "V koreňovom adresári budú vytvorená dva ďalšie adresáre; \"_templates\"\npre vlastné šablóny HTML a \"_static\" pre vlastné CSS a iné statické súbory\nMôžete zadať inú predponu (napr. „.”), ktorá nahradí podčiarkovník." +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Predpona mena adresárov templates a static" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:297 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"The project name will occur in several places in the built documentation." -msgstr "Meno projektu bude na viacerých miestach zostavenej dokumentácie." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Názov projektu" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Meno(á) autora(ov)" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:308 +#: transforms/i18n.py:275 +#, python-brace-format 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" -"just set both to the same value." -msgstr "Sphinx má predstavu o \"version\" a \"release\" softvéru. Každá\nverzia môže mať viacero vydaní. Napríklad, pre Python je verzia\nniečo ako 2.5 alebo 3.0, zatiaľčo vydanie je niečo ako 2.5.1\nalebo 3.0a1. Ak nepotrebuje dvojitú štruktúru, jednoducho nastavte\noboje na rovnakú hodnotu." - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Verzia projektu" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Vydanie projektu" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "" -#: cmd/quickstart.py:323 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Ak má byť dokumentácia písaná v inom ako Anglickom jazyku,\nmôžete tu zvoliť jazyk pomocou jeho kódu. Sphinx bude potom\nprekladať text, ktorý generuje, do tohoto jazyka.\n\nZoznam podporovaných jazykov nájdete na\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Jazyk projektu" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:339 +#: transforms/i18n.py:347 +#, python-brace-format 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 "Prípona mena zdrojových súborov. Zvyčajne to je buď „.txt”\nalebo „.rst”. Len súbory s touto príponou sú považované za dokumenty." - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Prípona zdrojových súborov" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "Jeden dokument je špeciálny v tom, že je považovaný za vrcholový uzol\n„stromu obsahu”, čiže je to koreň hierarchickej štruktúry dokumentov.\nBežne to je „index”, ale ak je Váš „index” vlastnou šablónou, môžete\npoužiť aj iné meno súboru." +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Meno hlavného dokumentu (bez prípony)" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: cmd/quickstart.py:367 +#: transforms/__init__.py:258 #, python-format msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Chyba: nájdený existujúci hlavný súbor %s v zadanej ceste koreňa." - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart neprepíše existujúci súbor." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Prosím, zadajte nové meno súboru alebo premenujte existujúci súbor a stlačte Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Informuje, ktoré z nasledujúcich rozšírení Sphinx majú byť zapnuté:" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Pozor: imgmath a mathjax nemožno zapnúť naraz. výber imgmath bol zrušený." +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Súbory Makefile a príkazový súbor Windows môže byť pre Vás vygenerovaný\ntakže stačí spustiť napr. len `make html' namiesto priameho spúšťania sphinx-build." +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "Poznámka pod čiarou [%s] nie je odkazovaná." -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Vytvoriť Makefile? (y/n)" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Vytvoriť príkazový súbor Windows? (y/n) " +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Poznámka pod čiarou [#] nie je odkazovaná." -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: util/inventory.py:147 #, python-format -msgid "Creating file %s." -msgstr "Vytváranie súboru %s." +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/inventory.py:166 #, python-format -msgid "File %s already exists, skipping." -msgstr "Súbor %s už existuje, preskočené." +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Dokončené: Počiatočná štruktúra adresára bola vytvorená." +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "chyba čítania: %s, %s" -#: cmd/quickstart.py:519 +#: util/i18n.py:113 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Teraz môže vyplniť svoj hlavný súbor %s a vytvoriť ostatné zdrojové súbory\ndokumentácie. " +msgid "writing error: %s, %s" +msgstr "chyba zápisu: %s: %s" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Na zostavenie dokumentácie použite Makefile, napr.:\n make builder" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:530 +#: util/i18n.py:244 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Na zostavenie dokumentácie použite príkaz sphinx-build, napr.:\n sphinx-build -b builder %s %s" +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:537 +#: util/i18n.py:253 +#, python-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "kde „builder” je jeden z podporovaných formátov, napr. html, latex alebo linkcheck." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Neplatný formát dátumu. Použije jednoduché úvodzovky, ak ho chcete priamo vo výstupe: %s" -#: cmd/quickstart.py:572 +#: util/osutil.py:131 +#, python-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nGenereuje požadované súbory projektu Sphinx.\n\nsphinx-quickstart je interaktívny nástroj, ktorý kladie niekoľko otázok o Vašom\nprojekte a potom generuje kompletný adresár dokumentácie a vzorový\nMakefile, na použitie so sphinx-build.\n" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "tichý režim" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "koreň projektu" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Voľby štruktúry" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "ak je zadané, oddeliť zdrojový a výstupný adresár" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "ak je zadané, vytvoriť výstupný adresár v zdrojovom" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "náhrada za bodku v _templates apod." - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Základné voľby projektu" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "názov projektu" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "mená autorov" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "verzia projektu" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "vydanie projektu" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "jazyk dokumentácie" +#: util/display.py:82 +msgid "skipped" +msgstr "preskočené" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "prípona zdrojových súborov" +#: util/display.py:87 +msgid "failed" +msgstr "zlyhalo" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "meno hlavného dokumentu" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "použiť epub" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Voľby rozšírenia" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "neznámy typ uzla: %r" -#: cmd/quickstart.py:670 +#: util/fileutil.py:76 #, python-format -msgid "enable %s extension" -msgstr "zapnúť rozšírenie %s" +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "zapnúť konkrétne rozšírenia" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Vytvorenie Makefile a Batchfile" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "vytvoriť makefile" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "predvolená rola %s nenájdená" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "nevytvoriť makefile" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "vytvoriť batchfile" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "strom obsahu obsahuje neexistujúci súbor %r" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "nevytvoriť batchfile" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "použiť režim make pre Makefile/make.bat" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "pokračovanie z predošlej strany" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Šablóny projektu" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "pokračuje na ďalšej strane" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "adresár šablóny pre súbory šablóny" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "definovať premennú šablóny" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Symboly" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "bolo zadané „quiet”, ale nebol zadaný „project” alebo „author”." +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Čísla" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Chyba: zadaná cesta nie je adresár alebo súbory sphinx už existujú." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "strana" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart generuje len do prázdneho adresára. Prosím, zadajte novú cestu koreňa." +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Vydanie" -#: cmd/quickstart.py:809 +#: transforms/post_transforms/images.py:79 #, python-format -msgid "Invalid template variable: %s" -msgstr "Neplatná premenná šablóny: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "počet úloh musí byť kladné číslo" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nGeneruje dokumentáciu zo zdrojových súborov.\n\nsphinx-build generuje dokumentáciu zo súborov v SOURCEDIR a umiestni ju\nv OUTPUTDIR. Konfiguračné voľby hľadá v 'conf.py' v SOURCEDIR.\nNa generovanie súborov šablón, vrátane 'conf.py' možno použiť nástroj\n'sphinx-quickstart'\n\nsphinx-build dokáže vytvoriť dokumentáciu v rôznych formátoch. Formát je\nzvolený zadaním mena zostavovača v príkazovom riadku; predvolene\nHTML. Zostavovače môžu vykonávať aj iné úlohy, ktoré súvisia so spracovaním\ndokuemntácie.\n\nPredvolene je zostavené všetko, čo bolo zmenené. Výstup len zvolených súborov\nmôže byť zostavený zadaním jednotlivých mien súborov.\n" +msgid "Could not fetch remote image: %s [%s]" +msgstr "Nemožno získať vzdialený obrázok: %s [%s]" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "cesta k zdrojovým súborom dokumentácie" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "Nemožno získať vzdialený obrázok: %s [%d]" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "cesta k výstupnej zložke" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Neznámy formát obrázku: %s..." -#: cmd/build.py:109 +#: transforms/post_transforms/__init__.py:88 msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "všeobecné voľby" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "viac ako jeden cieľ krížového odkazu %r: môže byť %s" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "zapísať všetky súbory (predvolene: zapísať len nové a zmenené súbory)" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r cieľ odkazu nenájdený: %s" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "nepoužívať uložené prostredie, vždy čítať všetky súbory" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Prerušené!" -#: cmd/build.py:150 -msgid "path options" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "prepíše nastavenie konfiguračného súboru" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "pošle hodnotu do šablón HTML" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "voľby výstupu konzoly" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Prosím, nahláste to, i keď to bola chyba používateľa, aby mohla byť nabudúce poskytnutá lepšia chybová správa." -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "zvýšiť rozvláčnosť (možno opakovať)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Zbaliť bočný panel" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "žiadny výstup, len upozornenia na stderr" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigácia" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "vôbec žiadny výstup, ani upozornenia" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Hľadať v %(docstitle)s" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "generovať farebný výstup (predvolene: automaticky detegovať)" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "O dokumentácii" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "negenerovať farebný výstup (predvolene: automaticky detegovať)" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Hľadať" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Autorské právo" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "zapísať varovania (a chyby) do zadaného súboru" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Naposledy aktualizované %(last_updated)s." -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "prepnúť upozornenia na chyby" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Vytvorené pomocou Sphinx %(sphinx_version)s." -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "pri výnimke zobraziť úplné chybové hlásenie" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Predošlá téma" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "pri výnimke spustiť Pdb" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "predošlá kapitola" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Ďalšia téma" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "nemožno kombinovať voľbu -a a mená súborov" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "ďalšia kapitola" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Index – %(key)s" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "argument voľby -D musí byť v tvare meno=hodnota" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "argument voľby -A musí byť v tvare meno=hodnota" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Celý index na jednej strane" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Zbaliť bočný panel" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Táto stránka" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Obsah" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Zobraziť zdroj" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Hľadať" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Rýchle hľadanie" #: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 #: themes/basic/searchfield.html:12 msgid "Go" msgstr "OK" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Zobraziť zdroj" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Obsah" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Hľadať v %(docstitle)s" - #: themes/basic/defindex.html:4 msgid "Overview" msgstr "Prehľad" @@ -2684,7 +2884,7 @@ msgstr "Celkový index modulov" msgid "quick access to all modules" msgstr "rýchly prístup ku všetkým modulom" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Všeobecný index" @@ -2692,23 +2892,15 @@ msgstr "Všeobecný index" msgid "all functions, classes, terms" msgstr "všetky funkcie, triedy, termíny" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Táto stránka" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Obsah" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Celý index na jednej strane" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Rýchle hľadanie" +msgid "Search %(docstitle)s" +msgstr "Hľadať v %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2718,57 +2910,6 @@ msgstr "Indexové stránky po písmenách" msgid "can be huge" msgstr "môže byť rozsiahle" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Predošlá téma" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "predošlá kapitola" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Ďalšia téma" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "ďalšia kapitola" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigácia" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Hľadať v %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "O dokumentácii" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Autorské právo" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Naposledy aktualizované %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Vytvorené pomocou Sphinx %(sphinx_version)s." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2785,21 +2926,21 @@ msgstr "Hľadanie viacerých slov vracia len zhody, ktoré obsahujú\n všetk msgid "search" msgstr "hľadať" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Skryť výsledky hľadania" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Obsah" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Výsledky hľadania" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Vášmu hľadaniu nezodpovedá žiadny dokument. Prosím, skontrolujte, že všetky zadané slová sú správne napísané a že ste zvolili vhodné kategórie." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2809,22 +2950,21 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Hľadanie" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Príprava hľadania..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", v " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Skryť výsledky hľadania" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2832,6 +2972,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Zmeny vo verzii %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2853,120 +2998,127 @@ msgstr "Ostatné zmeny" msgid "Expand sidebar" msgstr "Rozbaliť bočný panel" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametre" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Premenné" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Vyzdvihuje" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (v module %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (v module %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (zabudovaná premenná)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (zabudovaná trieda)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (trieda v %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (metóda triedy %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (statická metóda %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (vlastnosť %s)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Index modulov Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "moduly" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Zastarané" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "výnimka" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "metóda triedy" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statická metóda" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "vlastnosť" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "nájdený viac ako jeden cieľ krížového odkazu %r: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (zastarané)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametre" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Premenné" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Vyzdvihuje" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Duplicitná deklarácia C++, definovaná aj v %s:%s.\nDeklarácia je '.. cpp:%s:: %s'." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2977,92 +3129,85 @@ msgstr "Parametre šablóny" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Duplicitná deklarácia C++, definovaná aj v %s:%s.\nDeklarácia je '.. cpp:%s:: %s'." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "člen" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "typ" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "koncept" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerátor" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "parameter funkcie" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "parameter šablóny" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "Duplicitná deklarácia C, definovaná aj v %s:%s.\nDeklarácia je '.. c:%s:: %s'." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "premenná" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "premenná prostredia; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3157,514 +3302,422 @@ msgstr "" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "zistený cirkulárny odkaz stromu obsahu, ignorované: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "strom obsahu obsahuje odkaz na dokument %r, ktorý nemá názov, odkaz nebude generovaný" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "viď %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "viď aj %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "neznámy typ položky indexu %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Symboly" - -#: environment/collectors/asset.py:98 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "image file not readable: %s" -msgstr "súbor obrázku nemožno čítať: %s" +msgid "invalid value set (missing closing brace): %s" +msgstr "neplatná hodnota množiny (chýba koncová zátvorka): %s" -#: environment/collectors/asset.py:126 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "image file %s not readable: %s" -msgstr " Súbor obrázku %s nemožno čítať: %s" +msgid "invalid value set (missing opening brace): %s" +msgstr "neplatná hodnota množiny (chýba začiatočná zátvorka): %s" -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "súbor na stiahnutie nemožno čítať: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "neplatná textová konštanta (chýba koncová úvodzovka): %s" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s už je priradené číslo sekcie (vnorený číslovaný strom obsahu?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Prerušené!" +msgid "malformed string literal (missing opening quote): %s" +msgstr "neplatná textová konštanta (chýba začiatočná úvodzovka): %s" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Príklad" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Príklady" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumenty kľúčových slov" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Poznámky" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Ostatné parametre" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Prosím, nahláste to, i keď to bola chyba používateľa, aby mohla byť nabudúce poskytnutá lepšia chybová správa." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Varovania" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "viac ako jeden cieľ krížového odkazu %r: môže byť %s" - -#: transforms/post_transforms/__init__.py:299 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "A mocked object is detected: %r" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r cieľ odkazu nenájdený: %s" +msgid "alias of %s" +msgstr "alias pre %s" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "Nemožno získať vzdialený obrázok: %s [%s]" +msgid "Bases: %s" +msgstr "Základ: %s" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "Nemožno získať vzdialený obrázok: %s [%d]" +msgid "invalid value for member-order option: %s" +msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Unknown image format: %s..." -msgstr "Neznámy formát obrázku: %s..." +msgid "invalid value for class-doc-from option: %s" +msgstr "" -#: builders/html/__init__.py:113 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Stránky HTML sú v %(outdir)s." +msgid "invalid signature for auto%s (%r)" +msgstr "" -#: builders/html/__init__.py:348 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "Failed to read build info file: %r" -msgstr "Čítanie súboru zostavenia info zlyhalo: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:383 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "„::” v automodule nedáva zmysel" -#: builders/html/__init__.py:560 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Logo of %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "ďalší" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "predošlý" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "generovanie indexov" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "zapisovanie dodatočných stránok" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "cesta k dokumentovanému modulu" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "kopírovanie súborov na stiahnutie…" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "adresár umiestnenia výstupu" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "nemožno kopírovať súbor na stiahnutie %r: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "maximálna hĺbka submodulov, ktorá má byť zobrazená v obsahu (predvolene: 4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "prepísať existujúce súbory" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "Kopírovanie súboru v html_static_file zlyhalo: %s: %r" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "nasledovať symbolické odkazy. Vhodné v kombinácii s collective.recipe.omelette." -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "kopírovanie statických súborov" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "spustí skript bez vytvorenia súborov" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "nemožno kopírovať statický súbor %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "umiestniť dokumentáciu každého modulu vo vlastnej stránke" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "kopírovanie extra súborov" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "zahrnúť ”_súkromné” moduly" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "nemožno kopírovať extra súbor %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "meno súboru obsahu (predvolene: modules)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "Zápis súboru zostavenia info zlyhal: %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "nevytvárať súbor obsahu" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "index hľadania nemožno načítať, ale nebudú zostavované všetky dokumenty, takže index nebude kompletný." +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "stránka %s vyhovuje dvom vzorom v html_sidebars: %r a %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "vložiť dokumentáciu modulu pred dokumentáciou submodulu" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "pri spracovaní stránky %s nastala chyba Unicode. Prosím, zaistite, že všetky konfiguračné hodnoty, ktoré obsahujú nieASCII hodnotu sú reťazce Unicode." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "interpretovať cesty modulov v zmysle implicitnej špecifikácie menných priestorov PEP-0420" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Nastala chyba pri spracovaní stránky %s.\nPríčina: %r" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" + +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "prípona súboru (predvolene: rst)" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" + +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "generovať úplný projekt pomocou sphinx-quickstart" + +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "pripojiť module_path do sys.path, použité pri --full" + +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "meno projektu (predvolene: meno koreňového modulu)" + +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "autor(i) projektu, použité pri --full" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "generovanie inventára objektov…" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "verzia projektu, použité pri --full" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "generovanie indexu hľadania v %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "vydanie projektu, použité pri --full, predvolene --doc-version" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "neplatné js_file: %r, ignorované" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "voľby rozšírenia" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Zaregistrovaných je viac math_renderer, ale žiadny nie je zvolený." +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1346 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "Unknown math_renderer %r is given." -msgstr "Zdaný neznámy math_renderer %r." +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1360 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "položka html_extra_path %r je umiestnené vo vnútri výstupného adresára" +msgid "%s is not a directory." +msgstr "%s nie je adresár." -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "položka „html_extra_path entry” %r neexistuje" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "" -#: builders/html/__init__.py:1380 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "položka html_static_path %r je umiestnené vo vnútri výstupného adresára" +msgid "apidoc_modules item %i must be a dict" +msgstr "" -#: builders/html/__init__.py:1385 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "položka „html_static_path” %r neexistuje" +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "logo file %r does not exist" -msgstr "súbor loga %r neexistuje" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: builders/html/__init__.py:1407 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "favicon file %r does not exist" -msgstr "súbor favicon %r neexistuje" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/apidoc/_extension.py:140 +#, python-format +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "%s %s documentation" -msgstr "Dokumentácia %s %s" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Súbory LaTeX sú v %(outdir)s." - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nSpustite v tomto adresári 'make' na ich spustenie pomocou (pdf)latex\n(použite tu 'make latexpdf' aby to bolo spustené automaticky)." - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "nebola nájdená konfiguračná voľba „latex_documents”; dokmenty nebudú zapísané" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "konfiguračná voľba „latex_documents” odkazuje na neznámy dokument %s" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Vydanie" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "kopírovanie podporných súborov Tex" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "kopírovanie dodatočných súborov" +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Neznámy konfiguračný kľúč: latex_elements[%r], ignorovaný." +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Neznáma voľba témy: latex_theme_options[%r], ignorovaná." - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/autosummary/generate.py:630 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/autosummary/generate.py:634 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r nemá nastavenia „theme”" +msgid "[autosummary] writing to %s" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/autosummary/generate.py:679 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "téma %r nemá nastavenie „1%s”" - -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "pokračovanie z predošlej strany" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "pokračuje na ďalšej strane" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Čísla" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "strana" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argumenty kľúčových slov" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "adresár umiestnenia výstupu" -#: ext/napoleon/docstring.py:176 +#: ext/autosummary/generate.py:915 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "neplatná hodnota množiny (chýba koncová zátvorka): %s" +msgid "default suffix for files (default: %(default)s)" +msgstr "predvolená prípona súboru (predvolene: %(default)s)" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:923 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "neplatná hodnota množiny (chýba začiatočná zátvorka): %s" +msgid "custom template directory (default: %(default)s)" +msgstr "vlastný adresár šablón (predvolene: %(default)s)" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:931 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "neplatná textová konštanta (chýba koncová úvodzovka): %s" +msgid "document imported members (default: %(default)s)" +msgstr "dokumentovať importovaných členov (predvolene: %(default)s)" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:940 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "neplatná textová konštanta (chýba začiatočná úvodzovka): %s" - -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Príklad" - -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Príklady" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Poznámky" - -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Ostatné parametre" - -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "" - -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "" - -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Varovania" - -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "Autosummary s popiskom vyžaduje voľbu :toctree: , ignorované." -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3672,548 +3725,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "zlyhalo spracovanie mena %s" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "zlyhal import objektu %s" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: súbor nenájdený: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" + +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" + +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" + +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:588 -#, python-format -msgid "[autosummary] generating autosummary for: %s" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "[autosummary] writing to %s" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:324 msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "nastali problémy s niektorými inventármi, ale boli nájdené funkčné alternatívy:" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "adresár umiestnenia výstupu" - -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "predvolená prípona súboru (predvolene: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "inventár intersphinx bol presunutý: %s -> %s" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "vlastný adresár šablón (predvolene: %(default)s)" +msgid "(in %s %s)" +msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "dokumentovať importovaných členov (predvolene: %(default)s)" +msgid "(in %s)" +msgstr "(v %s)" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Failed to remove %s: %s" +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "cesta k dokumentovanému modulu" - -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "adresár umiestnenia výstupu" - -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "maximálna hĺbka submodulov, ktorá má byť zobrazená v obsahu (predvolene: 4)" - -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "prepísať existujúce súbory" - -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "nasledovať symbolické odkazy. Vhodné v kombinácii s collective.recipe.omelette." - -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "spustí skript bez vytvorenia súborov" - -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "umiestniť dokumentáciu každého modulu vo vlastnej stránke" - -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "zahrnúť ”_súkromné” moduly" - -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "meno súboru obsahu (predvolene: modules)" - -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "nevytvárať súbor obsahu" - -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "vložiť dokumentáciu modulu pred dokumentáciou submodulu" - -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "interpretovať cesty modulov v zmysle implicitnej špecifikácie menných priestorov PEP-0420" - -#: ext/apidoc/_cli.py:160 -msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "prípona súboru (predvolene: rst)" - -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "generovať úplný projekt pomocou sphinx-quickstart" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "pripojiť module_path do sys.path, použité pri --full" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "meno projektu (predvolene: meno koreňového modulu)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "autor(i) projektu, použité pri --full" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "verzia projektu, použité pri --full" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "Neplatné __slots__ nájdené v %s. Ignorované." -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "vydanie projektu, použité pri --full, predvolene --doc-version" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "chyba formátovania argumentov %s: %s" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "voľby rozšírenia" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "%s is not a directory." -msgstr "%s nie je adresár." +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Zlyhalo spracovanie predvolenej hodnoty argumentu %r: %s" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ má byť zoznam reťazcov, nie %r (v module %s) -- ignorované __all__" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" -msgstr "" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "chýbajúci atribút spomenutý vo voľbe :members: : modul %s, atribút %s" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +msgid "missing attribute %s in object %s" +msgstr "chýba atribút %s objektu %s" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "alias of TypeVar(%s)" +msgstr "alias pre TypeVar(%s)" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:114 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "Stránky HTML sú v %(outdir)s." -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:337 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to read build info file: %r" +msgstr "Čítanie súboru zostavenia info zlyhalo: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:549 #, python-format -msgid "Would create file %s." +msgid "Logo of %s" msgstr "" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(v %s v%s)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "ďalší" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "(v %s)" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "predošlý" -#: ext/intersphinx/_resolve.py:108 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "generovanie indexov" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "zapisovanie dodatočných stránok" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "kopírovanie súborov na stiahnutie…" + +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "nemožno kopírovať súbor na stiahnutie %r: %s" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Kopírovanie súboru v html_static_file zlyhalo: %s: %r" + +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "kopírovanie statických súborov" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "nemožno kopírovať statický súbor %r" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "kopírovanie extra súborov" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "nemožno kopírovať extra súbor %r" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "Zápis súboru zostavenia info zlyhal: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "index hľadania nemožno načítať, ale nebudú zostavované všetky dokumenty, takže index nebude kompletný." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "stránka %s vyhovuje dvom vzorom v html_sidebars: %r a %r" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "pri spracovaní stránky %s nastala chyba Unicode. Prosím, zaistite, že všetky konfiguračné hodnoty, ktoré obsahujú nieASCII hodnotu sú reťazce Unicode." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Nastala chyba pri spracovaní stránky %s.\nPríčina: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "generovanie inventára objektov…" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "generovanie indexu hľadania v %s" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "neplatné js_file: %r, ignorované" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "nastali problémy s niektorými inventármi, ale boli nájdené funkčné alternatívy:" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Zaregistrovaných je viac math_renderer, ale žiadny nie je zvolený." -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "nemožno získať žiadne inventáre kvôli týmto problémom:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "Zdaný neznámy math_renderer %r." -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "inventár intersphinx bol presunutý: %s -> %s" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "položka html_extra_path %r je umiestnené vo vnútri výstupného adresára" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1370 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "položka „html_extra_path entry” %r neexistuje" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "položka html_static_path %r je umiestnené vo vnútri výstupného adresára" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "" +msgid "html_static_path entry %r does not exist" +msgstr "položka „html_static_path” %r neexistuje" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "chyba formátovania argumentov %s: %s" +msgid "logo file %r does not exist" +msgstr "súbor loga %r neexistuje" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "súbor favicon %r neexistuje" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "" +msgid "%s %s documentation" +msgstr "Dokumentácia %s %s" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:87 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r nemá nastavenia „theme”" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "„::” v automodule nedáva zmysel" +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "téma %r nemá nastavenie „1%s”" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ má byť zoznam reťazcov, nie %r (v module %s) -- ignorované __all__" +msgid "No footnote was found for given reference node %r" +msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Súbory LaTeX sú v %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "chýbajúci atribút spomenutý vo voľbe :members: : modul %s, atribút %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nSpustite v tomto adresári 'make' na ich spustenie pomocou (pdf)latex\n(použite tu 'make latexpdf' aby to bolo spustené automaticky)." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "nebola nájdená konfiguračná voľba „latex_documents”; dokmenty nebudú zapísané" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "konfiguračná voľba „latex_documents” odkazuje na neznámy dokument %s" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "kopírovanie podporných súborov Tex" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "kopírovanie dodatočných súborov" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Neznámy konfiguračný kľúč: latex_elements[%r], ignorovaný." -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" -msgstr "Základ: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Neznáma voľba témy: latex_theme_options[%r], ignorovaná." -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" -msgstr "chýba atribút %s objektu %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s už je priradené číslo sekcie (vnorený číslovaný strom obsahu?)" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" -msgstr "alias pre %s" +msgid "image file not readable: %s" +msgstr "súbor obrázku nemožno čítať: %s" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "alias pre TypeVar(%s)" +msgid "image file %s not readable: %s" +msgstr " Súbor obrázku %s nemožno čítať: %s" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "" +msgid "download file not readable: %s" +msgstr "súbor na stiahnutie nemožno čítať: %s" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "Neplatné __slots__ nájdené v %s. Ignorované." +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "zistený cirkulárny odkaz stromu obsahu, ignorované: %s <- %s" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "Zlyhalo spracovanie predvolenej hodnoty argumentu %r: %s" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "strom obsahu obsahuje odkaz na dokument %r, ktorý nemá názov, odkaz nebude generovaný" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" + +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "viď %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "viď aj %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "neznámy typ položky indexu %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sl/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sl/LC_MESSAGES/sphinx.mo index eff8e4c8e0b4397867c9f3eae219e3faacb1c7ff..aa91f9496770037ed69cc7535e7ef4f18d43574f 100644 GIT binary patch delta 24 gcmcbnbxmu-A|7r-BV7YS1w%6{LzB&Gc~)`&0B4N{o&W#< delta 24 gcmcbnbxmu-A|7r7BV9ua1p@;sW8=+hc~)`&0B5ELp8x;= diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sl/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/sl/LC_MESSAGES/sphinx.po index 212e0eb46..61a68fa5b 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/sl/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/sl/LC_MESSAGES/sphinx.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Slovenian (http://app.transifex.com/sphinx-doc/sphinx-1/language/sl/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: sl\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,468 +536,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Pozor" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Previdno" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Nevarno" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Napaka" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Nasvet" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Pomembno" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Opomba" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Poglej Tudi" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Nasvet" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Opozorilo" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (v " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:594 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:342 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:536 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:545 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:556 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Vgrajeni deli" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Nivo modula" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -738,9 +1174,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,949 +1327,995 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Avtor sekcije: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Avtor modula: " - -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " -msgstr "Avtor: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Vgrajeni deli" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Nivo modula" - -#: builders/changes.py:124 -msgid "copying source files..." +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:133 +#: domains/citation.py:75 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/citation.py:92 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" - -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" - -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/manpage.py:71 +#: domains/math.py:73 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/__init__.py:224 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:183 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +msgid "%s() (built-in function)" +msgstr "%s() (vgrajene funkcije)" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metoda)" -#: builders/__init__.py:275 +#: domains/javascript.py:186 #, python-format -msgid "all of %d po files" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (razred)" -#: builders/__init__.py:297 +#: domains/javascript.py:188 #, python-format -msgid "targets for %d po files that are specified" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s atribut)" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Vrne" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Vrne tip" -#: builders/__init__.py:361 +#: domains/javascript.py:374 #, python-format -msgid "%d source files given on command line" +msgid "%s (module)" +msgstr "%s (modul)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funkcija" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "razred" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribut" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" + +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "Changed in version %s" +msgstr "Spremenjeno v verziji %s" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "Deprecated since version %s" +msgstr "Zastarelo od verzije %s" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "" - -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (v " - -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b, %Y" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:340 +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 "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:350 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: util/nodes.py:706 +#: cmd/quickstart.py:671 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "enable %s extension" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/rst.py:73 +#: cmd/quickstart.py:810 #, python-format -msgid "default role %s not found" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:166 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Opombe" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/other.py:169 #, python-format -msgid "[image: %s]" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[slika]" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Avtor sekcije: " -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Abecedni seznam" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Avtor modula: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Avtor: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" + +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" +msgstr "" + +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:216 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:231 #, python-format -msgid "no Babel option known for language %r" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:276 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: writers/latex.py:1183 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Abecedni seznam" + +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Opombe" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[slika]" + #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" msgstr "" @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,795 +2363,479 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (vgrajene funkcije)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metoda)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (razred)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:616 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s atribut)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Vrne" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Vrne tip" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funkcija" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "razred" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribut" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" - -#: domains/javascript.py:454 +#: writers/latex.py:1228 #, python-format -msgid "duplicate %s description of %s, other %s in %s" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/changeset.py:26 +#: writers/latex.py:1615 #, python-format -msgid "Added in version %s" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Spremenjeno v verziji %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Zastarelo od verzije %s" - -#: domains/changeset.py:29 +#: writers/latex.py:1950 #, python-format -msgid "Removed in version %s" +msgid "unknown index entry type %s found" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Pozor" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Previdno" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Nevarno" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Napaka" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Nasvet" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Pomembno" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Opomba" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Poglej Tudi" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Nasvet" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Opozorilo" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:133 +#: util/i18n.py:100 #, python-format -msgid "Please enter one of %s." +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:229 +#: util/i18n.py:244 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:234 +#: util/i18n.py:253 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:241 +#: util/osutil.py:131 #, python-format -msgid "Selected root path: %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:286 +#: util/fileutil.py:76 +#, python-format msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:297 +#: util/docfields.py:103 +#, python-format msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:308 +#: util/nodes.py:462 +#, python-format 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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "nadaljevanje iz prejšnje strani" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Izdaja" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:406 +#: transforms/post_transforms/__init__.py:88 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "Creating file %s." +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: transforms/post_transforms/__init__.py:291 #, python-format -msgid "File %s already exists, skipping." +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:572 +#: _cli/util/errors.py:207 msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigacija" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Išči med %(docstitle)s" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "O dokumentih" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Išči" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Vse pravice pridržane" -#: cmd/quickstart.py:637 -msgid "version of project" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Zadnjič posodobljeno %(last_updated)s." -#: cmd/quickstart.py:651 -msgid "document language" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Prejšnja tema" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "prejšnje poglavje" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Naslednja tema" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "naslednje poglavje" -#: cmd/quickstart.py:670 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "enable %s extension" +msgid "Index – %(key)s" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Poln indeks na eni strani" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Trenutna stran" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Prikaži izvorno kodo" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "" - -#: cmd/quickstart.py:809 -#, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "" - -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "" - -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "" - -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" - -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "" - -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" - -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Išči" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Hitro iskanje" #: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 #: themes/basic/searchfield.html:12 msgid "Go" msgstr "Potrdi" -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Prikaži izvorno kodo" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Išči %(docstitle)s" - #: themes/basic/defindex.html:4 msgid "Overview" msgstr "Pregled" @@ -2660,111 +2860,52 @@ msgstr "Kazalo in seznami:" msgid "Complete Table of Contents" msgstr "Popoln Seznam Vsebine" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "prikazi vse sekcije in podsekcije" - -#: domains/std/__init__.py:773 domains/std/__init__.py:786 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Iskalnik" - -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "išči po dokumentaciji" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Splošen seznam modulov" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "hiter dostop do vseh modulov" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Splošni abecedni seznam" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "vse funkcije, razredi, izrazi" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Trenutna stran" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Poln indeks na eni strani" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Hitro iskanje" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Indeksiraj strani po črki" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "lahko je veliko" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Prejšnja tema" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "prejšnje poglavje" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "prikazi vse sekcije in podsekcije" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Naslednja tema" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Iskalnik" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "naslednje poglavje" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "išči po dokumentaciji" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigacija" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Splošen seznam modulov" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Išči med %(docstitle)s" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "hiter dostop do vseh modulov" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "O dokumentih" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Splošni abecedni seznam" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Vse pravice pridržane" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "vse funkcije, razredi, izrazi" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/layout.html:201 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Zadnjič posodobljeno %(last_updated)s." +msgid "Search %(docstitle)s" +msgstr "Išči %(docstitle)s" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Indeksiraj strani po črki" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "lahko je veliko" #: themes/basic/search.html:20 msgid "" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "išči" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Skrij resultate iskanja" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Rezultati Iskanja" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2806,22 +2947,21 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Skrij resultate iskanja" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2829,6 +2969,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2850,121 +2995,128 @@ msgstr "Ostale spremembe" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametri" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Sproži izjemo" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (v modulu %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (v modulu %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (vgrajene spremenljivke)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (vgrajen razred)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (razred v %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s statična metoda)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "Moduli" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Zastarelo" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "izjema" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "statična metoda" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (zastarelo)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametri" - -#: domains/python/_object.py:206 -msgid "Variables" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Sproži izjemo" - #: domains/cpp/__init__.py:159 msgid "Template Parameters" msgstr "" @@ -2974,92 +3126,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "član" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "tip" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "okoljska spremenljivka; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3088,580 +3233,488 @@ msgid "glossary seems to be misformatted, check indentation" msgstr "" #: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "okoljska spremenljivka" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Seznam modulov" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "okoljska spremenljivka" + +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Seznam modulov" + +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1138 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1153 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1157 #, python-format -msgid "%r reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1453 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "abecedni seznam" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "naprej" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "nazaj" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Izdaja" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "nadaljevanje iz prejšnje strani" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3669,548 +3722,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "abecedni seznam" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "naprej" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "nazaj" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sphinx.pot b/addons/source-python/packages/site-packages/sphinx/locale/sphinx.pot index 82e9de894..e8e5825e9 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/sphinx.pot +++ b/addons/source-python/packages/site-packages/sphinx/locale/sphinx.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: Sphinx 8.2.0\n" +"Project-Id-Version: Sphinx 9.0.4\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 18:26+0000\n" +"POT-Creation-Date: 2025-12-04 06:45+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,6 +17,127 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.17.0\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes" +" are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -31,127 +152,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with" " this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as " "errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -159,12 +307,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -172,83 +320,215 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it" +" should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called " "sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,475 +536,638 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a " "list of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but " "`{current}` is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep " "pre-2.0 behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes" -" are: %s" +"This environment is incompatible with the selected builder, please choose" +" another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it" -" should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "" +"conf value \"epub_language\" (or \"language\") should not be empty for " +"EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "" +"conf value \"epub_title\" (or \"html_title\") should not be empty for " +"EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "" +"conf value \"epub_copyright\" (or \"copyright\")should not be empty for " +"EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the " -"imgmath_%s setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a " +"different location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from" +" conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not " +"included in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document " +"must be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format msgid "module %s could not be imported: %s" msgstr "" @@ -736,9 +1179,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -773,6 +1217,33 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,950 +1333,1003 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the " +"imgmath_%s setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "inline latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:216 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:231 +#: ext/doctest.py:297 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:451 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:568 #, python-format -msgid "Object named %r not found in include file %r" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/code.py:314 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path" -" as a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 -#, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "" - -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "" - -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a " -"different location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from" -" conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not " -"included in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document " -"must be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults " +"to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for " +"selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is" +" specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 +#: cmd/build.py:131 msgid "" -"conf value \"epub_language\" (or \"language\") should not be empty for " -"EPUB3" +"run in parallel with N processes, when possible. 'auto' uses the number " +"of CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "" -"conf value \"epub_title\" (or \"html_title\") should not be empty for " -"EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: " +"OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "" -"conf value \"epub_copyright\" (or \"copyright\")should not be empty for " -"EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/texinfo.py:230 +#: cmd/build.py:357 #, python-format -msgid "error writing file Makefile: %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:134 +#, python-format +msgid "Please enter one of %s." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:242 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent references in translated message. original: {0}, translated:" -" {1}" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you " +"separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:287 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"Inside the root directory, two more directories will be created; " +"\"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and " +"other static\n" +"files. You can enter another prefix (such as \".\") to replace the " +"underscore." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:298 +msgid "The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: transforms/__init__.py:253 -#, python-format -msgid "4 column based index found. It might be a bug of extensions you use: %r" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-" +"language." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:340 +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 "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:368 +#, python-format msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +"Error: the master file %s has already been found in the selected root " +"path." msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:378 +msgid "Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has" +" been deselected." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that " +"you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other " +"documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about " +"your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose" -" another doctree directory." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to " -"output it directly: %s" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role " -"is not in the domain." +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' " -"instead." +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/nodes.py:706 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "enable %s extension" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/osutil.py:131 -#, python-format +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"\"quiet\" is specified, but any of \"project\" or \"author\" is not " +"specified." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:786 +msgid "Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a " +"new root path." msgstr "" -#: util/docutils.py:789 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown node type: %r" +msgid "Invalid template variable: %s" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:119 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination " -"path has existing data)." +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:156 #, python-format -msgid "default role %s not found" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:169 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 -msgid "encountered title node not in section, topic, table, admonition or sidebar" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path" +" as a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:87 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "Invalid caption: %s" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "no Babel option known for language %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:231 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:276 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:1183 -msgid "both tabularcolumns and :widths: option are given. :widths: is ignored." +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/latex.py:1580 +#: directives/code.py:314 #, python-format -msgid "dimension unit %s is invalid. Ignored." +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: writers/latex.py:1939 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "unknown index entry type %s found" +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/texinfo.py:1303 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "unimplemented node type: %r" +msgstr "" + +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1834,6 +2358,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1850,806 +2379,476 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this " +"table can not be rendered as a tabulary; the given colspec will be " +"ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated:" +" {1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to " +"output it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination " +"path has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role " +"is not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: " +"%s' instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you " -"separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a" +" bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; " -"\"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and " -"other static\n" -"files. You can enter another prefix (such as \".\") to replace the " -"underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-" -"language." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root " -"path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py" +" with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has" -" been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that " -"you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other " -"documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about " -"your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "" -"\"quiet\" is specified, but any of \"project\" or \"author\" is not " -"specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a " -"new root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults " -"to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for " -"selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is" -" specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number " -"of CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: " -"OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2697,7 +2896,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2705,22 +2904,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2731,57 +2922,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2798,42 +2938,41 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words " "are spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2842,6 +2981,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2863,119 +3007,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: " "for one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2987,92 +3138,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\"," @@ -3109,572 +3253,484 @@ msgid "grammar token" msgstr "" #: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no " -"link will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py" -" with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a" -" bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 ext/autodoc/_names.py:53 +#: ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the" -" index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all" -" config values that contain non-ASCII content are Unicode strings." +msgid "Would create file %s." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:28 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"\n" +"Look recursively in for Python modules and packages and " +"create\n" +"one reST file with automodule directives per package in the " +".\n" +"\n" +"The s can be file and/or directory patterns that will be" +"\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:50 +msgid "fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:135 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern" -" has a string value: %s. Change to `html_sidebars = %r`." +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected " -"in configuration options)" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following " +"exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It " +"generates\n" +"the reStructuredText files from the autosummary directives contained in " +"the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3682,555 +3738,587 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with " "%r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does " "not contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following " -"exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. " +"Project identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element " +"tuple or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target " +"URI, inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It " -"generates\n" -"the reStructuredText files from the autosummary directives contained in " -"the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had " +"working alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and " -"create\n" -"one reST file with automodule directives per package in the " -".\n" -"\n" -"The s can be file and/or directory patterns that will be" -"\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in" +" object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following " +"exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the" +" index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all" +" config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses " +"the 'style' field in HTML templates, which was was deprecated in Sphinx " +"5.1 and removed in Sphinx 7.0. The theme must be updated to use the " +"'styles' field instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. " -"Project identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element " -"tuple or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target " -"URI, inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern" +" has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had " -"working alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected " +"in configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following " -"exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no " +"link will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sq/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sq/LC_MESSAGES/sphinx.mo index 6a395cc6af0c0c8ccc7d262f5cad81cf29ceca80..5c1e09b0f73402c84095e42e32016567813771f0 100644 GIT binary patch delta 18649 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 A+yDRo delta 13888 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, 2021-2025 +# Rafael Fontenelle , 2025 msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 18:26+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Besnik Bleta , 2021-2025\n" "Language-Team: Albanian (http://app.transifex.com/sphinx-doc/sphinx-1/language/sq/)\n" @@ -19,6 +20,127 @@ msgstr "" "Language: sq\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "Cenueshmëri dhe Ekspozime të Rëndomta; CVE %s" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "numër CVE %s i pavlefshëm" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "Common Weakness Enumeration; CWE %s" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "numër CWE i pavlefshëm %s" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "numër PEP i pavlefshëm %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "numër RFC i pavlefshëm %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "Nuk mbulohen seksione formësimi teme të tjerë nga [theme] dhe [options] (u provua të merre një vlerë nga %r)." + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "rregullimi %s.%s nuk haset në asnjë prej formësimeve temash ku u kërkua" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "është dhënë mundësi teme %r e pambuluar" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "kartela %r te shteg teme s’është kartelë zip e vlefshme ose nuk përmban temë" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "s’u gjet temë e emërtuar %r (mungon theme.toml?)" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "Tema %r ka trashëgimi rrethore" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "Tema %r trashëgon nga %r, e cila s’është temë e ngarkuar. Temat e ngarkuara janë: %s" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "Tema %r ka shumë paraardhës" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "s’u gjet kartelë formësimi teme në %r" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "tema %r s’ka tabelën “theme”" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "Tabela “[theme]” e temës %r s’është tabelë" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "Tema %r duhet të përcaktojë rregullimin “theme.inherit”" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "Tablea “[options]” e temës %r s’është tabelë" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "Rregullimi “theme.pygments_style” duhet të jetë një tabelë. Ndihmëz: “%s”" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "për dokumentin “%s” u gjetën disa kartela: %s\nPërdorni %r për montimin." + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "U shpërfill dokument i palexueshëm %r." + #: extension.py:58 #, python-format msgid "" @@ -33,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Ky projekt lyp zgjerimin %s të paktën nën versionin %s dhe prandaj s’mund të montohet me versionin e ngarkuar (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "O nome do analisador léxico de Pygments %r não é conhecido" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "A sintaxe literal_block %r foi \"%s\" e resultou em um erro no token: %r. Tentando novamente em modo relaxado." + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Vlerë formësimi %r e pranishme tashmë" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Emër i panjohur akti: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "Trajtuesi %r për aktin %r u përgjigj me një përjashtim" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "S’gjendet dot drejtori burim (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "Drejtoria e përfundimeve (%s) s’është drejtori" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Drejtoria burim dhe drejtoria vendmbërritje s’mund të jenë identike" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Po xhirohet Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Ky projekt lyp të paktën Sphinx v%s, ndaj s’mund të montohet me këtë version." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "po krijohet drejtori përfundimesh" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "teksa ujdiset zgjerimi %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "'setup' siç është përcaktuar aktualisht te conf.py s’është funksion Python që mund të thirret. Ju lutemi, ndryshojeni përcaktimin e tij që ta bëni një funksion që mund të thirret. Kjo është e nevojshme që conf.py të sillet si një zgjerim Sphinx." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "po ngarkohen përkthime [%s]… " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "u bë" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "s’është i passhëm për mesazhe të brendshëm" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" -msgstr "" +msgstr "carregando ambiente serializado com pickle" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "dështoi: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "S’u përzgjodh montues, po përdoret parazgjedhja: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "montimi përfundoi me probleme." -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "montimi doli me sukses." -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "montimi përfundoi me probleme, 1 sinjalizim (me sinjalizimet të trajtuara si gabime)." -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "montimi përfundoi me probleme, 1 sinjalizim." -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "montimi doli me sukses, 1 sinjalizim." -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "montimi përfundoi me probleme, %s sinjalizime (me sinjalizimet e trajtuara si gabime)." -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "montimi përfundoi me probleme, %s sinjalizime." -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "montimi doli me sukses, %s sinjalizime." -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "klasa %r e nyjeve është e regjistruar tashmë, vizitorët e saj do të anashkalohen" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "direktiva %r është tashmë e regjistruar dhe s’do të anashkalohet" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "roli %r është tashmë i regjistruar dhe s’do të anashkalohet" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +310,12 @@ msgid "" "explicit" msgstr "zgjerimi %s nuk deklaron nëse është i parrezik për lexim paralel, po merret se s’është - ju lutemi, kërkojini autorin të zgjerimit ta kontrollojë dhe ta bëjë këtë shprehimisht" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "zgjerimi %s s’është i sigurt për lexim paralel" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +323,214 @@ msgid "" "explicit" msgstr "zgjerimi %s nuk deklaron nëse është i parrezik për shkrim paralel, po merret se s’është - ju lutemi, kërkojini autorin të zgjerimit ta kontrollojë dhe ta bëjë këtë shprehimisht" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "zgjerimi %s s’është i sigurt për shkrim paralel" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" -msgstr "" +msgstr "fazer %s serial" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "drejtoria e formësimeve nuk përmban një kartelë conf.py (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Klasa %s e montuesit nuk ka atribut \"name\"" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Montuesi %r ekziston tashmë (te moduli %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Emër %s montuesi jo i regjistruar ose i passhëm përmes pike hyrjeje" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Emër montuesi %s jo i regjistruar" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "përkatësi %s e regjistruar tashmë" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "përkatësi %s ende e paregjistruar" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "Direktiva %r është e regjistruar tashmë te përkatësia %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "Roli %r është i regjistruar tashmë te përkatësia %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "Treguesi %r është i regjistruar tashmë te përkatësia %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "object_type %r është i regjistruar tashmë" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "crossref_type %r është i regjistruar tashmë" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r është i regjistruar tashmë" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser për %r është i regjistruar tashmë" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Përtypës burimesh për %s jo i regjistruar" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Përkthyesi për %r ekziston tashmë" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwargs për add_node() duhet të jetë një çift funksioni (visit, depart): %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r tashmë i regjistruar" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "vizatuesi i formulave matematikore %s është i regjistruar tashmë" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "U gjet vlerë e pavlefshme formësimi: 'language = Asnjë'. Përditësojeni formësimin tuaj me një kod të vlefshëm gjuhe. Përkohësisht po përdoret 'en' (anglisht)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "zgjerimi %r qe shkrirë me Sphinx-in që me versionin %s; ky zgjerim është shpërfillur." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Përjashtimi origjinal:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "S’u importua dot zgjerimi %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "zgjerimi %r s’ka funksion setup(); a është vërtet një modul zgjerimi Sphinx-i?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Zgjerimi %s i përdorur nga ky projekt lyp të paktën Sphinx v%s; prandaj s’mund të montohet me këtë version." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "zgjerimi %r u përgjigj me një objekt të pambuluar prej funksionit të vet setup(); duhet të përgjigjet me Asnjë ose një fjalorth tejtëdhënash" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "`None` s’është lloj i vlefshëm kartele për %r." + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "drejtoria e formësimeve nuk përmban një kartelë conf.py (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "“%s” duhet të jetë “0” ose “1”, u mora “%s”" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "s’mund të anashkalohet rregullim formësimi fjalorthi %r, po shpërfillet (për të ujdisur elemente individuale, përdorni %r)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "numër %r i pavlefshëm për vlerë formësimi %r, po shpërfillet" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "s’mund të anashkalohet rregullim formësimi %r me një lloj të pambuluar, po shpërfillet" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "vlerë e panjohur formësimi %r te anashkalimi, po shpërfillet" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "S’ka vlerë të tillë formësimi: %r" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Vlerë formësimi %r e pranishme tashmë" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" -msgstr "" +msgstr "não é possível armazenar em cache o valor de configuração não serializável com pickle: %r (porque ele contém um objeto de função, classe ou módulo)" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "U gjet vlerë e pavlefshme formësimi: 'language = Asnjë'. Përditësojeni formësimin tuaj me një kod të vlefshëm gjuhe. Përkohësisht po përdoret 'en' (anglisht)." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Ka një gabim sintakse te kartela juaj e formësimit: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Kartela e formësimit (ose një nga modulet që ajo importon) thirri sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,537 +538,722 @@ msgid "" "%s" msgstr "Ka një gabim të programueshëm te kartela juaj e formësimit:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "S’u arrit të shndërrohej %r në një grup të ngrirë" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "Po shndërrohet `source_suffix = %r` në `source_suffix = %r`." -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "Për vlerën e formësimit `source_suffix' pritet fjalor, varg, ose një listë vargjesh. Në vend të tyre u mor `%r' (lloji %s)." -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Ndarja %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Figura %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tabela %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" -msgstr "" +msgstr "Listando %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "Vlera e formësimit `{name}` duhet të jetë një nga {candidates}, por është dhënë `{current}`." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "Vlera e formësimit `{name}' është e llojit `{current.__name__}'; pritej {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "Vlera e formësimit `{name}' është e llojit `{current.__name__}', si parazgjedhje merr `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "s’u gjet primary_domain %r, po shpërfillet." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "Sphinx-i tanimë përdor “index” si dokumentin kryesor, si parazgjedhje. Që të mbahet sjellja e para-2.0, vini “master_doc = 'contents'”." -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "Mbulimi për kodim burimesh tjetër nga UTF-8 është nxjerrë nga përdorimi dhe do të hiqet me Sphinx 10. Ju lutemi, nëse kjo shkakton ndonjë problem, komentoni te https://github.com/sphinx-doc/sphinx/issues/13665." -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "Nuk mbulohen seksione formësimi teme të tjerë nga [theme] dhe [options] (u provua të merre një vlerë nga %r)." +#: environment/__init__.py:89 +msgid "new config" +msgstr "formësim i ri" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "rregullimi %s.%s nuk haset në asnjë prej formësimeve temash ku u kërkua" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "formësimi ndryshoi" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "është dhënë mundësi teme %r e pambuluar" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "zgjerimet u ndryshuan" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "kartela %r te shteg teme s’është kartelë zip e vlefshme ose nuk përmban temë" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "version jo i tanishëm i mjedisit të montimit" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "drejtoria burim ka ndryshuar" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "s’u gjet temë e emërtuar %r (mungon theme.toml?)" +msgid "The configuration has changed (1 option: %r)" +msgstr "Formësimi është ndryshuar (1 mundësi: %r)" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "Tema %r ka trashëgimi rrethore" +msgid "The configuration has changed (%d options: %s)" +msgstr "Formësimi është ndryshuar (%d mundësi: %s)" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "Formësimi është ndryshuar (%d mundësi: %s, …)" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "Tema %r trashëgon nga %r, e cila s’është temë e ngarkuar. Temat e ngarkuara janë: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Ky mjedis është i papërputhshëm me montuesin e përzgjedhur, ju lutemi, zgjidhni një tjetër drejtori doctree." -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "Tema %r ka shumë paraardhës" +msgid "Failed to scan documents in %s: %r" +msgstr "S’u arrit të skanohen dokumente te %s: %r" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" -msgstr "s’u gjet kartelë formësimi teme në %r" +msgid "Domain %r is not registered" +msgstr "Përkatësia %r s’është e regjistruar" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "tema %r s’ka tabelën “theme”" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "dokumenti s’është i përfshirë në ndonjë toctree" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "Tabela “[theme]” e temës %r s’është tabelë" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "U gjet “toctree” që i referohet vetes. U shpërfill." -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "Tema %r duhet të përcaktojë rregullimin “theme.inherit”" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "o documento é referenciado em várias árvores de tópicos: %s, selecionando: %s <- %s" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "Tablea “[options]” e temës %r s’është tabelë" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Vëmendje" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "Rregullimi “theme.pygments_style” duhet të jetë një tabelë. Ndihmëz: “%s”" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Kujdes" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Vlerë formësimi %r e pranishme tashmë" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Rrezik" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Emër i panjohur akti: %s" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Gabim" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "Trajtuesi %r për aktin %r u përgjigj me një përjashtim" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Ndihmëz" -#: project.py:72 +#: locale/__init__.py:234 +msgid "Important" +msgstr "E rëndësishme" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Shënim" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Shihni edhe" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Ndihmëz" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Sinjalizim" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Kartelat Texinfo gjenden në %(outdir)s." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "për dokumentin “%s” u gjetën disa kartela: %s\nPërdorni %r për montimin." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nXhironi 'make' te ajo drejtori, që të xhirohen këto përmes makeinfo-s\n(përdorni këtu 'make info' që kjo të kryhet automatikisht)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "U shpërfill dokument i palexueshëm %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "s’u gjet vlerë formësimi \"texinfo_documents\"; s’do të shkruhet ndonjë dokument" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Klasa %s e montuesit nuk ka atribut \"name\"" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "vlera e formësimit \"texinfo_documents\" i referohet një dokumenti të panjohur %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Montuesi %r ekziston tashmë (te moduli %s)" +msgid "processing %s" +msgstr "po përpunohet %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Emër %s montuesi jo i regjistruar ose i passhëm përmes pike hyrjeje" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "po shkruhet" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Emër montuesi %s jo i regjistruar" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "po shquhen referencat…" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "përkatësi %s e regjistruar tashmë" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (në " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "përkatësi %s ende e paregjistruar" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "po kopjohen figura… " -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "Direktiva %r është e regjistruar tashmë te përkatësia %s" +msgid "cannot copy image file %r: %s" +msgstr "s’kopjohet dot kartelë figure %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "Roli %r është i regjistruar tashmë te përkatësia %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "po kopjohen kartela mbulimi Texinfo" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "Treguesi %r është i regjistruar tashmë te përkatësia %s" +msgid "error writing file Makefile: %s" +msgstr "gabim në shkrim kartele Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "object_type %r është i regjistruar tashmë" +msgid "The manual pages are in %(outdir)s." +msgstr "Faqet e doracakut gjenden në %(outdir)s." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "crossref_type %r është i regjistruar tashmë" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "s’u gjet vlerë formësimi \"man_pages\"; s’do të shkruhet ndonjë faqe doracaku" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r është i regjistruar tashmë" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "vlera e formësimit \"man_pages\" i referohet një dokumenti të panjohur %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "source_parser për %r është i regjistruar tashmë" +msgid "The HTML page is in %(outdir)s." +msgstr "Faqja HTML gjenden në %(outdir)s." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "Përtypës burimesh për %s jo i regjistruar" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "po montohet dokument njësh" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Përkthyesi për %r ekziston tashmë" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "po shkruhen kartela shtesë" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "kwargs për add_node() duhet të jetë një çift funksioni (visit, depart): %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Montuesi provë nuk prodhon kartela." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r tashmë i regjistruar" +msgid "The message catalogs are in %(outdir)s." +msgstr "Katalogët e mesazheve gjenden te %(outdir)s." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "vizatuesi i formulave matematikore %s është i regjistruar tashmë" +msgid "building [%s]: " +msgstr "po montohet [%s]: " -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "zgjerimi %r qe shkrirë me Sphinx-in që me versionin %s; ky zgjerim është shpërfillur." +msgid "targets for %d template files" +msgstr "objektiva për kartela gjedhe %d" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Përjashtimi origjinal:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "po lexohen gjedhe… " -#: registry.py:545 +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "po shkruhen katalogë mesazhesh… " + +#: builders/linkcheck.py:87 #, python-format -msgid "Could not import extension %s" -msgstr "S’u importua dot zgjerimi %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Shihni për çfarëdo gabimesh te përfundimi më sipër ose te %(outdir)s/output.txt" -#: registry.py:552 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "zgjerimi %r s’ka funksion setup(); a është vërtet një modul zgjerimi Sphinx-i?" +msgid "broken link: %s (%s)" +msgstr "lidhje e dëmtuar: %s (%s)" -#: registry.py:565 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Zgjerimi %s i përdorur nga ky projekt lyp të paktën Sphinx v%s; prandaj s’mund të montohet me këtë version." +msgid "Anchor '%s' not found" +msgstr "S’u gjet spirancë '%s'" -#: registry.py:577 +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "linkcheck_allowed_redirects. Pritej një fjalor." + +#: builders/linkcheck.py:799 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "zgjerimi %r u përgjigj me një objekt të pambuluar prej funksionit të vet setup(); duhet të përgjigjet me Asnjë ose një fjalorth tejtëdhënash" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "S’u arrit të përpilohet shprehje e rregullt te linkcheck_allowed_redirects: %r %s" -#: registry.py:612 +#: builders/epub3.py:83 #, python-format -msgid "`None` is not a valid filetype for %r." -msgstr "`None` s’është lloj i vlefshëm kartele për %r." +msgid "The ePub file is in %(outdir)s." +msgstr "Kartela ePub gjendet te %(outdir)s." + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "po shkruhet kartelë nav.xhtml…" + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_language\" (ose \"language\") s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "vlera e formësimit \"epub_uid\" duhet të jetë XML NAME për EPUB3" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_title\" (ose \"html_title\") s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_author\" s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_contributor\" s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_description\" s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_publisher\" s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_copyright\" (ose \"copyright\") s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "vlera e formësimit \"epub_identifier\" s’duhet të jetë e zbrazët për EPUB3" -#: roles.py:206 +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "vlera e formësimit \"version\" s’duhet të jetë e zbrazët për EPUB3" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "Cenueshmëri dhe Ekspozime të Rëndomta; CVE %s" +msgid "invalid css_file: %r, ignored" +msgstr "css_file e pavlefshme: %r, u shpërfill" -#: roles.py:229 +#: builders/xml.py:29 #, python-format -msgid "invalid CVE number %s" -msgstr "numër CVE %s i pavlefshëm" +msgid "The XML files are in %(outdir)s." +msgstr "Kartelat XML gjenden në %(outdir)s." -#: roles.py:251 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "error writing file %s: %s" +msgstr "gabim në shkrim kartele %s: %s" -#: roles.py:274 +#: builders/xml.py:103 #, python-format -msgid "invalid CWE number %s" -msgstr "numër CWE i pavlefshëm %s" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Kartelat pseudo-XML gjenden në %(outdir)s." -#: roles.py:294 +#: builders/_epub_base.py:223 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +msgid "duplicated ToC entry found: %s" +msgstr "u gjet zë TeL i përsëdytur: %s" -#: roles.py:317 +#: builders/_epub_base.py:436 #, python-format -msgid "invalid PEP number %s" -msgstr "numër PEP i pavlefshëm %s" +msgid "cannot read image file %r: copying it instead" +msgstr "s’lexohet dot kartelë figure %r: në vend të tij, po kopjohet" -#: roles.py:355 +#: builders/_epub_base.py:467 #, python-format -msgid "invalid RFC number %s" -msgstr "numër RFC i pavlefshëm %s" +msgid "cannot write image file %r: %s" +msgstr "s’shkruhet dot kartelë figure %r: %s" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[burim]" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "S’u gjet Pillow - po kopjohen kartela figurë" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "po theksohet kod moduli… " +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "po shkruhet kartelë llojesh MIME…" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[dokumente]" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "po shkruhet kartelë META-INF/container.xml…" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Kod moduli" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "po shkruhet kartelë content.opf…" -#: ext/viewcode.py:353 +#: builders/_epub_base.py:594 #, python-format -msgid "

Source code for %s

" -msgstr "

Kod burim për %s

" - -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Përmbledhje: kod moduli" +msgid "unknown mimetype for %s, ignoring" +msgstr "lloj MIME i panjohur për %s, po shpërfillet" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Krejt modulet për të cilët ka kod të gatshëm

" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "nyja ka nivel të pavlefshëm" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "po shkruhet kartelë toc.ncx…" -#: ext/autosectionlabel.py:52 +#: builders/_epub_base.py:802 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "pjesa “%s” etiketohet si “%s”" +msgid "writing %s file..." +msgstr "po shkruhet kartelë %s…" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/text.py:27 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "etiketë %s e përsëdytur, tjetër instancë te %s" - -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "Lidhje për te ky ekuacion" - -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "=================== kohëzgjatjet më të ngadalta të leximit ===================" +msgid "The text files are in %(outdir)s." +msgstr "Kartelat tekst gjenden në %(outdir)s." -#: ext/doctest.py:118 +#: builders/__init__.py:229 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "mungon '+' ose '-' te mundësia '%s'." +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "s’u gjet figurë e përshtatshme për montuesin %s: %s (%s)" -#: ext/doctest.py:124 +#: builders/__init__.py:237 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' s’është mundësi e vlefshme." +msgid "a suitable image for %s builder not found: %s" +msgstr "s’u gjet figurë e përshtatshme për montuesin %s: %s" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' s’është mundësi pyversion e vlefshme" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "po montohet [mo]: " -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "lloj TestCode i pavlefshëm" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "po shkruhet përfundim… " -#: ext/doctest.py:297 +#: builders/__init__.py:280 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "Testimi i doctests-eve te burimet përfundoi, shihni te përfundimet në %(outdir)s/output.txt." +msgid "all of %d po files" +msgstr "krejt kartelat po %d" -#: ext/doctest.py:457 +#: builders/__init__.py:302 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "s’ka kod/dhënie te blloku %s në %s:%s" +msgid "targets for %d po files that are specified" +msgstr "objektiva për kartela po %d që janë specifikuar" -#: ext/doctest.py:568 +#: builders/__init__.py:314 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "po shpërfillet kod “doctest” i pavlefshëm: %r" +msgid "targets for %d po files that are out of date" +msgstr "objektiva për kartela po %d që janë të papërditësuara" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "krejt kartelat burim" -#: ext/imgmath.py:162 +#: builders/__init__.py:335 #, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "Urdhri LaTeX %r s’mund të xhirohet (i nevojshëm për shfaqje formulash matematikore), kontrolloni rregullimin imgmath_late" +msgid "file %r given on command line does not exist, " +msgstr "kartela %r, dhënë te rreshti i urdhrave, nuk ekziston, " -#: ext/imgmath.py:181 +#: builders/__init__.py:342 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "Urdhri %s %r s’mund të xhirohet (i nevojshëm për shfaqje formulash matematikore), kontrolloni rregullimin imgmath_%s" +"file %r given on command line is not under the source directory, ignoring" +msgstr "kartela %r e dhënë te rresht urdhrash s’gjendet te drejtori burim, po shpërfillet" -#: ext/imgmath.py:344 +#: builders/__init__.py:353 #, python-format -msgid "display latex %r: %s" -msgstr "shfaq latex %r: %s" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "kartela %r, dhënë te rreshti i urdhrave, s’është dokument i vlefshëm, po shpërfillet" -#: ext/imgmath.py:380 +#: builders/__init__.py:366 #, python-format -msgid "inline latex %r: %s" -msgstr "latex brendazi %r: %s" +msgid "%d source files given on command line" +msgstr "kartela burim %d dhënë te rresht urdhrash" -#: ext/coverage.py:48 +#: builders/__init__.py:382 #, python-format -msgid "invalid regex %r in %s" -msgstr "shprehje e rregullt e pavlefshme %r te %s" +msgid "targets for %d source files that are out of date" +msgstr "objektiva për kartela burim %d që janë të papërditësuara" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" -msgstr "moduli %s s’u importua dot: %s" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "po shihet për kartela të sapovjetruara… " -#: ext/coverage.py:148 +#: builders/__init__.py:415 #, python-format -msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" -msgstr "modulet vijues janë të dokumentuar, por s’qenë specifikuar në coverage_modules: %s" +msgid "%d found" +msgstr "U gjet %d" -#: ext/coverage.py:158 -msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" -msgstr "modulet vijues janë specifikuar te coverage_modules, por s’qenë dokumentuar" +#: builders/__init__.py:417 +msgid "none found" +msgstr "s’u gjet gjë" -#: ext/coverage.py:172 -#, python-brace-format, python-format -msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." -msgstr "Testimi i mbulimit te burimet përfundoi, shihni te përfundimet në %(outdir)s{sep}python.txt." +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" -#: ext/coverage.py:187 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "shprehje e rregullt %r e pavlefshme te coverage_c_regexes" +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "po kontrollohet njëtrajtshmëria" -#: ext/coverage.py:260 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "API C e padokumentuar: %s [%s] te kartela %s" +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "s’ka objektiva të vjetruar." -#: ext/coverage.py:452 -#, python-format -msgid "undocumented python function: %s :: %s" -msgstr "funksion python i padokumentuar: %s :: %s" +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "po përditësohet mjedisi: " -#: ext/coverage.py:473 +#: builders/__init__.py:499 #, python-format -msgid "undocumented python class: %s :: %s" -msgstr "klasë python e padokumentuar: %s :: %s" +msgid "%s added, %s changed, %s removed" +msgstr "%s të shtuar, %s të ndryshuar, %s të hequr" -#: ext/coverage.py:492 +#: builders/__init__.py:536 #, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "metodë python e padokumentuar: %s :: %s :: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s), ngaqë ka përkim me një rregullsi të brendshme përjashtimi %r. Ju lutemi, shpjereni dokumentin tuaj kryesor te një vendndodhje tjetër." -#: ext/imgconverter.py:44 +#: builders/__init__.py:545 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "S’arrihet të xhirohet urdhri %r. për shndërrim figure. Si parazgjedhje, 'sphinx.ext.imgconverter' lyp ImageMagick. Sigurohuni se është i instaluar, ose për mundësinë 'image_converter' caktoni një urdhër vetjak shndërrimi .\n\nTraceback: %s" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s), ngaqë ka përkim me një rregullsi përjashtimi të treguar në conf.py, %r. Ju lutemi, hiqeni rregullsinë nga conf.py." -#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#: builders/__init__.py:556 #, python-format msgid "" -"convert exited with error:\n" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s), ngaqë s’përfshihet në include_patterns = %r e përshtatur. Siguroni që një rregullsi te include_patterns të ketë përkim me dokumentin kryesor." + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s). Dokumenti kryesor duhet të gjendet brenda drejtorisë burim, ose një nëndrejtorie të saj." + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "po lexohen burime… " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "emra dokumentesh për shkrim: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "po përgatiten dokumente" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "po kopjohen elementë" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "Kartela përmbledhje gjendet te %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "s’ka ndryshime në version %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "po shkruhet kartelë përmbledhje…" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Të brendshme" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Shkallë moduli" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "po kopjohen kartela burim…" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "s’u lexua dot %r për krijim regjistrimi ndryshimesh" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "shprehje e rregullt e pavlefshme %r te %s" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "moduli %s s’u importua dot: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "modulet vijues janë të dokumentuar, por s’qenë specifikuar në coverage_modules: %s" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "modulet vijuese qenë specifikuar te coverage_modules, por s’qenë dokumentuar: %s" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "Testimi i mbulimit te burimet përfundoi, shihni te përfundimet në %(outdir)s{sep}python.txt." + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "shprehje e rregullt %r e pavlefshme te coverage_c_regexes" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "API C e padokumentuar: %s [%s] te kartela %s" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "funksion python i padokumentuar: %s :: %s" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "klasë python e padokumentuar: %s :: %s" + +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "metodë python e padokumentuar: %s :: %s :: %s" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Për T’u Bërë" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "U gjet zë Për T’u Bërë: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> gjendet te %s, rreshti %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "zëri origjinal" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "S’arrihet të xhirohet urdhri %r. për shndërrim figure. Si parazgjedhje, 'sphinx.ext.imgconverter' lyp ImageMagick. Sigurohuni se është i instaluar, ose për mundësinë 'image_converter' caktoni një urdhër vetjak shndërrimi .\n\nTraceback: %s" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" "[stderr]\n" "%r\n" "[stdout]\n" @@ -863,879 +1329,960 @@ msgstr "[grafik: %s]" msgid "[graph]" msgstr "[grafik]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Për T’u Bërë" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "Urdhri LaTeX %r s’mund të xhirohet (i nevojshëm për shfaqje formulash matematikore), kontrolloni rregullimin imgmath_late" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" -msgstr "U gjet zë Për T’u Bërë: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "Urdhri %s %r s’mund të xhirohet (i nevojshëm për shfaqje formulash matematikore), kontrolloni rregullimin imgmath_%s" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "shfaq latex %r: %s" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> gjendet te %s, rreshti %d.)" +msgid "inline latex %r: %s" +msgstr "latex brendazi %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "zëri origjinal" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "Lidhje për te ky ekuacion" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "mungon '+' ose '-' te mundësia '%s'." -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" -msgstr "Titull i pavlefshëm: %s" +msgid "'%s' is not a valid option." +msgstr "'%s' s’është mundësi e vlefshme." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "numri i specifikuar për rreshtin është jashtë intervali (1-%d): %r" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' s’është mundësi pyversion e vlefshme" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "lloj TestCode i pavlefshëm" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "S’mund të përdoren në të njëjtën kohë të dyja mundësitë \"%s\" \"%s\"" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Testimi i doctests-eve te burimet përfundoi, shihni te përfundimet në %(outdir)s/output.txt." -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "S’u gjet kartelë include '%s', ose dështoi leximi" +msgid "no code/output in %s block at %s:%s" +msgstr "s’ka kod/dhënie te blloku %s në %s:%s" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "Kodimi %r i përdorur për leximin e kartelës included '%s' duket të jetë gabim, provoni dhënien e një mundësie :encoding:" +msgid "ignoring invalid doctest code: %r" +msgstr "po shpërfillet kod “doctest” i pavlefshëm: %r" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "Objekti i emërtuar %r s’u gjet te kartelë include %r" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "pjesa “%s” etiketohet si “%s”" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "etiketë %s e përsëdytur, tjetër instancë te %s" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Specifikim kartele %r: s’u morën rreshta prej kartelës include %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "Kohëzgjatja e leximit %.3fs tejkaloi kufi kohëzgjatjesh %.3fs" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "Mundësia \":file:\" për direktivë csv-table tani njeh një shteg absolut si shteg relativ prej drejtorisë burim. Ju lutemi, përditësoni dokumentin tuaj." +"====================== total reading duration ==========================" +msgstr "==================== kohëzgjatje leximi gjithsej =======================" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "për rregullsinë globale toctree %r s’u gjet përkim në ndonjë dokument" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "Kohë leximi gjithsej %d file%s: %dm %.3fs" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree përmban referencë ndaj dokumenti %r të përjashtuar" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "=================== kohëzgjatjet më të ngadalta të leximit ===================" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree përmban referencë ndaj dokumenti %r që s’ekziston" +msgid "%.3fs %s" +msgstr "%.3fs %s" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "zë i përsëdytur, gjetur te toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[burim]" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Autor ndarjeje: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "po theksohet kod moduli… " -#: directives/other.py:205 -msgid "Module author: " -msgstr "Autor moduli: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[dokumente]" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Autor kodi: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Kod moduli" -#: directives/other.py:209 -msgid "Author: " -msgstr "Autor: " +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Kod burim për %s

" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Përmbledhje: kod moduli" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "… lënda e hlist-ës s’është listë" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Krejt modulet për të cilët ka kod të gatshëm

" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "Kartela përmbledhje gjendet te %(outdir)s." +msgid "duplicate citation %s, other instance in %s" +msgstr "citim i përsëdytur %s, tjetër instancë te %s" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." -msgstr "s’ka ndryshime në version %s." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "po shkruhet kartelë përmbledhje…" - -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Të brendshme" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Shkallë moduli" - -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "po kopjohen kartela burim…" +msgid "Citation [%s] is not referenced." +msgstr "Përmendja [%s] s’është në referencë." -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" -msgstr "s’u lexua dot %r për krijim regjistrimi ndryshimesh" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "etiketë e përsëdytur ekuacioni %s, instancë tjetër te %s" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Faqet e doracakut gjenden në %(outdir)s." +msgid "Invalid math_eqref_format: %r" +msgstr "math_eqref_format i pavlefshëm: %r" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "s’u gjet vlerë formësimi \"man_pages\"; s’do të shkruhet ndonjë faqe doracaku" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (funksion i brendshëm)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "po shkruhet" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (metodë %s)" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "vlera e formësimit \"man_pages\" i referohet një dokumenti të panjohur %s" +msgid "%s() (class)" +msgstr "%s() (klasë)" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "s’u gjet figurë e përshtatshme për montuesin %s: %s (%s)" +msgid "%s (global variable or constant)" +msgstr "%s ( ndryshore globale ose konstante)" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "s’u gjet figurë e përshtatshme për montuesin %s: %s" +msgid "%s (%s attribute)" +msgstr "%s (atribut %s)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "po montohet [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argumente" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "po shkruhet përfundim… " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Lança" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "krejt kartelat po %d" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Kthime" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "objektiva për kartela po %d që janë specifikuar" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Lloj kthimi" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "objektiva për kartela po %d që janë të papërditësuara" +msgid "%s (module)" +msgstr "%s (modul)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "krejt kartelat burim" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funksion" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "kartela %r, dhënë te rreshti i urdhrave, nuk ekziston, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metodë" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "kartela %r e dhënë te rresht urdhrash s’gjendet te drejtori burim, po shpërfillet" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klasë" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "kartela %r, dhënë te rreshti i urdhrave, s’është dokument i vlefshëm, po shpërfillet" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "të dhëna" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "kartela burim %d dhënë te rresht urdhrash" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "atribut" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "objektiva për kartela burim %d që janë të papërditësuara" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " -msgstr "po montohet [%s]: " - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "po shihet për kartela të sapovjetruara… " +msgid "duplicate %s description of %s, other %s in %s" +msgstr "përshkrim %s i përsëdytur i %s, tjetër %s në %s" -#: builders/__init__.py:410 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "%d found" -msgstr "U gjet %d" +msgid "%s (directive)" +msgstr "%s (direktivë)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "s’u gjet gjë" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s: (mundësi direktive)" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (rol)" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "po kontrollohet njëtrajtshmëria" +#: domains/rst.py:234 +msgid "directive" +msgstr "direktivë" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "s’ka objektiva të vjetruar." +#: domains/rst.py:235 +msgid "directive-option" +msgstr "diretiva-opção" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "po përditësohet mjedisi: " +#: domains/rst.py:236 +msgid "role" +msgstr "rol" -#: builders/__init__.py:494 +#: domains/rst.py:262 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s të shtuar, %s të ndryshuar, %s të hequr" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "përshkrim i përsëdytur %s %s, instancë tjetër te %s" -#: builders/__init__.py:531 +#: domains/changeset.py:32 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s), ngaqë ka përkim me një rregullsi të brendshme përjashtimi %r. Ju lutemi, shpjereni dokumentin tuaj kryesor te një vendndodhje tjetër." +msgid "Added in version %s" +msgstr "Shtuar në versionin %s" -#: builders/__init__.py:540 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s), ngaqë ka përkim me një rregullsi përjashtimi të treguar në conf.py, %r. Ju lutemi, hiqeni rregullsinë nga conf.py." +msgid "Changed in version %s" +msgstr "Ndryshuar në versionin %s" -#: builders/__init__.py:551 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s), ngaqë s’përfshihet në include_patterns = %r e përshtatur. Siguroni që një rregullsi te include_patterns të ketë përkim me dokumentin kryesor." +msgid "Deprecated since version %s" +msgstr "Nxjerrë nga përdorimi që me versionin %s" -#: builders/__init__.py:558 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "Sphinx-i s’është në gjendje të ngarkojë dokumentin kryesor (%s). Dokumenti kryesor duhet të gjendet brenda drejtorisë burim, ose një nëndrejtorie të saj." - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "po lexohen burime… " +msgid "Removed in version %s" +msgstr "Hequr në versionin %s" -#: builders/__init__.py:713 +#: domains/__init__.py:322 #, python-format -msgid "docnames to write: %s" -msgstr "emra dokumentesh për shkrim: %s" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "numri i aktit duhet të jetë një numër pozitiv" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "po përgatiten dokumente" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "Për më tepër hollësi, vizitoni ." -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "po kopjohen elementë" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nProdhoni dokumentim nga kartela burim.\n\nsphinx-build prodhon dokumentim prej kartelash te SOURCEDIR dhe e vendos\nte OUTPUTDIR. Kërkon për 'conf.py' te SOURCEDIR për rregullime formësimi.\nMjeti 'sphinx-quickstart' mund të përdoret për të prodhuar kartela gjedhe,\npërfshi 'conf.py'\n\nsphinx-build mund të krijojë dokumentim në formate të ndryshëm. Një format\npërzgjidhet duke specifikuar te rreshti i urdhrave emrin e montuesit; HTML-ja,\nsi parazgjedhje. Montuesit mund të kryejnë gjithashtu veprime të tjera të lidhura\nme përpunim dokumentimi.\n\nSi parazgjedhje, gjithçka që është e papërditësuar, montohet. Nëse doni\nmontim vetëm për kartela të përzgjedhura, kjo mund të bëhet duke\nspecifikuar emra kartelash individuale.\n" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "shenja burimi të padeshifrueshme, po zëvendësohen me \"?\": %r" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "shteg për te kartela burimi dokumentimi" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "Kartela ePub gjendet te %(outdir)s." +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "shteg për te drejtori përfundimesh" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "po shkruhet kartelë nav.xhtml…" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "(opsionale) një listë kartelash të caktuara për t’u rimontuar. E shpërfillur, nëse është dhënë --write-all" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_language\" (ose \"language\") s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:114 +msgid "general options" +msgstr "mundësi të përgjithshme" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "vlera e formësimit \"epub_uid\" duhet të jetë XML NAME për EPUB3" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "montues për t’u përdorur (parazgjedhje: 'html')" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_title\" (ose \"html_title\") s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "executa em paralelo com N processos, quando possível. 'auto' usa o número de núcleos da CPU" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_author\" s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "shkruaj krejt kartelat (parazgjedhje: shkruaj vetëm kartela të reja dhe ato të ndryshuara)" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_contributor\" s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "mos përdor një mjedis të ruajtur, lexo përherë krejt kartelat" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_description\" s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:150 +msgid "path options" +msgstr "mundësi shtegu" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_publisher\" s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "drejtori për kartela doctree dhe mjedisi (parazgjedhje: OUTPUT_DIR/.doctrees)" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_copyright\" (ose \"copyright\") s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "drejtori për kartelën e formësimit (conf.py) (parazgjedhje: SOURCE_DIR)" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "vlera e formësimit \"epub_identifier\" s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "mos përdor kartelë formësimi, përdor vetëm rregullime nga mundësitë -D" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "vlera e formësimit \"version\" s’duhet të jetë e zbrazët për EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "anashkalo një rregullim te kartelë formësimi" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "css_file e pavlefshme: %r, u shpërfill" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "jep një vlerë te gjedhe HTML" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "Kartelat XML gjenden në %(outdir)s." +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "përcaktoni etiketë: përfshi blloqe “only” me TAG" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "gabim në shkrim kartele %s: %s" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "modo nitpicky: avisa sobre todas as referências ausentes" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Kartelat pseudo-XML gjenden në %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" +msgstr "mundësi për ç’prodhon konsola" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Kartelat Texinfo gjenden në %(outdir)s." +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "aumenta a verbosidade (pode ser repetido)" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nXhironi 'make' te ajo drejtori, që të xhirohen këto përmes makeinfo-s\n(përdorni këtu 'make info' që kjo të kryhet automatikisht)." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "pa output në stdout, thjesht sinjalizime në stderr" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "s’u gjet vlerë formësimi \"texinfo_documents\"; s’do të shkruhet ndonjë dokument" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "pa output fare, madje as sinjalizime" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "vlera e formësimit \"texinfo_documents\" i referohet një dokumenti të panjohur %s" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "emite saída colorida (padrão: detecção automática)" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "po përpunohet %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "não emite saída colorida (padrão: detecção automática)" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "po shquhen referencat…" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "mundësi kontrolli sinjalizimesh" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (në " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "shkruaj sinjalizime (dhe gabime) te kartela e dhënë" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "po kopjohen figura… " +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "shndërroji sinjalizimet në gabime" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "s’kopjohet dot kartelë figure %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "mostra traceback completo na exceção" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "po kopjohen kartela mbulimi Texinfo" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "xhiro Pdb, në rast përjashtimesh" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "gabim në shkrim kartele Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "levanta uma exceção para avisos" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "u gjet zë TeL i përsëdytur: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "s’mund të ndërthuret një mundësi -a dhe emra kartelash" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "s’lexohet dot kartelë figure %r: në vend të tij, po kopjohet" +msgid "cannot open warning file '%s': %s" +msgstr "s’hapet dot kartelë sinjalizim “%s”: %s" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "s’shkruhet dot kartelë figure %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "argumenti i mundësisë -D duhet të jetë në formën emër=vlerë" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "S’u gjet Pillow - po kopjohen kartela figurë" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "argumenti i mundësisë -A duhet të jetë në formën emër=vlerë" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "po shkruhet kartelë llojesh MIME…" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "fut automatikisht docstrings prej modulesh" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "po shkruhet kartelë META-INF/container.xml…" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "testo automatikisht copëza kodi te blloqe doctest" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "po shkruhet kartelë content.opf…" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "lidhje mes dokumentimi Sphinx projektesh të ndryshëm" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "lloj MIME i panjohur për %s, po shpërfillet" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "shkruaj zëra \"todo\" që mund të shfaqen ose fshihen te montimi" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "nyja ka nivel të pavlefshëm" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "kontrolle për mbulim dokumentimi" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "po shkruhet kartelë toc.ncx…" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "përfshi formula matematikore, të vizatuara si figura PNG ose SVG" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "po shkruhet kartelë %s…" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "përfshi formula matematikore, të vizatuara te shfletuesi nga MathJax" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "Montuesi provë nuk prodhon kartela." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "përfshirje e kushtëzuar lënde, bazuar në vlera formësimi" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "Katalogët e mesazheve gjenden te %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "përfshi lidhje te kodi burim i objekteve Python të dokumentuara" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "objektiva për kartela gjedhe %d" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "krijo kartelë .nojekyll për të botuar dokumentin në faqe GitHub" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "po lexohen gjedhe… " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Ju lutemi, jepni një emër shtegu të vlefshëm." -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "po shkruhen katalogë mesazhesh… " +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Ju lutemi, jepni ca tekst." -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "Faqja HTML gjenden në %(outdir)s." +msgid "Please enter one of %s." +msgstr "Ju lutemi, jepni një nga %s." -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "po montohet dokument njësh" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Ju lutemi, jepni 'y' ose 'n'." -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "po shkruhen kartela shtesë" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Ju lutemi, jepni një prapashtesë kartele, për shembull, '.rst' ose '.txt'." -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Shihni për çfarëdo gabimesh te përfundimi më sipër ose te %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Mirë se vini te mjeti për fillim të shpejtë me Sphinx %s." + +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Ju lutemi, jepni vlera për rregullimet vijuese (thjesht shtypni tastin\nEnter që të pranohet një vlerë parazgjedhje, nëse është një e tillë\nbrenda kllapave)." -#: builders/linkcheck.py:149 +#: cmd/quickstart.py:242 #, python-format -msgid "broken link: %s (%s)" -msgstr "lidhje e dëmtuar: %s (%s)" - -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "S’u gjet spirancë '%s'" +msgid "Selected root path: %s" +msgstr "Shteg rrënjë i përzgjedhur: %s" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "S’u arrit të përpilohet shprehje e rregullt te linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Jepni shtegun rrënjë për te dokumenti." -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Kartelat tekst gjenden në %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Shteg rrënje për te dokumenti" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "referenca pa njëtrajtësi, te fundfaqe në mesazhin e përkthyer. origjinali: {0}, përkthimi: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Gabim: te shtegu rrënjë i përzgjedhur u gjet një conf.py ekzistues." -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "referenca pa njëtrajtësi, te mesazhi i përkthyer. origjinali: {0}, përkthimi: {1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart s’do të mbishkruajë projekte ekzistuese Sphinx." -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "referenca citimi pa njëtrajtësi, te fundfaqe në mesazhin e përkthyer. origjinali: {0}, përkthimi: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Ju lutemi, jepni një shteg të ri rrënjë (ose thjesht shtypni tastin Enter, që të dilet)" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "referenca citimi pa njëtrajtësi, te mesazhi i përkthyer. origjinali: {0}, përkthimi: {1}" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d %b, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "s’u njehsua dot ecuri përkthimi!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Keni dy mundësi për vendosjen e drejtorisë së montimeve për çka prodhon Sphinx-i.\nPërdorni një drejtori \"_build\" brenda shtegut rrënjë, ose i ndani\ndrejtoritë \"burim\" dhe \"montim\" brenda shtegut rrënjë." -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "pa elementë të përkthyer!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Nda veçmas drejtoritë burim dhe montim (y/n)" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "U gjet tregues me bazë 4 shtylla. Mund të jetë një e metë e zgjerimeve që përdorni: %r" - -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "Poshtëshënimi [%s] s’është në referencë." - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "Poshtëshënimi [*] është pa referencë." +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Brenda drejtorisë rrënjë do të krijohen dy drejtori të tjera; \"_templates\" për\ngjedhe vetjake HTML, dhe \"_static\" për fletëstile vetjakë dhe kartela të tjera statike.\nMund të krijoni një tjetër parashtesë (bie fjala, \".\") në vend të nënvijës." -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "Poshtëshënimi [#] s’është në referencë." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Parashtesë emrash për drejtori gjedhesh dhe statikesh" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "Përdorimi:" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "Emri i projektit do të shfaqet në disa vende te dokumentimi i montuar." -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "{0} [MUNDËSI] []" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Emër projekti" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "Prodhuesi i dokumentimit Sphinx" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Emër(a) autori(ësh)" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "Urdhra:" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx-i përdor nocionet e “versionit” dhe “hedhjes në qarkullim” për\nsoftware-in. Çdo version mund të ketë hedhje të shumta në qarkullim.\nBie fjala, për Python-in versionet ngjajnë me 2.5 ose 3.0, teksa hedhja\nnë qarkullim ngjan me 2.5.1 ose 3.0a1. Nëse kjo strukturë duale s’ju\nhyn në punë, thjesht vëruni të dyjave të njëjtën vlerë." -#: _cli/__init__.py:98 -msgid "Options" -msgstr "Mundësi" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Version projekti" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "Për më tepër informacion, vizitoni https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Hedhje në qarkullim e projektit" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "{0}: gabim: {1}\nPër informacion, xhironi '{0} --help'" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "Administroni dokumentimin me Sphinx." +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Nëse dokumentet janë shkruan në gjuhë tjetër nga anglishtja,\nmund të përzgjidhni një gjuhë këtu, përmes kodit të asaj gjuhe. Sphinx-i mandej\ndo të përkthejë në atë gjuhë tekstin që prodhon.\n\nPër një listë kodesh të mbuluar, shihni\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "Shfaq versionin dhe dil." +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Gjuhë projekti" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "Shfaq këtë mesazh dhe dil." +#: cmd/quickstart.py:340 +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." -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "Regjistrim" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Prapashtesë kartele burim" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Një dokument është i veçantë, për faktin se konsiderohet si nyja e epërme\ne \"pemës së lëndës\", domethënë, është rrënja e strukturës hierarkike\ntë dokumenteve. Zakonisht, ky është \"index\", por nëse dokumenti juaj \"index\"\nështë një gjedhe vetjake, si të tillë mund të caktoni një tjetër emër kartele." -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "Vetëm gabime dhe sinjalizime shtypjeje" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Emër i dokumentit tuaj kryesor (pa prapashtesë)" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "Pa dhënë gjë" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Gabim: kartela master %s është gjetur tashmë një herë në shtegun rrënjë të përzgjedhur." -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart s’do të mbishkruajë kartelën ekzistuese." -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "Shihni 'sphinx --help'.\n" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Ju lutemi, jepni një emër të ri kartele, ose riemërtojeni kartelën ekzistuese dhe shtypni tastin Enter" -#: environment/__init__.py:86 -msgid "new config" -msgstr "formësim i ri" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Përcaktoni se cilët nga zgjerimet vijuese Sphinx duhen aktivizuar:" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "formësimi ndryshoi" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Shënim: imgmath dhe mathjax s’mund të aktivizohen në të njëjtën kohë. U hoqë përzgjedhja e imgmath-it." -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "zgjerimet u ndryshuan" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Për ju mund të prodhohen një kartelë makefile dhe një urdhrash Windows, që\nkështu t’ju duhet vetëm të xhironi, për shembull, `make html', në vend se\ntë thirret drejtpërsëdrejti sphinx-build." -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "version jo i tanishëm i mjedisit të montimit" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Të krijohet Makefile? (y/n)" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "drejtoria burim ka ndryshuar" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Të krijohet kartelë urdhrash Windows? (y/n)" -#: environment/__init__.py:325 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "Formësimi është ndryshuar (1 mundësi: %r)" +msgid "Creating file %s." +msgstr "Po krijohet kartela %s." -#: environment/__init__.py:330 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "Formësimi është ndryshuar (%d mundësi: %s)" +msgid "File %s already exists, skipping." +msgstr "Ka tashmë një kartelë %s, po anashkalohet." -#: environment/__init__.py:336 +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Përfundoi: U krijua një strukturë fillestare drejtorish." + +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "Formësimi është ndryshuar (%d mundësi: %s, …)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Tani duhet të populloni kartelën tuaj master file %s dhe të krijoni kartela të tjera\nburim të dokumentimit. " -#: environment/__init__.py:379 +#: cmd/quickstart.py:527 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Ky mjedis është i papërputhshëm me montuesin e përzgjedhur, ju lutemi, zgjidhni një tjetër drejtori doctree." +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Përdorni Makefile-in që të montohen dokumentet, kështu:\n make builder" -#: environment/__init__.py:493 +#: cmd/quickstart.py:531 #, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "S’u arrit të skanohen dokumente te %s: %r" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Përodrni urdhrin sphinx-build që të montohen dokumentet, kështu:\n sphinx-build -b montues %s %s" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Përkatësia %r s’është e regjistruar" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "ku montues është një nga montuesin e mbuluar, p.sh., html, latex ose linkcheck." -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "dokumenti s’është i përfshirë në ndonjë toctree" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nProdho kartelat e domosdoshme për një projekt Sphinx.\n\nsphinx-quickstart është një mjet ndërveprues që bën disa pyetje rreth projektit\ntuaj dhe mandej prodhon një drejtori të plotë dokumentimi dhe një shembull\nMakefile për t’u përdorur me sphinx-build.\n" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "U gjet “toctree” që i referohet vetes. U shpërfill." +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "mënyra pa zhurmë" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "rrënjë e projektit" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "gabim leximi: %s, %s" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Mundësi strukture" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "gabim shkrimi: %s, %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "nëse është kërkuar, nda veçmas drejtoritë burim dhe montim" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "locale_dir %s s’ekziston" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "në u përcaktoftë, krijo drejtori montimi nën drejtorinë burim" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "Vendore Babel e pavlefshme: %r." +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "zëvendësim për pikën te _templates, etj." -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "Format i pavlefshëm datash. Quote the string by single quote Nëse doni të jepet drejtpërsëdrejti, përdorni për vargun thonjëza njëshe: %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Mundësi bazë të projektit" -#: util/docfields.py:103 +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "emër projekti" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "emra autorësh" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "version i projektit" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "hedhje në qarkullim e projektit" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "gjuhë dokumenti" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "prapashtesë kartele burim" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "emër dokumenti bazë" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "përdor epub" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Mundësi zgjerimi" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "aktivizo zgjerimin %s" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "aktivizo zgjerime arbitrare" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Krijim makefile-i dhe batchfile-i" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "krijo makefile" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "mos krijo makefile" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "krijo batchfile" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "mos krijo batchfile" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "përdor make-mode për Makefile/make.bat" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Gjedhe projekti" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "drejtori gjedhesh për kartela gjedhe" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "përkufizoni një ndryshore gjedheje" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\" është specifikuar, por s’është specifikuar ndonjë \"projekt\" ose \"autor\"." + +#: cmd/quickstart.py:786 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "Problem në përkatësinë %s: fusha supozohet të përdorë rol '%s', por ai rol s’gjendet te përkatësia." +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Gabim:shtegu i dhënë s’është drejtori, ose kartelat sphinx ekzistojnë tashmë." -#: util/nodes.py:423 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r është nxjerrë nga funksionimi për zëra treguesi (nga zëri %r). Në vend të tij përdorni “pair: %s”." +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart prodhon vetëm te një drejtori e zbrazët. Ju lutemi, specifikoni një shteg rrënjë të ri." -#: util/nodes.py:490 +#: cmd/quickstart.py:810 #, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "“toctree” përmban referencë për te një kartelë joekzistuese %r" +msgid "Invalid template variable: %s" +msgstr "Ndryshore e pavlefshme gjedheje: %s" -#: util/nodes.py:706 +#: directives/other.py:119 #, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "përjashtim teksa vlerësohej vetëm shprehje direktive: %s" - -#: util/display.py:82 -msgid "skipped" -msgstr "e anashkaluar" - -#: util/display.py:87 -msgid "failed" -msgstr "e dështuar" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "për rregullsinë globale toctree %r s’u gjet përkim në ndonjë dokument" -#: util/osutil.py:131 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "U ndërpre kopjim i provuar prej %s në %s (shtegu vendmbërritje përmban të dhëna ekzistuese)." +msgid "toctree contains reference to excluded document %r" +msgstr "toctree përmban referencë ndaj dokumenti %r të përjashtuar" -#: util/docutils.py:309 +#: directives/other.py:156 #, python-format -msgid "unknown directive name: %s" -msgstr "emër i panjohur direktive: %s" +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree përmban referencë ndaj dokumenti %r që s’ekziston" -#: util/docutils.py:345 +#: directives/other.py:169 #, python-format -msgid "unknown role name: %s" -msgstr "emër i panjohur roli: %s" +msgid "duplicated entry found in toctree: %s" +msgstr "zë i përsëdytur, gjetur te toctree: %s" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "Autor ndarjeje: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Autor moduli: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Autor kodi: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Autor: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" -#: util/docutils.py:789 +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "… lënda e hlist-ës s’është listë" + +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "Mundësia \":file:\" për direktivë csv-table tani njeh një shteg absolut si shteg relativ prej drejtorisë burim. Ju lutemi, përditësoni dokumentin tuaj." + +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "não-espaço em branco removido por dedent" + +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" -msgstr "lloj i panjohur nyjeje: %r" +msgid "Invalid caption: %s" +msgstr "Titull i pavlefshëm: %s" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "U ndërpre kopjim i provuar prej gjedheje të rikrijuar %s në %s (shtegu vendmbërritje përmban të dhëna ekzistuese)." +msgid "line number spec is out of range(1-%d): %r" +msgstr "numri i specifikuar për rreshtin është jashtë intervali (1-%d): %r" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "S’mund të përdoren në të njëjtën kohë të dyja mundësitë \"%s\" \"%s\"" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" -msgstr "s’u gjet rol parazgjedhje %s" +msgid "Include file '%s' not found or reading it failed" +msgstr "S’u gjet kartelë include '%s', ose dështoi leximi" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "depoja <%s> përmban përkufizime të përsëdytura të %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "Kodimi %r i përdorur për leximin e kartelës included '%s' duket të jetë gabim, provoni dhënien e një mundësie :encoding:" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "inventar <%s> përmban përkufizime të shumta për %s" +msgid "Object named %r not found in include file %r" +msgstr "Objekti i emërtuar %r s’u gjet te kartelë include %r" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Poshtëshënime" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Não é possível usar \"lineno-match\" com um conjunto disjunto de \"lines\"" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[figurë: %s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Specifikim kartele %r: s’u morën rreshta prej kartelës include %r" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[figurë]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d %b, %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1744,11 +2291,15 @@ msgstr "[figurë]" msgid "Index" msgstr "Tregues" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "u has nyje titulli jo në ndarje, temë, tabelë, paralajmërim ose anështyllë" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Poshtëshënime" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "titull jo brenda një figure." @@ -1758,67 +2309,28 @@ msgstr "titull jo brenda një figure." msgid "unimplemented node type: %r" msgstr "lloj nyjeje i pasendërtuar: %r" -#: writers/latex.py:361 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "toplevel_sectioning %r i panjohur për klasën %r" +msgid "[image: %s]" +msgstr "[figurë: %s]" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "s’ka mundësi Babel të njohur për gjuhën %r" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[figurë]" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: shumë i madh, u shpërfill." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "Lidhje për te ky përkufizim" -#: writers/latex.py:591 +#: writers/html5.py:431 #, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "s’u gjet gjedhe %s; në vend të kësaj, po bëhet ngarkim prej të dikurshmes %s" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "titulli i dokumentit s’është nyje njëshe Teksti" +msgid "numfig_format is not defined for %s" +msgstr "numfig_format s’është i përcaktuar për %s" -#: writers/html5.py:572 writers/latex.py:1106 +#: writers/html5.py:441 #, python-format -msgid "unsupported rubric heading level: %s" -msgstr "shkallë e pambuluar për krye rubrike: %s" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "janë dhënë që të dyja mundësitë, “tabularcolumns” dhe “:widths:”. shpërfillet :widths:." - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "njësia e përmasave %s është e pavlefshme. U shpërfill." - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "u gjet lloj i panjohur %s zërash treguesi" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "math_eqref_format i pavlefshëm: %r" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "Lidhje për te ky përkufizim" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "numfig_format s’është i përcaktuar për %s" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "Çfarëdo ID-sh jo të përshoqëruara për nyjën %s" +msgid "Any IDs not assigned for %s node" +msgstr "Çfarëdo ID-sh jo të përshoqëruara për nyjën %s" #: writers/html5.py:496 msgid "Link to this term" @@ -1832,6 +2344,11 @@ msgstr "Lidhje për te kjo krye" msgid "Link to this table" msgstr "Lidhje për te kjo tabelë" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "shkallë e pambuluar për krye rubrike: %s" + #: writers/html5.py:636 msgid "Link to this code" msgstr "Lidhje për te ky kod" @@ -1848,794 +2365,478 @@ msgstr "Lidhje për te kjo “toctree”" msgid "Could not obtain image size. :scale: option is ignored." msgstr "S’u mor dot madhësi figure. Mundësia :scale: u shpërfill." -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "toplevel_sectioning %r i panjohur për klasën %r" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "etiketë e përsëdytur ekuacioni %s, instancë tjetër te %s" +msgid "no Babel option known for language %r" +msgstr "s’ka mundësi Babel të njohur për gjuhën %r" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (funksion i brendshëm)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: shumë i madh, u shpërfill." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (metodë %s)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "s’u gjet gjedhe %s; në vend të kësaj, po bëhet ngarkim prej të dikurshmes %s" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "titulli i dokumentit s’është nyje njëshe Teksti" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "janë dhënë që të dyja mundësitë, “tabularcolumns” dhe “:widths:”. shpërfillet :widths:." -#: domains/javascript.py:185 +#: writers/latex.py:1228 #, python-format -msgid "%s() (class)" -msgstr "%s() (klasë)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "Foi fornecido colspec %s, que parece usar sintaxe tabular. Mas esta tabela não pode ser renderizada como uma tabela; o colspec fornecido será ignorado." -#: domains/javascript.py:187 +#: writers/latex.py:1615 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s ( ndryshore globale ose konstante)" +msgid "dimension unit %s is invalid. Ignored." +msgstr "njësia e përmasave %s është e pavlefshme. U shpërfill." -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1950 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (atribut %s)" +msgid "unknown index entry type %s found" +msgstr "u gjet lloj i panjohur %s zërash treguesi" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argumente" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "Përdorimi:" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "{0} [MUNDËSI] []" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Kthime" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "Prodhuesi i dokumentimit Sphinx" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Lloj kthimi" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "Urdhra:" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "Mundësi" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funksion" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "Për më tepër informacion, vizitoni https://www.sphinx-doc.org/en/master/man/." -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metodë" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "{0}: gabim: {1}\nPër informacion, xhironi '{0} --help'" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klasë" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "Administroni dokumentimin me Sphinx." -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "të dhëna" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "Shfaq versionin dhe dil." -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "atribut" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "Shfaq këtë mesazh dhe dil." -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "Regjistrim" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "përshkrim %s i përsëdytur i %s, tjetër %s në %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "Aumentar a verbosidade (pode ser repetido)" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "Shtuar në versionin %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "Vetëm gabime dhe sinjalizime shtypjeje" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Ndryshuar në versionin %s" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "Pa dhënë gjë" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Nxjerrë nga përdorimi që me versionin %s" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "Hequr në versionin %s" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "Shihni 'sphinx --help'.\n" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktivë)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "referenca pa njëtrajtësi, te fundfaqe në mesazhin e përkthyer. origjinali: {0}, përkthimi: {1}" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (mundësi direktive)" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "referenca pa njëtrajtësi, te mesazhi i përkthyer. origjinali: {0}, përkthimi: {1}" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (rol)" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "referenca citimi pa njëtrajtësi, te fundfaqe në mesazhin e përkthyer. origjinali: {0}, përkthimi: {1}" -#: domains/rst.py:234 -msgid "directive" -msgstr "direktivë" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "referenca citimi pa njëtrajtësi, te mesazhi i përkthyer. origjinali: {0}, përkthimi: {1}" -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "s’u njehsua dot ecuri përkthimi!" -#: domains/rst.py:236 -msgid "role" -msgstr "rol" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "pa elementë të përkthyer!" -#: domains/rst.py:262 +#: transforms/__init__.py:258 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "përshkrim i përsëdytur %s %s, instancë tjetër te %s" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "U gjet tregues me bazë 4 shtylla. Mund të jetë një e metë e zgjerimeve që përdorni: %r" -#: domains/citation.py:75 +#: transforms/__init__.py:299 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "citim i përsëdytur %s, tjetër instancë te %s" +msgid "Footnote [%s] is not referenced." +msgstr "Poshtëshënimi [%s] s’është në referencë." -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." -msgstr "Përmendja [%s] s’është në referencë." +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "Poshtëshënimi [*] është pa referencë." -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Vëmendje" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Poshtëshënimi [#] s’është në referencë." -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Kujdes" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "depoja <%s> përmban përkufizime të përsëdytura të %s" -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Rrezik" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "inventar <%s> përmban përkufizime të shumta për %s" -#: locale/__init__.py:231 -msgid "Error" -msgstr "Gabim" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "gabim leximi: %s, %s" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Ndihmëz" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "gabim shkrimi: %s, %s" -#: locale/__init__.py:233 -msgid "Important" -msgstr "E rëndësishme" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Shënim" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Shihni edhe" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Ndihmëz" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Sinjalizim" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "fut automatikisht docstrings prej modulesh" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "testo automatikisht copëza kodi te blloqe doctest" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "lidhje mes dokumentimi Sphinx projektesh të ndryshëm" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "shkruaj zëra \"todo\" që mund të shfaqen ose fshihen te montimi" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "kontrolle për mbulim dokumentimi" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "përfshi formula matematikore, të vizatuara si figura PNG ose SVG" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "përfshi formula matematikore, të vizatuara te shfletuesi nga MathJax" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "përfshirje e kushtëzuar lënde, bazuar në vlera formësimi" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "përfshi lidhje te kodi burim i objekteve Python të dokumentuara" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "krijo kartelë .nojekyll për të botuar dokumentin në faqe GitHub" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Ju lutemi, jepni një emër shtegu të vlefshëm." - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Ju lutemi, jepni ca tekst." - -#: cmd/quickstart.py:133 +#: util/i18n.py:146 #, python-format -msgid "Please enter one of %s." -msgstr "Ju lutemi, jepni një nga %s." - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Ju lutemi, jepni 'y' ose 'n'." - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Ju lutemi, jepni një prapashtesë kartele, për shembull, '.rst' ose '.txt'." +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s s’ekziston" -#: cmd/quickstart.py:229 +#: util/i18n.py:244 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Mirë se vini te mjeti për fillim të shpejtë me Sphinx %s." - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Ju lutemi, jepni vlera për rregullimet vijuese (thjesht shtypni tastin\nEnter që të pranohet një vlerë parazgjedhje, nëse është një e tillë\nbrenda kllapave)." +msgid "Invalid Babel locale: %r." +msgstr "Vendore Babel e pavlefshme: %r." -#: cmd/quickstart.py:241 +#: util/i18n.py:253 #, python-format -msgid "Selected root path: %s" -msgstr "Shteg rrënjë i përzgjedhur: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Jepni shtegun rrënjë për te dokumenti." - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Shteg rrënje për te dokumenti" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Gabim: te shtegu rrënjë i përzgjedhur u gjet një conf.py ekzistues." - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart s’do të mbishkruajë projekte ekzistuese Sphinx." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Ju lutemi, jepni një shteg të ri rrënjë (ose thjesht shtypni tastin Enter, që të dilet)" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Keni dy mundësi për vendosjen e drejtorisë së montimeve për çka prodhon Sphinx-i.\nPërdorni një drejtori \"_build\" brenda shtegut rrënjë, ose i ndani\ndrejtoritë \"burim\" dhe \"montim\" brenda shtegut rrënjë." - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Nda veçmas drejtoritë burim dhe montim (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Brenda drejtorisë rrënjë do të krijohen dy drejtori të tjera; \"_templates\" për\ngjedhe vetjake HTML, dhe \"_static\" për fletëstile vetjakë dhe kartela të tjera statike.\nMund të krijoni një tjetër parashtesë (bie fjala, \".\") në vend të nënvijës." - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Parashtesë emrash për drejtori gjedhesh dhe statikesh" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "Emri i projektit do të shfaqet në disa vende te dokumentimi i montuar." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Emër projekti" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Emër(a) autori(ësh)" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "Sphinx-i përdor nocionet e “versionit” dhe “hedhjes në qarkullim” për\nsoftware-in. Çdo version mund të ketë hedhje të shumta në qarkullim.\nBie fjala, për Python-in versionet ngjajnë me 2.5 ose 3.0, teksa hedhja\nnë qarkullim ngjan me 2.5.1 ose 3.0a1. Nëse kjo strukturë duale s’ju\nhyn në punë, thjesht vëruni të dyjave të njëjtën vlerë." - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Version projekti" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Hedhje në qarkullim e projektit" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Nëse dokumentet janë shkruan në gjuhë tjetër nga anglishtja,\nmund të përzgjidhni një gjuhë këtu, përmes kodit të asaj gjuhe. Sphinx-i mandej\ndo të përkthejë në atë gjuhë tekstin që prodhon.\n\nPër një listë kodesh të mbuluar, shihni\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Gjuhë projekti" - -#: cmd/quickstart.py:339 -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." - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Prapashtesë kartele burim" - -#: cmd/quickstart.py:349 msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "Një dokument është i veçantë, për faktin se konsiderohet si nyja e epërme\ne \"pemës së lëndës\", domethënë, është rrënja e strukturës hierarkike\ntë dokumenteve. Zakonisht, ky është \"index\", por nëse dokumenti juaj \"index\"\nështë një gjedhe vetjake, si të tillë mund të caktoni një tjetër emër kartele." - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Emër i dokumentit tuaj kryesor (pa prapashtesë)" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Format i pavlefshëm datash. Quote the string by single quote Nëse doni të jepet drejtpërsëdrejti, përdorni për vargun thonjëza njëshe: %s" -#: cmd/quickstart.py:367 +#: util/osutil.py:131 #, python-format msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Gabim: kartela master %s është gjetur tashmë një herë në shtegun rrënjë të përzgjedhur." - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart s’do të mbishkruajë kartelën ekzistuese." - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Ju lutemi, jepni një emër të ri kartele, ose riemërtojeni kartelën ekzistuese dhe shtypni tastin Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Përcaktoni se cilët nga zgjerimet vijuese Sphinx duhen aktivizuar:" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Shënim: imgmath dhe mathjax s’mund të aktivizohen në të njëjtën kohë. U hoqë përzgjedhja e imgmath-it." - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Për ju mund të prodhohen një kartelë makefile dhe një urdhrash Windows, që\nkështu t’ju duhet vetëm të xhironi, për shembull, `make html', në vend se\ntë thirret drejtpërsëdrejti sphinx-build." +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "U ndërpre kopjim i provuar prej %s në %s (shtegu vendmbërritje përmban të dhëna ekzistuese)." -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Të krijohet Makefile? (y/n)" +#: util/display.py:82 +msgid "skipped" +msgstr "e anashkaluar" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Të krijohet kartelë urdhrash Windows? (y/n)" +#: util/display.py:87 +msgid "failed" +msgstr "e dështuar" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: util/docutils.py:325 #, python-format -msgid "Creating file %s." -msgstr "Po krijohet kartela %s." +msgid "unknown directive name: %s" +msgstr "emër i panjohur direktive: %s" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/docutils.py:361 #, python-format -msgid "File %s already exists, skipping." -msgstr "Ka tashmë një kartelë %s, po anashkalohet." - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Përfundoi: U krijua një strukturë fillestare drejtorish." +msgid "unknown role name: %s" +msgstr "emër i panjohur roli: %s" -#: cmd/quickstart.py:519 +#: util/docutils.py:805 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Tani duhet të populloni kartelën tuaj master file %s dhe të krijoni kartela të tjera\nburim të dokumentimit. " - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Përdorni Makefile-in që të montohen dokumentet, kështu:\n make builder" +msgid "unknown node type: %r" +msgstr "lloj i panjohur nyjeje: %r" -#: cmd/quickstart.py:530 +#: util/fileutil.py:76 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Përodrni urdhrin sphinx-build që të montohen dokumentet, kështu:\n sphinx-build -b montues %s %s" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "ku montues është një nga montuesin e mbuluar, p.sh., html, latex ose linkcheck." - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nProdho kartelat e domosdoshme për një projekt Sphinx.\n\nsphinx-quickstart është një mjet ndërveprues që bën disa pyetje rreth projektit\ntuaj dhe mandej prodhon një drejtori të plotë dokumentimi dhe një shembull\nMakefile për t’u përdorur me sphinx-build.\n" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "Për më tepër hollësi, vizitoni ." - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "mënyra pa zhurmë" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "rrënjë e projektit" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Mundësi strukture" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "nëse është kërkuar, nda veçmas drejtoritë burim dhe montim" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "në u përcaktoftë, krijo drejtori montimi nën drejtorinë burim" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "zëvendësim për pikën te _templates, etj." - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Mundësi bazë të projektit" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "emër projekti" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "emra autorësh" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "version i projektit" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "hedhje në qarkullim e projektit" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "gjuhë dokumenti" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "prapashtesë kartele burim" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "emër dokumenti bazë" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "përdor epub" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Mundësi zgjerimi" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "U ndërpre kopjim i provuar prej gjedheje të rikrijuar %s në %s (shtegu vendmbërritje përmban të dhëna ekzistuese)." -#: cmd/quickstart.py:670 +#: util/fileutil.py:89 #, python-format -msgid "enable %s extension" -msgstr "aktivizo zgjerimin %s" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "aktivizo zgjerime arbitrare" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Krijim makefile-i dhe batchfile-i" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "krijo makefile" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "mos krijo makefile" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "krijo batchfile" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "mos krijo batchfile" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "përdor make-mode për Makefile/make.bat" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Gjedhe projekti" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "drejtori gjedhesh për kartela gjedhe" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "përkufizoni një ndryshore gjedheje" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"quiet\" është specifikuar, por s’është specifikuar ndonjë \"projekt\" ose \"autor\"." - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Gabim:shtegu i dhënë s’është drejtori, ose kartelat sphinx ekzistojnë tashmë." - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart prodhon vetëm te një drejtori e zbrazët. Ju lutemi, specifikoni një shteg rrënjë të ri." +msgid "Writing evaluated template result to %s" +msgstr "Po shkruhet përfundimi i hamendësuar i gjedhes te %s" -#: cmd/quickstart.py:809 +#: util/docfields.py:103 #, python-format -msgid "Invalid template variable: %s" -msgstr "Ndryshore e pavlefshme gjedheje: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "numri i aktit duhet të jetë një numër pozitiv" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\nProdhoni dokumentim nga kartela burim.\n\nsphinx-build prodhon dokumentim prej kartelash te SOURCEDIR dhe e vendos\nte OUTPUTDIR. Kërkon për 'conf.py' te SOURCEDIR për rregullime formësimi.\nMjeti 'sphinx-quickstart' mund të përdoret për të prodhuar kartela gjedhe,\npërfshi 'conf.py'\n\nsphinx-build mund të krijojë dokumentim në formate të ndryshëm. Një format\npërzgjidhet duke specifikuar te rreshti i urdhrave emrin e montuesit; HTML-ja,\nsi parazgjedhje. Montuesit mund të kryejnë gjithashtu veprime të tjera të lidhura\nme përpunim dokumentimi.\n\nSi parazgjedhje, gjithçka që është e papërditësuar, montohet. Nëse doni\nmontim vetëm për kartela të përzgjedhura, kjo mund të bëhet duke\nspecifikuar emra kartelash individuale.\n" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "shteg për te kartela burimi dokumentimi" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "shteg për te drejtori përfundimesh" - -#: cmd/build.py:109 msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "(opsionale) një listë kartelash të caktuara për t’u rimontuar. E shpërfillur, nëse është dhënë --write-all" - -#: cmd/build.py:114 -msgid "general options" -msgstr "mundësi të përgjithshme" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Problem në përkatësinë %s: fusha supozohet të përdorë rol '%s', por ai rol s’gjendet te përkatësia." -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "montues për t’u përdorur (parazgjedhje: 'html')" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "s’u gjet rol parazgjedhje %s" -#: cmd/build.py:131 +#: util/nodes.py:462 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "%r s’mbulohet më për zëra treguesi (nga zë %r). Në vend të tyre, përdorni 'pair: %s'." -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "shkruaj krejt kartelat (parazgjedhje: shkruaj vetëm kartela të reja dhe ato të ndryshuara)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "“toctree” përmban referencë për te një kartelë joekzistuese %r" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "mos përdor një mjedis të ruajtur, lexo përherë krejt kartelat" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "përjashtim teksa vlerësohej vetëm shprehje direktive: %s" -#: cmd/build.py:150 -msgid "path options" -msgstr "mundësi shtegu" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "vazhduar nga faqja e mëparshme" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "drejtori për kartela doctree dhe mjedisi (parazgjedhje: OUTPUT_DIR/.doctrees)" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "vazhdon në faqen pasuese" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "drejtori për kartelën e formësimit (conf.py) (parazgjedhje: SOURCE_DIR)" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Joalfabetike" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "mos përdor kartelë formësimi, përdor vetëm rregullime nga mundësitë -D" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Simbole" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "anashkalo një rregullim te kartelë formësimi" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Numra" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "jep një vlerë te gjedhe HTML" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "faqe" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "përcaktoni etiketë: përfshi blloqe “only” me TAG" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Hedhje Në Qarkullim" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "S’u soll dot figurë e largët: %s [%s]" -#: cmd/build.py:212 -msgid "console output options" -msgstr "mundësi për ç’prodhon konsola" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "S’u pru dot figurë e largët: %s [%d]" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Format i panjohur figure: %s…" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "pa output në stdout, thjesht sinjalizime në stderr" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "S’u përcaktua dot tekst rrugëdalje për ndër-referencë. Mund të jetë një e metë e programit." -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "pa output fare, madje as sinjalizime" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "u gjet më shumë se një objektiv për ndërreferencën 'any' %r: mund të ishte %s" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "s’u gjet objektiv reference %s:%s: %s" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "s’u gjet objektiv reference %r: %s" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "mundësi kontrolli sinjalizimesh" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "U ndërpre!" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "shkruaj sinjalizime (dhe gabime) te kartela e dhënë" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "Gabim markup-i reStructuredText!" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "shndërroji sinjalizimet në gabime" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "Gabim kodimi!" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "xhiro Pdb, në rast përjashtimesh" - -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 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.:" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "s’mund të ndërthuret një mundësi -a dhe emra kartelash" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "Po niset diagnostikuesi:" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" -msgstr "s’hapet dot kartelë sinjalizim “%s”: %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "Traceback-u i plotë u ruajt te:" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "argumenti i mundësisë -D duhet të jetë në formën emër=vlerë" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "Për t’ua njoftuar këtë gabim zhvilluesve, ju lutemi, hapni një çështje te . Faleminderit!" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "argumenti i mundësisë -A duhet të jetë në formën emër=vlerë" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Ju lutemi, njoftojeni nëse qe një gabim përdoruesi, që kështu herës tjetër të mund të furnizohet një mesazh më i mirë gabimi." #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Tkurre anështyllën" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Tryeza e Lëndës" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Lëvizje" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Kërkoni brenda %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Mbi këto dokumente" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Kērko" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Shko" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Të drejta kopjimi" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Përditësuar së fundi më %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Krijuar duke përdorur Sphinx %(sphinx_version)s." + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Subjekti i mëparshëm" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "kapitulli i mëparshëm" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Subjekti pasues" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "kapitulli pasues" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "Tregues – %(key)s" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Tregues i plotë në një faqe" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Kjo Faqe" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Shfaq Burimin" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Lëndë" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Kërkim i shpejtë" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Kërkoni te %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Shko" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2682,7 +2883,7 @@ msgstr "Tregues Global Modulesh" msgid "quick access to all modules" msgstr "hyrje e shpejtë te krejt modulet" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Tregues i Përgjithshëm" @@ -2690,23 +2891,15 @@ msgstr "Tregues i Përgjithshëm" msgid "all functions, classes, terms" msgstr "krejt funksionet, klasat, termat" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Kjo Faqe" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Tryeza e Lëndës" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "Tregues – %(key)s" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Tregues i plotë në një faqe" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Kërkim i shpejtë" +msgid "Search %(docstitle)s" +msgstr "Kërkoni te %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2716,57 +2909,6 @@ msgstr "Faqe treguesi sipas shkronjash" msgid "can be huge" msgstr "mund të jetë i stërmadh" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Subjekti i mëparshëm" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "kapitulli i mëparshëm" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Subjekti pasues" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "kapitulli pasues" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Lëvizje" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Kërkoni brenda %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Mbi këto dokumente" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Të drejta kopjimi" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Përditësuar së fundi më %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "Krijuar duke përdorur Sphinx %(sphinx_version)s." - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2783,21 +2925,21 @@ msgstr "Kërkimi për disa fjalë njëherësh shfaq vetëm përputhje që\n p msgid "search" msgstr "kërko" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Fshih Përputhje Kërkimi" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Lëndë" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Përfundime Kërkimi" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Kërkimi juaj s’gjeti përputhje me ndonjë dokument. Ju lutemi, sigurohuni se janë shkruar saktë krejt fjalët dhe se keni përzgjedhur aq kategori sa duhen." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2805,22 +2947,21 @@ msgid_plural "" msgstr[0] "Kërkimi përfundoi, u gjet një faqe me përkime për termat e kërkimit." msgstr[1] "Kërkimi përfundoi, u gjetën ${resultCount} faqe me përkime për termat e kërkimit." -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Kërkim" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Po përgatitet kërkim..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", në " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Fshih Përputhje Kërkimi" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2828,6 +2969,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Ndryshe në Versionin %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2849,120 +2995,127 @@ msgstr "Ndryshime të tjera" msgid "Expand sidebar" msgstr "Zgjeroje anështyllën" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametra" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Ndryshore" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (te moduli %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (te moduli %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (ndryshore e brendshme)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (klasë e brendshme)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (klasë te %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (metodë klase %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (metodë statike %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (veti %s)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Tregues Modulesh Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "module" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Nxjerrë nga përdorimi" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "përjashtim" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "metodë klase" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "metodë statike" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "veti" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "përshkrim i përsëdytur objekti %s, hasje tjetër te %s, për njërin prej tyre përdorni :no-index:" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "për ndërreferencën %r u gjet më shumë se një objektiv: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (nxjerrë nga përdorimi)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametra" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Ndryshore" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Deklarim C++ i përsëdytur, përkufizuar edhe te %s:%s.\nDeklarimi është '.. cpp:%s:: %s'." #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2973,92 +3126,85 @@ msgstr "Parametra Gjedhesh" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "Deklarim C++ i përsëdytur, përkufizuar edhe te %s:%s.\nDeklarimi është '.. cpp:%s:: %s'." - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "bashkim" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "anëtar" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "lloj" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "koncept" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "parametër funksioni" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "parametër gjedheje" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "Deklarim C i përsëdytur, përkufizuar edhe te %s:%s.\nDeklarimi është '.. c:%s:: %s'." -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "ndryshore" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makro" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "ndryshore mjedisi; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "%s; vlerë formësimi" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "Lloj" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "Parazgjedhje" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3153,514 +3299,422 @@ msgstr "etiketë e papërkufizuar: %r" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "S’u arrit të krijohet ndërreferencë. S’u gjet një titull, ose një përshkrim: %r" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "u pikasën referenca rrethore toctree-je, po shpërfllen: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree përmban referencë ndaj dokumenti %r që s’ka titull: s’do të prodhohet ndonjë lidhje" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "toctree përmban referencë dokumenti të papërfshirë %r" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "shihni %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "shihni edhe %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "lloj i panjohur zëri treguesi: %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Simbole" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "kartelë figure jo e lexueshme: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "kartelë figure %s jo e lexueshme: %s" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "kartelë shkarkimi jo e lexueshme: %s" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "U ndërpre!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "Gabim markup-i reStructuredText!" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "Gabim kodimi!" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "Po niset diagnostikuesi:" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "Traceback-u i plotë u ruajt te:" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "Për t’ua njoftuar këtë gabim zhvilluesve, ju lutemi, hapni një çështje te . Faleminderit!" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Ju lutemi, njoftojeni nëse qe një gabim përdoruesi, që kështu herës tjetër të mund të furnizohet një mesazh më i mirë gabimi." - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "S’u përcaktua dot tekst rrugëdalje për ndër-referencë. Mund të jetë një e metë e programit." - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "u gjet më shumë se një objektiv për ndërreferencën 'any' %r: mund të ishte %s" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "s’u gjet objektiv reference %s:%s: %s" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "s’u gjet objektiv reference %r: %s" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "S’u soll dot figurë e largët: %s [%s]" - -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "S’u pru dot figurë e largët: %s [%d]" +msgid "invalid value set (missing closing brace): %s" +msgstr "u caktua vlerë e pavlefshme (mungon kllapë mbyllëse): %s" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." -msgstr "Format i panjohur figure: %s…" +msgid "invalid value set (missing opening brace): %s" +msgstr "u caktua vlerë e pavlefshme (mungon kllapë hapëse): %s" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "Faqet HTML gjenden në %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" +msgstr "shprehje vargu e keqformuar (mungon thonjëz mbyllëse): %s" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" -msgstr "S’u arrit të lexohet kartelë të dhënash montimi: %r" +msgid "malformed string literal (missing opening quote): %s" +msgstr "shprehje vargu e keqformuar (mungon thonjëz hapëse): %s" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "mospërputhje build_info-sh, po kopjohet .buildinfo te .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Shembull" -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "po prodhohet [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Shembuj" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "gjedhja %s është ndryshuar që prej montimit të mëparshëm, do të riprodhohen krejt dokumentet" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argumente Fjalëkyçi" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "tregues" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Shënime" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "Stemë e %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Parametra të Tjerë" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "pasuesi" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "i mëparshmi" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Referenca" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "po prodhohen tregues" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Sinjalizime" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "po shkruhen faqe shtesë" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "s’kopjohet dot kartelë figurë '%s': %s" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "po kopjohen kartela të shkarkueshme… " +msgid "A mocked object is detected: %r" +msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "s’kopjohet dot kartelë e shkarkueshme %r: %s" +msgid "alias of %s" +msgstr "alias për %s" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "S’u arrit të kopjohet një kartelë te drejtoria 'static' e temës: %s: %r" +msgid "Bases: %s" +msgstr "Baza: %s" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "S’u arrit të kopjohet një kartelë te html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" +msgstr "vlerë e pavlefshme mundësie për member-order: %s" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "po kopjohen kartela statike" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" +msgstr "vlerë e pavlefshme për mundësinë class-doc-from: %s" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" -msgstr "s’kopjohet dot kartelë statike %r" +msgid "invalid signature for auto%s (%r)" +msgstr "nënshkrim i pavlefshëm për auto%s (%r)" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "po kopjohen kartela ekstra" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "s’dihet cili modul të importohet për vetëdokumentim të %r (provoni të vendosni te dokumenti një direktivë \"module\" ose \"currentmodule\", ose të jepni shprehimisht një emër moduli)" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" -msgstr "s’kopjohet dot kartelë ekstra %r" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" -msgstr "S’u arrit të shkruhet kartelë të dhënash montimi: %r" +msgid "return annotation given for automodule: '%s'" +msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "treguesi i kërkimi s’u ngarkua dot, por jo krejt dokumentet do të montohen: treguesi do të jetë i paplotë." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" në emër automoduli nuk ka kuptim" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "faqja %s ka përputhje me dy rregullsi te html_sidebars: %r dhe %r" +msgid "Failed to remove %s: %s" +msgstr "S’u arrit të hiqet %s: %s" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "Do të krijonte kartelë %s." + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "ndodhi një gabim Unikod, kur vizatohej faqja %s. Ju lutemi, siguroni që krejt vlerat e formësimit që përmbajnë lëndë jo-ASCII të jenë vargje Unikod." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nShih në mënyrë rekursive te për module dhe\npaketa Python dhe krijo një kartelë reST me direktiva\nautomodulesh për paketë te .\n\ns mund të jetë shprehje kartelash dhe/ose\ndrejtorish që mund të përjashtohen nga prodhimi.\n\nShënim: Si parazgjedhje, ky programth s’do të anashkalojë\nkartela të krijuara tashmë." -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "shteg për te modul për te dokumenti" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "Ndodhi një gabim gjatë vizatimit të faqes %s.\nArsye: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "kartelë fnmatch-style dhe/ose rregullsi drejtorish për t’u përjashtuar prej prodhimit" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "drejtori ku të vendosen krejt përfundimet" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "po shkruhet lënda e treguesit të kërkimeve në %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "thellësi maksimum nënmodulesh për shfaqje te TEL (parazgjedhje: 4)" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "js_file e pavlefshme: %r, u shpërfill" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "mbishkruaj kartela ekzistuese" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Janë të regjistruar plot math_renderers. Por s’u përzgjodh math_renderer." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "ndiq lidhje simbolike. E fuqishme, kur ndërthuret me collective.recipe.omelette." -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "U dha math_renderer %r i panjohur." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "xhiroje programthin pa krijuar kartela" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "zëri %r i html_extra_path entry është vendosur jashtë outdir-it" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "vendose dokumentim për çdo modul në faqe më vete" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "zëri html_extra_path %r s’ekziston" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "përfshi modulet \"_private\"" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "zëri %r i html_extra_path entry është vendosur brenda outdir-it" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "emër kartele për tryezën e lëndës (parazgjedhje: modules)" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "zëri html_static_path %r s’ekziston" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "mos krijo një kartelë tryeze lënde" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "kartela stemë %r s’ekziston" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "mos krijo krye për paketat modul/paketë (për shembull, kur ato i përmban tashmë docstrings)" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "kartela favikonë %r s’ekziston" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "vendose dokumentimin e modulit përpara dokumentimit të nënmodulit" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "Vlerat në 'html_sidebars' duhet të jetë një listë vargjesh. Të paktën një rregullsi ka një vlerë varg: %s. Ndryshojeni në `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "interpreto shtigje modulesh sipas specifikimeve impicite PEP-0420 për emërhapësira" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "HTML 4 s’mbulohet më nga Sphinx-i. (U pikas “html4_writer=True” te mundësi formësimi)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "Listë mundësish, ndarë me presje, për t’ia kaluar direktivës “automodule” (ose përdorni SPHINX_APIDOC_OPTIONS)." -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" -msgstr "Dokumentim i %s %s" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "prapashtesë kartele (parazgjedhje: rst)" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" -msgstr "s’u arrit të lexohet kartelë e dëmtuar hollësish montimi (version i panjohur)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "Hiq te drejtoria përfundim kartela ekzistuese që s’qenë prodhuar" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "s’u arrit të lexohet kartelë e dëmtuar hollësish montimi (mungon zë formësimi)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "prodho me sphinx-quickstart një projekt të plotë" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" -msgstr "s’u arrit të lexohet kartelë e dëmtuar hollësish montimi (mungon zë etiketash)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "shto module_path pas sys.path, e përdorur kur është dhënë --full" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "Kartelat LaTeX gjenden në %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "emër projekti (parazgjedhje: emër moduli rrënjë)" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nXhironi 'make' te ajo drejtori që të xhirohen këto përmes (pdf)latex\n(që të bëhet kjo automatikisht, përdorni `make latexpdf' këtu)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "autor(ë) projekti, e përdorur kur është dhënë --full" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "s’u gjet vlerë formësimi \"texinfo_documents\"; s’do të shkruhet ndonjë dokument" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "version projekti, e përdorur kur është dhënë --full" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "vlera e formësimit \"texinfo_documents\" i referohet një dokumenti të panjohur %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "hedhje në qarkullim e projektit, e përdorur kur është dhënë --full, si parazgjedhje merr --doc-version" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Hedhje Në Qarkullim" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "mundësi zgjatimi" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "po kopjohen kartela mbulimi TeX" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "aktivizo zgjerime arbitrare, të përdorur kur është dhënë --full" -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "po kopjohen kartela shtesë" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "aktivizo zgjerimin %s, i përdorur kur është dhënë --full" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Kyç i panjohur formësimi: latex_elements[%r], u shpërfill." +msgid "%s is not a directory." +msgstr "%s s’është drejtori." + +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "Po xhirohet apidoc" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "Mundësi e panjohur teme: latex_theme_options[%r], u shpërfill." +msgid "apidoc_modules item %i must be a dict" +msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "S’u arrit të merrej një “docname”!" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "Objekti apidoc_modules %i duhet të ketë një fushë 'path'" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" -msgstr "S’u arrit të merret “docname” për burimin %r!" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "Objekti apidoc_modules te 'path' %i duhet të jetë një varg" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "S’u gjet poshtëshënim për nyjë reference të dhënë %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "Objekti apidoc_modules %i 'path' s’është një dosje ekzistuese: %s" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r s’ka rregullimin \"theme\"" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "Objekti apidoc_modules %i duhet të ketë një fushë 'destination'" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r s’ka rregullimin \"%s\"" +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "Objekti apidoc_modules %i 'destination' duhet të jetë një varg" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "vazhduar nga faqja e mëparshme" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "Objekti apidoc_modules %i 'destination' duhet të jetë një shteg relativ" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "vazhdon në faqen pasuese" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "Objekti apidoc_modules %i s’mund të krijojë drejtorinë vendmbërritje: %s" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Joalfabetike" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "Objekti apidoc_modules %i '%s' duhet të jetë një vlerë e plotë" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Numra" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "Objekti apidoc_modules %i '%s' duhet të jetë një vlerë buleane" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "faqe" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "Objekti apidoc_modules %i ka fusha të papritura: %s" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "Argumente Fjalëkyçi" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "Objekti apidoc_modules %i '%s' duhet të jetë një sekuencë" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "u caktua vlerë e pavlefshme (mungon kllapë mbyllëse): %s" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "Objekti apidoc_modules %i '%s' duhet të përmbajë vargje" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "u caktua vlerë e pavlefshme (mungon kllapë hapëse): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "vetëpërmbledhje: s’u arrit të përcaktohet %r për t’u dokumentuar, u shfaq përjashtimi vijues:\n%s" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "shprehje vargu e keqformuar (mungon thonjëz mbyllëse): %s" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[vetëpërmbledhje] prodhim vetëpërmbledhje për: %s" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "shprehje vargu e keqformuar (mungon thonjëz hapëse): %s" +msgid "[autosummary] writing to %s" +msgstr "[vetëpërmbledhje] po shkruhet te %s" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Shembull" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] s’u arrit të importohej %s.\nNdihmëza të mundshme:\n%s" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Shembuj" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nProdhoni ReStructuredText duke përdorur direktiva vetëpërmbledhje.\n\nsphinx-autogen është një ndërfaqe pamore për sphinx.ext.autosummary.generate. Prodhon\nkartela reStructuredText nga direktiva vetëpërmbledhjeje që përmbahen te\nkartelat e dhëna.\n\nFormati i direktivës vetëpërmbledhje dokumentohet te\nmoduli Python ``sphinx.ext.autosummary`` dhe mund të lexohet duke përdorur::\n\n pydoc sphinx.ext.autosummary\n" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Shënime" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "kartela burim për të cilat të krijohen kartela rST" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Parametra të Tjerë" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "drejtori ku të vendosen krejt përfundimet" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "prapashtesë parazgjedhje për kartela (parazgjedhje: %(default)s)" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Referenca" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "drejtori gjedhesh vetjake (parazgjedhje: %(default)s)" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Sinjalizime" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "pjesë të importuara të dokumentit (parazgjedhje: %(default)s)" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "dokumentoni saktësisht pjesët te moduli __all__ attribute. (parazgjedhje: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "referenca vetëpërmbledhjeje përjashtuan dokumentin %r. U shpërfill." -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "vetëpërmbledhje: s’u gjet kartelë stub %r. Kontrolloni rregullimin tuaj autosummary_generate." -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3668,548 +3722,585 @@ msgid "" "%s" msgstr "përmbledhje e automatizuar: s’u arrit të importohej %s.\nNdihmëza të mundshme:\n%s" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "s’u arrit të përtypej emri %s" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "s’u arrit të importohej objekti %s" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: s’u gjet kartelë: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "veçoria e përmbledhjes së automatizuar prodhon kartela .rst së brendshmi. Por source_suffix juaj nuk përmban .rst. U anashkalua." -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "vetëpërmbledhje: s’u arrit të përcaktohet %r për t’u dokumentuar, u shfaq përjashtimi vijues:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "Identifikues i pavlefshëm projekti intersphinx `%r` te intersphinx_mapping. Identifikuesit e projektit duhet të jenë vargje jo të zbrazët." -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[vetëpërmbledhje] prodhim vetëpërmbledhje për: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "Vlerë e pavlefshme `%r` në intersphinx_mapping[%r]. Pritej një dyshe elementësh, ose një listë." -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[vetëpërmbledhje] po shkruhet te %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "Vlerë e pavlefshme `%r` te intersphinx_mapping[%r]. Vlerat duhet të jenë një dyshe (URI e synuar, vendndodhje depoje)." -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] s’u arrit të importohej %s.\nNdihmëza të mundshme:\n%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "Vlerë e pavlefshme URI objektivi `%r` te intersphinx_mapping[%r][0]. URI-t objektiv duhet të jenë vargje unikë jo të zbrazët." -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\nProdhoni ReStructuredText duke përdorur direktiva vetëpërmbledhje.\n\nsphinx-autogen është një ndërfaqe pamore për sphinx.ext.autosummary.generate. Prodhon\nkartela reStructuredText nga direktiva vetëpërmbledhjeje që përmbahen te\nkartelat e dhëna.\n\nFormati i direktivës vetëpërmbledhje dokumentohet te\nmoduli Python ``sphinx.ext.autosummary`` dhe mund të lexohet duke përdorur::\n\n pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "Vlerë e pavlefshme URI objektivi `%r` te intersphinx_mapping[%r][0]. URI-t objektiv duhet të jenë vargje unikë jo të zbrazët (tjetër instancë në intersphinx_mapping[%r]. " -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "kartela burim për të cilat të krijohen kartela rST" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "Vlerë e pavlefshme vendndodhjeje inventari `%r` te intersphinx_mapping[%r][1]. Vendndodhjet e inventarëve duhet të jepen si vargje jo të zbrazët, ose si “None”." -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "drejtori ku të vendosen krejt përfundimet" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "Formësim i pavlefshëm për `intersphinx_mapping` (1 gabim)." + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "Formësim i pavlefshëm për `intersphinx_mapping` (%s gabime)." + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "Pas normalizimit u shtua një zë i pavlefshëm për intersphinx_mapping." + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "po ngarkohet depo intersphinx '%s' që prej %s …" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "u hasën disa probleme me disa nga inventare, por kishin alternativa funksionale:" + +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "prapashtesë parazgjedhje për kartela (parazgjedhje: %(default)s)" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "inventari intersphinx është lëvizur: %s -> %s" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "drejtori gjedhesh vetjake (parazgjedhje: %(default)s)" +msgid "(in %s %s)" +msgstr "(në %s %s)" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "pjesë të importuara të dokumentit (parazgjedhje: %(default)s)" +msgid "(in %s)" +msgstr "(te %s)" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:112 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "dokumentoni saktësisht pjesët te moduli __all__ attribute. (parazgjedhje: %(default)s)" +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "depo '%s': u gjetën përsëdytje për %s:%s" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" -msgstr "Hiq te drejtoria përfundim kartela ekzistuese që s’qenë prodhuar" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "inventar '%s': u gjetën përputhje të shumta për %s:%s" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:387 #, python-format -msgid "Failed to remove %s: %s" -msgstr "S’u arrit të hiqet %s: %s" +msgid "inventory for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nShih në mënyrë rekursive te për module dhe\npaketa Python dhe krijo një kartelë reST me direktiva\nautomodulesh për paketë te .\n\ns mund të jetë shprehje kartelash dhe/ose\ndrejtorish që mund të përjashtohen nga prodhimi.\n\nShënim: Si parazgjedhje, ky programth s’do të anashkalojë\nkartela të krijuara tashmë." +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "parashtesë e pavlefshme ndër-reference të jashtme: %r" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "shteg për te modul për te dokumenti" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "s’u gjet përkatësi për ndër-referencë të jashtme: %r" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "kartelë fnmatch-style dhe/ose rregullsi drejtorish për t’u përjashtuar prej prodhimit" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "s’u gjet objektiv reference të jashtme %s:%s: %s" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "drejtori ku të vendosen krejt përfundimet" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "gabim gjatë formatimi nënshkrimesh për %s: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "thellësi maksimum nënmodulesh për shfaqje te TEL (parazgjedhje: 4)" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "Po shpërfillet __all__ i pavlefshëm në modulin %s: %r" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "mbishkruaj kartela ekzistuese" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "S’u arrit të merret një nënshkrim funksioni për %s: %s" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "ndiq lidhje simbolike. E fuqishme, kur ndërthuret me collective.recipe.omelette." +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "S’u arrit të përditësohet nënshkrim për %r: s’u gjet parametër: %s" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "xhiroje programthin pa krijuar kartela" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "S’u arrit të përtypet type_comment për %r: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "vendose dokumentim për çdo modul në faqe më vete" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "U gjet __slots__ i pavlefshëm në %s. U shpërfill." -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "përfshi modulet \"_private\"" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "gabim gjatë formatimi argumentesh për %s: %s" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "emër kartele për tryezën e lëndës (parazgjedhje: modules)" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "S’u arrit të merrej nënshkrim konstruktori për %s: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "mos krijo një kartelë tryeze lënde" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "S’u arrit të merre një nënshkrim metode për %s: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "mos krijo krye për paketat modul/paketë (për shembull, kur ato i përmban tashmë docstrings)" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "S’u arrit të merret nënshkrim për %s: %s" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "vendose dokumentimin e modulit përpara dokumentimit të nënmodulit" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "S’u arrit të përtypej një vlerë parazgjedhje argumenti për %r: %s" -#: ext/apidoc/_cli.py:152 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "interpreto shtigje modulesh sipas specifikimeve impicite PEP-0420 për emërhapësira" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "atributi %s shfaqet te :members:, por mungon, ngaqë s’u gjend te objekti %r" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." -msgstr "Listë mundësish, ndarë me presje, për t’ia kaluar direktivës “automodule” (ose përdorni SPHINX_APIDOC_OPTIONS)." - -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "prapashtesë kartele (parazgjedhje: rst)" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: s’u arrit të përcaktohet %s.%s (%r) për t’u dokumentuar, u shfaq përjashtimi vijues:\n%s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "prodho me sphinx-quickstart një projekt të plotë" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "shto module_path pas sys.path, e përdorur kur është dhënë --full" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ should duhet të jetë një listë vargjesh, jo %r (në module %s) -- ignoring __all__" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "emër projekti (parazgjedhje: emër moduli rrënjë)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "u përmend atribut që mungon në :members: mundësi: modul %s, atributi %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "autor(ë) projekti, e përdorur kur është dhënë --full" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "atribut %s që mungon te objekt %s" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "version projekti, e përdorur kur është dhënë --full" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "alias për TypeVar(%s)" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "hedhje në qarkullim e projektit, e përdorur kur është dhënë --full, si parazgjedhje merr --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "s’u arrit të lexohet kartelë e dëmtuar hollësish montimi (version i panjohur)" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "mundësi zgjatimi" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "s’u arrit të lexohet kartelë e dëmtuar hollësish montimi (mungon zë formësimi)" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" -msgstr "aktivizo zgjerime arbitrare, të përdorur kur është dhënë --full" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "s’u arrit të lexohet kartelë e dëmtuar hollësish montimi (mungon zë etiketash)" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "aktivizo zgjerimin %s, i përdorur kur është dhënë --full" +msgid "The HTML pages are in %(outdir)s." +msgstr "Faqet HTML gjenden në %(outdir)s." -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s s’është drejtori." - -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" -msgstr "" +msgid "Failed to read build info file: %r" +msgstr "S’u arrit të lexohet kartelë të dhënash montimi: %r" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" -msgstr "" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "mospërputhje build_info-sh, po kopjohet .buildinfo te .buildinfo.bak" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" -msgstr "" +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "po prodhohet [html]: " -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "Objekti apidoc_modules te 'path' %i duhet të jetë një varg" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "gjedhja %s është ndryshuar që prej montimit të mëparshëm, do të riprodhohen krejt dokumentet" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" -msgstr "Objekti apidoc_modules %i 'path' s’është një dosje ekzistuese: %s" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "tregues" -#: ext/apidoc/_extension.py:133 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +msgid "Logo of %s" +msgstr "Stemë e %s" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "Objekti apidoc_modules %i 'destination' duhet të jetë një varg" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "pasuesi" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "Objekti apidoc_modules %i 'destination' duhet të jetë një shteg relativ" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "i mëparshmi" -#: ext/apidoc/_extension.py:157 -#, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "Objekti apidoc_modules %i s’mund të krijojë drejtorinë vendmbërritje: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "po prodhohen tregues" -#: ext/apidoc/_extension.py:178 -#, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "Objekti apidoc_modules %i '%s' duhet të jetë një vlerë e plotë" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "po shkruhen faqe shtesë" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "Objekti apidoc_modules %i '%s' duhet të jetë një vlerë buleane" +msgid "cannot copy image file '%s': %s" +msgstr "s’kopjohet dot kartelë figurë '%s': %s" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "po kopjohen kartela të shkarkueshme… " -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" -msgstr "Objekti apidoc_modules %i '%s' duhet të jetë një sekuencë" +msgid "cannot copy downloadable file %r: %s" +msgstr "s’kopjohet dot kartelë e shkarkueshme %r: %s" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "Objekti apidoc_modules %i '%s' duhet të përmbajë vargje" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "S’u arrit të kopjohet një kartelë te drejtoria 'static' e temës: %s: %r" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:871 #, python-format -msgid "Would create file %s." -msgstr "Do të krijonte kartelë %s." +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "S’u arrit të kopjohet një kartelë te html_static_file: %s: %r" -#: ext/intersphinx/_resolve.py:49 -#, python-format -msgid "(in %s v%s)" -msgstr "(te %s v%s)" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "po kopjohen kartela statike" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:923 #, python-format -msgid "(in %s)" -msgstr "(te %s)" +msgid "cannot copy static file %r" +msgstr "s’kopjohet dot kartelë statike %r" -#: ext/intersphinx/_resolve.py:108 -#, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "depo '%s': u gjetën përsëdytje për %s:%s" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "po kopjohen kartela ekstra" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:938 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "inventar '%s': u gjetën përputhje të shumta për %s:%s" +msgid "cannot copy extra file %r" +msgstr "s’kopjohet dot kartelë ekstra %r" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:944 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "Failed to write build info file: %r" +msgstr "S’u arrit të shkruhet kartelë të dhënash montimi: %r" -#: ext/intersphinx/_resolve.py:392 -#, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "parashtesë e pavlefshme ndër-reference të jashtme: %r" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "treguesi i kërkimi s’u ngarkua dot, por jo krejt dokumentet do të montohen: treguesi do të jetë i paplotë." -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1038 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "s’u gjet përkatësi për ndër-referencë të jashtme: %r" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "faqja %s ka përputhje me dy rregullsi te html_sidebars: %r dhe %r" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1204 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "s’u gjet objektiv reference të jashtme %s:%s: %s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "ndodhi një gabim Unikod, kur vizatohej faqja %s. Ju lutemi, siguroni që krejt vlerat e formësimit që përmbajnë lëndë jo-ASCII të jenë vargje Unikod." -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "Identifikues i pavlefshëm projekti intersphinx `%r` te intersphinx_mapping. Identifikuesit e projektit duhet të jenë vargje jo të zbrazët." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "Tema '%s' s’e mbulon këtë version të Sphinx-it, ngaqë përdor fushën 'style' në gjedhe HTML, çka u nxor nga përdorimi me Sphinx 5.1 dhe u hoq me Sphinx 7.0. Në vend të kësaj, tema duhet përditësuar që të përdorë fushën 'styles'. Shihni https://www.sphinx-doc.org/en/master/development/html_themes/templating.html#styles" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "Vlerë e pavlefshme `%r` në intersphinx_mapping[%r]. Pritej një dyshe elementësh, ose një listë." +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Ndodhi një gabim gjatë vizatimit të faqes %s.\nArsye: %r" + +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1266 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "Vlerë e pavlefshme `%r` te intersphinx_mapping[%r]. Vlerat duhet të jenë një dyshe (URI e synuar, vendndodhje depoje)." +msgid "dumping search index in %s" +msgstr "po shkruhet lënda e treguesit të kërkimeve në %s" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "Vlerë e pavlefshme URI objektivi `%r` te intersphinx_mapping[%r][0]. URI-t objektiv duhet të jenë vargje unikë jo të zbrazët." +msgid "invalid js_file: %r, ignored" +msgstr "js_file e pavlefshme: %r, u shpërfill" + +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Janë të regjistruar plot math_renderers. Por s’u përzgjodh math_renderer." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "Vlerë e pavlefshme URI objektivi `%r` te intersphinx_mapping[%r][0]. URI-t objektiv duhet të jenë vargje unikë jo të zbrazët (tjetër instancë në intersphinx_mapping[%r]. " +msgid "Unknown math_renderer %r is given." +msgstr "U dha math_renderer %r i panjohur." -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "Vlerë e pavlefshme vendndodhjeje inventari `%r` te intersphinx_mapping[%r][1]. Vendndodhjet e inventarëve duhet të jepen si vargje jo të zbrazët, ose si “None”." +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "zëri %r i html_extra_path entry është vendosur jashtë outdir-it" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "Formësim i pavlefshëm për `intersphinx_mapping` (1 gabim)." +#: builders/html/__init__.py:1370 +#, python-format +msgid "html_extra_path entry %r does not exist" +msgstr "zëri html_extra_path %r s’ekziston" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1385 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "Formësim i pavlefshëm për `intersphinx_mapping` (%s gabime)." +msgid "html_static_path entry %r is placed inside outdir" +msgstr "zëri %r i html_extra_path entry është vendosur brenda outdir-it" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "Pas normalizimit u shtua një zë i pavlefshëm për intersphinx_mapping." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" +msgstr "zëri html_static_path %r s’ekziston" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "po ngarkohet depo intersphinx '%s' që prej %s …" +msgid "logo file %r does not exist" +msgstr "kartela stemë %r s’ekziston" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "kartela favikonë %r s’ekziston" + +#: builders/html/__init__.py:1425 +#, python-format msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "u hasën disa probleme me disa nga inventare, por kishin alternativa funksionale:" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "Vlerat në 'html_sidebars' duhet të jetë një listë vargjesh. Të paktën një rregullsi ka një vlerë varg: %s. Ndryshojeni në `html_sidebars = %r`." -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "s’u arrit të kapej ndonjë inventar me problemet vijuese:" +#: builders/html/__init__.py:1438 +msgid "" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 s’mbulohet më nga Sphinx-i. (U pikas “html4_writer=True” te mundësi formësimi)" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "inventari intersphinx është lëvizur: %s -> %s" +msgid "%s %s documentation" +msgstr "Dokumentim i %s %s" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "vlerë e pavlefshme mundësie për member-order: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r s’ka rregullimin \"theme\"" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "vlerë e pavlefshme për mundësinë class-doc-from: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r s’ka rregullimin \"%s\"" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "nënshkrim i pavlefshëm për auto%s (%r)" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "S’u arrit të merrej një “docname”!" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "gabim gjatë formatimi argumentesh për %s: %s" +msgid "Failed to get a docname for source %r!" +msgstr "S’u arrit të merret “docname” për burimin %r!" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc: s’u arrit të përcaktohet %s.%s (%r) për t’u dokumentuar, u shfaq përjashtimi vijues:\n%s" +msgid "No footnote was found for given reference node %r" +msgstr "S’u gjet poshtëshënim për nyjë reference të dhënë %r" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "Kartelat LaTeX gjenden në %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "s’dihet cili modul të importohet për vetëdokumentim të %r (provoni të vendosni te dokumenti një direktivë \"module\" ose \"currentmodule\", ose të jepni shprehimisht një emër moduli)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nXhironi 'make' te ajo drejtori që të xhirohen këto përmes (pdf)latex\n(që të bëhet kjo automatikisht, përdorni `make latexpdf' këtu)." -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "s’u gjet vlerë formësimi \"texinfo_documents\"; s’do të shkruhet ndonjë dokument" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "gabim gjatë formatimi nënshkrimesh për %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "vlera e formësimit \"texinfo_documents\" i referohet një dokumenti të panjohur %s" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" në emër automoduli nuk ka kuptim" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "po kopjohen kartela mbulimi TeX" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "po kopjohen kartela shtesë" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ should duhet të jetë një listë vargjesh, jo %r (në module %s) -- ignoring __all__" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Kyç i panjohur formësimi: latex_elements[%r], u shpërfill." -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "u përmend atribut që mungon në :members: mundësi: modul %s, atributi %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Mundësi e panjohur teme: latex_theme_options[%r], u shpërfill." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "S’u arrit të merret një nënshkrim funksioni për %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "S’u arrit të merrej nënshkrim konstruktori për %s: %s" +msgid "image file not readable: %s" +msgstr "kartelë figure jo e lexueshme: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "Baza: %s" +msgid "image file %s not readable: %s" +msgstr "kartelë figure %s jo e lexueshme: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "atribut %s që mungon te objekt %s" +msgid "download file not readable: %s" +msgstr "kartelë shkarkimi jo e lexueshme: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "alias për %s" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "u pikasën referenca rrethore toctree-je, po shpërfllen: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "alias për TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree përmban referencë ndaj dokumenti %r që s’ka titull: s’do të prodhohet ndonjë lidhje" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "S’u arrit të merre një nënshkrim metode për %s: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "toctree përmban referencë dokumenti të papërfshirë %r" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "U gjet __slots__ i pavlefshëm në %s. U shpërfill." +msgid "toctree contains reference to non-existing document %r" +msgstr "toctree përmban referencë ndaj dokumenti %r që s’ekziston" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "S’u arrit të përtypej një vlerë parazgjedhje argumenti për %r: %s" +msgid "see %s" +msgstr "shihni %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "S’u arrit të përditësohet nënshkrim për %r: s’u gjet parametër: %s" +msgid "see also %s" +msgstr "shihni edhe %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "S’u arrit të përtypet type_comment për %r: %s" +msgid "unknown index entry type %r" +msgstr "lloj i panjohur zëri treguesi: %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sr/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sr/LC_MESSAGES/sphinx.mo index 7d42c15ae649d16c524ed8eee22fd4cd21e6fe9a..4c5e0597607505c7092616c2bc573f15161c82ae 100644 GIT binary patch delta 2303 zcmYM!drZ}37{Kutgdi?rNJw;ygA{4x1#c4*vT&lV=`3dx+qzIx%W@=hUY5V?vLb6; z?6#IcTa;bKKc~%>vz*38PXBPG&1O!T-DqlAmaDe)dC&WM-sgRO@8PwD zXBQ;LOLJZd{B7Z#;@z2J^#9-f{16@_Jb<}4_regy;e6y3?&ZVrH8>jA<3;!k7GifC ze;><$hhMmGfh@LFfu8Rwuo z{RAyw0A279n&%`o;m^hN-$awS+l8)2cd!UO6E~rU?JhLolXx?}fFp1S?Z|0N-O+E+ zztEj$vx@l((D@}XPN8Qaspi7OGmv{i6FPATx`SKL#H*ug(T+V7zwbgGXLubwbnl@H z?nXP&kLEuX{T9u88mqH;{#iudF;G)Byt4wb_{>M4otTFIJv&SjH=~K~L<`v%$DhEf zh_@rJaEOn2_#^rVCUFx_C(OrcT#n`b{?~DFB?Hgmc-(;$7f#?McouDC5m_vx3{6mp z?qm-7sFtAfThR`7Vgqi*D{v>y#X+>daXjyl{{CliVWJkCg{^3Ut!QCAF&;n;csPu< z^d!3QsW^T<#(7lX{iS$0R-rqehrGfvK795MU_#f!BV72O?G9$bKa8XZ=PK#Hm6kBuffRZOXQByOV%&x<*og!9 zDmwpmesk_@BN}f(Tic6mxD&6&Dpq%6H=y%Z#`wOm^xs3XfdMP+#kX)5+S)rV8*cUe zIF)!UTFAR-=MJD9_$GP|J-qp}fwe;&x}gQ=MpvNgv|}x9O1QAH-uT6b=)(JB{3W&% zpTP!Pp5_;U&!LCvGrR_e&_ZfCnJ(CXG$|}X7jDN1xF&wT4LR2#>Eq&BF8bpaxs>k> zu1ic RpPqTRv@a(!d(3Uc{{rym&@uo3 delta 2346 zcmYM!Z)nw37{KwP?eBGSHnW*_?apjl{$b0FT2?ADSZ*B+xchzXIrsdY=Q+>s+4OneM^g%`Lu--(lP8{UZT;RHM! z=lk(y#;0)-4r3~Wboi4u-Y_*WcEfCR;oa!Mhp-4&;Z$tLJbV*P*n=iIg4uW+E$Adp z$FGqTVK{mjCo=vUbI2cZxx1K&LY#tCScP?%k7;D{VLNh9*o6k(izYgO7WM^Nz!19r zLL86ac*a-J=3YY!8pTZVhitY}fca>GWE__vYeIFLuZb>01Fb|0Xhah?p#`^~1-yiA z=v6fC9<*bfS#cW zbbT!vw*l?g6KElg1@zy_H!@*Go8!Vxw1BR-up153i+1WT8t8Z&e~zA+)9AM-gXk7e zjBczNJ;e2BoHc0t7W?lG+tD4oh90Kv=)wbN>yF?w>_=}rgBEZOE$AX9@d~=3Nd(m* zbmueB_$BE2IdPn>=8cEq0W@#}5+kfc7p_Nl@H`r@EBY4NvEA|WUgWWcqv)YKg(e(A zJMl9b|5|h$L3yP^f@?9~k0cJWV9`xuJ1ZfI&wMW0iDh{G*w2*h={63t` z_$2ZQm$=kmCX0Opb;wf+Phqj&|2E$63f){v@gSDrw@9(!AG`%8a<_@f(3V!A1>KMS zek?)u5Z0oPY%_Y_RbW`q2Uh;`lPU zeiUtO9@$Jh1)WdDaXEVb0-S}lXa}CfH2+}>7tg>hr2F9`^cU_^G|&&xU!s2@#fKbD z$z$4-vy&g5HloMWu^C^;~MlZu0md+HIBQ` zggrQbpP}ow@!fN0`_OS8+Sx%|gXeKB){@=AHzn!6H+05{x6#A%0b1!G?#GL0YhRx+ z*6N)&pYi)>A>W{#yNY%o!LBrk9^wilcUX>YXd}AOjx=vfv;#}<09x5#oF76H{~pKx zVl(5S)YxHq87mndMGw_)cpnyWA}!!yG~sHbNudo*yaVsV^t*Avm&id6XK)dY#QAxY z?+pu)CWLylL+j#vH(KD{IQ}?#41ENr;`k>t;Rw3Eh_(?g9cJ>z4lEv<2rJM9?Qy;X zJxsgNXZHzO$gjw;3Aude57R8P19Q;B+<-okCZuWMMGT2YpWBcsZCSm(sWi22Lu%90 qeP?q9#*I(4_w^)BWKXD=Kku&UR7J&t%F4dAg@-cyAgAb={Qm$fl-Q^M diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sr/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/sr/LC_MESSAGES/sphinx.po index f226b7a33..714562a38 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/sr/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/sr/LC_MESSAGES/sphinx.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Vladimir Milovanović , 2020\n" "Language-Team: Serbian (http://app.transifex.com/sphinx-doc/sphinx-1/language/sr/)\n" @@ -20,6 +20,127 @@ msgstr "" "Language: sr\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -34,127 +155,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Догађај %r већ постоји" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Непознат догађај: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Нема изворног директоријума (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Изворни и одредишни директоријум не могу бити једнаки" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Покрећем Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Овај пројекат захтева верзију Sphinx v%s или већу, не може се изградити инсталираном верзијом." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "учитавање превода [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "готово" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "Неуспешно: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -162,12 +310,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -175,82 +323,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "Конфигурациони директоријум не садржи conf.py датотеку (%s)." +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Преводилац за %r већ постоји" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "Конфигурациони директоријум не садржи conf.py датотеку (%s)." + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -258,468 +538,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Одељак %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Сл. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Табела %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Списак %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Пажња" + +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Догађај %r већ постоји" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Грешка" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Непознат догађај: %s" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Путоказ" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:234 +msgid "Important" +msgstr "Важно" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:235 +msgid "Note" +msgstr "Белешка" + +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: project.py:87 +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Савет" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Упозорење" + +#: builders/texinfo.py:41 #, python-format -msgid "Ignored unreadable document %r." +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:187 +#: builders/texinfo.py:85 #, python-format -msgid "Builder name %s not registered or available through entry point" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:197 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder name %s not registered" +msgid "processing %s" msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:235 +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (у " + +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "пребацивање слика... " + +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "Преводилац за %r већ постоји" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[изворни код]" - -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[документација]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Код модула" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Изворни код %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Преглед: код модула" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "" + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "све изворне датотеке" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"file %r given on command line is not under the source directory, ignoring" msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "ажурирање окружења: " + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "припремање докумената" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "пребацивање изворних датотека..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -740,9 +1176,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -777,6 +1214,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "План" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -864,879 +1329,960 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "План" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" + +#: ext/duration.py:139 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Аутор одељка: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[изворни код]" -#: directives/other.py:205 -msgid "Module author: " -msgstr "Аутор модула: " +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Аутор кода: " +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[документација]" -#: directives/other.py:209 -msgid "Author: " -msgstr "Аутор: " +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Код модула" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

Изворни код %s

" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Преглед: код модула" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:29 +#: domains/citation.py:75 #, python-format -msgid "The overview file is in %(outdir)s." +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:56 +#: domains/citation.py:92 #, python-format -msgid "no changes in version %s." +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/changes.py:72 -msgid "Module level" -msgstr "" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (уграђена функција)" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "пребацивање изворних датотека..." +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s метода)" -#: builders/changes.py:133 +#: domains/javascript.py:186 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (класа)" -#: builders/manpage.py:37 +#: domains/javascript.py:188 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (глобална променљива или константа)" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s (атрибут %s)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Аргументи" -#: builders/manpage.py:71 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:224 -#, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Резултат" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Тип резултата" -#: builders/__init__.py:232 +#: domains/javascript.py:374 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (module)" +msgstr "%s (модул)" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "функција" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "метода" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "класа" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "атрибут" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "модул" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:275 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "all of %d po files" +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:297 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "targets for %d po files that are specified" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:309 +#: domains/rst.py:224 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (role)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "све изворне датотеке" +#: domains/rst.py:234 +msgid "directive" +msgstr "директива" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:348 +#: domains/rst.py:262 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:361 +#: domains/changeset.py:32 #, python-format -msgid "%d source files given on command line" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:377 +#: domains/changeset.py:33 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "" +msgid "Changed in version %s" +msgstr "Измењено у верзији %s" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/changeset.py:34 #, python-format -msgid "building [%s]: " -msgstr "" +msgid "Deprecated since version %s" +msgstr "Застарело почевши од верзије %s" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:410 +#: domains/__init__.py:322 #, python-format -msgid "%d found" -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:412 -msgid "none found" +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "ажурирање окружења: " - -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:109 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:558 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "припремање докумената" - -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "" - -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/texinfo.py:89 +#: cmd/build.py:357 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (у " +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "пребацивање слика... " +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:134 #, python-format -msgid "unknown mimetype for %s, ignoring" +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:794 +#: cmd/quickstart.py:230 #, python-format -msgid "writing %s file..." +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/gettext.py:244 +#: cmd/quickstart.py:242 #, python-format -msgid "The message catalogs are in %(outdir)s." +msgid "Selected root path: %s" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Име пројекта" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Име(на) аутора" -#: transforms/i18n.py:272 -#, python-brace-format +#: cmd/quickstart.py:309 msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +"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" +"just set both to the same value." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Верзија пројекта" + +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Издање пројекта" + +#: cmd/quickstart.py:324 msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Језик пројекта" + +#: cmd/quickstart.py:340 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Суфикс изворне датотеке" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format -msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:531 +#, python-format +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "име пројекта" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "имена аутора" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "верзија пројекта" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "издање пројекта" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "језик пројекта" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "суфикс изворне датотеке" + +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "користи epub" + +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:671 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "enable %s extension" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/i18n.py:245 -#, python-format +#: cmd/quickstart.py:793 msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docfields.py:103 +#: cmd/quickstart.py:810 #, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +msgid "Invalid template variable: %s" msgstr "" -#: util/nodes.py:423 +#: directives/other.py:119 #, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/nodes.py:490 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "toctree contains ref to nonexisting file %r" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/nodes.py:706 +#: directives/other.py:156 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: directives/other.py:169 +#, python-format +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/display.py:87 -msgid "failed" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Аутор одељка: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Аутор модула: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Аутор кода: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Аутор: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: util/docutils.py:789 +#: directives/code.py:87 #, python-format -msgid "unknown node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: util/fileutil.py:76 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: util/fileutil.py:89 +#: directives/code.py:216 #, python-format -msgid "Writing evaluated template result to %s" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: util/rst.py:73 +#: directives/code.py:231 #, python-format -msgid "default role %s not found" +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:147 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:276 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "Object named %r not found in include file %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[слика: %s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[слика]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1745,11 +2291,15 @@ msgstr "[слика]" msgid "Index" msgstr "Индекс" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "" @@ -1759,78 +2309,44 @@ msgstr "" msgid "unimplemented node type: %r" msgstr "" -#: writers/latex.py:361 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" +msgid "[image: %s]" +msgstr "[слика: %s]" -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[слика]" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: writers/latex.py:591 +#: writers/html5.py:431 #, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" +msgid "numfig_format is not defined for %s" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: writers/html5.py:441 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Any IDs not assigned for %s node" msgstr "" -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" +msgid "unsupported rubric heading level: %s" msgstr "" #: writers/html5.py:636 @@ -1849,794 +2365,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" - -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (уграђена функција)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s метода)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (класа)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (глобална променљива или константа)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (атрибут %s)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Аргументи" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Резултат" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Тип резултата" - -#: domains/javascript.py:370 +#: writers/latex.py:386 #, python-format -msgid "%s (module)" -msgstr "%s (модул)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "функција" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "метода" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "класа" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "атрибут" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "модул" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" - -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" - -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Измењено у верзији %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Застарело почевши од верзије %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" - -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" -msgstr "" - -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "" - -#: domains/rst.py:234 -msgid "directive" -msgstr "директива" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" - -#: domains/rst.py:236 -msgid "role" -msgstr "" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" - -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/citation.py:92 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "" - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Пажња" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Грешка" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Путоказ" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Важно" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Белешка" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Савет" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Упозорење" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:133 +#: writers/latex.py:616 #, python-format -msgid "Please enter one of %s." -msgstr "" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:234 +#: writers/latex.py:1198 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:241 +#: writers/latex.py:1228 #, python-format -msgid "Selected root path: %s" -msgstr "" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Име пројекта" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Име(на) аутора" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Верзија пројекта" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Издање пројекта" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Језик пројекта" - -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Суфикс изворне датотеке" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:377 +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:526 +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:530 -#, python-format +#: transforms/i18n.py:275 +#, python-brace-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:537 +#: transforms/i18n.py:325 +#, python-brace-format msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:572 +#: transforms/i18n.py:347 +#, python-brace-format msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "име пројекта" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "имена аутора" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "верзија пројекта" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "издање пројекта" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "језик пројекта" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "суфикс изворне датотеке" - -#: cmd/quickstart.py:657 -msgid "master document name" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "користи epub" - -#: cmd/quickstart.py:663 -msgid "Extension options" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:670 +#: util/i18n.py:146 #, python-format -msgid "enable %s extension" +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:792 +#: util/nodes.py:462 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:809 +#: util/nodes.py:523 #, python-format -msgid "Invalid template variable: %s" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "настављено са претходне стране" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "наставак на следећој страни" -#: cmd/build.py:103 -msgid "path to output directory" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Симболи" -#: cmd/build.py:114 -msgid "general options" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Бројеви" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "страна" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Издање" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:157 +#: transforms/post_transforms/__init__.py:88 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Навигација" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Претрага" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/build.py:357 +#: themes/basic/layout.html:201 #, python-format -msgid "cannot open warning file '%s': %s" +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Претходни одељак" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "претходна глава" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "Садржај" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Следећи одељак" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Претрага" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "наредна глава" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Тражи" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Ова страница" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Изворни код" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Садржај" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Брза претрага" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Тражи" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2683,7 +2883,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2691,24 +2891,16 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Ова страница" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Садржај" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" +msgid "Search %(docstitle)s" msgstr "" -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Брза претрага" - #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" msgstr "" @@ -2717,57 +2909,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Претходни одељак" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "претходна глава" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Следећи одељак" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "наредна глава" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Навигација" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2784,21 +2925,21 @@ msgstr "" msgid "search" msgstr "тражи" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Садржај" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Резултати претраге" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2807,22 +2948,21 @@ msgstr[0] "" msgstr[1] "" msgstr[2] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Претражује се" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Припрема претраге..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", у " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2830,6 +2970,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Измене у верзији %(version)s — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2851,119 +2996,126 @@ msgstr "Друге измене" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 -msgid "Keyword-only parameters separator (PEP 3102)" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Параметри" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Променљиве" + +#: domains/python/_object.py:214 +msgid "Raises" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (у модулу %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (у модулу %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (уграђена променљива)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (уграђена класа)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (класа у %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (метода класе %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (статичка метода %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "модули" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Застарело" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "изузетак" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "метода класе" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "статичка метода" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Параметри" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Променљиве" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2975,746 +3127,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "тип" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "променљива" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "променљива окружења; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "документ" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "погледајте %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "такође погледајте %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Симболи" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" - -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/__init__.py:305 -#, python-format -msgid "%r reference target not found: %s" -msgstr "" - -#: transforms/post_transforms/images.py:79 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "" - -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:239 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:348 +#: domains/std/__init__.py:319 #, python-format -msgid "Failed to read build info file: %r" +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "индекс" - -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "напред" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "назад" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:735 +msgid "document" +msgstr "документ" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1124 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1153 #, python-format -msgid "cannot copy static file %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:949 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy extra file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:955 +#: domains/std/__init__.py:1456 #, python-format -msgid "Failed to write build info file: %r" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:178 +#, python-format +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1224 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Пример" + +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Примери" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Белешке" + +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Упозорења" + +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:1360 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:93 #, python-format -msgid "%s %s documentation" -msgstr "документација %s %s" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeX датотеке су у %(outdir)s." +msgid "Would create file %s." +msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\nПокрените 'make' у том директоријуму да бисте их пропустили кроз (pdf)latex\n(или употребите `make latexpdf' овде да се то одради аутоматски)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Издање" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "настављено са претходне стране" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "наставак на следећој страни" +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "" + +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" + +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "суфикс датотеке (подразумевани: rst)" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Бројеви" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "страна" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:197 -#, python-format -msgid "malformed string literal (missing opening quote): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Пример" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Примери" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" +msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Белешке" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." +msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Упозорења" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3722,7 +3654,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3737,481 +3669,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "суфикс датотеке (подразумевани: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(у %s)" + +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "(у %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" -msgstr "(у %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "индекс" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "напред" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "назад" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "документација %s %s" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX датотеке су у %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nПокрените 'make' у том директоријуму да бисте их пропустили кроз (pdf)latex\n(или употребите `make latexpdf' овде да се то одради аутоматски)." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "погледајте %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "такође погледајте %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sr@latin/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sr@latin/LC_MESSAGES/sphinx.mo index 842bb4b5de20f33adc721a4b6d646d8786497c20..140dee7ea99e56c08192cc37b154845b4c8d526a 100644 GIT binary patch delta 13 UcmX@Xa)M=pGZU-1o&gsF03HYfG5`Po delta 13 UcmX@Xa)M=pGZU+so&gsF03HJaF#rGn diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sr_RS/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sr_RS/LC_MESSAGES/sphinx.mo index b85fd378588d750f3382d68637f053e089ad1346..585d7246ff4b5c83d40c7dea32028457b0f1aae6 100644 GIT binary patch delta 13 UcmX@ia+qa<9TTg$o&gsF03B!pBLDyZ delta 13 UcmX@ia+qa<9TTgWo&gsF03BlkA^-pY diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.js b/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.js index 3458df2d4..8a0a28202 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.js +++ b/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.js @@ -1,63 +1,63 @@ Documentation.addTranslations({ "locale": "sv", "messages": { - "%(filename)s — %(docstitle)s": "", - "© %(copyright_prefix)s %(copyright)s.": "", - ", in ": "", + "%(filename)s — %(docstitle)s": "%(filename)s - %(docstitle)s", + "© %(copyright_prefix)s %(copyright)s.": "\u00a9 %(copyright_prefix)s %(copyright)s.", + ", in ": ", i ", "About these documents": "Om dessa dokument", - "Automatically generated list of changes in version %(version)s": "Automatiskt genererad lista \u00f6ver f\u00f6r\u00e4ndringar i version %(version)s", - "C API changes": "F\u00f6r\u00e4ndringar i C-API", - "Changes in Version %(version)s — %(docstitle)s": "", - "Collapse sidebar": "D\u00f6lj sidolist", - "Complete Table of Contents": "Komplett Inneh\u00e5llsf\u00f6rteckning", + "Automatically generated list of changes in version %(version)s": "Automatiskt genererad lista \u00f6ver \u00e4ndringar i version %(version)s", + "C API changes": "C API-\u00e4ndringar", + "Changes in Version %(version)s — %(docstitle)s": "\u00c4ndringar i version %(version)s - %(docstitle)s", + "Collapse sidebar": "D\u00f6lja sidof\u00e4ltet", + "Complete Table of Contents": "Fullst\u00e4ndig inneh\u00e5llsf\u00f6rteckning", "Contents": "Inneh\u00e5ll", - "Copyright": "Copyright", - "Created using Sphinx %(sphinx_version)s.": "", - "Expand sidebar": "Expandera sidolist", - "Full index on one page": "Hela inneh\u00e5llsf\u00f6rteckningen p\u00e5 en sida", - "General Index": "Huvudindex", - "Global Module Index": "Global Modulindex", - "Go": "G\u00e5", - "Hide Search Matches": "D\u00f6lj S\u00f6kresultat", + "Copyright": "Upphovsr\u00e4tt", + "Created using Sphinx %(sphinx_version)s.": "Skapad med hj\u00e4lp av Sphinx %(sphinx_version)s.", + "Expand sidebar": "Visa sidof\u00e4ltet", + "Full index on one page": "Fullst\u00e4ndigt index p\u00e5 en sida", + "General Index": "Allm\u00e4nt index", + "Global Module Index": "Globalt modulindex", + "Go": "Start", + "Hide Search Matches": "D\u00f6lj s\u00f6ktr\u00e4ffar", "Index": "Index", - "Index – %(key)s": "", - "Index pages by letter": "Inneh\u00e5llsf\u00f6rteckning per inledande bokstav", - "Indices and tables:": "Index och tabeller", - "Last updated on %(last_updated)s.": "Senast uppdaterad %(last_updated)s.", - "Library changes": "F\u00f6r\u00e4ndringar i bibliotek", - "Navigation": "Navigation", - "Next topic": "N\u00e4sta titel", - "Other changes": "\u00d6vriga f\u00f6r\u00e4ndringar", + "Index – %(key)s": "Index - %(key)s", + "Index pages by letter": "Indexsidor per bokstav", + "Indices and tables:": "Index och tabeller:", + "Last updated on %(last_updated)s.": "Senast uppdaterad den %(last_updated)s.", + "Library changes": "F\u00f6r\u00e4ndringar i biblioteket", + "Navigation": "Navigering", + "Next topic": "N\u00e4sta \u00e4mne", + "Other changes": "\u00d6vriga \u00e4ndringar", "Overview": "\u00d6versikt", - "Please activate JavaScript to enable the search\n functionality.": "Var god aktivera JavaScript f\u00f6r s\u00f6kfunktionalitet.", - "Preparing search...": "", - "Previous topic": "F\u00f6reg\u00e5ende titel", + "Please activate JavaScript to enable the search\n functionality.": "Aktivera JavaScript f\u00f6r att aktivera s\u00f6k-\n funktionalitet.", + "Preparing search...": "F\u00f6rbereder s\u00f6kning...", + "Previous topic": "F\u00f6reg\u00e5ende \u00e4mne", "Quick search": "Snabbs\u00f6k", "Search": "S\u00f6k", "Search Page": "S\u00f6ksida", "Search Results": "S\u00f6kresultat", "Search finished, found one page matching the search query.": [ - "", - "" + "S\u00f6kningen \u00e4r klar, hittade en sida som matchar s\u00f6kfr\u00e5gan.", + "S\u00f6kningen \u00e4r klar, hittade ${resultCount} sidor som matchar s\u00f6kfr\u00e5gan." ], - "Search within %(docstitle)s": "S\u00f6k bland %(docstitle)s", - "Searching": "", - "Searching for multiple words only shows matches that contain\n all words.": "", - "Show Source": "Visa k\u00e4llfil", - "Table of Contents": "", - "This Page": "Denna Sida", - "Welcome! This is": "", - "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.": "", - "all functions, classes, terms": "alla funktioner, klasser, villkor", - "can be huge": "kan bli stort", - "last updated": "", - "lists all sections and subsections": "lista \u00f6ver alla paragrafer och underparagrafer", - "next chapter": "N\u00e4sta kapitel", - "previous chapter": "F\u00f6reg\u00e5ende kapitel", - "quick access to all modules": "genv\u00e4g till alla moduler", + "Search within %(docstitle)s": "S\u00f6k inom %(docstitle)s", + "Searching": "S\u00f6ker", + "Searching for multiple words only shows matches that contain\n all words.": "Vid s\u00f6kning efter flera ord visas endast matchningar som inneh\u00e5ller\n alla ord.", + "Show Source": "Visa k\u00e4lla", + "Table of Contents": "Inneh\u00e5ll", + "This Page": "Den h\u00e4r sidan", + "Welcome! This is": "V\u00e4lkomna! Det h\u00e4r \u00e4r", + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.": "Din s\u00f6kning matchade inte n\u00e5gra dokument. Kontrollera att alla ord \u00e4r r\u00e4ttstavade och att du har valt tillr\u00e4ckligt m\u00e5nga kategorier.", + "all functions, classes, terms": "alla funktioner, klasser, termer", + "can be huge": "kan vara enorma", + "last updated": "senast uppdaterad", + "lists all sections and subsections": "listar alla avsnitt och underavsnitt", + "next chapter": "n\u00e4sta kapitel", + "previous chapter": "f\u00f6reg\u00e5ende kapitel", + "quick access to all modules": "snabb \u00e5tkomst till alla moduler", "search": "s\u00f6k", - "search this documentation": "s\u00f6k i det h\u00e4r dokumentet", - "the documentation for": "" + "search this documentation": "s\u00f6k i denna dokumentation", + "the documentation for": "dokumentationen f\u00f6r" }, "plural_expr": "(n != 1)" }); \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.mo index b525fd60a3e0407bc78901e710ff4131815d4ab0..10d15210d8fcd2055f4aa3f0a73dab9ee617f409 100644 GIT binary patch literal 93933 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 literal 6652 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 XOh&1f7ks(D6a`=J(3FBt6?XnF7Yq+~ diff --git a/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.po index 1a87ce5e0..7f798e178 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/sv/LC_MESSAGES/sphinx.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the Sphinx project. # # Translators: +# Daniel Nylander , 2025 msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-04 06:45+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" -"Last-Translator: FULL NAME \n" +"Last-Translator: Daniel Nylander , 2025\n" "Language-Team: Swedish (http://app.transifex.com/sphinx-doc/sphinx-1/language/sv/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -18,762 +19,1227 @@ msgstr "" "Language: sv\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "Gemensamma sårbarheter och exponeringar; CVE %s" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "ogiltigt CVE-nummer %s" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "Gemensam svaghetsuppräkning; CWE %s" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "ogiltigt CWE-nummer %s" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Förslag till förbättringar av Python; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "ogiltigt PEP-nummer %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "ogiltigt RFC-nummer %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "Andra temakonfigurationsavsnitt än [theme] och [options] stöds inte (försökte få ett värde från %r)." + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "inställningen %s.%s förekommer inte i någon av de sökta temakonfigurationerna" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "temaalternativ som inte stöds %r ges" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "fil %r på temasökvägen är inte en giltig zip-fil eller innehåller inget tema" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "inget tema med namnet %r hittades (saknas theme.toml?)" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "Temat %r har cirkulär nedärvning" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "Temat %r ärver från %r, som inte är ett inläst tema. Inlästa teman är: %s" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "Temat %r har för många förfäder" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "ingen temakonfigurationsfil hittades i %r" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "tema %r har inte tabellen \"tema\"" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "Tabellen %r tema \"[tema]\" är inte en tabell" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "Temat %r måste definiera inställningen \"theme.inherit\"" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "Tabellen \"[alternativ]\" för temat %r är inte en tabell" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "Inställningen \"theme.pygments_style\" måste vara en tabell. Tips: \"%s\"" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "flera filer hittades för dokumentet \"%s\": %s\nAnvänd %r för att bygga." + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "Ignorerade oläsligt dokument %r." + #: extension.py:58 #, python-format msgid "" "The %s extension is required by needs_extensions settings, but it is not " "loaded." -msgstr "" +msgstr "Tillägget %s krävs av needs_extensions-inställningarna, men det är inte inläst." #: extension.py:79 #, python-format msgid "" "This project needs the extension %s at least in version %s and therefore " "cannot be built with the loaded version (%s)." -msgstr "" +msgstr "Detta projekt behöver tillägget %s åtminstone i version %s och kan därför inte byggas med den inlästa versionen (%s)." + +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Pygments lexernamn %r är inte känt" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "Lexing av literal_block %r som \"%s\" resulterade i ett fel vid token: %r. Försöker igen i avslappnat läge." + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Händelse %r redan närvarande" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Okänt händelsenamn: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "Handläggare %r för händelse %r gjorde ett undantag" -#: application.py:212 +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" -msgstr "" +msgstr "Det går inte att hitta källkatalogen (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" -msgstr "" +msgstr "Utdatakatalogen (%s) är inte en katalog" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" -msgstr "" +msgstr "Källkatalogen och destinationskatalogen kan inte vara identiska" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" -msgstr "" +msgstr "Kör Sphinx v%s" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." -msgstr "" +msgstr "Det här projektet kräver minst Sphinx v%s och kan därför inte byggas med den här versionen." -#: application.py:297 +#: application.py:305 msgid "making output directory" -msgstr "" +msgstr "skapa utdatakatalog" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" -msgstr "" +msgstr "medan inställning av tillägget %s:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." -msgstr "" +msgstr "'setup' som den för närvarande definieras i conf.py är inte en Python callable. Ändra dess definition så att den blir en anropsbar funktion. Detta behövs för att conf.py ska fungera som ett Sphinx-tillägg." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " -msgstr "" +msgstr "läser in översättningar [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" -msgstr "" +msgstr "klar" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" -msgstr "" +msgstr "inte tillgänglig för inbyggda meddelanden" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" -msgstr "" +msgstr "läser in pickled-miljö" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" -msgstr "" +msgstr "misslyckades: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" -msgstr "" +msgstr "Ingen byggare vald, standard används: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." -msgstr "" +msgstr "bygget färdigställdes med problem." -#: application.py:441 +#: application.py:457 msgid "build succeeded." -msgstr "" +msgstr "bygget lyckades." -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." -msgstr "" +msgstr "bygget avslutades med problem, 1 varning (med varningar som behandlas som fel)." -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." -msgstr "" +msgstr "bygget färdigt med problem, 1 varning." -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." -msgstr "" +msgstr "bygget lyckades, 1 varning." -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." -msgstr "" +msgstr "bygget avslutades med problem, %s varningar (med varningar som behandlas som fel)." -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." -msgstr "" +msgstr "bygget slutfördes med problem, %s varningar." -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." -msgstr "" +msgstr "bygget lyckades, %s varningar." -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" -msgstr "" +msgstr "nodklass %r är redan registrerad, dess besökare kommer att åsidosättas" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" -msgstr "" +msgstr "direktiv %r är redan registrerat och kommer inte att åsidosättas" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" -msgstr "" +msgstr "roll %r är redan registrerad och kommer inte att åsidosättas" -#: application.py:1770 +#: application.py:1766 #, python-format 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 "" +msgstr "tillägget %s deklarerar inte om det är säkert för parallell läsning, förutsatt att det inte är det - be tilläggets författare att kontrollera och göra det explicit" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" -msgstr "" +msgstr "%s\\-tillägget är inte säkert för parallell läsning" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " "assuming it isn't - please ask the extension author to check and make it " "explicit" -msgstr "" +msgstr "tillägget %s deklarerar inte om det är säkert för parallellskrivning, förutsatt att det inte är det - be tilläggets författare att kontrollera och göra det explicit" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" -msgstr "" +msgstr "%s\\-tillägget är inte säkert för parallellskrivning" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" -msgstr "" +msgstr "gör serie %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Byggarklassen %s har inget \"name\"-attribut" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Byggare %r finns redan (i modul %s)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Byggarens namn %s inte registrerat eller tillgängligt via ingångspunkten" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Byggarens namn %s inte registrerat" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domän %s redan registrerad" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domän %s ännu inte registrerad" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "Direktivet %r är redan registrerat på domänen %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "Rollen %r är redan registrerad på domänen %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "Indexet %r är redan registrerat på domänen %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "Objekttypen %r är redan registrerad" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "Crossref_type %r är redan registrerad" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r är redan registrerat" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "source_parser för %r är redan registrerad" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "Source parser för %s inte registrerad" -#: config.py:366 +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "Översättare för %r finns redan" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "kwargs för add_node() måste vara en (visit, depart) funktionstupel: %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r redan registrerad" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "math renderer %s är redan registrerad" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "" +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "tillägget %r var redan sammanslaget med Sphinx sedan version %s; detta tillägg ignoreras." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Ursprungligt undantag:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "Det gick inte att importera tillägget %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "tillägget %r har ingen setup()-funktion; är det verkligen en Sphinx-modul?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Tillägget %s som används av detta projekt kräver minst Sphinx v%s; det kan därför inte byggas med denna version." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "tillägget %r returnerade ett objekt som inte stöds från sin setup()-funktion; den bör returnera None eller en metadatadictionary" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "`None` är inte en giltig filtyp för %r." + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "config-katalogen innehåller inte någon conf.py-fil (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" -msgstr "" +msgstr "'%s' måste vara '0' eller '1', fick '%s'" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" -msgstr "" +msgstr "kan inte åsidosätta konfigurationsinställningen för ordboken %r, ignorerar (använd %r för att ställa in enskilda element)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" -msgstr "" +msgstr "ogiltigt nummer %r för konfigurationsvärde %r, ignoreras" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" -msgstr "" +msgstr "kan inte åsidosätta konfigurationsinställningen %r med en typ som inte stöds, ignorerar" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" -msgstr "" +msgstr "okänt konfigurationsvärde %r i åsidosättande, ignoreras" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" -msgstr "" +msgstr "Inget sådant konfigurationsvärde: %r" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" -msgstr "" +msgstr "Konfigureringsvärde %r finns redan" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" -msgstr "" +msgstr "kan inte cachelagra ett konfigurationsvärde som inte kan plockas ut: %r (eftersom det innehåller ett funktions-, klass- eller modulobjekt)" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "Ogiltigt konfigurationsvärde hittades: 'language = None'. Uppdatera din konfiguration till en giltig språkkod. Återgår till 'en' (engelska)." + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" -msgstr "" +msgstr "Det finns ett syntaxfel i din konfigurationsfil: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "" +msgstr "Konfigurationsfilen (eller en av de moduler som den importerar) kallade sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" "\n" "%s" -msgstr "" +msgstr "Det finns ett programmerbart fel i din konfigurationsfil:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" -msgstr "" +msgstr "Misslyckades med att konvertera %r till en frozenset" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." -msgstr "" +msgstr "Konvertering av `source_suffix = %r` till `source_suffix = %r`." -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." -msgstr "" +msgstr "Konfigurationsvärdet `source_suffix' förväntar sig en ordbok, en sträng eller en lista med strängar. Fick `%r' istället (typ %s)." -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" -msgstr "" +msgstr "Sektion %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" -msgstr "" +msgstr "Fig. %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" -msgstr "" +msgstr "Tabell %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" -msgstr "" +msgstr "Listning %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." -msgstr "" +msgstr "Konfigurationsvärdet `{name}` måste vara ett av {candidates}, men `{current}` är givet." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." -msgstr "" +msgstr "Konfigurationsvärdet `{name}' har typen `{current.__name__}'; förväntat {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." -msgstr "" +msgstr "Konfigurationsvärdet `{name}' har typen `{current.__name__}', standard är `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." -msgstr "" +msgstr "primary_domain %r hittades inte, ignoreras." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." -msgstr "" +msgstr "Sphinx använder nu \"index\" som huvuddokument som standard. För att behålla beteendet före 2.0, ställ in \"master_doc = 'contents'\"." -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "" - -#: highlighting.py:209 -#, python-format +#: config.py:892 msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "Stöd för andra källkodningar än UTF-8 är föråldrat och kommer att tas bort i Sphinx 10. Kommentera gärna på https://github.com/sphinx-doc/sphinx/issues/13665 om detta orsakar problem." -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "ny konfiguration" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "konfiguration ändrad" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "tillägg ändrade" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "byggmiljöversionen är inte aktuell" -#: theming.py:228 +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "källkatalogen har ändrats" + +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "" +msgid "The configuration has changed (1 option: %r)" +msgstr "Konfigurationen har ändrats (1 alternativ: %r)" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "" +msgid "The configuration has changed (%d options: %s)" +msgstr "Konfigurationen har ändrats (%d alternativ: %s)" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "Konfigurationen har ändrats (%d alternativ: %s, ...)" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Denna miljö är inte kompatibel med den valda byggaren, välj en annan doctree-katalog." -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "Misslyckades med att skanna dokument i %s: %r" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" -msgstr "" +msgid "Domain %r is not registered" +msgstr "Domän %r är inte registrerad" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "dokumentet ingår inte i någon toctree" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "självrefererande toctree hittades. Ignoreras." -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "dokumentet refereras till i flera toctrees: %s, urval: %s <- %s" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Observera" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Försiktighet" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Fara" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Fel" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Ledtråd" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +#: locale/__init__.py:234 +msgid "Important" +msgstr "Viktigt" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: locale/__init__.py:235 +msgid "Note" +msgstr "Anteckning" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "" +#: locale/__init__.py:236 +msgid "See also" +msgstr "Se även" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "" +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tips" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "" +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Varning" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" -msgstr "" +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo-filerna finns i %(outdir)s." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nKör 'make' i den katalogen för att köra dessa genom makeinfo\n(använd 'make info' här för att göra det automatiskt)." -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "inget konfigurationsvärde för \"texinfo_documents\" hittades; inga dokument kommer att skrivas" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "\"texinfo_documents\" konfigurationsvärde refererar till okänt dokument %s" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" -msgstr "" +msgid "processing %s" +msgstr "bearbetning %s" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" -msgstr "" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "skriver" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" -msgstr "" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "slår upp referenser..." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (i " -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" -msgstr "" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "kopierar bilder... " -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" -msgstr "" +msgid "cannot copy image file %r: %s" +msgstr "kan inte kopiera bildfilen %r: %s" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "kopierar Texinfo-stödfiler" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" -msgstr "" +msgid "error writing file Makefile: %s" +msgstr "fel vid skrivning av filen Makefile: %s" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "" +msgid "The manual pages are in %(outdir)s." +msgstr "Manualsidorna finns i %(outdir)s." -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" -msgstr "" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "inget konfigurationsvärde för \"man_pages\" hittades; inga manussidor kommer att skrivas" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" -msgstr "" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" konfigurationsvärde refererar till okänt dokument %s" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML-sidan finns i %(outdir)s." -#: registry.py:543 -msgid "Original exception:\n" -msgstr "" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "sammanställning av enstaka dokument" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr "" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "skriva ytterligare filer" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Dummybyggaren genererar inga filer." -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "" +msgid "The message catalogs are in %(outdir)s." +msgstr "Meddelandekatalogerna finns i %(outdir)s." -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "" +msgid "building [%s]: " +msgstr "bygger [%s]: " -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." -msgstr "" +msgid "targets for %d template files" +msgstr "mål för %d mallfiler" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "läser mallar... " -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" -msgstr "" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "skriver meddelandekataloger... " -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Leta efter eventuella fel i ovanstående utdata eller i %(outdir)s/output.txt" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" -msgstr "" +msgid "broken link: %s (%s)" +msgstr "trasig länk: %s (%s)" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" +msgstr "Ankaret '%s' hittades inte" -#: roles.py:317 +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "linkcheck_allowed_redirects. Förväntade sig en ordbok." + +#: builders/linkcheck.py:799 #, python-format -msgid "invalid PEP number %s" -msgstr "" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "Misslyckades med att kompilera regex i linkcheck_allowed_redirects: %r %s" -#: roles.py:355 +#: builders/epub3.py:83 #, python-format -msgid "invalid RFC number %s" -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "EPub-filen finns i %(outdir)s." -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[source]" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "skriva nav.xhtml-filen..." -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "conf-värdet \"epub_language\" (eller \"language\") ska inte vara tomt för EPUB3" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[docs]" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "conf-värdet \"epub_uid\" ska vara XML NAME för EPUB3" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Modulkällkod" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "conf-värdet \"epub_title\" (eller \"html_title\") ska inte vara tomt för EPUB3" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" -msgstr "

Källkod för %s

" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "conf-värdet \"epub_author\" ska inte vara tomt för EPUB3" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Översikt: modulkällkod" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "conf-värdet \"epub_contributor\" ska inte vara tomt för EPUB3" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Alla moduler där källkod finns

" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "conf-värdet \"epub_description\" ska inte vara tomt för EPUB3" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "conf-värdet \"epub_publisher\" ska inte vara tomt för EPUB3" -#: ext/autosectionlabel.py:52 +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "conf-värdet \"epub_copyright\" (eller \"copyright\") ska inte vara tomt för EPUB3" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "conf-värdet \"epub_identifier\" ska inte vara tomt för EPUB3" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "conf-värdet \"version\" ska inte vara tomt för EPUB3" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "invalid css_file: %r, ignored" +msgstr "ogiltig css_fil: %r, ignorerad" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/xml.py:29 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "XML-filerna finns i %(outdir)s." -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "" +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 +#, python-format +msgid "error writing file %s: %s" +msgstr "fel vid skrivning av fil %s: %s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Pseudo-XML-filerna finns i %(outdir)s." -#: ext/doctest.py:118 +#: builders/_epub_base.py:223 #, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "" +msgid "duplicated ToC entry found: %s" +msgstr "duplicerad ToC-post hittades: %s" -#: ext/doctest.py:124 +#: builders/_epub_base.py:436 #, python-format -msgid "'%s' is not a valid option." -msgstr "" +msgid "cannot read image file %r: copying it instead" +msgstr "kan inte läsa bildfilen %r: kopiera den istället" -#: ext/doctest.py:139 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "" +msgid "cannot write image file %r: %s" +msgstr "kan inte skriva bildfil %r: %s" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Pillow hittades inte - kopiering av bildfiler" -#: ext/doctest.py:297 +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "skriva mimetype-fil ..." + +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "skriver filen META-INF/container.xml..." + +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "skriva innehåll.opf-fil..." + +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "okänd mimetype för %s, ignorerar" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "noden har en ogiltig nivå" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "skriver filen toc.ncx..." + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "skriver %s fil ..." + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "Textfilerna finns i %(outdir)s." + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "en lämplig bild för %s byggare hittades inte: %s (%s)" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "en lämplig bild för %s byggare hittades inte: %s" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "bygger [mo]: " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "skriver utdata... " + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "alla %d po-filer" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "mål för %d po-filer som anges" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "mål för %d po-filer som är föråldrade" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "alla källfiler" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "filen %r som anges på kommandoraden finns inte, " + +#: builders/__init__.py:342 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "filen %r som anges på kommandoraden finns inte i källkatalogen, ignoreras" -#: ext/doctest.py:457 +#: builders/__init__.py:353 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "fil %r som anges på kommandoraden är inte ett giltigt dokument, ignoreras" -#: ext/doctest.py:568 +#: builders/__init__.py:366 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "" +msgid "%d source files given on command line" +msgstr "%d källfiler anges på kommandoraden" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "mål för %d källfiler som är föråldrade" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "letar efter nu föråldrade filer... " + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "%d hittades" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "ingen hittades" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "miljö för betning" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "kontroll av konsistens" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "inga mål är inaktuella." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "uppdaterar miljön: " + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "%s tillagd, %s ändrad, %s borttagen" -#: ext/imgmath.py:162 +#: builders/__init__.py:536 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "Sphinx kan inte läsa in huvuddokumentet (%s) eftersom det matchar ett inbyggt uteslutningsmönster %r. Flytta ditt masterdokument till en annan plats." -#: ext/imgmath.py:181 +#: builders/__init__.py:545 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "Sphinx kan inte läsa in huvuddokumentet (%s) eftersom det matchar ett uteslutningsmönster som anges i conf.py, %r. Ta bort detta mönster från conf.py." -#: ext/imgmath.py:344 +#: builders/__init__.py:556 #, python-format -msgid "display latex %r: %s" -msgstr "" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "Sphinx kan inte läsa in huvuddokumentet (%s) eftersom det inte ingår i det anpassade include_patterns = %r. Se till att ett mönster i include_patterns matchar huvuddokumentet." -#: ext/imgmath.py:380 +#: builders/__init__.py:563 #, python-format -msgid "inline latex %r: %s" -msgstr "" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "Sphinx kan inte läsa in huvuddokumentet (%s). Masterdokumentet måste finnas i källkatalogen eller en underkatalog till den." + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "läser källor... " + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "docnames att skriva: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "inga dokumentnamn att skriva!" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "förbereda dokument" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "kopiering av tillgångar" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "Översiktsfilen finns i %(outdir)s." + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "inga ändringar i version %s." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "skriva sammanfattande fil ..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Inbyggnader" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Modulnivå" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "kopierar källfiler ..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "kunde inte läsa %r för skapande av changelog" #: ext/coverage.py:48 #, python-format msgid "invalid regex %r in %s" -msgstr "" +msgstr "ogiltig regex %r i %s" #: ext/coverage.py:140 ext/coverage.py:301 #, python-format msgid "module %s could not be imported: %s" -msgstr "" +msgstr "modul %s kunde inte importeras: %s" #: ext/coverage.py:148 #, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" -msgstr "" +msgstr "följande moduler är dokumenterade men specificerades inte i coverage_modules: %s" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" -msgstr "" +"documented: %s" +msgstr "följande moduler anges i coverage_modules men dokumenterades inte: %s" #: ext/coverage.py:172 #, python-brace-format, python-format msgid "" "Testing of coverage in the sources finished, look at the results in " "%(outdir)s{sep}python.txt." -msgstr "" +msgstr "Testningen av täckningen i källorna är klar, titta på resultaten i %(outdir)s{sep}python.txt." #: ext/coverage.py:187 #, python-format msgid "invalid regex %r in coverage_c_regexes" -msgstr "" +msgstr "ogiltig regex %r i täckning_c_regexes" #: ext/coverage.py:260 #, python-format msgid "undocumented c api: %s [%s] in file %s" -msgstr "" +msgstr "odokumenterad c api: %s [%s] i fil %s" #: ext/coverage.py:452 #, python-format msgid "undocumented python function: %s :: %s" -msgstr "" +msgstr "odokumenterad python-funktion: %s :: %s" #: ext/coverage.py:473 #, python-format msgid "undocumented python class: %s :: %s" -msgstr "" +msgstr "odokumenterad pythonklass: %s :: %s" #: ext/coverage.py:492 #, python-format msgid "undocumented python method: %s :: %s :: %s" -msgstr "" +msgstr "odokumenterad python-metod: %s :: %s :: %s" + +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "hårdkodad länk %r kan ersättas av en extlänk (försök använda %r istället)" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Att göra" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "TODO-post hittades: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> finns i %s, rad %d.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "ursprunglig post" #: ext/imgconverter.py:44 #, python-format @@ -781,7 +1247,7 @@ msgid "" "Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" "\n" "Traceback: %s" -msgstr "" +msgstr "Det går inte att köra kommandot för bildkonvertering %r. 'sphinx.ext.imgconverter' kräver ImageMagick som standard. Se till att det är installerat, eller sätt alternativet 'image_converter' till ett anpassat konverteringskommando.\n\nBakåtspårning: %s" #: ext/imgconverter.py:56 ext/imgconverter.py:90 #, python-format @@ -791,37 +1257,37 @@ msgid "" "%r\n" "[stdout]\n" "%r" -msgstr "" +msgstr "convert avslutades med fel:\n[stderr]\n%r\n[stdout]\n%r" #: ext/imgconverter.py:83 #, python-format msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "" +msgstr "convert-kommandot %r kan inte köras, kontrollera inställningen för image_converter" #: ext/graphviz.py:138 msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "" +msgstr "Graphviz-direktivet kan inte ha både innehåll och ett filnamnsargument" #: ext/graphviz.py:153 #, python-format msgid "External Graphviz file %r not found or reading it failed" -msgstr "" +msgstr "Externa Graphviz-filen %r hittades inte eller så gick inte läsningen av den" #: ext/graphviz.py:164 msgid "Ignoring \"graphviz\" directive without content." -msgstr "" +msgstr "Ignorerar \"graphviz\"-direktivet utan innehåll." #: ext/graphviz.py:287 #, python-format msgid "graphviz_dot executable path must be set! %r" -msgstr "" +msgstr "graphviz_dot körbar sökväg måste ställas in! %r" #: ext/graphviz.py:328 #, python-format msgid "" "dot command %r cannot be run (needed for graphviz output), check the " "graphviz_dot setting" -msgstr "" +msgstr "dot-kommandot %r kan inte köras (behövs för graphviz-utdata), kontrollera inställningen graphviz_dot" #: ext/graphviz.py:339 #, python-format @@ -831,7 +1297,7 @@ msgid "" "%r\n" "[stdout]\n" "%r" -msgstr "" +msgstr "dot avslutades med fel:\n[stderr]\n%r\n[stdout]\n%r" #: ext/graphviz.py:344 #, python-format @@ -841,900 +1307,981 @@ msgid "" "%r\n" "[stdout]\n" "%r" -msgstr "" +msgstr "dot producerade inte någon utdatafil:\n[stderr]\n%r\n[stdout]\n%r" #: ext/graphviz.py:367 #, python-format msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" -msgstr "" +msgstr "graphviz_output_format måste vara antingen 'png' eller 'svg', men är %r" #: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 #, python-format msgid "dot code %r: %s" -msgstr "" +msgstr "punktkod %r: %s" #: ext/graphviz.py:493 ext/graphviz.py:501 #, python-format msgid "[graph: %s]" -msgstr "" +msgstr "[graph: %s]" #: ext/graphviz.py:495 ext/graphviz.py:503 msgid "[graph]" -msgstr "" - -#: ext/todo.py:61 -msgid "Todo" -msgstr "Att göra" +msgstr "[graph]" -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" -msgstr "" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "LaTeX-kommandot %r kan inte köras (behövs för visning av matematik), kontrollera inställningen imgmath_latex" -#: ext/todo.py:152 -msgid "<>" -msgstr "" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s-kommandot %r kan inte köras (behövs för visning av matematik), kontrollera inställningen imgmath_%s" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "" +msgid "display latex %r: %s" +msgstr "visa latex %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "ursprungsvärde" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "inline latex %r: %s" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "Länk till denna ekvation" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "" +msgid "missing '+' or '-' in '%s' option." +msgstr "\"+\" eller \"-\" saknas i alternativet \"%s\"." -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "" +msgid "'%s' is not a valid option." +msgstr "'%s' är inte ett giltigt alternativ." -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' är inte ett giltigt pyversion-alternativ" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "ogiltig TestCode-typ" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "Testningen av doctests i källorna är klar, titta på resultaten i %(outdir)s/output.txt." -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "" +msgid "no code/output in %s block at %s:%s" +msgstr "ingen kod/utmatning i %s block vid %s:%s" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "" +msgid "ignoring invalid doctest code: %r" +msgstr "ignorerar ogiltig doctest-kod: %r" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "avsnitt \"%s\" blir märkt som \"%s\"" -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "" +msgid "duplicate label %s, other instance in %s" +msgstr "duplicerad etikett %s, annan instans i %s" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Sektionsförfattare" - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Modulförfattare" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== långsammaste lästiderna =======================" -#: directives/other.py:207 -msgid "Code author: " -msgstr "Källkodsförfattare" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" +msgstr "%.3fs %s" -#: directives/other.py:209 -msgid "Author: " -msgstr "Upphovsman:" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[source]" -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr "" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "markerar modulkod... " -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr "" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[docs]" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." -msgstr "" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Modulkod" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." -msgstr "" +msgid "

Source code for %s

" +msgstr "

Källkod för %s

" -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Översikt: modulkod" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Inbyggda" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Alla moduler för vilka kod finns tillgänglig

" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Modulnivå" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "duplicerad citering %s, annan instans i %s" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "" +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "Citation [%s] är inte refererad." -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" -msgstr "" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "duplicerad etikett av ekvation %s, annan instans i %s" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" +msgid "Invalid math_eqref_format: %r" +msgstr "Ogiltigt math_eqref_format: %r" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (inbyggd funktion)" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s metod)" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (klass)" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (global variabel eller konstant)" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s attribut)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Argument" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Kastar" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Returer" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Typ av retur" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" +msgid "%s (module)" +msgstr "%s (modul)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "funktion" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "metod" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "klass" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "data" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "attribut" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modul" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " -msgstr "" - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "duplicera %s beskrivning av %s, annan %s i %s" -#: builders/__init__.py:410 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "%d found" -msgstr "" +msgid "%s (directive)" +msgstr "%s (direktiv)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "" +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s: (direktivalternativ)" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s (roll)" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "" +#: domains/rst.py:234 +msgid "directive" +msgstr "direktiv" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "direktiv-alternativ" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "" +#: domains/rst.py:236 +msgid "role" +msgstr "roll" -#: builders/__init__.py:494 +#: domains/rst.py:262 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "duplicerad beskrivning av %s %s, annan instans i %s" -#: builders/__init__.py:531 +#: domains/changeset.py:32 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "Added in version %s" +msgstr "Tillagd i version %s" -#: builders/__init__.py:540 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "Changed in version %s" +msgstr "Ändrad i version %s" -#: builders/__init__.py:551 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid "Deprecated since version %s" +msgstr "Föråldrad sedan version %s" -#: builders/__init__.py:558 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" - -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "" +msgid "Removed in version %s" +msgstr "Borttagen i version %s" -#: builders/__init__.py:713 +#: domains/__init__.py:322 #, python-format -msgid "docnames to write: %s" -msgstr "" +msgid "%s %s" +msgstr "%s %s" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "jobbnumret ska vara ett positivt tal" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "För mer information, besök ." -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\nGenerera dokumentation från källfiler.\n\nsphinx-build genererar dokumentation från filerna i SOURCEDIR och placerar den i\ni OUTPUTDIR. Den letar efter \"conf.py\" i SOURCEDIR för konfigurationsinställningarna\ninställningar. Verktyget 'sphinx-quickstart' kan användas för att generera mallfiler,\ninklusive 'conf.py'\n\nsphinx-build kan skapa dokumentation i olika format. Ett format väljs\nväljs genom att ange byggarens namn på kommandoraden; standardinställningen är\nHTML. Byggare kan också utföra andra uppgifter som är relaterade till dokumentations\nbearbetning.\n\nSom standard byggs allt som är föråldrat. Utdata endast för utvalda\nfiler kan byggas genom att ange enskilda filnamn.\n" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "sökväg till dokumentationens källfiler" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "sökväg till utdatakatalog" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "(valfritt) en lista med specifika filer som ska byggas om. Ignoreras om --write-all anges" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:114 +msgid "general options" +msgstr "allmänna alternativ" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "byggare att använda (standard: 'html')" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "körs parallellt med N processer, när så är möjligt. \"auto\" använder antalet CPU-kärnor" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "skriva alla filer (standard: endast nya och ändrade filer skrivs)" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "använd inte en sparad miljö, läs alltid alla filer" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:150 +msgid "path options" +msgstr "alternativ för sökväg" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "katalog för doctree- och miljöfiler (standard: OUTPUT_DIR/.doctrees)" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "katalog för konfigurationsfilen (conf.py) (standard: SOURCE_DIR)" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "använd ingen konfigurationsfil, använd bara inställningar från -D-alternativ" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "åsidosätta en inställning i konfigurationsfilen" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "skicka ett värde till HTML-mallar" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "definiera tagg: inkludera \"endast\" block med TAG" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "nitpicky mode: varna för alla saknade referenser" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "" +#: cmd/build.py:212 +msgid "console output options" +msgstr "alternativ för konsolutmatning" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "öka ordrikedomen (kan upprepas)" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "ingen utdata på stdout, bara varningar på stderr" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "ingen utdata alls, inte ens varningar" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "avge färgad utdata (standard: automatisk detektering)" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "avger inte färgade utdata (standard: automatisk detektering)" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "alternativ för varningskontroll" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr "(i " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "skriva varningar (och fel) till en given fil" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "omvandla varningar till fel" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "visa fullständig spårning av undantag" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "kör Pdb på undantag" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "" +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "skapa ett undantag vid varningar" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "kan inte kombinera alternativet -a och filnamn" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "" +msgid "cannot open warning file '%s': %s" +msgstr "kan inte öppna varningsfilen '%s': %s" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-D alternativargumentet måste vara i formen name=value" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-Ett option-argument måste vara i formen name=value" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "automatiskt infoga docstrings från moduler" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "automatiskt testa kodsnuttar i doctest-block" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "länk mellan Sphinx-dokumentation av olika projekt" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "skriva \"att göra\"-poster som kan visas eller döljas på byggplatsen" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "kontroll av dokumentationens täckning" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "inkludera matematik, återgiven som PNG- eller SVG-bilder" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "innehåller matematik, som återges i webbläsaren med MathJax" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "villkorlig inkludering av innehåll baserat på konfigurationsvärden" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "inkludera länkar till källkoden för dokumenterade Python-objekt" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "skapa .nojekyll-fil för att publicera dokumentet på GitHub-sidor" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Ange ett giltigt sökvägsnamn." -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Skriv in någon text." -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "" +msgid "Please enter one of %s." +msgstr "Ange ett av %s." -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Ange antingen 'y' eller 'n'." -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Ange ett filsuffix, t.ex. \".rst\" eller \".txt\"." -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "" +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Välkommen till Sphinx %s snabbstartverktyg." -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Ange värden för följande inställningar (tryck bara på Enter för att acceptera\nacceptera ett standardvärde, om ett sådant anges inom parentes)." -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" -msgstr "" +msgid "Selected root path: %s" +msgstr "Vald rotsökväg: %s" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Ange rotsökvägen för dokumentationen." -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Rotsökväg för dokumentationen" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Fel: en befintlig conf.py har hittats i den valda rotsökvägen." -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart kommer inte att skriva över befintliga Sphinx-projekt." -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Ange en ny rotsökväg (eller bara Enter för att avsluta)" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Du har två alternativ för att placera byggkatalogen för Sphinx-utdata.\nAntingen använder du en katalog \"_build\" i rotsökvägen, eller så separerar du\n\"source\" och \"build\" kataloger inom rotsökvägen." -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Separata käll- och byggkataloger (y/n)" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" - -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Inuti rotkatalogen kommer ytterligare två kataloger att skapas; \"_templates\"\nför egna HTML-mallar och \"_static\" för egna stilmallar och andra statiska\nfiler. Du kan ange ett annat prefix (t.ex. \".\") för att ersätta understrecket." -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Namnprefix för mallar och statisk dir" -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "Projektnamnet kommer att förekomma på flera ställen i den byggda dokumentationen." -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Projektnamn" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Författarens namn(en)" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "Sphinx har begreppet \"version\" och \"release\" för programvaran\nprogramvaran. Varje version kan ha flera utgåvor. Till exempel för\nPython är versionen något i stil med 2.5 eller 3.0, medan releasen är\nnågot i stil med 2.5.1 eller 3.0a1. Om du inte behöver den här dubbla strukturen,\nsätt bara båda till samma värde." -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Projektversion" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Projektrelease" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" - -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Om dokumenten ska skrivas på ett annat språk än engelska,\nkan du här välja ett språk med hjälp av dess språkkod. Sphinx kommer då att\növersätta text som den genererar till det språket.\n\nFör en lista över koder som stöds, se\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Projektspråk" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:340 +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 "Filnamnssuffixet för källfiler. Vanligtvis är detta antingen \".txt\"\neller \".rst\". Endast filer med detta suffix betraktas som dokument." -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Suffix för källfil" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Ett dokument är speciellt på så sätt att det betraktas som den översta noden i\n\"innehållsträdet\", det vill säga det är roten till den hierarkiska strukturen\nav dokumenten. Normalt är detta \"index\", men om ditt \"index\"-dokument\ndokument är en anpassad mall kan du också ange ett annat filnamn." -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Namnet på ditt huvuddokument (utan suffix)" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Fel: Masterfilen %s har redan hittats på den valda rotsökvägen." -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart kommer inte att skriva över den befintliga filen." -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Ange ett nytt filnamn eller byt namn på en befintlig fil och tryck på Enter" -#: environment/__init__.py:86 -msgid "new config" -msgstr "" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Ange vilka av följande Sphinx-tillägg som ska aktiveras:" -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Obs: imgmath och mathjax kan inte aktiveras samtidigt. imgmath har valts bort." -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "En Makefile och en Windows-kommandofil kan genereras åt dig så att du bara behöver\nbara behöver köra t.ex. `make html' istället för att anropa sphinx-build\ndirekt." -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Skapa Makefile? (ja/nej)" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Skapa Windows-kommandofil? (ja/nej)" -#: environment/__init__.py:325 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +msgid "Creating file %s." +msgstr "Skapar fil %s." -#: environment/__init__.py:330 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +msgid "File %s already exists, skipping." +msgstr "Fil %s finns redan, hoppar över." -#: environment/__init__.py:336 +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Färdigställt: En första katalogstruktur har skapats." + +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Du ska nu fylla på din masterfil %s och skapa andra källfiler för\ndokumentationen. " -#: environment/__init__.py:379 +#: cmd/quickstart.py:527 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Använd Makefile för att bygga dokumenten, så här:\n make byggare" -#: environment/__init__.py:493 +#: cmd/quickstart.py:531 #, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Använd kommandot sphinx-build för att bygga dokumenten, så här:\n sphinx-build -b byggare %s %s" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "där \"builder\" är en av de byggare som stöds, t.ex. html, latex eller linkcheck." -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nGenerera nödvändiga filer för ett Sphinx-projekt.\n\nsphinx-quickstart är ett interaktivt verktyg som ställer några frågor om ditt\nprojekt och sedan genererar en komplett dokumentationskatalog och ett exempel\nMakefile som kan användas med sphinx-build.\n" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "tyst läge" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "projektrot" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Strukturalternativ" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "om angivet, separata käll- och byggkataloger" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "om det anges, skapa byggkatalog under källkatalog" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "ersättning för punkt i _templates etc." -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Projektets grundläggande alternativ" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "projektets namn" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "författarnamn" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "version av projektet" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "frisläppande av projekt" -#: util/display.py:82 -msgid "skipped" -msgstr "" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "dokumentspråk" -#: util/display.py:87 -msgid "failed" -msgstr "" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "suffix för källfil" -#: util/osutil.py:131 +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "masterdokumentets namn" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "använda epub" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Alternativ för tillägg" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "aktivera tillägget %s" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "aktivera godtyckliga tillägg" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Skapande av Makefile och Batchfile" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "skapa makefile" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "skapa inte makefile" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "skapa batchfil" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "skapa inte batchfil" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "använda make-mode för Makefile/make.bat" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Templating av projekt" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "mallkatalog för mallfiler" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "definiera en mallvariabel" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\" är specificerat, men något av \"project\" eller \"author\" är inte specificerat." + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Fel: angiven sökväg är inte en katalog, eller så finns det redan sphinx-filer." + +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart genererar bara till en tom katalog. Ange en ny rotsökväg." -#: util/docutils.py:309 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown directive name: %s" -msgstr "" +msgid "Invalid template variable: %s" +msgstr "Ogiltig mallvariabel: %s" -#: util/docutils.py:345 +#: directives/other.py:119 #, python-format -msgid "unknown role name: %s" -msgstr "" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "toctree glob mönster %r matchade inga dokument" -#: util/docutils.py:789 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "unknown node type: %r" -msgstr "" +msgid "toctree contains reference to excluded document %r" +msgstr "toctree innehåller referens till exkluderat dokument %r" -#: util/fileutil.py:76 +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree innehåller referens till icke-existerande dokument %r" + +#: directives/other.py:169 #, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "duplicerad post hittades i toctree: %s" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "Kapitelförfattare: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Modulförfattare: " + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Källkodsförfattare: " + +#: directives/other.py:209 +msgid "Author: " +msgstr "Upphovsperson: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "... acks innehåll är inte en lista" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "... hlist-innehåll är inte en lista" + +#: directives/patches.py:70 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "alternativet \":file:\" för direktivet csv-table känner nu igen en absolut sökväg som en relativ sökväg från källkatalogen. Uppdatera ditt dokument." -#: util/fileutil.py:89 +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "icke-blanksteg strippat av dedent" + +#: directives/code.py:87 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +msgid "Invalid caption: %s" +msgstr "Ogiltig bildtext: %s" -#: util/rst.py:73 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "default role %s not found" -msgstr "" +msgid "line number spec is out of range(1-%d): %r" +msgstr "radnummer spec är utanför intervallet (1-%d): %r" -#: util/inventory.py:147 +#: directives/code.py:216 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Kan inte använda både alternativen \"%s\" och \"%s\"" -#: util/inventory.py:166 +#: directives/code.py:231 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +msgid "Include file '%s' not found or reading it failed" +msgstr "Include-filen '%s' hittades inte eller läsningen av den misslyckades" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Fotnoter" +#: directives/code.py:235 +#, python-format +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "Kodning %r som används för att läsa den inkluderade filen '%s' verkar vara fel, försök att ange ett :encoding: alternativ" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:276 #, python-format -msgid "[image: %s]" -msgstr "" +msgid "Object named %r not found in include file %r" +msgstr "Objekt med namnet %r hittades inte i include-filen %r" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[image]" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Det går inte att använda \"lineno-match\" med en disjunkt uppsättning \"linjer\"" + +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Radspecifikation %r: inga rader hämtade från include-filen %r" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1743,2035 +2290,1142 @@ msgstr "[image]" msgid "Index" msgstr "Index" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" +msgstr "påträffad titelnod inte i avsnitt, ämne, tabell, uppmaning eller sidofält" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Fotnoter" #: writers/texinfo.py:1217 msgid "caption not inside a figure." -msgstr "" +msgstr "bildtext inte inuti en figur." #: writers/texinfo.py:1303 #, python-format msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" +msgstr "oimplementerad nodtyp: %r" -#: writers/latex.py:1939 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "unknown index entry type %s found" -msgstr "" +msgid "[image: %s]" +msgstr "[image: %s]" -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[image]" #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" -msgstr "" +msgstr "Länk till denna definition" #: writers/html5.py:431 #, python-format msgid "numfig_format is not defined for %s" -msgstr "" +msgstr "numfig_format är inte definierat för %s" #: writers/html5.py:441 #, python-format msgid "Any IDs not assigned for %s node" -msgstr "" +msgstr "Alla ID som inte tilldelats för %s-noden" #: writers/html5.py:496 msgid "Link to this term" -msgstr "" +msgstr "Länk till denna termin" #: writers/html5.py:548 writers/html5.py:553 msgid "Link to this heading" -msgstr "" +msgstr "Länk till denna rubrik" #: writers/html5.py:558 msgid "Link to this table" -msgstr "" +msgstr "Länk till detta bord" + +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "rubricering utan stöd rubriknivå: %s" #: writers/html5.py:636 msgid "Link to this code" -msgstr "" +msgstr "Länk till denna kod" #: writers/html5.py:638 msgid "Link to this image" -msgstr "" +msgstr "Länk till denna bild" #: writers/html5.py:640 msgid "Link to this toctree" -msgstr "" +msgstr "Länk till detta toctree" #: writers/html5.py:766 msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" +msgstr "Det gick inte att få fram bildstorleken. :scale: alternativet ignoreras." -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "okänd %r toplevel_sectioning för klass %r" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "" +msgid "no Babel option known for language %r" +msgstr "inget Babel-alternativ känt för språk %r" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (inbyggd funktion)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "för stor :maxdepth:, ignoreras." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s metod)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "mallen %s hittades inte; läser in från legacy %s istället" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "dokumenttiteln är inte en enda textnod" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "både tabularcolumns och alternativet :widths: anges. :widths: ignoreras." -#: domains/javascript.py:185 +#: writers/latex.py:1228 #, python-format -msgid "%s() (class)" -msgstr "%s() (klass)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "colspec %s gavs som verkar använda tabulär syntax. Men denna tabell kan inte återges som en tabulary; den angivna colspec kommer att ignoreras." -#: domains/javascript.py:187 +#: writers/latex.py:1615 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (global variabel eller konstant)" +msgid "dimension unit %s is invalid. Ignored." +msgstr "dimensionsenheten %s är ogiltig. Ignoreras." -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1950 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s attribut)" +msgid "unknown index entry type %s found" +msgstr "okänd indexposttyp %s hittades" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Argument" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "Användning:" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Kastar" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "{0} [ALTERNATIV] []" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Returnerar" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr " Sphinx dokumentationsgenerator." -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Returtyp" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "Kommandon:" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (modul)" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "Alternativ" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "funktion" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "För mer information, besök https://www.sphinx-doc.org/en/master/man/." -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "metod" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "{0}: fel: {1}\nKör '{0} --help' för information" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "klass" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr " Hantera dokumentation med Sphinx." -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "data" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "Visa versionen och avsluta." -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "attribut" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "Visa detta meddelande och avsluta." -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modul" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "Loggning" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "Öka ordrikedomen (kan upprepas)" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" -msgstr "" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "Skriv bara ut fel och varningar." -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Förändrat i version %s" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "Ingen utmatning alls" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Ersatt sedan version %s" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" -msgstr "" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "Se \"sphinx --help\".\n" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (direktiv)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "inkonsekventa fotnotreferenser i översatt meddelande. original: {0}, översatt: {1}" -#: domains/rst.py:191 domains/rst.py:202 +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "inkonsekventa referenser i översatt meddelande. original: {0}, översatt: {1}" + +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "inkonsekventa källhänvisningar i översatt meddelande. original: {0}, översatt: {1}" + +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "inkonsekventa termreferenser i översatt meddelande. original: {0}, översatt: {1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "kunde inte beräkna översättningens framsteg!" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "inga översatta element!" + +#: transforms/__init__.py:258 #, python-format -msgid ":%s: (directive option)" -msgstr "" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "4 kolumnbaserade index hittades. Det kan vara en bugg i de tillägg du använder: %r" -#: domains/rst.py:224 +#: transforms/__init__.py:299 #, python-format -msgid "%s (role)" -msgstr "%s (roll)" +msgid "Footnote [%s] is not referenced." +msgstr "Fotnot [%s] är inte refererad." -#: domains/rst.py:234 -msgid "directive" -msgstr "direktiv" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "Fotnot [*] är inte refererad." -#: domains/rst.py:235 -msgid "directive-option" -msgstr "" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "Fotnot [#] är inte refererad." -#: domains/rst.py:236 -msgid "role" -msgstr "roll" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "inventering <%s> innehåller duplicerade definitioner av %s" -#: domains/rst.py:262 +#: util/inventory.py:166 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "" +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "inventering <%s> innehåller flera definitioner för %s" -#: domains/citation.py:75 +#: util/i18n.py:100 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "" +msgid "reading error: %s, %s" +msgstr "läsfel: %s, %s" -#: domains/citation.py:92 +#: util/i18n.py:113 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "" +msgid "writing error: %s, %s" +msgstr "skrivfel: %s, %s" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Uppmärksamma" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s finns inte" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Varning" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "Ogiltig Babel-lokal: %r." -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Risk" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "Ogiltigt datumformat. Citera strängen med enkla citattecken om du vill skriva ut den direkt: %s" -#: locale/__init__.py:231 -msgid "Error" -msgstr "Fel" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "Avbrutet kopieringsförsök från %s till %s (målbanan har befintliga data)." -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Råd" +#: util/display.py:82 +msgid "skipped" +msgstr "hoppades över" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Viktigt" +#: util/display.py:87 +msgid "failed" +msgstr "misslyckades" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Observera" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "okänt direktivnamn: %s" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Se även" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "okänt rollnamn: %s" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tips" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "okänd nodtyp: %r" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Varning" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "Försök till kopiering från renderad mall %s till %s avbröts (destinationssökvägen har befintliga data)." -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "Skriva utvärderat mallresultat till %s" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "Problem i %s-domänen: fältet ska använda rollen '%s', men den rollen finns inte i domänen." -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "standardroll %s hittades inte" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree innehåller ref till icke-existerande fil %r" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "undantag vid utvärdering av endast direktivuttryck: %s" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "fortsättning från föregående sida" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "fortsätter på nästa sida" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Icke alfabetisk" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Symboler" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Nummer" -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "sida" -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Släpp" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "Kunde inte hämta fjärrbild: %s [%s]" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "Kunde inte hämta fjärrbild: %s [%d]" -#: cmd/quickstart.py:229 +#: transforms/post_transforms/images.py:143 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "" +msgid "Unknown image format: %s..." +msgstr "Okänt bildformat: %s..." -#: cmd/quickstart.py:234 +#: transforms/post_transforms/__init__.py:88 msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "Det gick inte att fastställa fallback-texten för korsreferensen. Kan vara en bugg." -#: cmd/quickstart.py:241 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "Selected root path: %s" -msgstr "" +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "mer än ett mål hittades för 'any' korsreferens %r: kan vara %s" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s referensmål hittades inte: %s" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r referensmål hittades inte: %s" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Avbruten!" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" - -#: cmd/quickstart.py:339 -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 "" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "" - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "" - -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "" - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "" - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "" - -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "" - -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "" - -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "" - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "" - -#: cmd/quickstart.py:530 -#, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "" - -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "" - -#: cmd/quickstart.py:809 -#, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "" - -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "" - -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "" - -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" - -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "" - -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "Dölj sidolist" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" - -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "Sök" - -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Gå" - -#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 -msgid "Show Source" -msgstr "Visa källfil" - -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Innehåll" - -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Sök %(docstitle)s" - -#: themes/basic/defindex.html:4 -msgid "Overview" -msgstr "Översikt" - -#: themes/basic/defindex.html:8 -msgid "Welcome! This is" -msgstr "" - -#: themes/basic/defindex.html:9 -msgid "the documentation for" -msgstr "" - -#: themes/basic/defindex.html:10 -msgid "last updated" -msgstr "" - -#: themes/basic/defindex.html:13 -msgid "Indices and tables:" -msgstr "Index och tabeller" - -#: themes/basic/defindex.html:16 -msgid "Complete Table of Contents" -msgstr "Komplett Innehållsförteckning" - -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "lista över alla paragrafer och underparagrafer" - -#: domains/std/__init__.py:773 domains/std/__init__.py:786 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Söksida" - -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "sök i det här dokumentet" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Global Modulindex" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "genväg till alla moduler" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Huvudindex" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "alla funktioner, klasser, villkor" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Denna Sida" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Hela innehållsförteckningen på en sida" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Snabbsök" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Innehållsförteckning per inledande bokstav" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "kan bli stort" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Föregående titel" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "Föregående kapitel" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Nästa titel" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "Nästa kapitel" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Navigation" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Sök bland %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Om dessa dokument" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Copyright" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Senast uppdaterad %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - -#: themes/basic/search.html:20 -msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "Var god aktivera JavaScript för sökfunktionalitet." - -#: themes/basic/search.html:28 -msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." -msgstr "" - -#: themes/basic/search.html:35 -msgid "search" -msgstr "sök" - -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Dölj Sökresultat" - -#: themes/basic/static/searchtools.js:117 -msgid "Search Results" -msgstr "Sökresultat" - -#: themes/basic/static/searchtools.js:119 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "" - -#: themes/basic/static/searchtools.js:123 -#, python-brace-format -msgid "Search finished, found one page matching the search query." -msgid_plural "" -"Search finished, found ${resultCount} pages matching the search query." -msgstr[0] "" -msgstr[1] "" - -#: themes/basic/static/searchtools.js:253 -msgid "Searching" -msgstr "" - -#: themes/basic/static/searchtools.js:270 -msgid "Preparing search..." -msgstr "" - -#: themes/basic/static/searchtools.js:474 -msgid ", in " -msgstr "" - -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" - -#: themes/basic/changes/frameset.html:5 -#: themes/basic/changes/versionchanges.html:12 -#, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" -msgstr "" - -#: themes/basic/changes/versionchanges.html:17 -#, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "Automatiskt genererad lista över förändringar i version %(version)s" - -#: themes/basic/changes/versionchanges.html:18 -msgid "Library changes" -msgstr "Förändringar i bibliotek" - -#: themes/basic/changes/versionchanges.html:23 -msgid "C API changes" -msgstr "Förändringar i C-API" - -#: themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "Övriga förändringar" - -#: themes/classic/static/sidebar.js.jinja:42 -msgid "Expand sidebar" -msgstr "Expandera sidolist" - -#: domains/python/_annotations.py:529 -msgid "Positional-only parameter separator (PEP 570)" -msgstr "" - -#: domains/python/_annotations.py:540 -msgid "Keyword-only parameters separator (PEP 3102)" -msgstr "" - -#: domains/python/__init__.py:113 domains/python/__init__.py:278 -#, python-format -msgid "%s() (in module %s)" -msgstr "%s() (i modul %s)" - -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 -#, python-format -msgid "%s (in module %s)" -msgstr "%s (i modul %s)" - -#: domains/python/__init__.py:182 -#, python-format -msgid "%s (built-in variable)" -msgstr "%s (inbyggd variabel)" - -#: domains/python/__init__.py:217 -#, python-format -msgid "%s (built-in class)" -msgstr "%s (inbyggd klass)" - -#: domains/python/__init__.py:218 -#, python-format -msgid "%s (class in %s)" -msgstr "%s (klass i %s)" - -#: domains/python/__init__.py:283 -#, python-format -msgid "%s() (%s class method)" -msgstr "%s() (%s klassmetod)" - -#: domains/python/__init__.py:285 -#, python-format -msgid "%s() (%s static method)" -msgstr "%s() (%s statisk metod)" - -#: domains/python/__init__.py:438 -#, python-format -msgid "%s (%s property)" -msgstr "" - -#: domains/python/__init__.py:478 -#, python-format -msgid "%s (type alias in %s)" -msgstr "" - -#: domains/python/__init__.py:638 -msgid "Python Module Index" -msgstr "Python Modulindex" - -#: domains/python/__init__.py:639 -msgid "modules" -msgstr "moduler" - -#: domains/python/__init__.py:717 -msgid "Deprecated" -msgstr "Ersatt" - -#: domains/python/__init__.py:743 -msgid "exception" -msgstr "undantag" - -#: domains/python/__init__.py:745 -msgid "class method" -msgstr "klassmetod" - -#: domains/python/__init__.py:746 -msgid "static method" -msgstr "statisk metod" - -#: domains/python/__init__.py:748 -msgid "property" -msgstr "" - -#: domains/python/__init__.py:749 -msgid "type alias" -msgstr "" - -#: domains/python/__init__.py:818 -#, python-format -msgid "" -"duplicate object description of %s, other instance in %s, use :no-index: for" -" one of them" -msgstr "" - -#: domains/python/__init__.py:978 -#, python-format -msgid "more than one target found for cross-reference %r: %s" -msgstr "" - -#: domains/python/__init__.py:1052 -msgid " (deprecated)" -msgstr "" - -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametrar" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Variabler" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Väcker" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "reStructuredText markeringsfel!" -#: domains/cpp/__init__.py:159 -msgid "Template Parameters" -msgstr "" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "Kodningsfel!" -#: domains/cpp/__init__.py:302 -#, python-format -msgid "%s (C++ %s)" -msgstr "" +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "Rekursionsfel!" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "Detta kan hända med mycket stora eller djupt nästlade källfiler. Du kan försiktigt öka Pythons standardgräns för rekursion på 1 000 i conf.py med t.ex:" -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 -msgid "Return values" -msgstr "" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "Startar felsökningsverktyget:" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 -msgid "union" -msgstr "" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "Den fullständiga spårningen har sparats i:" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 -msgid "member" -msgstr "medlem" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "För att rapportera detta fel till utvecklarna, öppna ett ärende på . Tack så mycket!" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 -msgid "type" -msgstr "typ" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Rapportera även detta om det var ett användarfel, så att ett bättre felmeddelande kan tillhandahållas nästa gång." -#: domains/cpp/__init__.py:944 -msgid "concept" -msgstr "" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "Dölja sidofältet" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 -msgid "enum" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Navigering" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 -msgid "enumerator" -msgstr "" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Sök inom %(docstitle)s" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 -msgid "function parameter" -msgstr "" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Om dessa dokument" -#: domains/cpp/__init__.py:952 -msgid "template parameter" -msgstr "" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "Sök" -#: domains/c/__init__.py:211 +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Upphovsrätt" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "%s (C %s)" -msgstr "" +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Senast uppdaterad den %(last_updated)s." + +#: themes/basic/layout.html:204 #, python-format msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "Skapad med hjälp av Sphinx %(sphinx_version)s." -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "variabel" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Föregående ämne" -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "makro" +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "föregående kapitel" -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Nästa ämne" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "miljövariabel; %s" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "nästa kapitel" -#: domains/std/__init__.py:119 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" +msgid "Index – %(key)s" +msgstr "Index - %(key)s" -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Fullständigt index på en sida" -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Den här sidan" -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "Visa källa" -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Snabbsök" -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Start" -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "Översikt" -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "Välkomna! Det här är" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "ordlista" +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "dokumentationen för" -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "grammatisk token" +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "senast uppdaterad" -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "referensetikett" +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "Index och tabeller:" -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "miljövariabel" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "Fullständig innehållsförteckning" -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "programväxel" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "listar alla avsnitt och underavsnitt" -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Söksida" -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Modulindex" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "sök i denna dokumentation" -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Globalt modulindex" -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "snabb åtkomst till alla moduler" -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Allmänt index" -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "alla funktioner, klasser, termer" -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "Innehåll" -#: domains/std/__init__.py:1157 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "invalid numfig_format: %s" -msgstr "" +msgid "Search %(docstitle)s" +msgstr "Sök %(docstitle)s" -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Indexsidor per bokstav" -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "kan vara enorma" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" +#: themes/basic/search.html:20 +msgid "" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "Aktivera JavaScript för att aktivera sök-\n funktionalitet." -#: environment/adapters/toctree.py:349 -#, python-format +#: themes/basic/search.html:28 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "Vid sökning efter flera ord visas endast matchningar som innehåller\n alla ord." -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" +#: themes/basic/search.html:35 +msgid "search" +msgstr "sök" + +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Innehåll" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "Sökresultat" -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "Din sökning matchade inte några dokument. Kontrollera att alla ord är rättstavade och att du har valt tillräckligt många kategorier." -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "se %s" +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "Sökningen är klar, hittade en sida som matchar sökfrågan." +msgstr[1] "Sökningen är klar, hittade ${resultCount} sidor som matchar sökfrågan." -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "se även %s" +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "Söker" -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "Förbereder sökning..." -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr ", i " -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Dölj sökträffar" -#: environment/collectors/asset.py:126 +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "image file %s not readable: %s" -msgstr "" +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "Ändringar i version %(version)s - %(docstitle)s" -#: environment/collectors/asset.py:163 +#: themes/basic/changes/rstsource.html:5 #, python-format -msgid "download file not readable: %s" -msgstr "" +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s - %(docstitle)s" -#: environment/collectors/toctree.py:259 +#: themes/basic/changes/versionchanges.html:17 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" +msgid "Automatically generated list of changes in version %(version)s" +msgstr "Automatiskt genererad lista över ändringar i version %(version)s" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "Förändringar i biblioteket" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "C API-ändringar" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "Övriga ändringar" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "Visa sidofältet" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "Parameteravskiljare för enbart positionering (PEP 570)" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "Separator för parametrar som endast innehåller nyckelord (PEP 3102)" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametrar" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Variabler" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "" +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Höjer" -#: transforms/post_transforms/__init__.py:237 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "" +msgid "%s() (in module %s)" +msgstr "%s() (i modul %s)" -#: transforms/post_transforms/__init__.py:299 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "" +msgid "%s (in module %s)" +msgstr "%s (i modul %s)" -#: transforms/post_transforms/__init__.py:305 +#: domains/python/__init__.py:174 #, python-format -msgid "%r reference target not found: %s" -msgstr "" +msgid "%s (built-in variable)" +msgstr "%s (inbyggd variabel)" -#: transforms/post_transforms/images.py:79 +#: domains/python/__init__.py:209 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "" +msgid "%s (built-in class)" +msgstr "%s (inbyggd klass)" -#: transforms/post_transforms/images.py:96 +#: domains/python/__init__.py:210 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "" +msgid "%s (class in %s)" +msgstr "%s (klass i %s)" -#: transforms/post_transforms/images.py:143 +#: domains/python/__init__.py:275 #, python-format -msgid "Unknown image format: %s..." -msgstr "" +msgid "%s() (%s class method)" +msgstr "%s() (%s klassmetod)" -#: builders/html/__init__.py:113 +#: domains/python/__init__.py:277 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "" +msgid "%s() (%s static method)" +msgstr "%s() (%s statisk metod)" -#: builders/html/__init__.py:348 +#: domains/python/__init__.py:430 #, python-format -msgid "Failed to read build info file: %r" -msgstr "" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" - -#: builders/html/__init__.py:366 -msgid "building [html]: " -msgstr "" +msgid "%s (%s property)" +msgstr "%s (%s fastighet)" -#: builders/html/__init__.py:383 +#: domains/python/__init__.py:470 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" -msgstr "" +msgid "%s (type alias in %s)" +msgstr "%s (typ alias i %s)" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "index" +#: domains/python/__init__.py:624 +msgid "Python Module Index" +msgstr "Index för Python-moduler" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" -msgstr "" +#: domains/python/__init__.py:625 +msgid "modules" +msgstr "moduler" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "nästa" +#: domains/python/__init__.py:703 +msgid "Deprecated" +msgstr "Föråldrat" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "föregående" +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "undantag" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "" +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "klassmetod" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "" +#: domains/python/__init__.py:732 +msgid "static method" +msgstr "statisk metod" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: domains/python/__init__.py:734 +msgid "property" +msgstr "fastighet" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "" +#: domains/python/__init__.py:735 +msgid "type alias" +msgstr "typ alias" -#: builders/html/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "" +msgid "" +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" +msgstr "duplicerad objektbeskrivning av %s, annan instans i %s, använd :no-index: för en av dem" -#: builders/html/__init__.py:864 +#: domains/python/__init__.py:974 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +msgid "more than one target found for cross-reference %r: %s" +msgstr "mer än ett mål hittades för korsreferens %r: %s" + +#: domains/python/__init__.py:1048 +msgid " (deprecated)" +msgstr " (föråldrad)" -#: builders/html/__init__.py:882 +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "" +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "Duplicerad C++-deklaration, även definierad i %s:%s.\nDeklarationen är '.. cpp:%s:: %s'." -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "Parametrar för mall" -#: builders/html/__init__.py:934 +#: domains/cpp/__init__.py:302 #, python-format -msgid "cannot copy static file %r" -msgstr "" +msgid "%s (C++ %s)" +msgstr "%s (C++ %s)" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "" +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "Returvärden" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "" +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "forbund" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "medlem" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "typ" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "" +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "koncept" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "" +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "enum" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "" +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "uppräknare" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "" +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "funktion parameter" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "" +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "parameter för mall" -#: builders/html/__init__.py:1308 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format -msgid "invalid js_file: %r, ignored" -msgstr "" - -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "" +msgid "" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "Duplikat C-deklaration, även definierad vid %s:%s.\nDeklarationen är '.. c:%s:: %s'." -#: builders/html/__init__.py:1346 +#: domains/c/__init__.py:211 #, python-format -msgid "Unknown math_renderer %r is given." -msgstr "" +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "variabel" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "" +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "makro" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "" +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "struktur" -#: builders/html/__init__.py:1380 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "" +msgid "environment variable; %s" +msgstr "miljövariabel; %s" -#: builders/html/__init__.py:1385 +#: domains/std/__init__.py:116 #, python-format -msgid "html_static_path entry %r does not exist" -msgstr "" +msgid "%s; configuration value" +msgstr "%s; konfigurationsvärde" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "" +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "Typ" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "" +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "Standard" -#: builders/html/__init__.py:1420 +#: domains/std/__init__.py:239 #, python-format msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "" - -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "Felaktig alternativbeskrivning %r, ska se ut som \"opt\", \"-opt args\", \"--opt args\", \"/opt args\" eller \"+opt args\"" -#: builders/html/__init__.py:1449 +#: domains/std/__init__.py:319 #, python-format -msgid "%s %s documentation" -msgstr "" +msgid "%s command line option" +msgstr "%s alternativ för kommandoraden" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" -msgstr "" +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "kommandoradsalternativ" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" -msgstr "" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "ordlistetermen måste föregås av en tom rad" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" -msgstr "" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "termer i ordlistan får inte separeras av tomma rader" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "ordlistan verkar vara felformaterad, kontrollera indragning" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "ordlista term" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "grammatisk token" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "referensetikett" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Utgåva" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "miljövariabel" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "programalternativ" -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "dokument" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Modulindex" -#: builders/latex/__init__.py:544 +#: domains/std/__init__.py:857 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" +msgid "duplicate %s description of %s, other instance in %s" +msgstr "duplicera %s beskrivning av %s, annan instans i %s" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "numfig är avaktiverad. :numref: ignoreras." -#: builders/latex/transforms.py:121 +#: domains/std/__init__.py:1124 #, python-format -msgid "Failed to get a docname for source %r!" -msgstr "" +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "Misslyckades med att skapa en korsreferens. Något nummer har inte tilldelats: %s" -#: builders/latex/transforms.py:487 +#: domains/std/__init__.py:1138 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "" +msgid "the link has no caption: %s" +msgstr "länken har ingen bildtext: %s" -#: builders/latex/theming.py:88 +#: domains/std/__init__.py:1153 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "" +msgid "invalid numfig_format: %s (%r)" +msgstr "ogiltigt numfig_format: %s (%r)" -#: builders/latex/theming.py:91 +#: domains/std/__init__.py:1157 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "" - -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "fortsättning från föregående sida" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "" - -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "" +msgid "invalid numfig_format: %s" +msgstr "ogiltigt numfig_format: %s" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "" +#: domains/std/__init__.py:1453 +#, python-format +msgid "undefined label: %r" +msgstr "odefinierad etikett: %r" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "Misslyckades med att skapa en korsreferens. En titel eller bildtext hittades inte: %r" -#: ext/napoleon/docstring.py:176 +#: ext/napoleon/docstring.py:178 #, python-format msgid "invalid value set (missing closing brace): %s" -msgstr "" +msgstr "ogiltig värdeuppsättning (slutklammer saknas): %s" -#: ext/napoleon/docstring.py:183 +#: ext/napoleon/docstring.py:185 #, python-format msgid "invalid value set (missing opening brace): %s" -msgstr "" +msgstr "ogiltig värdeuppsättning (saknar öppningsparentes): %s" -#: ext/napoleon/docstring.py:190 +#: ext/napoleon/docstring.py:192 #, python-format msgid "malformed string literal (missing closing quote): %s" -msgstr "" +msgstr "missbildad sträng (saknar avslutande citattecken): %s" -#: ext/napoleon/docstring.py:197 +#: ext/napoleon/docstring.py:199 #, python-format msgid "malformed string literal (missing opening quote): %s" -msgstr "" +msgstr "missbildad sträng (saknar inledande citat): %s" -#: ext/napoleon/docstring.py:895 +#: ext/napoleon/docstring.py:902 msgid "Example" -msgstr "" +msgstr "Exempel" -#: ext/napoleon/docstring.py:896 +#: ext/napoleon/docstring.py:903 msgid "Examples" -msgstr "" +msgstr "Exempel" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "Argument för nyckelord" -#: ext/napoleon/docstring.py:956 +#: ext/napoleon/docstring.py:962 msgid "Notes" -msgstr "" +msgstr "Anteckningar" -#: ext/napoleon/docstring.py:965 +#: ext/napoleon/docstring.py:971 msgid "Other Parameters" -msgstr "" +msgstr "Övriga parametrar" -#: ext/napoleon/docstring.py:1001 +#: ext/napoleon/docstring.py:1007 msgid "Receives" -msgstr "" +msgstr "Mottagare" -#: ext/napoleon/docstring.py:1005 +#: ext/napoleon/docstring.py:1011 msgid "References" -msgstr "" +msgstr "Referenser" -#: ext/napoleon/docstring.py:1037 +#: ext/napoleon/docstring.py:1043 msgid "Warns" -msgstr "" +msgstr "Varningar" -#: ext/napoleon/docstring.py:1041 +#: ext/napoleon/docstring.py:1047 msgid "Yields" -msgstr "" - -#: ext/autosummary/__init__.py:284 -#, python-format -msgid "autosummary references excluded document %r. Ignored." -msgstr "" - -#: ext/autosummary/__init__.py:288 -#, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "" - -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "" - -#: ext/autosummary/__init__.py:384 -#, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "" - -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" +msgstr "Yields" -#: ext/autosummary/__init__.py:412 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "failed to import object %s" -msgstr "" +msgid "A mocked object is detected: %r" +msgstr "Ett mockat objekt har upptäckts: %r" -#: ext/autosummary/__init__.py:730 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." -msgstr "" +msgid "alias of %s" +msgstr "alias för %s" -#: ext/autosummary/__init__.py:927 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "autosummary_generate: file not found: %s" -msgstr "" - -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." -msgstr "" +msgid "Bases: %s" +msgstr "Baser: %s" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "" +msgid "invalid value for member-order option: %s" +msgstr "ogiltigt värde för medlemsorderalternativ: %s" -#: ext/autosummary/generate.py:588 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "" +msgid "invalid value for class-doc-from option: %s" +msgstr "ogiltigt värde för alternativet class-doc-from: %s" -#: ext/autosummary/generate.py:592 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "[autosummary] writing to %s" -msgstr "" +msgid "invalid signature for auto%s (%r)" +msgstr "ogiltig signatur för auto%s (%r)" -#: ext/autosummary/generate.py:637 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "" - -#: ext/autosummary/generate.py:836 -msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "" - -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "" - -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "" - -#: ext/autosummary/generate.py:874 -#, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "" - -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "vet inte vilken modul som ska importeras för autodokumentation %r (försök placera ett \"module\"- eller \"currentmodule\"-direktiv i dokumentet, eller ange ett explicit modulnamn)" -#: ext/autosummary/generate.py:890 +#: ext/autodoc/_names.py:89 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "" +msgid "signature arguments given for automodule: '%s'" +msgstr "signaturargument angivna för automodule: '%s'" -#: ext/autosummary/generate.py:899 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "" +msgid "return annotation given for automodule: '%s'" +msgstr "returnera annotation som ges för automodulen: '%s'" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" -msgstr "" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" i automodulens namn är inte meningsfullt" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format msgid "Failed to remove %s: %s" -msgstr "" +msgstr "Misslyckades med att ta bort %s: %s" + +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "Skulle skapa fil %s." #: ext/apidoc/_cli.py:28 msgid "" @@ -3783,432 +3437,869 @@ msgid "" "excluded from generation.\n" "\n" "Note: By default this script will not overwrite already created files." -msgstr "" +msgstr "\nLeta rekursivt i efter Python-moduler och -paket och skapa\nen reST-fil med automoduldirektiv per paket i .\n\ns kan vara fil- och/eller katalogmönster som kommer att\nuteslutas från generering.\n\nObs: Som standard kommer detta skript inte att skriva över redan skapade filer." #: ext/apidoc/_cli.py:45 msgid "path to module to document" -msgstr "" +msgstr "sökväg till modul till dokument" #: ext/apidoc/_cli.py:50 msgid "" "fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "" +msgstr "fil- och/eller katalogmönster av typen fnmatch som ska uteslutas från generering" #: ext/apidoc/_cli.py:60 msgid "directory to place all output" -msgstr "" +msgstr "katalog för att placera alla utdata" #: ext/apidoc/_cli.py:75 msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "" +msgstr "maximalt antal undermoduler som ska visas i innehållsförteckningen (standard: 4)" #: ext/apidoc/_cli.py:82 msgid "overwrite existing files" -msgstr "" +msgstr "skriva över befintliga filer" #: ext/apidoc/_cli.py:91 msgid "" "follow symbolic links. Powerful when combined with " "collective.recipe.omelette." -msgstr "" +msgstr "följa symboliska länkar. Kraftfull i kombination med collective.recipe.omelette." #: ext/apidoc/_cli.py:99 msgid "run the script without creating files" -msgstr "" +msgstr "köra skriptet utan att skapa filer" #: ext/apidoc/_cli.py:106 msgid "put documentation for each module on its own page" -msgstr "" +msgstr "lägga dokumentation för varje modul på en egen sida" #: ext/apidoc/_cli.py:113 msgid "include \"_private\" modules" -msgstr "" +msgstr "inkludera \"_private\" moduler" #: ext/apidoc/_cli.py:120 msgid "filename of table of contents (default: modules)" -msgstr "" +msgstr "filnamn för innehållsförteckningen (standard: modules)" #: ext/apidoc/_cli.py:127 msgid "don't create a table of contents file" -msgstr "" +msgstr "skapa inte en innehållsförteckningsfil" #: ext/apidoc/_cli.py:135 msgid "" "don't create headings for the module/package packages (e.g. when the " "docstrings already contain them)" -msgstr "" +msgstr "skapa inte rubriker för modul-/paketpaket (t.ex. när dokumentationen redan innehåller dem)" #: ext/apidoc/_cli.py:145 msgid "put module documentation before submodule documentation" -msgstr "" +msgstr "sätta moduldokumentation före undermodulsdokumentation" #: ext/apidoc/_cli.py:152 msgid "" "interpret module paths according to PEP-0420 implicit namespaces " "specification" -msgstr "" +msgstr "tolka modulvägar enligt PEP-0420 specifikation för implicita namnrymder" #: ext/apidoc/_cli.py:160 msgid "" "Comma-separated list of options to pass to automodule directive (or use " "SPHINX_APIDOC_OPTIONS)." -msgstr "" +msgstr "Kommaseparerad lista över alternativ som ska skickas till automoduldirektivet (eller använd SPHINX_APIDOC_OPTIONS)." #: ext/apidoc/_cli.py:170 msgid "file suffix (default: rst)" -msgstr "" +msgstr "filsuffix (standard: rst)" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "Ta bort befintliga filer i utdatakatalogen som inte har genererats" #: ext/apidoc/_cli.py:186 msgid "generate a full project with sphinx-quickstart" -msgstr "" +msgstr "skapa ett fullständigt projekt med sphinx-quickstart" #: ext/apidoc/_cli.py:193 msgid "append module_path to sys.path, used when --full is given" -msgstr "" +msgstr "lägg till module_path till sys.path, används när --full anges" #: ext/apidoc/_cli.py:200 msgid "project name (default: root module name)" -msgstr "" +msgstr "projektnamn (standard: namn på rotmodul)" #: ext/apidoc/_cli.py:207 msgid "project author(s), used when --full is given" -msgstr "" +msgstr "projektförfattare, används när --full är angiven" #: ext/apidoc/_cli.py:214 msgid "project version, used when --full is given" -msgstr "" +msgstr "projektversion, används när --full anges" #: ext/apidoc/_cli.py:222 msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "" +msgstr "projektversion, används när --full anges, standard är --doc-version" #: ext/apidoc/_cli.py:226 msgid "extension options" -msgstr "" +msgstr "tilläggssalternativ" #: ext/apidoc/_cli.py:232 msgid "enable arbitrary extensions, used when --full is given" -msgstr "" +msgstr "aktivera godtyckliga tillägg, används när --full anges" #: ext/apidoc/_cli.py:240 #, python-format msgid "enable %s extension, used when --full is given" -msgstr "" +msgstr "aktivera tillägget %s, används när --full anges" #: ext/apidoc/_cli.py:291 #, python-format msgid "%s is not a directory." -msgstr "" +msgstr "%s är inte en katalog." #: ext/apidoc/_extension.py:50 msgid "Running apidoc" -msgstr "" +msgstr "Körning av apidoc" #: ext/apidoc/_extension.py:102 #, python-format msgid "apidoc_modules item %i must be a dict" -msgstr "" +msgstr "apidoc_modules objekt %i måste vara en dict" #: ext/apidoc/_extension.py:110 #, python-format msgid "apidoc_modules item %i must have a 'path' key" -msgstr "" +msgstr "apidoc_modules objekt %i måste ha en \"path\"-nyckel" #: ext/apidoc/_extension.py:115 #, python-format msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +msgstr "apidoc_modules item %i \"path\" måste vara en sträng" #: ext/apidoc/_extension.py:121 #, python-format msgid "apidoc_modules item %i 'path' is not an existing folder: %s" -msgstr "" +msgstr "apidoc_modules item %i 'path' är inte en befintlig mapp: %s" #: ext/apidoc/_extension.py:133 #, python-format msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +msgstr "apidoc_modules objekt %i måste ha en \"destination\"-nyckel" #: ext/apidoc/_extension.py:140 #, python-format msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +msgstr "apidoc_modules item %i \"destination\" måste vara en sträng" #: ext/apidoc/_extension.py:147 #, python-format msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "apidoc_modules item %i 'destination' ska vara en relativ sökväg" + +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "apidoc_modules objekt %i kan inte skapa destinationskatalog: %s" + +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "apidoc_modules item %i '%s' måste vara ett int" + +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "apidoc_modules item %i '%s' måste vara en boolean" + +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "apidoc_modules objekt %i har oväntade nycklar: %s" + +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "apidoc_modules item %i '%s' måste vara en sekvens" + +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "apidoc_modules item %i '%s' måste innehålla strängar" + +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 +#, python-format +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: kunde inte fastställa att %r var dokumenterad, följande undantag uppstod:\n%s" + +#: ext/autosummary/generate.py:630 +#, python-format +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] genererar autosummary för: %s" + +#: ext/autosummary/generate.py:634 +#, python-format +msgid "[autosummary] writing to %s" +msgstr "[autosummary] skriver till %s" + +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] misslyckades med att importera %s.\nMöjliga ledtrådar:\n%s" + +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\nGenerera ReStructuredText med hjälp av autosummary-direktiv.\n\nsphinx-autogen är en frontend till sphinx.ext.autosummary.generate. Den genererar\nreStructuredText-filerna från de autosummary-direktiv som finns i de\ngivna indatafilerna.\n\nFormatet för autosummary-direktivet finns dokumenterat i\n``sphinx.ext.autosummary`` Python-modulen och kan läsas med hjälp av::\n\n pydoc sphinx.ext.autosummary\n" + +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "källfiler för att generera rST-filer för" + +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "katalog för att placera alla utdata i" + +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "standardsuffix för filer (standard: %(default)s)" + +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "katalog för anpassad mall (standard: %(default)s)" + +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "dokumentets importerade medlemmar (standard: %(default)s)" + +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "dokumenterar exakt de medlemmar som finns i modulens __all__-attribut. (standard: %(default)s)" + +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." +msgstr "autosummary refererar till uteslutet dokument %r. Ignoreras." + +#: ext/autosummary/__init__.py:239 +#, python-format +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "autosummary: stub-fil hittades inte %r. Kontrollera din inställning för autosummary_generate." + +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "En textad automatisk sammanfattning kräver :toctree: alternativ. ignoreras." + +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "autosummary: misslyckades med att importera %s.\nMöjliga ledtrådar:\n%s" + +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "misslyckades med att importera objekt %s" + +#: ext/autosummary/__init__.py:652 +#, python-format +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "Sammanfattade objekt ska inte omfatta den aktuella modulen. Ersätt %r med %r." + +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "autosummary_generate: filen hittades inte: %s" + +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "autosummary genererar .rst-filer internt. Men din source_suffix innehåller inte .rst. Hoppa över." + +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "Ogiltig intersphinx-projektidentifierare `%r` i intersphinx_mapping. Projektidentifierare måste vara icke-tomma strängar." + +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "Ogiltigt värde `%r` i intersphinx_mapping[%r]. Förväntade en tupel eller lista med två element." + +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "Ogiltigt värde `%r` i intersphinx_mapping[%r]. Värdena måste vara ett par (mål-URI, inventeringsplatser)." + +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "Ogiltigt mål-URI-värde `%r` i intersphinx_mapping[%r][0]. Mål-URI:er måste vara unika, icke-tomma strängar." + +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "Ogiltigt mål-URI-värde `%r` i intersphinx_mapping[%r][0]. Mål-URI:er måste vara unika (annan instans i intersphinx_mapping[%r])." + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "Ogiltigt värde för inventeringsplats `%r` i intersphinx_mapping[%r][1]. Inventeringsplatser måste vara icke-tomma strängar eller None." + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "Ogiltig konfiguration för `intersphinx_mapping` (1 fel)." + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "Ogiltig konfiguration för `intersphinx_mapping` (%s fel)." + +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "En ogiltig intersphinx_mapping-post lades till efter normaliseringen." + +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "läser in intersphinx-inventariet '%s' från %s ..." + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "stötte på vissa problem med några av inventarierna, men de hade fungerande alternativ:" + +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "intersphinx lager har flyttats: %s -> %s" + +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "(i %s %s)" + +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(i %s)" + +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "inventering '%s': dubbla matchningar hittades för %s:%s" + +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "inventering '%s': flera träffar hittades för %s:%s" + +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "inventering för extern korsreferens hittades inte: %r" + +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "ogiltigt externt korsreferenssuffix: %r" + +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "domän för extern korsreferens hittades inte: %r" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "extern %s:%s referensmål hittades inte: %s" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "fel vid formatering av signatur för %s: %s" + +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "Ignorerar ogiltig __all__ i modul %s: %r" + +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "Misslyckades med att få en funktionssignatur för %s: %s" + +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "Misslyckades med att uppdatera signaturen för %r: parametern hittades inte: %s" + +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "Misslyckades med att analysera type_comment för %r: %s" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "Ogiltiga __slots__ hittades på %s. Ignoreras." + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "fel vid formatering av argument för %s: %s" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "Misslyckades med att få en konstruktörsignatur för %s: %s" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "Misslyckades med att få en metodsignatur för %s: %s" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "Misslyckades med att få en signatur för %s: %s" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "Misslyckades med att tolka ett standardargumentvärde för %r: %s" + +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "attributet %s listas i :members: men saknas eftersom det inte hittades i objektet %r" + +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" -msgstr "" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: kunde inte fastställa att %s.%s (%r) skulle dokumenteras, följande undantag uppstod:\n%s" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" -msgstr "" +msgid "missing attribute %s in object %s" +msgstr "saknar attributet %s i objektet %s" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +msgid "alias of TypeVar(%s)" +msgstr "alias av TypeVar(%s)" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "kunde inte läsa broken build info file (okänd version)" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "kunde inte läsa trasig bygginfo-fil (saknade konfigurationspost)" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "kunde inte läsa broken build info-filen (saknar taggar)" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML-sidorna finns i %(outdir)s." -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" -msgstr "" +msgid "Failed to read build info file: %r" +msgstr "Misslyckades med att läsa bygginfo-filen: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "build_info-missmatchning, kopiering av .buildinfo till .buildinfo.bak" + +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "bygger [html]: " -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" -msgstr "" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "mall %s har ändrats sedan föregående version, alla dokument kommer att byggas om" + +#: builders/html/__init__.py:496 +msgid "index" +msgstr "index" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +msgid "Logo of %s" +msgstr "Logotyp för %s" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "nästa" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "föregående" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "genererar index" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "skriver ytterligare sidor" + +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "cannot copy image file '%s': %s" +msgstr "kan inte kopiera bildfilen '%s': %s" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "kopierar hämtningsbara filer... " -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "kan inte kopiera hämtningsbara filen %r: %s" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "Misslyckades med att kopiera en fil i temats \"static\"-katalog: %s: %r" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "Misslyckades med att kopiera en fil i html_static_file: %s: %r" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "kopiering av statiska filer" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "kan inte kopiera statisk fil %r" + +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "kopierar extrafiler" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "kan inte kopiera extrafil %r" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "Misslyckades med att skriva bygginfo-fil: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "sökindex kunde inte läsas in, men alla dokument kommer inte att byggas: indexet kommer att vara ofullständigt." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "sidan %s matchar två mönster i html_sidebars: %r och %r" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "ett Unicode-fel uppstod vid rendering av sidan %s. Kontrollera att alla konfigurationsvärden som innehåller icke-ASCII-innehåll är Unicode-strängar." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "Temat '%s' stöder inte den här versionen av Sphinx, eftersom det använder fältet 'style' i HTML-mallar, vilket inte längre används i Sphinx 5.1 och togs bort i Sphinx 7.0. Temat måste uppdateras för att använda fältet \"styles\" istället. Se https://www.sphinx-doc.org/en/master/development/html_themes/templating.html#styles" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "Ett fel inträffade vid rendering av sidan %s.\nAnledning: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "dumpning av objektinventering" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "dumpning av sökindex i %s" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "ogiltig js_file: %r, ignorerad" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Många math_renderers är registrerade. Men ingen math_renderer är vald." -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "Okänd math_renderer %r har angetts." -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path post %r är placerad inuti outdir" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1370 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path post %r finns inte" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path post %r är placerad inuti outdir" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "" +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path-post %r finns inte" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "" +msgid "logo file %r does not exist" +msgstr "logotypfilen %r finns inte" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1412 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "" +msgid "favicon file %r does not exist" +msgstr "filen favicon %r finns inte" -#: ext/autodoc/__init__.py:1021 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "Värdena i \"html_sidebars\" måste vara en lista med strängar. Åtminstone ett mönster har ett strängvärde: %s. Ändra till `html_sidebars = %r`." + +#: builders/html/__init__.py:1438 +msgid "" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 stöds inte längre av Sphinx. (\"html4_writer=True\" upptäcktes i konfigurationsalternativen)" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "" +msgid "%s %s documentation" +msgstr "%s %s dokumentation" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:87 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r har inte inställningen \"theme\"" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "" +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "%r har inte inställningen \"%s\"" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "Misslyckades med att hämta ett docname!" + +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "" +msgid "Failed to get a docname for source %r!" +msgstr "Misslyckades med att få ett dokumentnamn för källa %r!" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "" +msgid "No footnote was found for given reference node %r" +msgstr "Ingen fotnot hittades för angiven referensnod %r" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX-filerna finns i %(outdir)s." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\nKör 'make' i den katalogen för att köra dessa genom (pdf)latex\n(använd `make latexpdf' här för att göra det automatiskt)." + +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "inget konfigurationsvärde för \"latex_documents\" hittades; inga dokument kommer att skrivas" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "\"latex_documents\" konfigurationsvärde refererar till okänt dokument %s" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "kopiering av TeX-stödfiler" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "kopiering av ytterligare filer" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Okänd konfigurationsnyckel: latex_elements[%r], ignorerad." -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" -msgstr "" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "Okänt temaalternativ: latex_theme_options[%r], ignoreras." -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" -msgstr "" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s är redan tilldelad sektionsnummer (nästlad numrerad toctree?)" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" -msgstr "" +msgid "image file not readable: %s" +msgstr "bildfilen är inte läsbar: %s" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "" +msgid "image file %s not readable: %s" +msgstr "bildfil %s inte läsbar: %s" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "" +msgid "download file not readable: %s" +msgstr "hämtningsfil inte läsbar: %s" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "cirkulära toctree-referenser upptäckta, ignorerar: %s <- %s" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree innehåller referens till dokument %r som inte har en titel: ingen länk kommer att genereras" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "" +msgid "toctree contains reference to non-included document %r" +msgstr "toctree innehåller hänvisning till icke-inkluderat dokument %r" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "" +msgid "toctree contains reference to non-existing document %r" +msgstr "toctree innehåller referens till icke-existerande dokument %r" + +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "se %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "se även %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "okänd typ av indexpost %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/te/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/te/LC_MESSAGES/sphinx.mo index 9303f93aab792d333aa5aa662864f67ef41e991a..8adca96fbbd931780f632b803d87f97234944165 100644 GIT binary patch delta 24 fcmey%`j>TsI3u^Ak*TsI3u@#k*=YIf`NgRvGHal#@mblTSW$< diff --git a/addons/source-python/packages/site-packages/sphinx/locale/te/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/te/LC_MESSAGES/sphinx.po index f237b92e9..58f3ed30f 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/te/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/te/LC_MESSAGES/sphinx.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Telugu (http://app.transifex.com/sphinx-doc/sphinx-1/language/te/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: te\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2804,21 +2945,20 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2827,6 +2967,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2848,119 +2993,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2972,92 +3124,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3085,581 +3230,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3667,548 +3720,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/tr/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/tr/LC_MESSAGES/sphinx.mo index 13f46620e52d06054f2656a259c79ae02011d9e4..69e832bc09600aece9838a9a0af35c3ef60f9c57 100644 GIT binary patch delta 8686 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 w5qZV4_SLw6gxX6*vzs+Y>=@r6F(NTFJu$gpF delta 8875 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 diff --git a/addons/source-python/packages/site-packages/sphinx/locale/tr/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/tr/LC_MESSAGES/sphinx.po index 967c7d358..3f78dedf8 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/tr/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/tr/LC_MESSAGES/sphinx.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: BouRock, 2020\n" "Language-Team: Turkish (http://app.transifex.com/sphinx-doc/sphinx-1/language/tr/)\n" @@ -22,6 +22,127 @@ msgstr "" "Language: tr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Geliştirme Önerileri; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "%s.%s ayarı, aranan tema yapılandırmalarının hiçbirinde meydana gelmiyor" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "desteklenmeyen tema seçeneği %r verildi" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "tema yolundaki %r dosyası geçerli bir zip dosyası değil ya da hiç tema içermiyor" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -36,127 +157,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "Bu projenin %s uzantısına ve en az %s sürümüne ihtiyacı vardır ve bu nedenle yüklenen sürümle oluşturulamaz (%s)." -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Pygments lexer adı %r bilinmiyor" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "Olay %r zaten mevcut" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "Bilinmeyen olay adı: %s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "Kaynak dizin bulunamıyor (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "Kaynak dizin ve hedef dizin aynı olamaz" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "Sphinx s%s çalışıyor" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "Bu proje en az Sphinx s%s gerektirir ve bu nedenle bu sürüm ile oluşturulamaz." -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "çıktı dizini yapılıyor" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "%s uzantısı ayarlanırken:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "Şu anda conf.py dosyasında tanımlanan 'kurulum' çağrılabilir bir Python değil. Lütfen tanımını çağrılabilir bir işlev yapmak için değiştirin. Bunun, Sphinx uzantısı gibi davranması için conf.py dosyasına ihtiyacı vardır." -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "çeviriler yükleniyor [%s]... " -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "bitti" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "yerleşik iletiler için kullanılamaz" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "derin temizlenen ortam yükleniyor" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "başarısız olan: %s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "Seçilen oluşturucu yok, varsayılan kullanılıyor: html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "düğüm sınıfı %r zaten kayıtlı, ziyaretçileri geçersiz kılınacaktır" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -164,12 +312,12 @@ msgid "" "explicit" msgstr "%s uzantısı paralel okuma için güvenli olup olmadığını bildirmez, olmadığını varsayarak - lütfen uzantıyı hazırlayandan gözden geçirmesini ve açık hale getirmesini isteyin" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "%s uzantısı paralel okuma için güvenli değil" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -177,82 +325,214 @@ msgid "" "explicit" msgstr "%s uzantısı paralel yazma için güvenli olup olmadığını bildirmez, olmadığını varsayarak - lütfen uzantıyı hazırlayandan gözden geçirmesini ve açık hale getirmesini isteyin" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "%s uzantısı paralel yazma için güvenli değil" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "%s seri nosu yapılıyor" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "config dizini bir conf.py dosyası içermiyor (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Oluşturucu sınıfı %s \"ad\" özniteliğine sahip değil" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Oluşturucu %r zaten mevcut (%s modülünde)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Oluşturucu adı %s kayıtlı veya giriş noktası aracılığıyla kullanılabilir değil" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Oluşturucu adı %s kayıtlı değil" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "etki alanı %s zaten kayıtlı" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "etki alanı %s henüz kayıtlı değil" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "%r yönergesi zaten %s etki alanına kayıtlı" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "%r rolü zaten %s etki alanına kayıtlı" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "%r dizini zaten %s etki alanına kayıtlı" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "%r object_type zaten kayıtlı" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "%r crossref_type zaten kayıtlı" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r zaten kayıtlı" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "%r için source_parser zaten kayıtlı" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "%s için kaynak ayrıştırıcı kayıtlı değil" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "%r için çevirmen zaten mevcut" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "add_node() için kwargs bir (visit, depart) tanımlama grubu işlevi olmak zorundadır: %r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r zaten kayıtlı" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "%r uzantısı zaten %s sürümünden bu yana Sphinx ile birleştirildi; bu uzantı yoksayıldı." + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "Özgün özel durumu:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr " %s uzantısı içe aktarılamadı" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "%r uzantısı setup() işlevine sahip değil; bu gerçekten bir Sphinx uzantısı modülü mü?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "Bu proje tarafından kullanılan %s uzantısının en az Sphinx s%s sürümüne ihtiyacı var; bu nedenle bu sürümle oluşturulamaz." + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "%r uzantısı, setup() işlevinden desteklenmeyen bir nesne döndürdü; Hiçbir şey veya üstveri sözlüğü döndürmeli" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." msgstr "" -#: config.py:394 +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "config dizini bir conf.py dosyası içermiyor (%s)" + +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "sözlük yapılandırma ayarı %r geçersiz kılınamaz, yoksayılıyor (tek tek öğeleri ayarlamak için %r kullanın)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "geçersiz sayı %r; yapılandırma değeri %r için; yoksayılıyor" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "desteklenmeyen tür ile yapılandırma ayarı %r geçersiz kılınamaz, yoksayılıyor" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "geçersiz kılmada bilinmeyen yapılandırma değeri %r, yoksayılıyor" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "Yapılandırma değeri %r zaten mevcut" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "Yapılandırma dosyanızda bir sözdizimi hatası var: %s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "Yapılandırma dosyası (veya içe aktarılan modüllerden biri) sys.exit() olarak adlandırılır" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -260,469 +540,625 @@ msgid "" "%s" msgstr "Yapılandırma dosyanızda programlanabilir bir hata var:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "Bölüm %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "Şekil %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "Tablo %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "Listeleme %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "`{name}` yapılandırma değeri, {candidates} geğerlrinden biri olmak zorundadır, ancak `{current}` değeridir." -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "`{name}' yapılandırma değeri `{current.__name__}' türüne sahip; beklenen {permitted}." -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "`{name}' yapılandırma değeri `{current.__name__}' türüne sahip, vassayılanları `{default.__name__}'." -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "primary_domain %r bulunamadı, yoksayıldı." -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Pygments lexer adı %r bilinmiyor" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +#: environment/__init__.py:89 +msgid "new config" +msgstr "yeni yapılandırma" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." -msgstr "" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "yapılandırma değişti" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "%s.%s ayarı, aranan tema yapılandırmalarının hiçbirinde meydana gelmiyor" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "uzantılar değişti" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "desteklenmeyen tema seçeneği %r verildi" +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "yapım ortamı sürümü şu anki değil" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "tema yolundaki %r dosyası geçerli bir zip dosyası değil ya da hiç tema içermiyor" +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "kaynak dizin değişti" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "Bu ortam seçilen oluşturucuyla uyumsuzdur, lütfen başka bir belge ağacı dizini seçin." -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" -msgstr "" +msgid "Failed to scan documents in %s: %r" +msgstr "%s içinde belgeleri tarama başarısız oldu: %r" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Domain %r is not registered" +msgstr "Etki alanı %r kayıtlı değil" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "belge herhangi bir toctree içine dahil değil" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "kendinden kaynaklı toctree bulundu. Yoksayıldı." -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Dikkat" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "Olay %r zaten mevcut" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Uyarı" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "Bilinmeyen olay adı: %s" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Tehlike" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "" +#: locale/__init__.py:232 +msgid "Error" +msgstr "Hata" -#: project.py:72 +#: locale/__init__.py:233 +msgid "Hint" +msgstr "İpucu" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Önemli" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Not" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Ayrıca bakınız" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Tüyo" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Uyarı" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo dosyaları %(outdir)s içinde." + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\nMakeinfo aracılığıyla bunları çalıştırmak için bu dizinde 'make' komutunu çalıştırın\n(bunu otomatik olarak yapmak için burada 'make info' komutunu kullanın)." -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "hiçbir \"texinfo_documents\" yapılandırma değeri bulunamadı; hiçbir belge yazılmayacaktır" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Oluşturucu sınıfı %s \"ad\" özniteliğine sahip değil" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "\"texinfo_documents\" yapılandırma değeri bilinmeyen %s belgesine başvurur" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Oluşturucu %r zaten mevcut (%s modülünde)" +msgid "processing %s" +msgstr "%s işleniyor" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Oluşturucu adı %s kayıtlı veya giriş noktası aracılığıyla kullanılabilir değil" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "yazılıyor" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Oluşturucu adı %s kayıtlı değil" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "başvurular çözümleniyor..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "etki alanı %s zaten kayıtlı" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (şurada: " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "etki alanı %s henüz kayıtlı değil" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "resimler kopyalanıyor..." -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "%r yönergesi zaten %s etki alanına kayıtlı" +msgid "cannot copy image file %r: %s" +msgstr "resim dosyası %r kopyalanamıyor: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "%r rolü zaten %s etki alanına kayıtlı" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "Texinfo destek dosyaları kopyalanıyor..." -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "%r dizini zaten %s etki alanına kayıtlı" +msgid "error writing file Makefile: %s" +msgstr "Makefile dosyası yazılırken hata oldu: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "%r object_type zaten kayıtlı" +msgid "The manual pages are in %(outdir)s." +msgstr "Rehber sayfaları %(outdir)s içinde." -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "%r crossref_type zaten kayıtlı" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "hiçbir \"man_pages\" yapılandırma değeri bulunamadı; hiçbir rehber sayfası yazılmayacaktır" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r zaten kayıtlı" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" yapılandırma değeri bilinmeyen %s belgesine başvurur" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "%r için source_parser zaten kayıtlı" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML sayfası %(outdir)s içinde." -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "%s için kaynak ayrıştırıcı kayıtlı değil" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "tek bir belgede toplanıyor" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "%r için çevirmen zaten mevcut" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "ilave dosyalar yazılıyor" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "add_node() için kwargs bir (visit, depart) tanımlama grubu işlevi olmak zorundadır: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "Taklit oluşturucu hiçbir dosya oluşturmaz." -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r zaten kayıtlı" +msgid "The message catalogs are in %(outdir)s." +msgstr "İleti katalogları %(outdir)s içinde." -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "" +msgid "building [%s]: " +msgstr "[%s] oluşturuluyor:" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "%r uzantısı zaten %s sürümünden bu yana Sphinx ile birleştirildi; bu uzantı yoksayıldı." +msgid "targets for %d template files" +msgstr "%d şablon dosyası için hedefler" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "Özgün özel durumu:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "şablonlar okunuyor..." -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" -msgstr " %s uzantısı içe aktarılamadı" +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "ileti katalogları yazılıyor..." -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "%r uzantısı setup() işlevine sahip değil; bu gerçekten bir Sphinx uzantısı modülü mü?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "Yukarıdaki çıktıda veya %(outdir)s/output.txt içinde herhangi bir hata arayın" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "Bu proje tarafından kullanılan %s uzantısının en az Sphinx s%s sürümüne ihtiyacı var; bu nedenle bu sürümle oluşturulamaz." +msgid "broken link: %s (%s)" +msgstr "bozuk bağlantı: %s (%s)" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "%r uzantısı, setup() işlevinden desteklenmeyen bir nesne döndürdü; Hiçbir şey veya üstveri sözlüğü döndürmeli" +msgid "Anchor '%s' not found" +msgstr "Bağlayıcı '%s' bulunamadı" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." +msgstr "ePub dosyası %(outdir)s içinde." + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:251 +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_language\" (veya \"language\"), EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "yapılandırma değeri \"epub_uid\", EPUB3 için XML NAME olmalıdır" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_title\" (veya \"html_title\"), EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_author\", EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_contributor\", EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_description\", EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_publisher\", EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_copyright\" (veya \"copyright\"), EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "yapılandırma değeri \"epub_identifier\", EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "yapılandırma değeri \"version\", EPUB3 için boş olmamalıdır" + +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "invalid css_file: %r, ignored" +msgstr "geçersiz css_file: %r, yoksayıldı" -#: roles.py:274 +#: builders/xml.py:29 #, python-format -msgid "invalid CWE number %s" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "XML dosyaları %(outdir)s içinde." -#: roles.py:294 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Geliştirme Önerileri; PEP %s" +msgid "error writing file %s: %s" +msgstr "%s dosyası yazılırken hata oldu: %s" -#: roles.py:317 +#: builders/xml.py:103 #, python-format -msgid "invalid PEP number %s" -msgstr "" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "Pseudo-XML dosyaları %(outdir)s içinde." -#: roles.py:355 +#: builders/_epub_base.py:223 #, python-format -msgid "invalid RFC number %s" +msgid "duplicated ToC entry found: %s" +msgstr "kopyalanmış ToC girişi bulundu: %s" + +#: builders/_epub_base.py:436 +#, python-format +msgid "cannot read image file %r: copying it instead" +msgstr "resim dosyası %r okunamıyor: bunun yerine kopyalanıyor" + +#: builders/_epub_base.py:467 +#, python-format +msgid "cannot write image file %r: %s" +msgstr "resim dosyası %r yazılamıyor: %s" + +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "Yastık bulunamadı - resim dosyaları kopyalanıyor" + +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[kaynak]" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[belgeler]" +#: builders/_epub_base.py:594 +#, python-format +msgid "unknown mimetype for %s, ignoring" +msgstr "%s için bilinmeyen mime türü, yoksayılıyor" -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "Modül kodu" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" -#: ext/viewcode.py:353 +#: builders/_epub_base.py:802 #, python-format -msgid "

Source code for %s

" -msgstr "

%s öğesinin kaynak kodu

" +msgid "writing %s file..." +msgstr "%s dosyası yazılıyor..." -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "Genel bakış: modül kodu" +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "Metin dosyaları %(outdir)s içinde." -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

Kodları mevcut bütün modüller

" +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "%s oluşturucu için uygun bir resim bulunamadı: %s (%s)" -#: ext/extlinks.py:82 +#: builders/__init__.py:237 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "" +msgid "a suitable image for %s builder not found: %s" +msgstr "%s oluşturucu için uygun bir resim bulunamadı: %s" -#: ext/autosectionlabel.py:52 +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "[mo] oluşturuluyor: " + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "çıktı yazılıyor..." + +#: builders/__init__.py:280 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "" +msgid "all of %d po files" +msgstr "%d po dosyasının tümü" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/__init__.py:302 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "%s kopya etiketi, %s içindeki diğer örnek" +msgid "targets for %d po files that are specified" +msgstr "belirtilen %d po dosyası için hedefler" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "güncel olmayan %d po dosyası için hedefler" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "tüm kaynak dosyaları" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/duration.py:90 +#: builders/__init__.py:342 +#, python-format msgid "" -"====================== slowest reading durations =======================" -msgstr "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "komut satırında verilen %r dosyası kaynak dizinin altında değil, yoksayılıyor" -#: ext/doctest.py:118 +#: builders/__init__.py:353 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "file %r given on command line is not a valid document, ignoring" msgstr "" -#: ext/doctest.py:124 +#: builders/__init__.py:366 #, python-format -msgid "'%s' is not a valid option." -msgstr "" +msgid "%d source files given on command line" +msgstr "komut satırında verilen %d kaynak dosyası" -#: ext/doctest.py:139 +#: builders/__init__.py:382 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "" +msgid "targets for %d source files that are out of date" +msgstr "güncel olmayan %d kaynak dosyası için hedefler" -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "şimdi güncel olmayan dosyalar aranıyor..." -#: ext/doctest.py:297 +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "%d tane bulundu" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "hiç bulunamadı" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "ortam derin temizleniyor" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "tutarlılık denetleniyor" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "hiçbir hedef güncel değil." + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "güncellenen ortam:" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "%s eklendi, %s değiştirildi, %s kaldırıldı" + +#: builders/__init__.py:536 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/doctest.py:457 +#: builders/__init__.py:545 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/doctest.py:568 +#: builders/__init__.py:556 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:563 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "LaTeX komutu %r çalıştırılamaz (matematik görüntüleme için gerekli), imgmath_latex ayarını gözden geçirin" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "kaynaklar okunuyor..." -#: ext/imgmath.py:181 +#: builders/__init__.py:725 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s komutu %r çalıştırılamaz (matematik görüntüleme için gerekli), imgmath_%s ayarını gözden geçirin" +msgid "docnames to write: %s" +msgstr "yazmak için belge adları: %s" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "belgeler hazırlanıyor" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" -#: ext/imgmath.py:344 +#: builders/changes.py:29 #, python-format -msgid "display latex %r: %s" -msgstr "görüntü latex %r: %s" +msgid "The overview file is in %(outdir)s." +msgstr "Genel bakış dosyası %(outdir)s içinde." -#: ext/imgmath.py:380 +#: builders/changes.py:65 #, python-format -msgid "inline latex %r: %s" -msgstr "satır içi latex %r: %s" +msgid "no changes in version %s." +msgstr "%s sürümünde değişiklik yok." + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "özet dosyası yazılıyor..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Yerleşikler" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Modül seviyesi" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "kaynak dosyalar kopyalanıyor..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "değişiklikler günlüğü oluşturma için %r okunamadı" #: ext/coverage.py:48 #, python-format @@ -742,9 +1178,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -779,18 +1216,46 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" -#: ext/imgconverter.py:44 +#: ext/extlinks.py:82 #, python-format msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" msgstr "" -#: ext/imgconverter.py:56 ext/imgconverter.py:90 -#, python-format -msgid "" -"convert exited with error:\n" +#: ext/todo.py:61 +msgid "Todo" +msgstr "Yapılacaklar" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<>, %s içinde, %d. satırda bulunur.)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "özgün giriş" + +#: ext/imgconverter.py:44 +#, python-format +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "" + +#: ext/imgconverter.py:56 ext/imgconverter.py:90 +#, python-format +msgid "" +"convert exited with error:\n" "[stderr]\n" "%r\n" "[stdout]\n" @@ -866,1779 +1331,1514 @@ msgstr "[grafik: %s]" msgid "[graph]" msgstr "[grafik]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Yapılacaklar" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" -msgstr "" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "LaTeX komutu %r çalıştırılamaz (matematik görüntüleme için gerekli), imgmath_latex ayarını gözden geçirin" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s komutu %r çalıştırılamaz (matematik görüntüleme için gerekli), imgmath_%s ayarını gözden geçirin" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<>, %s içinde, %d. satırda bulunur.)" +msgid "display latex %r: %s" +msgstr "görüntü latex %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "özgün giriş" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "satır içi latex %r: %s" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "Geçersiz resim yazısı: %s" +msgid "missing '+' or '-' in '%s' option." +msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "satır numarası özellikleri aralık dışında (1-%d): %r" +msgid "'%s' is not a valid option." +msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "Hem \"%s\" hem de \"%s\" seçeneği kullanılamıyor" +msgid "'%s' is not a valid pyversion option" +msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "%r adlı nesne, dahil edilen %r dosyasında bulunamadı" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "Ayrık bir \"satır\" kümesiyle \"lineno-match\" kullanılamıyor" - -#: directives/code.py:314 +#: ext/doctest.py:451 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Satır özelliği %r: dahil edilen %r dosyasından çekilen hiç satır yok" - -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/other.py:119 +#: ext/doctest.py:568 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/autosectionlabel.py:52 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree, hariç tutulan %r belgesine başvuru içeriyor" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "" -#: directives/other.py:156 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree, varolmayan %r belgesine başvuru içeriyor" +msgid "duplicate label %s, other instance in %s" +msgstr "%s kopya etiketi, %s içindeki diğer örnek" -#: directives/other.py:169 +#: ext/duration.py:47 #, python-format -msgid "duplicated entry found in toctree: %s" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Bölümü hazırlayan: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Modülü hazırlayan: " - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Kodu hazırlayan: " - -#: directives/other.py:209 -msgid "Author: " -msgstr "Hazırlayan: " - -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." -msgstr "Genel bakış dosyası %(outdir)s içinde." +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "" -#: builders/changes.py:56 +#: ext/duration.py:139 #, python-format -msgid "no changes in version %s." -msgstr "%s sürümünde değişiklik yok." - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "özet dosyası yazılıyor..." +msgid "%.3fs %s" +msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Yerleşikler" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[kaynak]" -#: builders/changes.py:72 -msgid "Module level" -msgstr "Modül seviyesi" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "kaynak dosyalar kopyalanıyor..." +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[belgeler]" -#: builders/changes.py:133 -#, python-format -msgid "could not read %r for changelog creation" -msgstr "değişiklikler günlüğü oluşturma için %r okunamadı" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "Modül kodu" -#: builders/manpage.py:37 +#: ext/viewcode.py:359 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "Rehber sayfaları %(outdir)s içinde." +msgid "

Source code for %s

" +msgstr "

%s öğesinin kaynak kodu

" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "hiçbir \"man_pages\" yapılandırma değeri bulunamadı; hiçbir rehber sayfası yazılmayacaktır" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "Genel bakış: modül kodu" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "yazılıyor" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

Kodları mevcut bütün modüller

" -#: builders/manpage.py:71 +#: domains/citation.py:75 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" yapılandırma değeri bilinmeyen %s belgesine başvurur" +msgid "duplicate citation %s, other instance in %s" +msgstr "%s kopya alıntısı, %s içindeki diğer örnek" -#: builders/__init__.py:224 +#: domains/citation.py:92 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "%s oluşturucu için uygun bir resim bulunamadı: %s (%s)" +msgid "Citation [%s] is not referenced." +msgstr "Alıntı [%s] kaynak gösterilmedi." -#: builders/__init__.py:232 +#: domains/math.py:73 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "%s oluşturucu için uygun bir resim bulunamadı: %s" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "[mo] oluşturuluyor: " - -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "çıktı yazılıyor..." +msgid "duplicate label of equation %s, other instance in %s" +msgstr "%s denkleminin kopya etiketi, %s içindeki diğer örnek" -#: builders/__init__.py:275 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "all of %d po files" -msgstr "%d po dosyasının tümü" +msgid "Invalid math_eqref_format: %r" +msgstr "Geçersiz math_eqref_format: %r" -#: builders/__init__.py:297 +#: domains/javascript.py:183 #, python-format -msgid "targets for %d po files that are specified" -msgstr "belirtilen %d po dosyası için hedefler" +msgid "%s() (built-in function)" +msgstr "%s() (yerleşik işlev)" -#: builders/__init__.py:309 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "güncel olmayan %d po dosyası için hedefler" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "tüm kaynak dosyaları" +msgid "%s() (%s method)" +msgstr "%s() (%s yöntemi)" -#: builders/__init__.py:330 +#: domains/javascript.py:186 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "" +msgid "%s() (class)" +msgstr "%s() (sınıf)" -#: builders/__init__.py:337 +#: domains/javascript.py:188 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "komut satırında verilen %r dosyası kaynak dizinin altında değil, yoksayılıyor" +msgid "%s (global variable or constant)" +msgstr "%s (genel değişken veya sabit)" -#: builders/__init__.py:348 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s özniteliği)" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "komut satırında verilen %d kaynak dosyası" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Bağımsız Değişkenler" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "güncel olmayan %d kaynak dosyası için hedefler" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Şunu verir: " -#: builders/__init__.py:395 builders/gettext.py:265 -#, python-format -msgid "building [%s]: " -msgstr "[%s] oluşturuluyor:" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Dönüşler" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "şimdi güncel olmayan dosyalar aranıyor..." +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Dönüş türü" -#: builders/__init__.py:410 +#: domains/javascript.py:374 #, python-format -msgid "%d found" -msgstr "%d tane bulundu" +msgid "%s (module)" +msgstr "%s (modül)" -#: builders/__init__.py:412 -msgid "none found" -msgstr "hiç bulunamadı" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "işlevi" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "ortam derin temizleniyor" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "yöntemi" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "tutarlılık denetleniyor" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "sınıfı" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "hiçbir hedef güncel değil." +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "verisi" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "güncellenen ortam:" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "özniteliği" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s eklendi, %s değiştirildi, %s kaldırıldı" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "modülü" -#: builders/__init__.py:531 +#: domains/javascript.py:458 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "kopya %s açıklamasına ait %s, diğer %s, %s içinde" -#: builders/__init__.py:540 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "%s (directive)" +msgstr "%s (yönerge)" -#: builders/__init__.py:551 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid ":%s: (directive option)" +msgstr ":%s: (yönerge seçeneği)" -#: builders/__init__.py:558 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" +msgid "%s (role)" +msgstr "%s (rol)" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "kaynaklar okunuyor..." +#: domains/rst.py:234 +msgid "directive" +msgstr "yönergesi" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" -msgstr "yazmak için belge adları: %s" +#: domains/rst.py:235 +msgid "directive-option" +msgstr "yönerge seçeneği" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: domains/rst.py:236 +msgid "role" +msgstr "rolü" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "belgeler hazırlanıyor" +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "%s %s kopya açıklaması, %s içindeki diğer örnek" -#: builders/__init__.py:731 -msgid "copying assets" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:883 +#: domains/changeset.py:33 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "" +msgid "Changed in version %s" +msgstr "%s sürümünde değişti" -#: builders/epub3.py:84 +#: domains/changeset.py:34 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "ePub dosyası %(outdir)s içinde." +msgid "Deprecated since version %s" +msgstr "%s sürümünden beri kullanım dışı" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_language\" (veya \"language\"), EPUB3 için boş olmamalıdır" - -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "yapılandırma değeri \"epub_uid\", EPUB3 için XML NAME olmalıdır" - -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_title\" (veya \"html_title\"), EPUB3 için boş olmamalıdır" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_author\", EPUB3 için boş olmamalıdır" +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "iş numarası pozitif bir sayı olmalıdır" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_contributor\", EPUB3 için boş olmamalıdır" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_description\", EPUB3 için boş olmamalıdır" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_publisher\", EPUB3 için boş olmamalıdır" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "belgelendirme kaynak dosyaları için yol" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_copyright\" (veya \"copyright\"), EPUB3 için boş olmamalıdır" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "çıktı dizini için yol" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "yapılandırma değeri \"epub_identifier\", EPUB3 için boş olmamalıdır" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "yapılandırma değeri \"version\", EPUB3 için boş olmamalıdır" +#: cmd/build.py:114 +msgid "general options" +msgstr "genel seçenekler" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "geçersiz css_file: %r, yoksayıldı" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XML dosyaları %(outdir)s içinde." +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "%s dosyası yazılırken hata oldu: %s" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "tüm dosyaları yaz (varsayılan: sadece yeni ve değiştirilmiş dosyaları yaz)" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "Pseudo-XML dosyaları %(outdir)s içinde." +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "kaydedilmiş bir ortam kullanma, her zaman tüm dosyaları oku" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfo dosyaları %(outdir)s içinde." +#: cmd/build.py:150 +msgid "path options" +msgstr "" -#: builders/texinfo.py:48 +#: cmd/build.py:157 msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\nMakeinfo aracılığıyla bunları çalıştırmak için bu dizinde 'make' komutunu çalıştırın\n(bunu otomatik olarak yapmak için burada 'make info' komutunu kullanın)." +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "hiçbir \"texinfo_documents\" yapılandırma değeri bulunamadı; hiçbir belge yazılmayacaktır" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "\"texinfo_documents\" yapılandırma değeri bilinmeyen %s belgesine başvurur" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "%s işleniyor" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "yapılandırma dosyasındaki bir ayarı geçersiz kıl" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "başvurular çözümleniyor..." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "HTML şablonlarına bir değer geçir" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (şurada: " +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "etiketi tanımla: \"sadece\" TAG'li blokları dahil et" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "resimler kopyalanıyor..." +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "resim dosyası %r kopyalanamıyor: %s" +#: cmd/build.py:212 +msgid "console output options" +msgstr "konsol çıktısı seçenekleri" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "Texinfo destek dosyaları kopyalanıyor..." +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "ayrıntı seviyesini artır (tekrarlanabilir)" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "Makefile dosyası yazılırken hata oldu: %s" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "stdout üzerinde çıktı yok, stderr üzerinde sadece uyarılar" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "kopyalanmış ToC girişi bulundu: %s" - -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "resim dosyası %r okunamıyor: bunun yerine kopyalanıyor" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "hiç çıktı yok, hatta uyarılarda bile" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "resim dosyası %r yazılamıyor: %s" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "renkli çıktı yayımı yap (varsayılan: otomatik algıla)" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "Yastık bulunamadı - resim dosyaları kopyalanıyor" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "renkli çıktı yayımı yapma (varsayılan: otomatik algıla)" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "verilen dosyaya uyarıları (ve hataları) yaz" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "uyarıları hatalara dönüştür" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "%s için bilinmeyen mime türü, yoksayılıyor" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "özel durumda tam geri izleme göster" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" -msgstr "" +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "özel durumda Pdb çalıştır" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "%s dosyası yazılıyor..." - -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "Taklit oluşturucu hiçbir dosya oluşturmaz." - -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "İleti katalogları %(outdir)s içinde." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "-a seçeneği ve dosya adları birleştirilemiyor" -#: builders/gettext.py:266 +#: cmd/build.py:357 #, python-format -msgid "targets for %d template files" -msgstr "%d şablon dosyası için hedefler" +msgid "cannot open warning file '%s': %s" +msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "şablonlar okunuyor..." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-D seçeneği bağımsız değişkeni ad=değer biçiminde olmak zorundadır" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "ileti katalogları yazılıyor..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-A seçeneği bağımsız değişkeni ad=değer biçiminde olmak zorundadır" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML sayfası %(outdir)s içinde." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "modüllerden otomatik olarak docstrings ekle" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "tek bir belgede toplanıyor" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "doctest bloklarında kod parçacıklarını otomatik olarak dene" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "ilave dosyalar yazılıyor" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "farklı projelerin Sphinx begelendirmeleri arasında bağlantıla" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "Yukarıdaki çıktıda veya %(outdir)s/output.txt içinde herhangi bir hata arayın" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "oluşturmada gösterilebilen veya gizlenebilen \"yapılacaklar\" girişlerini yaz" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "bozuk bağlantı: %s (%s)" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "belgelendirme kapsamı için denetlemeler" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "Bağlayıcı '%s' bulunamadı" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "PNG veya SVG resimleri olarak işleneni, matematiği dahil et" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "MathJax ile tarayıcıda işleneni, matematiği dahil et" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." -msgstr "Metin dosyaları %(outdir)s içinde." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "yapılandırma değerlerine dayalı içeriğin koşullu olarak eklenmesi" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "belgelenmiş Python nesnelerinin kaynak koduna bağlantıları dahil et" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "belgeyi GitHub sayfalarında yayımlamak için .nojekyll dosyası oluştur" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "Lütfen geçerli bir yol adı girin." -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "Lütfen biraz metin girin." -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 +#: cmd/quickstart.py:134 #, python-format -msgid "%b %d, %Y" -msgstr "%d %b %Y" +msgid "Please enter one of %s." +msgstr "Lütfen %s seçeneklerinden birini girin." -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "Lütfen ya 'y' ya da 'n' girin." -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "Lütfen bir dosya soneki girin, örn. '.rst' veya '.txt'." -#: transforms/__init__.py:253 +#: cmd/quickstart.py:230 #, python-format +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "Sphinx %s hızlı başlangıç yardımcı uygulamasına hoş geldiniz." + +#: cmd/quickstart.py:235 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "Lütfen aşağıdaki ayarlar için değerleri girin (parantez içinde verilirse\nvarsayılan değeri kabul etmek için yalnızca Enter tuşuna basın)." -#: transforms/__init__.py:294 +#: cmd/quickstart.py:242 #, python-format -msgid "Footnote [%s] is not referenced." -msgstr "" - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" +msgid "Selected root path: %s" +msgstr "Seçilen kök dizin yolu: %s" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "Belgelendirme için kök dizin yolunu girin." -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "Belgelendirme için kök dizin yolu" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "Hata: seçilen kök dizin yolunda varolan bir conf.py bulundu." -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sfenks-quickstart varolan Sphinx projelerinin üzerine yazmayacak." -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "Lütfen yeni bir kök dizin yolu girin (ya da çıkmak için yalnızca Enter'a basın)" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "" +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "Sphinx çıktısının oluşturma dizinini yerleştirmek için iki seçeneğiniz var.\nYa, kök dizin yolu içinde bir \"_build\" dizini kullanın, ya da kök dizin yolu\niçinde \"source\" ve \"build\" dizinlerini ayırın." -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "Source ve build dizinlerini ayır (y/n)" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:287 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "Kök dizinin içinde, iki dizin daha oluşturulacaktır; özel HTML şablonları için \"_templates\"\nve özel stil sayfaları ve diğer sabit dosyalar için \"_static\".\nAlt çizgi yerine başka bir önek (\".\" gibi) girebilirsiniz." -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "Templates ve static dizinleri için ad öneki" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "Proje adı, oluşturulan belgelendirmedeki çeşitli yerlerde oluşacak." -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "Proje adı" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "Hazırlayan ad(ları)ı" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "Proje sürümü" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "Proje yayımı" -#: environment/__init__.py:86 -msgid "new config" -msgstr "yeni yapılandırma" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "Eğer belgeler İngilizce dışında bir dilde yazıldıysa, bunun dil koduna\ngöre burada bir dil seçebilirsiniz. Sphinx daha sonra, ürettiği metni o\ndile çevirecektir.\n\nDesteklenen kodların listesi için\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language adresine bakın." -#: environment/__init__.py:87 -msgid "config changed" -msgstr "yapılandırma değişti" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "Proje dili" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "uzantılar değişti" +#: cmd/quickstart.py:340 +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 "" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "yapım ortamı sürümü şu anki değil" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "Kaynak dosya soneki" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "kaynak dizin değişti" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "Bir belge, \"içindekiler ağacı\"nın üst düğümü olarak kabul edilmesi, yani\nbelgelerin hiyerarşik yapısının kökü olması açısından özeldir.\nNormalde bu \"dizin\"dir, ancak \"dizin\" belgeniz özel bir şablonsa,\nbunu başka bir dosya adına da ayarlayabilirsiniz." -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "Asıl belgenizin adı (sonek olmadan)" -#: environment/__init__.py:330 +#: cmd/quickstart.py:368 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "Hata: %s asıl dosyası zaten seçilen kök dizin yolunda bulundu." -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sfenks-quickstart varolan dosyanın üzerine yazmayacak." -#: environment/__init__.py:379 +#: cmd/quickstart.py:378 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "Bu ortam seçilen oluşturucuyla uyumsuzdur, lütfen başka bir belge ağacı dizini seçin." - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "%s içinde belgeleri tarama başarısız oldu: %r" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "Lütfen yeni bir dosya adı girin ya da varolan dosyayı yeniden adlandırın ve Enter tuşuna basın" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Etki alanı %r kayıtlı değil" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "Aşağıdaki Sphinx uzantılarından hangisinin etkinleştirilmesi gerektiğini gösterir:" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "belge herhangi bir toctree içine dahil değil" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "Not: imgmath ve mathjax aynı anda etkinleştirilemez. imgmath seçimi kaldırıldı." -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "kendinden kaynaklı toctree bulundu. Yoksayıldı." +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "Makefile ve Windows komut dosyası sizin için oluşturulabilir,\nböylece doğrudan örn. sphinx-build çağırmak yerine sadece\n`make html' komutu çalıştırılmak zorundadır." -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "Makefile oluşturulsun mu? (y/n)" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "okuma hatası: %s, %s" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "Windows komut satırı oluşturulsun mu? (y/n)" -#: util/i18n.py:113 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "writing error: %s, %s" -msgstr "yazma hatası: %s, %s" +msgid "Creating file %s." +msgstr "%s dosyası oluşturuluyor." -#: util/i18n.py:146 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "locale_dir %s does not exist" -msgstr "" +msgid "File %s already exists, skipping." +msgstr "%s dosyası zaten var, atlanıyor." -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "Tamamlandı: İlk dizin yapısı oluşturuldu." -#: util/i18n.py:245 +#: cmd/quickstart.py:520 #, python-format msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "Artık %s asıl dosyanızı doldurmalı ve diğer belgelendirme kaynak dosyalarını\noluşturmalısınız." -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "Belgeleri oluşturmak için Makefile'ı kullanın, aşağıdaki gibi:\n make builder" -#: util/nodes.py:423 +#: cmd/quickstart.py:531 #, python-format msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "Belgeleri oluşturmak için sphinx-build komutunu kullanın, aşağıdaki gibi:\n sphinx-build -b builder %s %s" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "\"builder\" burada desteklenen oluşturuculardan biridir, örn. html, latex veya linkcheck." -#: util/display.py:82 -msgid "skipped" -msgstr "atlandı" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\nBir Sphinx projesi için gerekli dosyaları oluşturun.\n\nsphinx-quickstart, projeniz hakkında bazı sorular soran ve ardından tam bir\nbelgelendirme dizini ve örnek oluşturan etkileşimli bir araçtır\nMakefile, sphinx-build ile kullanılır.\n" -#: util/display.py:87 -msgid "failed" -msgstr "başarısız oldu" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "sessiz kipi" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "proje kök dizini" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "Yapı seçenekleri" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "eğer belirtildiyse, kaynak ve oluşturma dizinlerini ayırın" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/fileutil.py:76 -#, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "_templates vb. içinde nokta için değiştirme" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "Proje temel seçenekleri" -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "varsayılan rol %s bulunamadı" +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "proje adı" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "hazırlayan adları" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "projenin sürümü" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "Dipnotlar" +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "projenin yayımı" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "[resim: %s]" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "belge dili" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[resim]" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "kaynak dosya soneki" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Dizin" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "asıl belge adı" -#: writers/latex.py:743 writers/texinfo.py:646 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "epub kullan" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "Uzantı seçenekleri" -#: writers/texinfo.py:1303 +#: cmd/quickstart.py:671 #, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "%r dili için bilinen hiç Babel seçeneği yok" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "Geçersiz math_eqref_format: %r" +msgid "enable %s extension" +msgstr "%s uzantısını etkinleştir" -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "rasgele uzantıları etkinleştir" -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefile ve Batchfile oluşturma" -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "makefile oluştur" -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "makefile oluşturma" -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "batchfile oluştur" -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "batchfile oluşturma" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "Makefile/make.bat için make-mode kullan" -#: writers/html5.py:638 -msgid "Link to this image" -msgstr "" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "Proje şablonlama" -#: writers/html5.py:640 -msgid "Link to this toctree" -msgstr "" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "şablon dosyaları için şablon dizini" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "" +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "bir şablon değişkeni tanımla" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"sessiz\" belirtilmiş, ancak herhangi bir \"proje\" veya \"hazırlayan\" belirtilmemiş." -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "%s denkleminin kopya etiketi, %s içindeki diğer örnek" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "Hata: belirtilen yol bir dizin değil ya da sphinx dosyaları zaten var." -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (yerleşik işlev)" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sfenks-quickstart sadece boş bir dizin içine oluşturur. Lütfen yeni bir kök dizin yolu belirtin." -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: cmd/quickstart.py:810 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s yöntemi)" +msgid "Invalid template variable: %s" +msgstr "Geçersiz şablon değişkeni: %s" -#: domains/javascript.py:185 +#: directives/other.py:119 #, python-format -msgid "%s() (class)" -msgstr "%s() (sınıf)" +msgid "toctree glob pattern %r didn't match any documents" +msgstr "" -#: domains/javascript.py:187 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (genel değişken veya sabit)" +msgid "toctree contains reference to excluded document %r" +msgstr "toctree, hariç tutulan %r belgesine başvuru içeriyor" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: directives/other.py:156 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s özniteliği)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Bağımsız Değişkenler" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Şunu verir: " - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Dönüşler" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Dönüş türü" +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree, varolmayan %r belgesine başvuru içeriyor" -#: domains/javascript.py:370 +#: directives/other.py:169 #, python-format -msgid "%s (module)" -msgstr "%s (modül)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "işlevi" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "yöntemi" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "sınıfı" +msgid "duplicated entry found in toctree: %s" +msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "verisi" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Bölümü hazırlayan: " -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "özniteliği" +#: directives/other.py:205 +msgid "Module author: " +msgstr "Modülü hazırlayan: " -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "modülü" +#: directives/other.py:207 +msgid "Code author: " +msgstr "Kodu hazırlayan: " -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "kopya %s açıklamasına ait %s, diğer %s, %s içinde" +#: directives/other.py:209 +msgid "Author: " +msgstr "Hazırlayan: " -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "%s sürümünde değişti" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "%s sürümünden beri kullanım dışı" +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (yönerge)" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "" -#: domains/rst.py:191 domains/rst.py:202 +#: directives/code.py:87 #, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (yönerge seçeneği)" +msgid "Invalid caption: %s" +msgstr "Geçersiz resim yazısı: %s" -#: domains/rst.py:224 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "%s (role)" -msgstr "%s (rol)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "yönergesi" - -#: domains/rst.py:235 -msgid "directive-option" -msgstr "yönerge seçeneği" - -#: domains/rst.py:236 -msgid "role" -msgstr "rolü" +msgid "line number spec is out of range(1-%d): %r" +msgstr "satır numarası özellikleri aralık dışında (1-%d): %r" -#: domains/rst.py:262 +#: directives/code.py:216 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "%s %s kopya açıklaması, %s içindeki diğer örnek" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "Hem \"%s\" hem de \"%s\" seçeneği kullanılamıyor" -#: domains/citation.py:75 +#: directives/code.py:231 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "%s kopya alıntısı, %s içindeki diğer örnek" +msgid "Include file '%s' not found or reading it failed" +msgstr "" -#: domains/citation.py:92 +#: directives/code.py:235 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "Alıntı [%s] kaynak gösterilmedi." - -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Dikkat" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Uyarı" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Tehlike" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Hata" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "İpucu" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "Önemli" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "Not" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "Ayrıca bakınız" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Tüyo" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Uyarı" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "modüllerden otomatik olarak docstrings ekle" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "doctest bloklarında kod parçacıklarını otomatik olarak dene" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "farklı projelerin Sphinx begelendirmeleri arasında bağlantıla" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "oluşturmada gösterilebilen veya gizlenebilen \"yapılacaklar\" girişlerini yaz" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "belgelendirme kapsamı için denetlemeler" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "PNG veya SVG resimleri olarak işleneni, matematiği dahil et" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "MathJax ile tarayıcıda işleneni, matematiği dahil et" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "yapılandırma değerlerine dayalı içeriğin koşullu olarak eklenmesi" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "belgelenmiş Python nesnelerinin kaynak koduna bağlantıları dahil et" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "belgeyi GitHub sayfalarında yayımlamak için .nojekyll dosyası oluştur" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "Lütfen geçerli bir yol adı girin." - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "Lütfen biraz metin girin." +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "" -#: cmd/quickstart.py:133 +#: directives/code.py:276 #, python-format -msgid "Please enter one of %s." -msgstr "Lütfen %s seçeneklerinden birini girin." - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "Lütfen ya 'y' ya da 'n' girin." +msgid "Object named %r not found in include file %r" +msgstr "%r adlı nesne, dahil edilen %r dosyasında bulunamadı" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "Lütfen bir dosya soneki girin, örn. '.rst' veya '.txt'." +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "Ayrık bir \"satır\" kümesiyle \"lineno-match\" kullanılamıyor" -#: cmd/quickstart.py:229 +#: directives/code.py:314 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "Sphinx %s hızlı başlangıç yardımcı uygulamasına hoş geldiniz." - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "Lütfen aşağıdaki ayarlar için değerleri girin (parantez içinde verilirse\nvarsayılan değeri kabul etmek için yalnızca Enter tuşuna basın)." +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Satır özelliği %r: dahil edilen %r dosyasından çekilen hiç satır yok" -#: cmd/quickstart.py:241 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "Selected root path: %s" -msgstr "Seçilen kök dizin yolu: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "Belgelendirme için kök dizin yolunu girin." - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "Belgelendirme için kök dizin yolu" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "Hata: seçilen kök dizin yolunda varolan bir conf.py bulundu." - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sfenks-quickstart varolan Sphinx projelerinin üzerine yazmayacak." - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "Lütfen yeni bir kök dizin yolu girin (ya da çıkmak için yalnızca Enter'a basın)" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "Sphinx çıktısının oluşturma dizinini yerleştirmek için iki seçeneğiniz var.\nYa, kök dizin yolu içinde bir \"_build\" dizini kullanın, ya da kök dizin yolu\niçinde \"source\" ve \"build\" dizinlerini ayırın." - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "Source ve build dizinlerini ayır (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "Kök dizinin içinde, iki dizin daha oluşturulacaktır; özel HTML şablonları için \"_templates\"\nve özel stil sayfaları ve diğer sabit dosyalar için \"_static\".\nAlt çizgi yerine başka bir önek (\".\" gibi) girebilirsiniz." +msgid "%b %d, %Y" +msgstr "%d %b %Y" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "Templates ve static dizinleri için ad öneki" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Dizin" -#: cmd/quickstart.py:297 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"The project name will occur in several places in the built documentation." -msgstr "Proje adı, oluşturulan belgelendirmedeki çeşitli yerlerde oluşacak." - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "Proje adı" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "Hazırlayan ad(ları)ı" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "Dipnotlar" -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "Proje sürümü" +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" +msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "Proje yayımı" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[resim: %s]" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "Eğer belgeler İngilizce dışında bir dilde yazıldıysa, bunun dil koduna\ngöre burada bir dil seçebilirsiniz. Sphinx daha sonra, ürettiği metni o\ndile çevirecektir.\n\nDesteklenen kodların listesi için\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language adresine bakın." +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[resim]" -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "Proje dili" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "Kaynak dosya soneki" +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" +msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "Bir belge, \"içindekiler ağacı\"nın üst düğümü olarak kabul edilmesi, yani\nbelgelerin hiyerarşik yapısının kökü olması açısından özeldir.\nNormalde bu \"dizin\"dir, ancak \"dizin\" belgeniz özel bir şablonsa,\nbunu başka bir dosya adına da ayarlayabilirsiniz." +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "Asıl belgenizin adı (sonek olmadan)" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "" + +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "Hata: %s asıl dosyası zaten seçilen kök dizin yolunda bulundu." +msgid "unsupported rubric heading level: %s" +msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sfenks-quickstart varolan dosyanın üzerine yazmayacak." +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "Lütfen yeni bir dosya adı girin ya da varolan dosyayı yeniden adlandırın ve Enter tuşuna basın" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "Aşağıdaki Sphinx uzantılarından hangisinin etkinleştirilmesi gerektiğini gösterir:" +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "Not: imgmath ve mathjax aynı anda etkinleştirilemez. imgmath seçimi kaldırıldı." +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "Makefile ve Windows komut dosyası sizin için oluşturulabilir,\nböylece doğrudan örn. sphinx-build çağırmak yerine sadece\n`make html' komutu çalıştırılmak zorundadır." +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "Makefile oluşturulsun mu? (y/n)" +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" +msgstr "%r dili için bilinen hiç Babel seçeneği yok" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "Windows komut satırı oluşturulsun mu? (y/n)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:616 #, python-format -msgid "Creating file %s." -msgstr "%s dosyası oluşturuluyor." +msgid "template %s not found; loading from legacy %s instead" +msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "%s dosyası zaten var, atlanıyor." +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "Tamamlandı: İlk dizin yapısı oluşturuldu." +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "" -#: cmd/quickstart.py:519 +#: writers/latex.py:1228 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "Artık %s asıl dosyanızı doldurmalı ve diğer belgelendirme kaynak dosyalarını\noluşturmalısınız." +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "Belgeleri oluşturmak için Makefile'ı kullanın, aşağıdaki gibi:\n make builder" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." +msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1950 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "Belgeleri oluşturmak için sphinx-build komutunu kullanın, aşağıdaki gibi:\n sphinx-build -b builder %s %s" +msgid "unknown index entry type %s found" +msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "\"builder\" burada desteklenen oluşturuculardan biridir, örn. html, latex veya linkcheck." +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\nBir Sphinx projesi için gerekli dosyaları oluşturun.\n\nsphinx-quickstart, projeniz hakkında bazı sorular soran ve ardından tam bir\nbelgelendirme dizini ve örnek oluşturan etkileşimli bir araçtır\nMakefile, sphinx-build ile kullanılır.\n" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "sessiz kipi" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "proje kök dizini" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "Yapı seçenekleri" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "eğer belirtildiyse, kaynak ve oluşturma dizinlerini ayırın" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "_templates vb. içinde nokta için değiştirme" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "Proje temel seçenekleri" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "proje adı" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "hazırlayan adları" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "projenin sürümü" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "projenin yayımı" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "belge dili" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "kaynak dosya soneki" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "asıl belge adı" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "epub kullan" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "Uzantı seçenekleri" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" -msgstr "%s uzantısını etkinleştir" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "rasgele uzantıları etkinleştir" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefile ve Batchfile oluşturma" +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "makefile oluştur" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "makefile oluşturma" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "batchfile oluştur" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "batchfile oluşturma" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "Makefile/make.bat için make-mode kullan" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "Proje şablonlama" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "şablon dosyaları için şablon dizini" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" +msgstr "okuma hatası: %s, %s" -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "bir şablon değişkeni tanımla" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" +msgstr "yazma hatası: %s, %s" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"sessiz\" belirtilmiş, ancak herhangi bir \"proje\" veya \"hazırlayan\" belirtilmemiş." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" +msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "Hata: belirtilen yol bir dizin değil ya da sphinx dosyaları zaten var." +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." +msgstr "" -#: cmd/quickstart.py:792 +#: util/i18n.py:253 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sfenks-quickstart sadece boş bir dizin içine oluşturur. Lütfen yeni bir kök dizin yolu belirtin." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "" -#: cmd/quickstart.py:809 +#: util/osutil.py:131 #, python-format -msgid "Invalid template variable: %s" -msgstr "Geçersiz şablon değişkeni: %s" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "iş numarası pozitif bir sayı olmalıdır" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "belgelendirme kaynak dosyaları için yol" +#: util/display.py:82 +msgid "skipped" +msgstr "atlandı" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "çıktı dizini için yol" +#: util/display.py:87 +msgid "failed" +msgstr "başarısız oldu" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:114 -msgid "general options" -msgstr "genel seçenekler" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:131 +#: util/fileutil.py:76 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "tüm dosyaları yaz (varsayılan: sadece yeni ve değiştirilmiş dosyaları yaz)" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "kaydedilmiş bir ortam kullanma, her zaman tüm dosyaları oku" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:157 +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" +msgstr "varsayılan rol %s bulunamadı" + +#: util/nodes.py:462 +#, python-format msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "yapılandırma dosyasındaki bir ayarı geçersiz kıl" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "önceki sayfadan devam" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "HTML şablonlarına bir değer geçir" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "sonraki sayfaya devam" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "etiketi tanımla: \"sadece\" TAG'li blokları dahil et" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "Alfabetik olmayan" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Semboller" -#: cmd/build.py:212 -msgid "console output options" -msgstr "konsol çıktısı seçenekleri" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "Numaralar" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "ayrıntı seviyesini artır (tekrarlanabilir)" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "sayfa" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "stdout üzerinde çıktı yok, stderr üzerinde sadece uyarılar" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Yayım" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "hiç çıktı yok, hatta uyarılarda bile" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "renkli çıktı yayımı yap (varsayılan: otomatik algıla)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "renkli çıktı yayımı yapma (varsayılan: otomatik algıla)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "Bilinmeyen resim biçimi: %s..." -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "verilen dosyaya uyarıları (ve hataları) yaz" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "uyarıları hatalara dönüştür" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "özel durumda tam geri izleme göster" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "" + +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "Yarıda kesildi!" + +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "özel durumda Pdb çalıştır" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "-a seçeneği ve dosya adları birleştirilemiyor" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "-D seçeneği bağımsız değişkeni ad=değer biçiminde olmak zorundadır" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "-A seçeneği bağımsız değişkeni ad=değer biçiminde olmak zorundadır" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "" + +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "Bir dahaki sefere daha iyi bir hata iletisi sağlanabilmesi için lütfen bunu bir kullanıcı hatasıysa da bildirin." #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "Yan çubuğu daralt" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "İçindekiler" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Gezinti" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "%(docstitle)s içinde ara" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Bu belgeler hakkında" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Ara" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Git" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Telif hakkı" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Son güncelleme: %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Önceki konu" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "önceki bölüm" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Sonraki konu" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "sonraki bölüm" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Tek sayfada tam dizin" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Bu Sayfa" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Kaynağı Göster" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "İçindekiler" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Hızlı Arama" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "%(docstitle)s ara" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Git" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2685,7 +2885,7 @@ msgstr "Genel Modül Dizini" msgid "quick access to all modules" msgstr "tüm modüllere hızlı erişim" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Genel Dizin" @@ -2693,23 +2893,15 @@ msgstr "Genel Dizin" msgid "all functions, classes, terms" msgstr "tüm işlevler, sınıflar, terimler" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Bu Sayfa" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "İçindekiler" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Tek sayfada tam dizin" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Hızlı Arama" +msgid "Search %(docstitle)s" +msgstr "%(docstitle)s ara" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2719,57 +2911,6 @@ msgstr "Harfe göre dizin sayfaları" msgid "can be huge" msgstr "çok büyük olabilir" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Önceki konu" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "önceki bölüm" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Sonraki konu" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "sonraki bölüm" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Gezinti" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "%(docstitle)s içinde ara" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Bu belgeler hakkında" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Telif hakkı" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Son güncelleme: %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2786,21 +2927,21 @@ msgstr "" msgid "search" msgstr "ara" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Arama Eşleşmelerini Gizle" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "İçindekiler" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Arama Sonuçları" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "Arama sonucunda herhangi bir belge bulunamadı. Bütün kelimeleri doğru yazdığınızdan ve gerekli bütün kategorileri seçtiğinizden emin olun." -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2808,22 +2949,21 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "Aranıyor" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "Aramaya hazırlanıyor..." -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ", şunun içinde:" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Arama Eşleşmelerini Gizle" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2831,6 +2971,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "Sürüm %(version)s — %(docstitle)s içindeki Değişiklikler" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2852,216 +2997,216 @@ msgstr "Diğer değişiklikler" msgid "Expand sidebar" msgstr "Yan çubuğu genişlet" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Parametreler" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Değişkenler" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Harekete geçirir" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (%s modülü içinde)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (%s modülü içinde)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (yerleşik değişken)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (yerleşik sınıf)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (%s içindeki sınıf)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s sınıf yöntemi)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s sabit yöntemi)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python Modül Dizini" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "modülleri" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Kullanım dışı" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "özel durum" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "sınıf yöntemi" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "sabit yöntemi" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "çapraz referans %r için birden fazla hedef bulundu: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (kullanım dışı)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Parametreler" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Değişkenler" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Harekete geçirir" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" msgstr "Şablon Parametreleri" #: domains/cpp/__init__.py:302 -#, python-format -msgid "%s (C++ %s)" -msgstr "%s (C++ %s)" - -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" +#, python-format +msgid "%s (C++ %s)" +msgstr "%s (C++ %s)" -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "birliği" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "üyesi" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "türü" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "kavramı" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "numaralandırıcı" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "değişkeni" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "makrosu" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "ortam değişkeni; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3156,1063 +3301,1008 @@ msgstr "" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "dairesel toctree kaynakları algılandı, yoksayılan: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree, başlığı olmayan %r belgesine başvuru içeriyor: hiç bağlantı oluşturulmayacaktır" - -#: environment/adapters/toctree.py:364 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "toctree contains reference to non-included document %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: environment/adapters/toctree.py:367 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "toctree contains reference to non-existing document %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "bakınız %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "ayrıca bakınız %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "bilinmeyen dizin girişi türü %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Semboller" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "resim dosyası okunabilir değil: %s" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "%s resim dosyası okunabilir değil: %s" - -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "indirme dosyası okunabilir değil: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s zaten atanmış bölüm numaralarıdır (iç içe numaralı toctree mi?)" +msgid "malformed string literal (missing opening quote): %s" +msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "Yarıda kesildi!" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "Örnek" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Örnekler" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "Notlar" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "Diğer Parametreler" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "Kaynaklar" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "Uyarılar" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "Bir dahaki sefere daha iyi bir hata iletisi sağlanabilmesi için lütfen bunu bir kullanıcı hatasıysa da bildirin." +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "Getiriler" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "alias of %s" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "Bases: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "%r reference target not found: %s" +msgid "invalid value for member-order option: %s" msgstr "" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "Unknown image format: %s..." -msgstr "Bilinmeyen resim biçimi: %s..." +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "" -#: builders/html/__init__.py:113 +#: ext/autodoc/_names.py:89 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTML sayfaları %(outdir)s içinde." +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/__init__.py:348 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to read build info file: %r" -msgstr "oluşturma bilgisi dosyasını okuma başarısız: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:383 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "dizin" - -#: builders/html/__init__.py:560 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "Logo of %s" -msgstr "" - -#: builders/html/__init__.py:589 -msgid "next" -msgstr "sonraki" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "önceki" +msgid "Would create file %s." +msgstr "%s dosyası oluşturur." -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "dizinler oluşturuluyor" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\nPython modülleri ve paketleri için içine art arda bakın ve içindeki\npaket başına otomodül talimatlarını içeren bir reST dosyası oluşturun.\n\n'ler, nesilden hariç tutulacak olan dosya ve/veya dizin şekilleri olabilir.\n\nNot: Varsayılan olarak bu betik zaten oluşturulmuş dosyaların üzerine yazmayacak." -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "ilave sayfalar yazılıyor" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "belge için modüle giden yol" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "nesilden hariç tutmak için fnmatch-style dosyası ve/veya dizin şekilleri" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "indirilebilir dosyalar kopyalanıyor..." +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "tüm çıktıların yerleştirileceği dizin" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "indirilebilir dosya %r kopyalanamıyor: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "TOC'da gösterilecek alt modüllerin en fazla derinliği (varsayılan: 4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "varolan dosyaların üzerine yaz" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "sembolik bağlantıları takip edin. Collective.recipe.omelette ile birleştirildiğinde güçlü." -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "dosyaları oluşturmadan betiği çalıştır" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "sabit dosya %r kopyalanamıyor" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "her modül için belgelendirmeyi kendi sayfasına koy" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "fazladan dosyalar kopyalanıyor" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "\"_private\" modülleri dahil" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "fazladan dosya %r kopyalanamıyor..." +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "içindekiler dosyası adı (varsayılan: modüller)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "oluşturma bilgisi dosyasını yazma başarısız: %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "içindekiler tablosu oluşturma" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "arama dizini yüklenemedi, ancak tüm belgeler oluşturulmayacaktır: dizin tamamlanmamış olacaktır." +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "modül/paket paketleri için başlıklar oluşturma (örn. docstrings zaten bunları içerdiğinde)" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "sayfa %s html_sidebars içinde iki şekille eşleşiyor: %r ve %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "modül belgelerini alt modül belgelerinin önüne koyun" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "%s sayfasını işlerken bir Evrensel kod hatası meydana geldi. Lütfen ASCII olmayan içerik içeren tüm yapılandırma değerlerinin Evrensel kod dizgiler olduğundan emin olun." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "modül yollarını PEP-0420 kapalı ad alanları özelliklerine göre yorumla" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "%s sayfasını işlerken bir hata oldu.\nSebep: %r" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "nesne envanteri dökümleniyor" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "dosya soneki (varsayılan: rst)" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "%s içinde arama dizini dökümleniyor" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "geçersiz js_file: %r, yoksayıldı" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "sphinx-quickstart ile tam bir proje oluştur" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "Birçok math_renderers kayıtlı. Ama hiç math_renderer seçilmedi." +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "--full yazıldığında, append module_path to sys.path, kullanılır" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "Bilinmeyen math_renderer %r verildi." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "proje adı (varsayılan: kök modül adı)" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path girişi %r, çıktı dizini içine yerleştirildi" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "--full yazıldığında, proje hazırlayan(lar)ı kullanılır" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path girişi %r mevcut değil" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "--full yazıldığında, proje sürümü kullanılır" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path girişi %r, çıktı dizini içine yerleştirildi" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "--full yazıldığında, varsayılanı to --doc-version, proje yayımı kullanılır" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path girişi %r mevcut değil" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "uzantı seçenekleri" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "logo dosyası %r mevcut değil" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1407 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "favicon file %r does not exist" -msgstr "favicon dosyası %r mevcut değil" +msgid "enable %s extension, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." -msgstr "" +msgid "%s is not a directory." +msgstr "%s bir dizin değil." -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "%s %s documentation" -msgstr "%s %s belgelendirmesi" - -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeX dosyaları %(outdir)s içinde." - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\n(pdf)latex aracılığıyla bunları çalıştırmak için bu dizinde 'make' komutunu çalıştırın\n(bunu otomatik olarak yapmak için burada 'make latexpdf' komutunu kullanın)." - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "hiçbir \"latex_documents\" yapılandırma değeri bulunamadı; hiçbir belge yazılmayacaktır" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "\"latex_documents\" yapılandırma değeri bilinmeyen %s belgesine başvurur" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Yayım" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "TeX destek dosyaları kopyalanıyor" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "ilave dosyalar kopyalanıyor" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "Bilinmeyen yapılandırma anahtarı: latex_elements[%r], yoksayıldı." +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r, \"theme\" ayarına sahip değil" +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r, \"%s\" ayarına sahip değil" - -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "önceki sayfadan devam" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "sonraki sayfaya devam" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "Alfabetik olmayan" - -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "Numaralar" - -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "sayfa" - -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "Örnek" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Örnekler" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "Notlar" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "Diğer Parametreler" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "Kaynaklar" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "Uyarılar" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "Getiriler" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "" - -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" +"Possible hints:\n" +"%s" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 -#, python-format +#: ext/intersphinx/_load.py:324 msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "" - -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "Failed to remove %s: %s" -msgstr "" - -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\nPython modülleri ve paketleri için içine art arda bakın ve içindeki\npaket başına otomodül talimatlarını içeren bir reST dosyası oluşturun.\n\n'ler, nesilden hariç tutulacak olan dosya ve/veya dizin şekilleri olabilir.\n\nNot: Varsayılan olarak bu betik zaten oluşturulmuş dosyaların üzerine yazmayacak." - -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "belge için modüle giden yol" - -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "nesilden hariç tutmak için fnmatch-style dosyası ve/veya dizin şekilleri" - -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "tüm çıktıların yerleştirileceği dizin" - -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "TOC'da gösterilecek alt modüllerin en fazla derinliği (varsayılan: 4)" - -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "varolan dosyaların üzerine yaz" - -#: ext/apidoc/_cli.py:91 msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "sembolik bağlantıları takip edin. Collective.recipe.omelette ile birleştirildiğinde güçlü." - -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "dosyaları oluşturmadan betiği çalıştır" - -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "her modül için belgelendirmeyi kendi sayfasına koy" - -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "\"_private\" modülleri dahil" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "içindekiler dosyası adı (varsayılan: modüller)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "intersphinx envanteri taşındı: %s -> %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "içindekiler tablosu oluşturma" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "modül/paket paketleri için başlıklar oluşturma (örn. docstrings zaten bunları içerdiğinde)" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(%s içinde)" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "modül belgelerini alt modül belgelerinin önüne koyun" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "modül yollarını PEP-0420 kapalı ad alanları özelliklerine göre yorumla" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "" -#: ext/apidoc/_cli.py:160 -msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "dosya soneki (varsayılan: rst)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "sphinx-quickstart ile tam bir proje oluştur" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "--full yazıldığında, append module_path to sys.path, kullanılır" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "proje adı (varsayılan: kök modül adı)" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "--full yazıldığında, proje hazırlayan(lar)ı kullanılır" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "--full yazıldığında, proje sürümü kullanılır" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "--full yazıldığında, varsayılanı to --doc-version, proje yayımı kullanılır" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "uzantı seçenekleri" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "%s is not a directory." -msgstr "%s bir dizin değil." +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "alias of TypeVar(%s)" +msgstr "" + +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:114 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML sayfaları %(outdir)s içinde." -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:337 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "Failed to read build info file: %r" +msgstr "oluşturma bilgisi dosyasını okuma başarısız: %r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:247 -#, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_generate.py:69 -#, python-format -msgid "Would create file %s." -msgstr "%s dosyası oluşturur." +#: builders/html/__init__.py:496 +msgid "index" +msgstr "dizin" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:549 #, python-format -msgid "(in %s v%s)" -msgstr "(%s v%s içinde)" +msgid "Logo of %s" +msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" -msgstr "(%s içinde)" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "sonraki" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "önceki" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "dizinler oluşturuluyor" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "ilave sayfalar yazılıyor" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "indirilebilir dosyalar kopyalanıyor..." + +#: builders/html/__init__.py:807 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "indirilebilir dosya %r kopyalanamıyor: %s" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:853 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:871 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "" +msgid "cannot copy static file %r" +msgstr "sabit dosya %r kopyalanamıyor" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "fazladan dosyalar kopyalanıyor" + +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +msgid "cannot copy extra file %r" +msgstr "fazladan dosya %r kopyalanamıyor..." -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "oluşturma bilgisi dosyasını yazma başarısız: %r" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "arama dizini yüklenemedi, ancak tüm belgeler oluşturulmayacaktır: dizin tamamlanmamış olacaktır." -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "sayfa %s html_sidebars içinde iki şekille eşleşiyor: %r ve %r" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "%s sayfasını işlerken bir Evrensel kod hatası meydana geldi. Lütfen ASCII olmayan içerik içeren tüm yapılandırma değerlerinin Evrensel kod dizgiler olduğundan emin olun." -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "%s sayfasını işlerken bir hata oldu.\nSebep: %r" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "nesne envanteri dökümleniyor" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" - -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +msgid "dumping search index in %s" +msgstr "%s içinde arama dizini dökümleniyor" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1313 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." -msgstr "" +msgid "invalid js_file: %r, ignored" +msgstr "geçersiz js_file: %r, yoksayıldı" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "Birçok math_renderers kayıtlı. Ama hiç math_renderer seçilmedi." -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "aşağıdaki sorunlardan dolayı envanterlerden herhangi birine ulaşılamadı:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "Bilinmeyen math_renderer %r verildi." -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1365 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "intersphinx envanteri taşındı: %s -> %s" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path girişi %r, çıktı dizini içine yerleştirildi" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1370 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path girişi %r mevcut değil" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path girişi %r, çıktı dizini içine yerleştirildi" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "" +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path girişi %r mevcut değil" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "" +msgid "logo file %r does not exist" +msgstr "logo dosyası %r mevcut değil" + +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "favicon dosyası %r mevcut değil" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" -msgstr "" +msgid "%s %s documentation" +msgstr "%s %s belgelendirmesi" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:87 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r, \"theme\" ayarına sahip değil" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/theming.py:90 +#, python-format +msgid "%r doesn't have \"%s\" setting" +msgstr "%r, \"%s\" ayarına sahip değil" + +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX dosyaları %(outdir)s içinde." + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\n(pdf)latex aracılığıyla bunları çalıştırmak için bu dizinde 'make' komutunu çalıştırın\n(bunu otomatik olarak yapmak için burada 'make latexpdf' komutunu kullanın)." -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "hiçbir \"latex_documents\" yapılandırma değeri bulunamadı; hiçbir belge yazılmayacaktır" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "\"latex_documents\" yapılandırma değeri bilinmeyen %s belgesine başvurur" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "TeX destek dosyaları kopyalanıyor" + +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "ilave dosyalar kopyalanıyor" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "Bilinmeyen yapılandırma anahtarı: latex_elements[%r], yoksayıldı." -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/toctree.py:259 #, python-format -msgid "missing attribute %s in object %s" -msgstr "" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s zaten atanmış bölüm numaralarıdır (iç içe numaralı toctree mi?)" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:98 #, python-format -msgid "alias of %s" -msgstr "" +msgid "image file not readable: %s" +msgstr "resim dosyası okunabilir değil: %s" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "" +msgid "image file %s not readable: %s" +msgstr "%s resim dosyası okunabilir değil: %s" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/collectors/asset.py:165 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "" +msgid "download file not readable: %s" +msgstr "indirme dosyası okunabilir değil: %s" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "dairesel toctree kaynakları algılandı, yoksayılan: %s <- %s" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree, başlığı olmayan %r belgesine başvuru içeriyor: hiç bağlantı oluşturulmayacaktır" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" + +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "bakınız %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "ayrıca bakınız %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" +msgstr "bilinmeyen dizin girişi türü %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/uk_UA/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/uk_UA/LC_MESSAGES/sphinx.mo index 3a1a4a6d6107751cd1f636882614b3fd45ad4c3b..23c7775b2798b38ff5dccf570c7f176205a472d6 100644 GIT binary patch delta 24 fcmaE7{LXkoBoDWtk*bHo-SShW}yc( delta 24 fcmaE7{LXkoBoDWNk*=YIf`NgRvGL{, 2009\n" "Language-Team: Ukrainian (Ukraine) (http://app.transifex.com/sphinx-doc/sphinx-1/language/uk_UA/)\n" @@ -19,6 +19,127 @@ msgstr "" "Language: uk_UA\n" "Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -33,127 +154,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +322,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,468 +537,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Увага" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Застереження" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Небезпека" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Помилка" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Підказка" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Важливо" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Примітка" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Дивись також" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Порада" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Попередження" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (в " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:594 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:342 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:536 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:545 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:556 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Вбудовані елементи" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Рівень модуля" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -739,9 +1175,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -776,6 +1213,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Доробити" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -863,947 +1328,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Доробити" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:47 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:124 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Автор секції: " - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Автор модуля: " - -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " -msgstr "Автор: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Вбудовані елементи" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Рівень модуля" - -#: builders/changes.py:124 -msgid "copying source files..." +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:133 +#: domains/citation.py:75 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/citation.py:92 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" - -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" - -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/manpage.py:71 +#: domains/math.py:73 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/__init__.py:224 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:183 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +msgid "%s() (built-in function)" +msgstr "%s() (вбудована функція)" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s метод)" -#: builders/__init__.py:275 +#: domains/javascript.py:186 #, python-format -msgid "all of %d po files" -msgstr "" +msgid "%s() (class)" +msgstr "%s() (клас)" -#: builders/__init__.py:297 +#: domains/javascript.py:188 #, python-format -msgid "targets for %d po files that are specified" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (%s атрибут)" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Повертає" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Тип повернення" -#: builders/__init__.py:361 +#: domains/javascript.py:374 #, python-format -msgid "%d source files given on command line" +msgid "%s (module)" +msgstr "%s (модуль)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "функція" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "клас" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "атрибут" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "модуль" + +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "Changed in version %s" +msgstr "Змінено в версії %s" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid "Deprecated since version %s" +msgstr "Застаріло починаючи з версії %s" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "" - -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (в " - -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%b %d, %Y" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:298 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:340 +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 "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:350 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:520 +#, python-format +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:379 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" + +#: cmd/quickstart.py:664 +msgid "Extension options" msgstr "" -#: util/nodes.py:706 +#: cmd/quickstart.py:671 #, python-format -msgid "exception while evaluating only directive expression: %s" +msgid "enable %s extension" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" msgstr "" -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: util/fileutil.py:76 -#, python-format +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/rst.py:73 +#: cmd/quickstart.py:810 #, python-format -msgid "default role %s not found" +msgid "Invalid template variable: %s" msgstr "" -#: util/inventory.py:147 +#: directives/other.py:119 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/inventory.py:166 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "toctree contains reference to excluded document %r" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: writers/manpage.py:289 writers/text.py:945 +#: directives/other.py:169 #, python-format -msgid "[image: %s]" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:203 +msgid "Section author: " +msgstr "Автор секції: " + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Автор модуля: " + +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" -msgstr "Індекс" +#: directives/other.py:209 +msgid "Author: " +msgstr "Автор: " + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr "" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" msgstr "" -#: writers/latex.py:1183 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%b %d, %Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "Індекс" + +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1832,6 +2343,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1848,794 +2364,478 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr "" + +#: writers/latex.py:616 #, python-format -msgid "%s() (built-in function)" -msgstr "%s() (вбудована функція)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s метод)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (клас)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s атрибут)" - -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Повертає" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Тип повернення" - -#: domains/javascript.py:370 +#: writers/latex.py:1228 #, python-format -msgid "%s (module)" -msgstr "%s (модуль)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "функція" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "клас" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "атрибут" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "модуль" - -#: domains/javascript.py:454 +#: writers/latex.py:1615 #, python-format -msgid "duplicate %s description of %s, other %s in %s" +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/changeset.py:26 +#: writers/latex.py:1950 #, python-format -msgid "Added in version %s" +msgid "unknown index entry type %s found" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Змінено в версії %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Застаріло починаючи з версії %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/rst.py:236 -msgid "role" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Увага" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Застереження" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Небезпека" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "Помилка" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Підказка" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Важливо" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Примітка" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Дивись також" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Порада" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Попередження" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:133 +#: util/i18n.py:100 #, python-format -msgid "Please enter one of %s." +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:229 +#: util/i18n.py:244 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:234 +#: util/i18n.py:253 +#, python-format msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:241 +#: util/osutil.py:131 #, python-format -msgid "Selected root path: %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "" - -#: cmd/quickstart.py:339 -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 "" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "" - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "" - -#: cmd/quickstart.py:367 +#: util/fileutil.py:76 #, python-format msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "" - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "" - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "" - -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: util/fileutil.py:89 #, python-format -msgid "File %s already exists, skipping." -msgstr "" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:519 +#: util/docfields.py:103 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "" - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:530 +#: util/rst.py:73 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:670 +#: util/nodes.py:462 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "" - -#: cmd/quickstart.py:809 +#: util/nodes.py:523 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "Реліз" -#: cmd/build.py:212 -msgid "console output options" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Навігація" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Шукати в %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Про ці документи" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Пошук" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Вперед" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Авторські права" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Востаннє оновлено %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Попередній розділ" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "Попередній розділ" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Наступна тема" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "наступний розділ" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Повний індекс на одній сторінці" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "Ця сторінка" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Відобразити вихідний текст" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "Швидкий пошук" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Пошук %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Вперед" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2661,111 +2861,52 @@ msgstr "Індекси та таблиці:" msgid "Complete Table of Contents" msgstr "Повний Зміст" -#: themes/basic/defindex.html:17 -msgid "lists all sections and subsections" -msgstr "перелічити всі секції та підсекції" - -#: domains/std/__init__.py:773 domains/std/__init__.py:786 -#: themes/basic/defindex.html:18 -msgid "Search Page" -msgstr "Сторінка пошуку" - -#: themes/basic/defindex.html:19 -msgid "search this documentation" -msgstr "шукати цю документацію" - -#: themes/basic/defindex.html:21 -msgid "Global Module Index" -msgstr "Загальний індекс модулів" - -#: themes/basic/defindex.html:22 -msgid "quick access to all modules" -msgstr "швидкий доступ до всіх модулів" - -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 -msgid "General Index" -msgstr "Загальний індекс" - -#: themes/basic/defindex.html:24 -msgid "all functions, classes, terms" -msgstr "всі функції, класи, терміни" - -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "Ця сторінка" - -#: themes/basic/genindex-single.html:26 -#, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Повний індекс на одній сторінці" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "Швидкий пошук" - -#: themes/basic/genindex-split.html:8 -msgid "Index pages by letter" -msgstr "Індексні сторінки по символам" - -#: themes/basic/genindex-split.html:17 -msgid "can be huge" -msgstr "може бути величезним" - -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Попередній розділ" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "Попередній розділ" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "перелічити всі секції та підсекції" -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Наступна тема" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "Сторінка пошуку" -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "наступний розділ" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "шукати цю документацію" -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Навігація" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "Загальний індекс модулів" -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Шукати в %(docstitle)s" +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "швидкий доступ до всіх модулів" -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Про ці документи" +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "Загальний індекс" -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Авторські права" +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "всі функції, класи, терміни" -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/layout.html:201 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Востаннє оновлено %(last_updated)s." +msgid "Search %(docstitle)s" +msgstr "Пошук %(docstitle)s" -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "Індексні сторінки по символам" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "може бути величезним" #: themes/basic/search.html:20 msgid "" @@ -2783,21 +2924,21 @@ msgstr "" msgid "search" msgstr "пошук" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "Приховати співпадіння пошуку" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "Результати пошуку" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2807,22 +2948,21 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "Приховати співпадіння пошуку" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2830,6 +2970,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2851,121 +2996,128 @@ msgstr "Інші зміни" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Параметри" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Викликає" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (в модулі %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (в модулі %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (вбудована змінна)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (вбудований клас)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (клас в %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s статичний метод)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "модулі" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Застарілий" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "виняткова ситуація" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "статичний метод" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr " (застарілий)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Параметри" - -#: domains/python/_object.py:206 -msgid "Variables" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Викликає" - #: domains/cpp/__init__.py:159 msgid "Template Parameters" msgstr "" @@ -2975,92 +3127,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "член" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "тип" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "макрос" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "змінна оточення; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3089,580 +3234,488 @@ msgid "glossary seems to be misformatted, check indentation" msgstr "" #: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "змінна оточення" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "Індекс модулів" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "змінна оточення" + +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "Індекс модулів" + +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1138 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1153 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1157 #, python-format -msgid "%r reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1453 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:199 +#, python-format +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "індекс" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "наступний" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "попередній" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 +#, python-format +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "Реліз" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3670,548 +3723,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "індекс" + +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "наступний" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "попередній" + +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/ur/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/ur/LC_MESSAGES/sphinx.mo index ea84f2268c917da2410458b3a03991a939f4e556..b0744382455f6964db9fdf550db27ee0da370eac 100644 GIT binary patch delta 24 fcmey(`kQrwI3u^Ak*\n" "Language-Team: Urdu (http://app.transifex.com/sphinx-doc/sphinx-1/language/ur/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: ur\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,21 +2923,21 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" @@ -2804,21 +2945,20 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2827,6 +2967,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2848,119 +2993,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2972,92 +3124,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3085,581 +3230,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3667,548 +3720,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/vi/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/vi/LC_MESSAGES/sphinx.mo index ab9182df44d53d23b9b84ac321db371cd1579b9b..6e40d5f6d96c46be0f68b0f2b9f1e6e7ee13374b 100644 GIT binary patch delta 24 fcmcbqdsBBq3NN>zk*ca-YiZ4Vxb1| delta 24 fcmcbqdsBBq3NN>Tk*=YIf`NgRvGL}7-YiZ4V!8(N diff --git a/addons/source-python/packages/site-packages/sphinx/locale/vi/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/vi/LC_MESSAGES/sphinx.po index 9fc4f9321..22ae9985e 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/vi/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/vi/LC_MESSAGES/sphinx.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" "Last-Translator: Hoat Le Van , 2014\n" "Language-Team: Vietnamese (http://app.transifex.com/sphinx-doc/sphinx-1/language/vi/)\n" @@ -19,6 +19,127 @@ msgstr "" "Language: vi\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Các đề nghị nâng cao Python; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -33,127 +154,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -161,12 +309,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -174,82 +322,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -257,468 +537,624 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format -msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +msgid "The configuration has changed (%d options: %s, ...)" msgstr "" -#: theming.py:282 -#, python-format -msgid "The %r theme has too many ancestors" +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:310 +#: environment/__init__.py:518 #, python-format -msgid "no theme configuration file found in %r" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:335 theming.py:388 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "theme %r doesn't have the \"theme\" table" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:343 theming.py:391 -#, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:347 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme \"[options]\" table is not a table" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "Chú ý" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "Cảnh báo" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "Nguy hiểm" + +#: locale/__init__.py:232 +msgid "Error" +msgstr "Lỗi" + +#: locale/__init__.py:233 +msgid "Hint" +msgstr "Gợi ý" + +#: locale/__init__.py:234 +msgid "Important" +msgstr "Quan trọng" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "Ghi chú" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "Xem thêm" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "Mẹo" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "Cảnh báo" -#: events.py:416 +#: builders/texinfo.py:41 #, python-format -msgid "Handler %r for event %r threw an exception" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: project.py:72 -#, python-format +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" +msgid "processing %s" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr "(trong" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" +msgid "building [%s]: " msgstr "" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "targets for %d template files" msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: registry.py:552 +#: builders/linkcheck.py:87 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: registry.py:565 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "broken link: %s (%s)" msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "Anchor '%s' not found" msgstr "" -#: registry.py:612 -#, python-format -msgid "`None` is not a valid filetype for %r." +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:206 +#: builders/linkcheck.py:799 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: roles.py:229 +#: builders/epub3.py:83 #, python-format -msgid "invalid CVE number %s" +msgid "The ePub file is in %(outdir)s." msgstr "" -#: roles.py:251 -#, python-format -msgid "Common Weakness Enumeration; CWE %s" +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: roles.py:274 -#, python-format -msgid "invalid CWE number %s" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: roles.py:294 -#, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Các đề nghị nâng cao Python; PEP %s" - -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: roles.py:355 -#, python-format -msgid "invalid RFC number %s" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/autosectionlabel.py:52 +#: builders/xml.py:29 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +msgid "The XML files are in %(outdir)s." msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "duplicate label %s, other instance in %s" +msgid "error writing file %s: %s" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/_epub_base.py:223 +#, python-format +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:118 +#: builders/_epub_base.py:436 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:124 +#: builders/_epub_base.py:467 #, python-format -msgid "'%s' is not a valid option." +msgid "cannot write image file %r: %s" msgstr "" -#: ext/doctest.py:139 -#, python-format -msgid "'%s' is not a valid pyversion option" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/doctest.py:297 -#, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:594 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "unknown mimetype for %s, ignoring" +msgstr "" + +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" + +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " msgstr "" -#: ext/imgmath.py:162 +#: builders/__init__.py:342 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" msgstr "" -#: ext/imgmath.py:181 +#: builders/__init__.py:536 #, python-format msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/imgmath.py:344 +#: builders/__init__.py:545 #, python-format -msgid "display latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/imgmath.py:380 +#: builders/__init__.py:556 #, python-format -msgid "inline latex %r: %s" +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "Dựng sẵn" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "Mức mô-đun" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" msgstr "" #: ext/coverage.py:48 @@ -739,9 +1175,10 @@ msgid "" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -776,6 +1213,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -863,1779 +1328,1514 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" +#: ext/imgmath.py:148 +#, python-format +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:94 +#: ext/imgmath.py:167 #, python-format -msgid "TODO entry found: %s" +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:362 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "inline latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:124 #, python-format -msgid "Invalid caption: %s" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:139 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "" + +#: ext/doctest.py:297 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:231 +#: ext/doctest.py:451 #, python-format -msgid "Include file '%s' not found or reading it failed" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:568 #, python-format -msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:276 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Object named %r not found in include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/code.py:314 +#: ext/duration.py:47 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/patches.py:71 +#: ext/duration.py:117 msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:119 +#: ext/duration.py:124 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 -#, python-format -msgid "toctree contains reference to excluded document %r" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:156 +#: ext/duration.py:139 #, python-format -msgid "toctree contains reference to nonexisting document %r" +msgid "%.3fs %s" msgstr "" -#: directives/other.py:169 -#, python-format -msgid "duplicated entry found in toctree: %s" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "Tác giả mục:" - -#: directives/other.py:205 -msgid "Module author: " -msgstr "Tác giả mô-đun:" - -#: directives/other.py:207 -msgid "Code author: " -msgstr "Tác giả mã lệnh:" - -#: directives/other.py:209 -msgid "Author: " -msgstr "Tác giả:" - -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" -msgstr "Dựng sẵn" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "Mức mô-đun" - -#: builders/changes.py:124 -msgid "copying source files..." +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:133 +#: domains/citation.py:75 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/citation.py:92 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "" - -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "" - -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/manpage.py:71 +#: domains/math.py:73 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/__init__.py:224 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:183 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "" +msgid "%s() (built-in function)" +msgstr "%s() (hàm dựng sẵn)" -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (phương thức %s)" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "" +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s() (lớp)" -#: builders/__init__.py:275 +#: domains/javascript.py:188 #, python-format -msgid "all of %d po files" -msgstr "" +msgid "%s (global variable or constant)" +msgstr "%s (biến toàn cục hoặc hằng số)" -#: builders/__init__.py:297 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "targets for %d po files that are specified" -msgstr "" +msgid "%s (%s attribute)" +msgstr "%s (thuộc tính %s)" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "Đối số" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "Ném" -#: builders/__init__.py:309 +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "Trả về" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "Kiểu trả về" + +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "" +msgid "%s (module)" +msgstr "%s (mô-đun)" -#: builders/__init__.py:319 -msgid "all source files" -msgstr "" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "hàm" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "phương thức" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "lớp" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "dữ liệu" -#: builders/__init__.py:330 +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "thuộc tính" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "mô-đun" + +#: domains/javascript.py:458 #, python-format -msgid "file %r given on command line does not exist, " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:337 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "" +msgid "%s (directive)" +msgstr "%s (chỉ thị)" -#: builders/__init__.py:348 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:361 +#: domains/rst.py:224 #, python-format -msgid "%d source files given on command line" +msgid "%s (role)" +msgstr "%s (vai trò)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "chỉ thị" + +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:377 +#: domains/rst.py:236 +msgid "role" +msgstr "vai trò" + +#: domains/rst.py:262 #, python-format -msgid "targets for %d source files that are out of date" +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/changeset.py:32 #, python-format -msgid "building [%s]: " +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "Thay đổi trong phiên bản %s" -#: builders/__init__.py:410 +#: domains/changeset.py:34 #, python-format -msgid "%d found" -msgstr "" +msgid "Deprecated since version %s" +msgstr "Sắp loại bỏ từ phiên bản %s" -#: builders/__init__.py:412 -msgid "none found" +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" + +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:494 -#, python-format -msgid "%s added, %s changed, %s removed" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:531 -#, python-format +#: cmd/build.py:109 msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/__init__.py:540 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/__init__.py:551 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/__init__.py:558 -#, python-format +#: cmd/build.py:131 msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" + +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/texinfo.py:45 +#: cmd/build.py:357 #, python-format -msgid "The Texinfo files are in %(outdir)s." +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr "(trong" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:134 +#, python-format +msgid "Please enter one of %s." msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/_epub_base.py:591 +#: cmd/quickstart.py:230 #, python-format -msgid "unknown mimetype for %s, ignoring" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:242 +#, python-format +msgid "Selected root path: %s" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:274 +msgid "" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format +#: cmd/quickstart.py:324 msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%d/%m/%Y" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "" -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: transforms/__init__.py:253 +#: cmd/quickstart.py:368 #, python-format msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "" + +#: cmd/quickstart.py:520 +#, python-format msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "" - -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "" - -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "" - -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "" - -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "" - -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "" - -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "" - -#: _cli/__init__.py:231 -msgid "" -msgstr "" - -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "" - -#: environment/__init__.py:86 -msgid "new config" -msgstr "" - -#: environment/__init__.py:87 -msgid "config changed" -msgstr "" - -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "" - -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "" - -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "" - -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" - -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" - -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" - -#: environment/__init__.py:379 +#: cmd/quickstart.py:527 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "" - -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "" - -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "" - -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "" - -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" - -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "" - -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" -msgstr "" - -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" -msgstr "" - -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" - -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "" - -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "" - -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "" - -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "" - -#: util/display.py:82 -msgid "skipped" -msgstr "" - -#: util/display.py:87 -msgid "failed" -msgstr "" - -#: util/osutil.py:131 -#, python-format -msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" - -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" -msgstr "" - -#: util/docutils.py:345 -#, python-format -msgid "unknown role name: %s" -msgstr "" - -#: util/docutils.py:789 -#, python-format -msgid "unknown node type: %r" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: util/fileutil.py:76 +#: cmd/quickstart.py:531 #, python-format msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" - -#: util/fileutil.py:89 -#, python-format -msgid "Writing evaluated template result to %s" -msgstr "" - -#: util/rst.py:73 -#, python-format -msgid "default role %s not found" -msgstr "" - -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" -msgstr "" - -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" -msgstr "" - -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "" - -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" -msgstr "" - -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "" - -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: cmd/quickstart.py:538 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "" - -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." -msgstr "" - -#: writers/texinfo.py:1303 -#, python-format -msgid "unimplemented node type: %r" -msgstr "" - -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr "" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: writers/latex.py:1183 +#: cmd/quickstart.py:573 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "" - -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "" - -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "" - -#: writers/html5.py:96 writers/html5.py:105 -msgid "Link to this definition" -msgstr "" - -#: writers/html5.py:431 -#, python-format -msgid "numfig_format is not defined for %s" -msgstr "" - -#: writers/html5.py:441 -#, python-format -msgid "Any IDs not assigned for %s node" -msgstr "" - -#: writers/html5.py:496 -msgid "Link to this term" -msgstr "" - -#: writers/html5.py:548 writers/html5.py:553 -msgid "Link to this heading" -msgstr "" - -#: writers/html5.py:558 -msgid "Link to this table" -msgstr "" - -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "" - -#: writers/html5.py:638 -msgid "Link to this image" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: writers/html5.py:640 -msgid "Link to this toctree" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: writers/html5.py:766 -msgid "Could not obtain image size. :scale: option is ignored." +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: domains/__init__.py:322 -#, python-format -msgid "%s %s" -msgstr "%s %s" - -#: domains/math.py:73 -#, python-format -msgid "duplicate label of equation %s, other instance in %s" +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (hàm dựng sẵn)" - -#: domains/javascript.py:183 domains/python/__init__.py:287 -#, python-format -msgid "%s() (%s method)" -msgstr "%s() (phương thức %s)" - -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" -msgstr "%s() (lớp)" - -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s (biến toàn cục hoặc hằng số)" - -#: domains/javascript.py:189 domains/python/__init__.py:378 -#, python-format -msgid "%s (%s attribute)" -msgstr "%s (thuộc tính %s)" - -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "Đối số" - -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "Ném" - -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "Trả về" - -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "Kiểu trả về" - -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (mô-đun)" - -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "hàm" - -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "phương thức" - -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "lớp" - -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "dữ liệu" - -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "thuộc tính" - -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "mô-đun" - -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" -msgstr "Thay đổi trong phiên bản %s" - -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" -msgstr "Sắp loại bỏ từ phiên bản %s" - -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" -msgstr "%s (chỉ thị)" - -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" -msgstr "%s (vai trò)" - -#: domains/rst.py:234 -msgid "directive" -msgstr "chỉ thị" - -#: domains/rst.py:235 -msgid "directive-option" +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "vai trò" - -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: domains/citation.py:92 -#, python-format -msgid "Citation [%s] is not referenced." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "Chú ý" - -#: locale/__init__.py:229 -msgid "Caution" -msgstr "Cảnh báo" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "Nguy hiểm" +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "" -#: locale/__init__.py:231 -msgid "Error" -msgstr "Lỗi" +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "" -#: locale/__init__.py:232 -msgid "Hint" -msgstr "Gợi ý" +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "" -#: locale/__init__.py:233 -msgid "Important" -msgstr "Quan trọng" +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "" -#: locale/__init__.py:234 -msgid "Note" -msgstr "Ghi chú" +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" -#: locale/__init__.py:235 -msgid "See also" -msgstr "Xem thêm" +#: cmd/quickstart.py:671 +#, python-format +msgid "enable %s extension" +msgstr "" -#: locale/__init__.py:236 -msgid "Tip" -msgstr "Mẹo" +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" -#: locale/__init__.py:237 -msgid "Warning" -msgstr "Cảnh báo" +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: cmd/quickstart.py:687 +msgid "create makefile" msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: cmd/quickstart.py:693 +msgid "do not create makefile" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: cmd/quickstart.py:700 +msgid "create batchfile" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: cmd/quickstart.py:706 +msgid "do not create batchfile" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: cmd/quickstart.py:731 +msgid "define a template variable" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: cmd/quickstart.py:786 +msgid "" +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: cmd/quickstart.py:810 +#, python-format +msgid "Invalid template variable: %s" msgstr "" -#: cmd/quickstart.py:133 +#: directives/other.py:119 #, python-format -msgid "Please enter one of %s." +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: directives/other.py:153 environment/adapters/toctree.py:372 +#, python-format +msgid "toctree contains reference to excluded document %r" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: directives/other.py:156 +#, python-format +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: cmd/quickstart.py:229 +#: directives/other.py:169 #, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +msgid "duplicated entry found in toctree: %s" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: directives/other.py:203 +msgid "Section author: " +msgstr "Tác giả mục:" + +#: directives/other.py:205 +msgid "Module author: " +msgstr "Tác giả mô-đun:" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "Tác giả mã lệnh:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "Tác giả:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: directives/patches.py:70 +msgid "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: directives/code.py:87 +#, python-format +msgid "Invalid caption: %s" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#, python-format +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: directives/code.py:216 +#, python-format +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: cmd/quickstart.py:273 +#: directives/code.py:235 +#, python-format msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" +#: directives/code.py:314 +#, python-format +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%d/%m/%Y" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: cmd/quickstart.py:297 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"The project name will occur in several places in the built documentation." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: cmd/quickstart.py:300 -msgid "Project name" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" msgstr "" -#: cmd/quickstart.py:302 -msgid "Author name(s)" +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: cmd/quickstart.py:308 -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" -"just set both to the same value." +#: writers/texinfo.py:1303 +#, python-format +msgid "unimplemented node type: %r" msgstr "" -#: cmd/quickstart.py:315 -msgid "Project version" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" msgstr "" -#: cmd/quickstart.py:317 -msgid "Project release" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" msgstr "" -#: cmd/quickstart.py:331 -msgid "Project language" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: writers/html5.py:441 +#, python-format +msgid "Any IDs not assigned for %s node" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: writers/html5.py:496 +msgid "Link to this term" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: writers/html5.py:558 +msgid "Link to this table" msgstr "" -#: cmd/quickstart.py:367 +#: writers/html5.py:572 writers/latex.py:1127 #, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." +msgid "unsupported rubric heading level: %s" msgstr "" -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +#: writers/html5.py:636 +msgid "Link to this code" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: writers/html5.py:638 +msgid "Link to this image" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: writers/html5.py:640 +msgid "Link to this toctree" msgstr "" -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." +#: writers/latex.py:386 +#, python-format +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +#: builders/latex/__init__.py:221 writers/latex.py:436 +#, python-format +msgid "no Babel option known for language %r" msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 +#: writers/latex.py:616 #, python-format -msgid "Creating file %s." +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: cmd/quickstart.py:519 +#: writers/latex.py:1228 #, python-format msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: cmd/quickstart.py:530 +#: writers/latex.py:1950 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" +msgid "unknown index entry type %s found" msgstr "" -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: cmd/quickstart.py:591 -msgid "quiet mode" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: cmd/quickstart.py:601 -msgid "project root" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: cmd/quickstart.py:604 -msgid "Structure options" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: cmd/quickstart.py:625 -msgid "Project basic options" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: cmd/quickstart.py:627 -msgid "project name" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: cmd/quickstart.py:630 -msgid "author names" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: cmd/quickstart.py:637 -msgid "version of project" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: cmd/quickstart.py:644 -msgid "release of project" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: cmd/quickstart.py:651 -msgid "document language" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: cmd/quickstart.py:654 -msgid "source file suffix" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: cmd/quickstart.py:657 -msgid "master document name" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:660 -msgid "use epub" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: cmd/quickstart.py:663 -msgid "Extension options" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:670 -#, python-format -msgid "enable %s extension" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: cmd/quickstart.py:686 -msgid "create makefile" +#: transforms/__init__.py:258 +#, python-format +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: cmd/quickstart.py:692 -msgid "do not create makefile" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: cmd/quickstart.py:699 -msgid "create batchfile" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: cmd/quickstart.py:705 -msgid "do not create batchfile" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: cmd/quickstart.py:730 -msgid "define a template variable" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: cmd/quickstart.py:792 +#: util/i18n.py:253 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:809 +#: util/osutil.py:131 #, python-format -msgid "Invalid template variable: %s" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/build.py:64 -msgid "job number should be a positive number" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/build.py:100 -msgid "path to documentation source files" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/build.py:103 -msgid "path to output directory" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/build.py:114 -msgid "general options" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/build.py:131 +#: util/docfields.py:103 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/build.py:150 -msgid "path options" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/build.py:184 -msgid "override a setting in configuration file" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "Biểu tượng" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/build.py:212 -msgid "console output options" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" +#: transforms/post_transforms/__init__.py:88 +msgid "" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/build.py:252 -msgid "warning control options" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/build.py:265 -msgid "turn warnings into errors" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/build.py:357 -#, python-format -msgid "cannot open warning file '%s': %s" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" #: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 msgid "Collapse sidebar" msgstr "" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "Điều hướng" + +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "Tìm kiếm trong %(docstitle)s" + +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "Về các tài liệu này" #: themes/agogo/layout.html:34 themes/basic/layout.html:130 #: themes/basic/search.html:3 themes/basic/search.html:15 msgid "Search" msgstr "Tìm Kiếm" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "Thực hiện" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "Bản quyền" + +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "" + +#: themes/basic/layout.html:201 +#, python-format +msgid "Last updated on %(last_updated)s." +msgstr "Cập nhật mới nhất vào %(last_updated)s." + +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "Chủ đề trước" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "chương trước " + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "Chủ đề tiếp" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "chương tiếp" + +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" + +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "Toàn bộ chỉ mục trên một trang" + +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "Hiển thị mã nguồn" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "Nội dung" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "Tìm %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "Thực hiện" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2682,7 +2882,7 @@ msgstr "Chỉ Mục Mô-đun Toàn Cục" msgid "quick access to all modules" msgstr "truy cập nhanh tất cả các mô-đun" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "Chỉ mục chung" @@ -2690,23 +2890,15 @@ msgstr "Chỉ mục chung" msgid "all functions, classes, terms" msgstr "tất cả các hàm, lớp, thuật ngữ" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "Toàn bộ chỉ mục trên một trang" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "" +msgid "Search %(docstitle)s" +msgstr "Tìm %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2716,57 +2908,6 @@ msgstr "Các trang chỉ mục theo chữ cái" msgid "can be huge" msgstr "có thể rất nhiều" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "Chủ đề trước" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "chương trước " - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "Chủ đề tiếp" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "chương tiếp" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "Điều hướng" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "Tìm kiếm trong %(docstitle)s" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "Về các tài liệu này" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "Bản quyền" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "Cập nhật mới nhất vào %(last_updated)s." - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2783,42 +2924,41 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "Nội dung" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2827,6 +2967,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2848,120 +2993,127 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 -msgid "Positional-only parameter separator (PEP 570)" -msgstr "" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "" + +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "" + +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "Tham số" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "Các biến" -#: domains/python/_annotations.py:540 -msgid "Keyword-only parameters separator (PEP 3102)" -msgstr "" +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "Đưa ra" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (trong mô-đun %s)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (trong mô-đun %s)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (biến dựng sẵn)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (lớp dựng sẵn)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (lớp trong %s)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (phương thức lớp %s)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (phương thức tĩnh %s)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Chỉ Mục Mô-đun Python" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "các mô-đun" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "Sắp loại bỏ" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "ngoại lệ" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "phương thức lớp" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "phương thức tĩnh" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "(sắp loại bỏ)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "Tham số" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "Các biến" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "Đưa ra" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2972,746 +3124,526 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "thuộc tính" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "kiểu" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:750 -msgid "variable" -msgstr "biến" - -#: domains/c/__init__.py:752 -msgid "macro" -msgstr "macro" - -#: domains/c/__init__.py:753 -msgid "struct" -msgstr "" - -#: domains/std/__init__.py:91 domains/std/__init__.py:111 -#, python-format -msgid "environment variable; %s" -msgstr "các biến môi trường; %s" - -#: domains/std/__init__.py:119 -#, python-format -msgid "%s; configuration value" -msgstr "" - -#: domains/std/__init__.py:175 -msgid "Type" -msgstr "" - -#: domains/std/__init__.py:185 -msgid "Default" -msgstr "" - -#: domains/std/__init__.py:242 -#, python-format -msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "" - -#: domains/std/__init__.py:319 -#, python-format -msgid "%s command line option" -msgstr "" - -#: domains/std/__init__.py:321 -msgid "command line option" -msgstr "" - -#: domains/std/__init__.py:461 -msgid "glossary term must be preceded by empty line" -msgstr "" - -#: domains/std/__init__.py:474 -msgid "glossary terms must not be separated by empty lines" -msgstr "" - -#: domains/std/__init__.py:486 domains/std/__init__.py:504 -msgid "glossary seems to be misformatted, check indentation" -msgstr "" - -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "chú giải thuật ngữ" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "xem %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "nên xem %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "Biểu tượng" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" - -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" - -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" - -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" - -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" - -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "" - -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "" - -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "" - -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +"Declaration is '.. c:%s:: %s'." msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/c/__init__.py:211 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "%s (C %s)" msgstr "" -#: transforms/post_transforms/__init__.py:299 -#, python-format -msgid "%s:%s reference target not found: %s" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "biến" + +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "macro" + +#: domains/c/__init__.py:781 +msgid "struct" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format -msgid "%r reference target not found: %s" -msgstr "" +msgid "environment variable; %s" +msgstr "các biến môi trường; %s" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:116 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "%s; configuration value" msgstr "" -#: transforms/post_transforms/images.py:96 -#, python-format -msgid "Could not fetch remote image: %s [%d]" +#: domains/std/__init__.py:172 +msgid "Type" msgstr "" -#: transforms/post_transforms/images.py:143 -#, python-format -msgid "Unknown image format: %s..." +#: domains/std/__init__.py:182 +msgid "Default" msgstr "" -#: builders/html/__init__.py:113 +#: domains/std/__init__.py:239 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" msgstr "" -#: builders/html/__init__.py:348 +#: domains/std/__init__.py:319 #, python-format -msgid "Failed to read build info file: %r" +msgid "%s command line option" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: domains/std/__init__.py:321 +msgid "command line option" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "chỉ mục" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "chú giải thuật ngữ" + +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "xem tiếp" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "xem lại" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "" + +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: builders/html/__init__.py:794 +#: domains/std/__init__.py:857 #, python-format -msgid "cannot copy image file '%s': %s" +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: builders/html/__init__.py:818 +#: domains/std/__init__.py:1124 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: builders/html/__init__.py:864 +#: domains/std/__init__.py:1138 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "the link has no caption: %s" msgstr "" -#: builders/html/__init__.py:882 +#: domains/std/__init__.py:1153 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: domains/std/__init__.py:1157 +#, python-format +msgid "invalid numfig_format: %s" msgstr "" -#: builders/html/__init__.py:934 +#: domains/std/__init__.py:1453 #, python-format -msgid "cannot copy static file %r" +msgid "undefined label: %r" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: domains/std/__init__.py:1456 +#, python-format +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: builders/html/__init__.py:949 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "cannot copy extra file %r" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: builders/html/__init__.py:955 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Failed to write build info file: %r" +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/napoleon/docstring.py:192 +#, python-format +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:1216 -#, python-format -msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:1224 -#, python-format -msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "Các ví dụ" + +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:1365 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "html_extra_path entry %r does not exist" +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:1380 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "html_static_path entry %r is placed inside outdir" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:1385 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "html_static_path entry %r does not exist" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "logo file %r does not exist" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:1407 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "favicon file %r does not exist" +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:1420 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:1449 +#: ext/autodoc/_names.py:89 #, python-format -msgid "%s %s documentation" -msgstr "Tài liệu %s %s" +msgid "signature arguments given for automodule: '%s'" +msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/autodoc/_names.py:93 +#, python-format +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 +#, python-format +msgid "Failed to remove %s: %s" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_generate.py:69 #, python-format -msgid "The LaTeX files are in %(outdir)s." +msgid "Would create file %s." msgstr "" -#: builders/latex/__init__.py:121 +#: ext/apidoc/_cli.py:28 msgid "" "\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/latex/__init__.py:536 -#, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/latex/__init__.py:544 -#, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/latex/transforms.py:121 -#, python-format -msgid "Failed to get a docname for source %r!" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/latex/transforms.py:487 -#, python-format -msgid "No footnote was found for given reference node %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "" + +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/latex/theming.py:88 -#, python-format -msgid "%r doesn't have \"theme\" setting" +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/latex/theming.py:91 -#, python-format -msgid "%r doesn't have \"%s\" setting" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:176 -#, python-format -msgid "invalid value set (missing closing brace): %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" msgstr "" -#: ext/napoleon/docstring.py:183 -#, python-format -msgid "invalid value set (missing opening brace): %s" +#: ext/apidoc/_cli.py:226 +msgid "extension options" msgstr "" -#: ext/napoleon/docstring.py:190 -#, python-format -msgid "malformed string literal (missing closing quote): %s" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "" - -#: ext/napoleon/docstring.py:895 -msgid "Example" +msgid "enable %s extension, used when --full is given" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "Các ví dụ" - -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/apidoc/_extension.py:115 +#, python-format +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/apidoc/_extension.py:121 +#, python-format +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "autosummary references excluded document %r. Ignored." +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: ext/autosummary/__init__.py:309 -msgid "A captioned autosummary requires :toctree: option. ignored." +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: ext/autosummary/__init__.py:404 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "failed to parse name %s" +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: ext/autosummary/__init__.py:412 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to import object %s" +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "" -"Summarised items should not include the current module. Replace %r with %r." +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/autosummary/__init__.py:937 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3719,7 +3651,7 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3734,481 +3666,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/autosummary/generate.py:858 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "" -#: ext/autosummary/generate.py:866 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/autosummary/generate.py:915 #, python-format msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/autosummary/generate.py:923 #, python-format msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/autosummary/generate.py:931 #, python-format msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/autosummary/generate.py:940 #, python-format msgid "" "document exactly the members in module __all__ attribute. (default: " "%(default)s)" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/autosummary/__init__.py:239 #, python-format -msgid "Failed to remove %s: %s" +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." msgstr "" -#: ext/apidoc/_cli.py:28 +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "" + +#: ext/autosummary/__init__.py:329 +#, python-format msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" msgstr "" -#: ext/apidoc/_cli.py:50 +#: ext/autosummary/__init__.py:652 +#, python-format msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +"Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:91 +#: ext/intersphinx/_load.py:72 +#, python-format msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/apidoc/_cli.py:152 +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/intersphinx/_load.py:332 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "" + +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:240 +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 #, python-format -msgid "enable %s extension, used when --full is given" +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:291 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "%s is not a directory." +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:102 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Invalid __slots__ found on %s. Ignored." msgstr "" -#: ext/apidoc/_extension.py:110 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "error while formatting arguments for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:115 +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 #, python-format -msgid "apidoc_modules item %i 'path' must be a string" +msgid "Failed to get a constructor signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:121 +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Failed to get a method signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:133 +#: ext/autodoc/_dynamic/_signatures.py:500 #, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +msgid "Failed to get a signature for %s: %s" msgstr "" -#: ext/apidoc/_extension.py:140 +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_extension.py:147 +#: ext/autodoc/_dynamic/_member_finder.py:420 #, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +msgid "" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_extension.py:157 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: ext/autodoc/_legacy_class_based/_documenters.py:964 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_extension.py:192 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_extension.py:210 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_extension.py:247 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_extension.py:256 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" + +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" + +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "" + +#: builders/html/__init__.py:114 #, python-format -msgid "Would create file %s." +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:337 #, python-format -msgid "(in %s v%s)" +msgid "Failed to read build info file: %r" +msgstr "" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "" + +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:372 #, python-format -msgid "(in %s)" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:496 +msgid "index" +msgstr "chỉ mục" + +#: builders/html/__init__.py:549 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "Logo of %s" +msgstr "" + +#: builders/html/__init__.py:578 +msgid "next" +msgstr "xem tiếp" + +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "xem lại" + +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:783 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "cannot copy image file '%s': %s" +msgstr "" + +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:807 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:853 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:871 #, python-format -msgid "domain for external cross-reference not found: %r" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "" + +#: builders/html/__init__.py:923 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "cannot copy static file %r" +msgstr "" + +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:938 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:944 #, python-format +msgid "Failed to write build info file: %r" +msgstr "" + +#: builders/html/__init__.py:994 msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1038 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1204 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1217 #, python-format msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1225 #, python-format msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1266 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1313 +#, python-format +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:261 -#, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:287 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1365 +#, python-format +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1370 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/html/__init__.py:1385 #, python-format -msgid "invalid value for member-order option: %s" +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/autodoc/__init__.py:158 +#: builders/html/__init__.py:1390 #, python-format -msgid "invalid value for class-doc-from option: %s" +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "logo file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/html/__init__.py:1412 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "favicon file %r does not exist" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/autodoc/__init__.py:1080 +#: builders/html/__init__.py:1454 #, python-format -msgid "A mocked object is detected: %r" +msgid "%s %s documentation" +msgstr "Tài liệu %s %s" + +#: builders/latex/theming.py:87 +#, python-format +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/theming.py:90 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:1185 +#: builders/latex/transforms.py:121 #, python-format -msgid "signature arguments or return annotation given for automodule %s" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "" + +#: builders/latex/__init__.py:118 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "" + +#: builders/latex/__init__.py:167 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "" + +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "" + +#: builders/latex/__init__.py:529 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1966 +#: builders/latex/__init__.py:537 #, python-format -msgid "Bases: %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "" + +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:98 #, python-format -msgid "missing attribute %s in object %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/collectors/asset.py:126 #, python-format -msgid "alias of %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/collectors/asset.py:165 #, python-format -msgid "alias of TypeVar(%s)" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:335 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:360 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "see %s" +msgstr "xem %s" + +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "nên xem %s" + +#: environment/adapters/indexentries.py:140 +#, python-format +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/yue/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/yue/LC_MESSAGES/sphinx.mo index 04b8543699ff389bd8a7f3aba3cba804f07bf987..ffcc4786362d304dbf38d8db205567cb33168dd7 100644 GIT binary patch delta 24 fcmdnOx`lOvI3u^Ak*\n" "Language-Team: Cantonese (http://app.transifex.com/sphinx-doc/sphinx-1/language/yue/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: yue\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,42 +2923,41 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2826,6 +2966,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2847,119 +2992,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2971,92 +3123,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3084,581 +3229,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3666,548 +3719,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/zh_CN/LC_MESSAGES/sphinx.js b/addons/source-python/packages/site-packages/sphinx/locale/zh_CN/LC_MESSAGES/sphinx.js index 59f9b0f55..7b14a7918 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/zh_CN/LC_MESSAGES/sphinx.js +++ b/addons/source-python/packages/site-packages/sphinx/locale/zh_CN/LC_MESSAGES/sphinx.js @@ -20,7 +20,7 @@ Documentation.addTranslations({ "Go": "\u63d0\u4ea4", "Hide Search Matches": "\u9690\u85cf\u641c\u7d22\u7ed3\u679c", "Index": "\u7d22\u5f15", - "Index – %(key)s": "\u7d22\u5f15 – %(key)s", + "Index – %(key)s": "\u7d22\u5f15 – %(key)s", "Index pages by letter": "\u5b57\u6bcd\u7d22\u5f15", "Indices and tables:": "\u7d22\u5f15\u548c\u8868\u683c\uff1a", "Last updated on %(last_updated)s.": "\u6700\u540e\u66f4\u65b0\u4e8e %(last_updated)s.", @@ -36,7 +36,9 @@ Documentation.addTranslations({ "Search": "\u641c\u7d22", "Search Page": "\u641c\u7d22\u9875\u9762", "Search Results": "\u641c\u7d22\u7ed3\u679c", - "Search finished, found ${resultCount} page(s) matching the search query.": "\u641c\u7d22\u5b8c\u6210\uff0c\u5339\u914d\u5230 ${resultCount} \u9875\u3002", + "Search finished, found one page matching the search query.": [ + "\u641c\u7d22\u5b8c\u6210\uff0c\u5339\u914d\u641c\u7d22\u6761\u4ef6\u7684\u6709 ${resultCount} \u4e2a\u9875\u9762\u3002" + ], "Search within %(docstitle)s": "\u5728 %(docstitle)s \u4e2d\u641c\u7d22", "Searching": "\u6b63\u5728\u641c\u7d22\u4e2d", "Searching for multiple words only shows matches that contain\n all words.": "\u5f53\u641c\u7d22\u591a\u4e2a\u5173\u952e\u8bcd\u65f6\uff0c\u53ea\u4f1a\u663e\u793a\u540c\u65f6\u5305\u542b\u6240\u6709\u5173\u952e\u8bcd\u7684\u5185\u5bb9\u3002", diff --git a/addons/source-python/packages/site-packages/sphinx/locale/zh_CN/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/zh_CN/LC_MESSAGES/sphinx.mo index 4fd8ec7d49737c5edfead9a079c48548c8b07f57..96446144ffb5a9a97ac53e49dd5efd0b646ab711 100644 GIT binary patch delta 32848 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 Xo3Feqhvj>RU`Gx_7e8VG0PFt&C1jU{ delta 15420 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, 2015,2017-2018 +# Alpha Du , 2025 +# Dormouse Young , 2024 +# Freesand Leo , 2024 +# gerhardt.gao , 2025 # Hsiaoming Yang , 2018 # Izabel Wang , 2020 # Izabel Wang , 2020 @@ -18,1558 +22,1915 @@ # Ryekee Zhong , 2013 # Komiya Takeshi , 2019,2021-2022 # Tower Joo, 2009 +# Tyson Tan , 2025 # wendi cao <651645601@qq.com>, 2020 -# Yinian Chin , 2013,2018,2020,2022-2023 +# Yinian Chin , 2013,2018,2020,2022-2024 # Yinian Chin , 2013 +# you sunshine, 2024 msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-04-14 23:27+0000\n" +"POT-Creation-Date: 2025-12-04 06:45+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" -"Last-Translator: Adam Turner, 2023\n" +"Last-Translator: gerhardt.gao , 2025\n" "Language-Team: Chinese (China) (http://app.transifex.com/sphinx-doc/sphinx-1/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.14.0\n" +"Generated-By: Babel 2.17.0\n" "Language: zh_CN\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: sphinx/application.py:157 +#: roles.py:205 #, python-format -msgid "Cannot find source directory (%s)" -msgstr "无法找到源文件目录(%s)" +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "通用漏洞及暴露;CVE %s" -#: sphinx/application.py:161 +#: roles.py:228 #, python-format -msgid "Output directory (%s) is not a directory" -msgstr "输出目录(%s)不是一个目录" +msgid "invalid CVE number %s" +msgstr "无效的 CVE 编号 %s" -#: sphinx/application.py:165 -msgid "Source directory and destination directory cannot be identical" -msgstr "源文件目录和目标目录不能是同一目录" +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "常见漏洞枚举;CWE %s" -#: sphinx/application.py:197 +#: roles.py:273 #, python-format -msgid "Running Sphinx v%s" -msgstr "正在运行 Sphinx v%s" +msgid "invalid CWE number %s" +msgstr "无效的 CWE 编号 %s" -#: sphinx/application.py:219 +#: roles.py:293 #, python-format -msgid "" -"This project needs at least Sphinx v%s and therefore cannot be built with " -"this version." -msgstr "该项目需要 Sphinx v%s 及以上版本,当前使用版本不能构建此文档。" +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python 增强建议;PEP %s" -#: sphinx/application.py:235 -msgid "making output directory" -msgstr "正在创建输出目录" +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "无效的 PEP 编号%s" -#: sphinx/application.py:240 sphinx/registry.py:450 +#: roles.py:354 #, python-format -msgid "while setting up extension %s:" -msgstr "在设置扩展名 %s 时:" +msgid "invalid RFC number %s" +msgstr "无效的 RFC 编号 %s" -#: sphinx/application.py:246 +#: theming.py:117 +#, python-format msgid "" -"'setup' as currently defined in conf.py isn't a Python callable. Please " -"modify its definition to make it a callable function. This is needed for " -"conf.py to behave as a Sphinx extension." -msgstr "当前 conf.py 中定义的 'setup' 不是一个 Python 的可调用对象。请修改其定义为一个可调用的函数。当 conf.py 作为 Sphinx 扩展时,必须依此配置。" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "主题配置不支持 [theme] 和 [options] 以外的部分 (尝试从 %r 获取值)。" -#: sphinx/application.py:277 +#: theming.py:122 #, python-format -msgid "loading translations [%s]... " -msgstr "正在加载翻译 [%s]…" - -#: sphinx/application.py:294 sphinx/util/display.py:85 -msgid "done" -msgstr "完成" - -#: sphinx/application.py:296 -msgid "not available for built-in messages" -msgstr "没有找到内置信息的译文" - -#: sphinx/application.py:310 -msgid "loading pickled environment" -msgstr "正在加载 Pickle 序列化的环境" +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "所有已找到的主题配置均未包含配置项 %s.%s" -#: sphinx/application.py:318 +#: theming.py:137 #, python-format -msgid "failed: %s" -msgstr "失败:%s" +msgid "unsupported theme option %r given" +msgstr "不支持的主题选项 %r" -#: sphinx/application.py:332 -msgid "No builder selected, using default: html" -msgstr "未选择构建器,默认使用:html" +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "主题路径对应的文件 %r 是一个无效的或不包含主题的 zip 文件" -#: sphinx/application.py:365 -msgid "succeeded" -msgstr "成功" +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "找不到名称为 %r 的主题 (是否缺少 theme.toml 文件?)" -#: sphinx/application.py:366 -msgid "finished with problems" -msgstr "完成但存在问题" +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "%r 主題有循环继承" -#: sphinx/application.py:370 +#: theming.py:286 #, python-format -msgid "build %s, %s warning (with warnings treated as errors)." -msgstr "构建%s,%s 条警告(将警告视为错误)。" +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "%r 主题继承了未加载的主题 %r。已加载的主题有:%s" -#: sphinx/application.py:372 +#: theming.py:292 #, python-format -msgid "build %s, %s warnings (with warnings treated as errors)." -msgstr "构建%s,%s 条警告(将警告视为错误)。" +msgid "The %r theme has too many ancestors" +msgstr "%r 主题有太多祖先主题。" -#: sphinx/application.py:375 +#: theming.py:320 #, python-format -msgid "build %s, %s warning." -msgstr "构建%s, %s 条警告。" +msgid "no theme configuration file found in %r" +msgstr "在 %r 中找不到主题配置文件" -#: sphinx/application.py:377 +#: theming.py:345 theming.py:398 #, python-format -msgid "build %s, %s warnings." -msgstr "构建%s,%s 条警告。" +msgid "theme %r doesn't have the \"theme\" table" +msgstr "主题 %r 內沒有 \"theme\" 表格" -#: sphinx/application.py:381 +#: theming.py:349 #, python-format -msgid "build %s." -msgstr "构建%s。" +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "%r 主题的 \"[theme]\" 表格不是一个表格" -#: sphinx/application.py:610 +#: theming.py:353 theming.py:401 #, python-format -msgid "node class %r is already registered, its visitors will be overridden" -msgstr "节点类 %r 已经注册过了,其访问者将被覆盖" +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "%r 主题必须定义 \"theme.inherit\" 配置项" -#: sphinx/application.py:689 +#: theming.py:357 #, python-format -msgid "directive %r is already registered, it will be overridden" -msgstr "指令 %r 已经注册过了,将被覆盖" +msgid "The %r theme \"[options]\" table is not a table" +msgstr "%r 主题的 \"[options]\" 表格不是一个表格" -#: sphinx/application.py:711 sphinx/application.py:733 +#: theming.py:376 #, python-format -msgid "role %r is already registered, it will be overridden" -msgstr "角色 %r 已经注册过了,将被覆盖" +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "\"theme.pygments_style\" 配置项必须是一个表格。提示:\"%s\"" -#: sphinx/application.py:1282 +#: project.py:72 #, python-format 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 "扩展 %s 没有声明是否并行读取安全,默认假定为否—请联系扩展作者检查是否支持该特性并显式声明" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "发现多个文件对应文档“%s”:%s\n将采用 %r 用于构建。" -#: sphinx/application.py:1286 +#: project.py:87 #, python-format -msgid "the %s extension is not safe for parallel reading" -msgstr "扩展 %s 不是并行读取安全的" +msgid "Ignored unreadable document %r." +msgstr "已忽略无法读取的文档 %r。" -#: sphinx/application.py:1289 +#: extension.py:58 #, python-format msgid "" -"the %s extension does not declare if it is safe for parallel writing, " -"assuming it isn't - please ask the extension author to check and make it " -"explicit" -msgstr "%s 扩展没有声明是否并行写入安全,默认假定为否—请联系扩展作者检查是否支持该特性并显式声明" +"The %s extension is required by needs_extensions settings, but it is not " +"loaded." +msgstr "未能加载 needs_extensions 配置项指定的 %s 扩展。" -#: sphinx/application.py:1293 +#: extension.py:79 #, python-format -msgid "the %s extension is not safe for parallel writing" -msgstr "扩展 %s 不是并行写入安全的" +msgid "" +"This project needs the extension %s at least in version %s and therefore " +"cannot be built with the loaded version (%s)." +msgstr "该项目要求扩展 %s 至少是 %s 版本,当前加载版本(%s)无法构建文档。" -#: sphinx/application.py:1301 sphinx/application.py:1305 +#: highlighting.py:170 #, python-format -msgid "doing serial %s" -msgstr "执行串行 %s" +msgid "Pygments lexer name %r is not known" +msgstr "未知的 Pygments 词法分析器 %r" -#: sphinx/config.py:309 +#: highlighting.py:209 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "配置目录中缺少 conf.py 文件(%s)" - -#: sphinx/config.py:318 msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "发现无效的配置值:“language = None”。请修改为有效的语言代码。回退至“en”(英语)。" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "在词法分析字面块 %r 为“%s”时,在词 %r 处遇到错误。正在以宽松模式重试。" -#: sphinx/config.py:341 +#: events.py:92 #, python-format -msgid "" -"cannot override dictionary config setting %r, ignoring (use %r to set " -"individual elements)" -msgstr "不能覆盖字典配置项 %r,已忽略 (请用 %r 方式逐一修改字典成员)" +msgid "Event %r already present" +msgstr "事件 %r 已存在" -#: sphinx/config.py:350 +#: events.py:386 #, python-format -msgid "invalid number %r for config value %r, ignoring" -msgstr "%r 不是有效整数,配置项 %r 的值只能是整数,已忽略" +msgid "Unknown event name: %s" +msgstr "未知的事件名称:%s" -#: sphinx/config.py:355 +#: events.py:451 #, python-format -msgid "cannot override config setting %r with unsupported type, ignoring" -msgstr "无法用不支持的类型覆盖配置项 %r,已忽略" +msgid "Handler %r for event %r threw an exception" +msgstr "事件处理函数 %r 在处理事件 %r 时抛出了异常" -#: sphinx/config.py:378 +#: application.py:218 #, python-format -msgid "unknown config value %r in override, ignoring" -msgstr "配置覆盖中包含未知的配置项 %r,已忽略" +msgid "Cannot find source directory (%s)" +msgstr "无法找到源文件目录(%s)" -#: sphinx/config.py:418 +#: application.py:223 #, python-format -msgid "No such config value: %r" -msgstr "" +msgid "Output directory (%s) is not a directory" +msgstr "输出目录(%s)不是一个目录" -#: sphinx/config.py:440 -#, python-format -msgid "Config value %r already present" -msgstr "配置项 %r 已存在" +#: application.py:228 +msgid "Source directory and destination directory cannot be identical" +msgstr "源文件目录和目标目录不能是同一目录" -#: sphinx/config.py:473 +#: application.py:258 #, python-format -msgid "cannot cache unpickable configuration value: %r" -msgstr "" +msgid "Running Sphinx v%s" +msgstr "正在运行 Sphinx v%s" -#: sphinx/config.py:509 +#: application.py:286 #, python-format -msgid "There is a syntax error in your configuration file: %s\n" -msgstr "配置文件中存在语法错误:%s\n" - -#: sphinx/config.py:512 msgid "" -"The configuration file (or one of the modules it imports) called sys.exit()" -msgstr "配置文件(或配置文件导入的模块)调用了 sys.exit()" +"This project needs at least Sphinx v%s and therefore cannot be built with " +"this version." +msgstr "该项目需要 Sphinx v%s 及以上版本,当前使用版本不能构建此文档。" -#: sphinx/config.py:519 -#, python-format -msgid "" -"There is a programmable error in your configuration file:\n" -"\n" -"%s" -msgstr "配置文件中有程序上的错误:\n\n%s" +#: application.py:305 +msgid "making output directory" +msgstr "正在创建输出目录" -#: sphinx/config.py:540 +#: application.py:310 registry.py:540 #, python-format -msgid "Failed to convert %r to a set or tuple" -msgstr "" +msgid "while setting up extension %s:" +msgstr "在设置扩展名 %s 时:" -#: sphinx/config.py:565 -#, python-format +#: application.py:317 msgid "" -"The config value `source_suffix' expects a string, list of strings, or " -"dictionary. But `%r' is given." -msgstr "配置项“source_suffix”的值应为字符串、字符串列表或字典。但给定的值是“%r”。" +"'setup' as currently defined in conf.py isn't a Python callable. Please " +"modify its definition to make it a callable function. This is needed for " +"conf.py to behave as a Sphinx extension." +msgstr "当前 conf.py 中定义的 'setup' 不是一个 Python 的可调用对象。请修改其定义为一个可调用的函数。当 conf.py 作为 Sphinx 扩展时,必须依此配置。" -#: sphinx/config.py:585 +#: application.py:360 #, python-format -msgid "Section %s" -msgstr "节 %s" +msgid "loading translations [%s]... " +msgstr "正在加载翻译 [%s]…" -#: sphinx/config.py:586 -#, python-format -msgid "Fig. %s" -msgstr "图 %s" +#: application.py:384 util/display.py:89 +msgid "done" +msgstr "完成" -#: sphinx/config.py:587 -#, python-format -msgid "Table %s" -msgstr "表 %s" +#: application.py:386 +msgid "not available for built-in messages" +msgstr "没有找到内置信息的译文" -#: sphinx/config.py:588 +#: application.py:400 +msgid "loading pickled environment" +msgstr "正在加载 Pickle 序列化的环境" + +#: application.py:408 #, python-format -msgid "Listing %s" -msgstr "列表 %s" +msgid "failed: %s" +msgstr "失败:%s" -#: sphinx/config.py:663 -msgid "" -"The config value `{name}` has to be a one of {candidates}, but `{current}` " -"is given." -msgstr "配置项“{name}”的值只能在“{candidates}”中选取,而当前给定的值是“{current}”。" +#: application.py:423 +msgid "No builder selected, using default: html" +msgstr "未选择构建器,默认使用:html" -#: sphinx/config.py:687 -msgid "" -"The config value `{name}' has type `{current.__name__}'; expected " -"{permitted}." -msgstr "配置项“{name}”的值被配置成“{current.__name__}”类型,应为{permitted}。" +#: application.py:455 +msgid "build finished with problems." +msgstr "构建完成但存在问题。" + +#: application.py:457 +msgid "build succeeded." +msgstr "构建成功。" -#: sphinx/config.py:700 +#: application.py:462 msgid "" -"The config value `{name}' has type `{current.__name__}', defaults to " -"`{default.__name__}'." -msgstr "配置项“{name}”的值被配置成“{current.__name__}”类型,默认为“{default.__name__}”。" +"build finished with problems, 1 warning (with warnings treated as errors)." +msgstr "构建完成但存在问题,1 条警告(将警告视为错误)。" -#: sphinx/config.py:711 -#, python-format -msgid "primary_domain %r not found, ignored." -msgstr "primary_domain %r 不存在,已忽略。" +#: application.py:466 +msgid "build finished with problems, 1 warning." +msgstr "构建完成但存在问题,1 条警告。" -#: sphinx/config.py:723 +#: application.py:468 +msgid "build succeeded, 1 warning." +msgstr "构建成功,1 条警告。" + +#: application.py:474 +#, python-format msgid "" -"Since v2.0, Sphinx uses \"index\" as root_doc by default. Please add " -"\"root_doc = 'contents'\" to your conf.py." -msgstr "自 v2.0 起,Sphinx 采用“index”作为 root_doc 的默认值。请在你的 conf.py 中添加“root_doc = 'contents'”。" +"build finished with problems, %s warnings (with warnings treated as errors)." +msgstr "构建完成但存在问题,%s 条警告(将警告视为错误)。" -#: sphinx/events.py:64 +#: application.py:478 #, python-format -msgid "Event %r already present" -msgstr "事件 %r 已存在" +msgid "build finished with problems, %s warnings." +msgstr "构建完成但存在问题,%s 条警告。" -#: sphinx/events.py:70 +#: application.py:480 #, python-format -msgid "Unknown event name: %s" -msgstr "未知的事件名称:%s" +msgid "build succeeded, %s warnings." +msgstr "构建成功,%s 条警告。" -#: sphinx/events.py:109 +#: application.py:1020 #, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "事件处理函数 %r 在处理事件 %r 时抛出了异常" +msgid "node class %r is already registered, its visitors will be overridden" +msgstr "节点类 %r 已经注册过了,其访问者将被覆盖" -#: sphinx/extension.py:55 +#: application.py:1113 #, python-format -msgid "" -"The %s extension is required by needs_extensions settings, but it is not " -"loaded." -msgstr "未能加载 needs_extensions 配置项指定的 %s 扩展。" +msgid "directive %r is already registered and will not be overridden" +msgstr "指令 %r 已经注册,不会被覆盖" + +#: application.py:1139 application.py:1167 +#, python-format +msgid "role %r is already registered and will not be overridden" +msgstr "角色 %r 已经注册,不会被覆盖" -#: sphinx/extension.py:76 +#: application.py:1766 #, python-format msgid "" -"This project needs the extension %s at least in version %s and therefore " -"cannot be built with the loaded version (%s)." -msgstr "该项目要求扩展 %s 至少是 %s 版本,当前加载版本(%s)无法构建文档。" +"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 "扩展 %s 没有声明是否并行读取安全,默认假定为否—请联系扩展作者检查是否支持该特性并显式声明" -#: sphinx/highlighting.py:155 +#: application.py:1771 #, python-format -msgid "Pygments lexer name %r is not known" -msgstr "未知的 Pygments 词法分析器 %r" +msgid "the %s extension is not safe for parallel reading" +msgstr "扩展 %s 不是并行读取安全的" -#: sphinx/highlighting.py:189 +#: application.py:1775 #, python-format msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "" +"the %s extension does not declare if it is safe for parallel writing, " +"assuming it isn't - please ask the extension author to check and make it " +"explicit" +msgstr "%s 扩展没有声明是否并行写入安全,默认假定为否—请联系扩展作者检查是否支持该特性并显式声明" -#: sphinx/project.py:66 +#: application.py:1780 #, python-format -msgid "" -"multiple files found for the document \"%s\": %r\n" -"Use %r for the build." -msgstr "发现多个文件对应文档“%s”:%r\n将采用 %r 用于构建。" +msgid "the %s extension is not safe for parallel writing" +msgstr "扩展 %s 不是并行写入安全的" -#: sphinx/project.py:81 +#: application.py:1788 application.py:1792 #, python-format -msgid "Ignored unreadable document %r." -msgstr "" +msgid "doing serial %s" +msgstr "执行串行 %s" -#: sphinx/registry.py:142 +#: registry.py:162 #, python-format msgid "Builder class %s has no \"name\" attribute" msgstr "构建器 %s 未包含“name”属性" -#: sphinx/registry.py:144 +#: registry.py:166 #, python-format msgid "Builder %r already exists (in module %s)" msgstr "构建器 %r 已存在(见模块 %s)" -#: sphinx/registry.py:157 +#: registry.py:182 #, python-format msgid "Builder name %s not registered or available through entry point" msgstr "构建器 %s 未注册或在入口点不可用" -#: sphinx/registry.py:164 +#: registry.py:192 #, python-format msgid "Builder name %s not registered" msgstr "构建器 %s 未注册" -#: sphinx/registry.py:171 +#: registry.py:199 #, python-format msgid "domain %s already registered" msgstr "域 %s 已经注册过了" -#: sphinx/registry.py:194 sphinx/registry.py:207 sphinx/registry.py:218 +#: registry.py:223 registry.py:244 registry.py:257 #, python-format msgid "domain %s not yet registered" msgstr "域 %s 未注册" -#: sphinx/registry.py:198 +#: registry.py:230 #, python-format msgid "The %r directive is already registered to domain %s" msgstr "指令 %r 已经在域 %s 上注册过了" -#: sphinx/registry.py:210 +#: registry.py:248 #, python-format msgid "The %r role is already registered to domain %s" msgstr "角色 %r 已经在域 %s 上注册过了" -#: sphinx/registry.py:221 +#: registry.py:261 #, python-format msgid "The %r index is already registered to domain %s" msgstr "索引 %r 已经在域 %s 上注册过了" -#: sphinx/registry.py:252 +#: registry.py:308 #, python-format msgid "The %r object_type is already registered" msgstr "对象类型 %r 已经注册过了" -#: sphinx/registry.py:278 +#: registry.py:339 #, python-format msgid "The %r crossref_type is already registered" msgstr "交叉引用类型 %r 已经注册过了" -#: sphinx/registry.py:285 +#: registry.py:348 #, python-format msgid "source_suffix %r is already registered" msgstr "源文件扩展名 %r 已经注册过了" -#: sphinx/registry.py:294 +#: registry.py:358 #, python-format msgid "source_parser for %r is already registered" msgstr "%r 的源文件解析器已经注册过了" -#: sphinx/registry.py:302 +#: registry.py:367 #, python-format msgid "Source parser for %s not registered" msgstr "未注册 %s 的源代码语法分析器" -#: sphinx/registry.py:318 +#: registry.py:388 #, python-format msgid "Translator for %r already exists" msgstr "翻译器已存在 %r" -#: sphinx/registry.py:334 +#: registry.py:405 #, python-format msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "add_node() 的关键字参数必须是 (visit, depart) 形式的函数元组:%r=%r" -#: sphinx/registry.py:417 +#: registry.py:498 #, python-format msgid "enumerable_node %r already registered" msgstr "可枚举节点 %r 已经注册过了" -#: sphinx/registry.py:429 +#: registry.py:514 #, python-format msgid "math renderer %s is already registered" msgstr "公式渲染器 %s 已经注册过了" -#: sphinx/registry.py:444 +#: registry.py:531 #, python-format msgid "" "the extension %r was already merged with Sphinx since version %s; this " "extension is ignored." msgstr "扩展 %r 自 Sphinx %s 版本起合并至 Sphinx;因此,该扩展被忽略。" -#: sphinx/registry.py:455 +#: registry.py:545 msgid "Original exception:\n" msgstr "原始异常:\n" -#: sphinx/registry.py:456 +#: registry.py:547 #, python-format msgid "Could not import extension %s" msgstr "无法导入扩展 %s" -#: sphinx/registry.py:461 +#: registry.py:554 #, python-format msgid "" "extension %r has no setup() function; is it really a Sphinx extension " "module?" msgstr "扩展 %r 缺少 setup() 函数;它确实是一个 Sphinx 扩展模块吗?" -#: sphinx/registry.py:470 +#: registry.py:567 #, python-format msgid "" "The %s extension used by this project needs at least Sphinx v%s; it " "therefore cannot be built with this version." msgstr "该项目所用扩展 %s 需要 Sphinx %s 或以上版本;当前版本无法构建文档。" -#: sphinx/registry.py:478 +#: registry.py:579 #, python-format msgid "" "extension %r returned an unsupported object from its setup() function; it " "should return None or a metadata dictionary" msgstr "扩展 %r 在其 setup() 函数中返回了一个不支持的对象;该函数应返回 None 或一个元数据字典" -#: sphinx/roles.py:201 +#: registry.py:605 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python 增强建议;PEP %s" +msgid "`None` is not a valid filetype for %r." +msgstr "`None` 不是有效的 %r 文件类型。" -#: sphinx/roles.py:222 +#: config.py:351 #, python-format -msgid "invalid PEP number %s" -msgstr "无效的 PEP 编号%s" +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "配置目录中缺少 conf.py 文件(%s)" -#: sphinx/roles.py:257 +#: config.py:374 #, python-format -msgid "invalid RFC number %s" -msgstr "无效的 RFC 编号 %s" +msgid "'%s' must be '0' or '1', got '%s'" +msgstr "'%s' 必须为 '0' 或 '1' ,但得到 '%s'" -#: sphinx/theming.py:125 +#: config.py:379 #, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "所有已找到的主题配置均未包含配置项 %s.%s" +msgid "" +"cannot override dictionary config setting %r, ignoring (use %r to set " +"individual elements)" +msgstr "不能覆盖字典配置项 %r,已忽略 (请用 %r 方式逐一修改字典成员)" -#: sphinx/theming.py:140 +#: config.py:391 #, python-format -msgid "unsupported theme option %r given" -msgstr "不支持的主题选项 %r" +msgid "invalid number %r for config value %r, ignoring" +msgstr "%r 不是有效整数,配置项 %r 的值只能是整数,已忽略" -#: sphinx/theming.py:206 +#: config.py:399 #, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "主题路径对应的文件 %r 是一个无效的或不包含主题的 zip 文件" +msgid "cannot override config setting %r with unsupported type, ignoring" +msgstr "无法用不支持的类型覆盖配置项 %r,已忽略" -#: sphinx/theming.py:226 +#: config.py:422 #, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "" +msgid "unknown config value %r in override, ignoring" +msgstr "配置覆盖中包含未知的配置项 %r,已忽略" -#: sphinx/theming.py:259 +#: config.py:476 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "" +msgid "No such config value: %r" +msgstr "没有这个配置值: %r" + +#: config.py:504 +#, python-format +msgid "Config value %r already present" +msgstr "配置项 %r 已存在" -#: sphinx/theming.py:262 +#: config.py:541 #, python-format msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "" +"cannot cache unpickleable configuration value: %r (because it contains a " +"function, class, or module object)" +msgstr "无法缓存不可 pickle 的配置值: %r (因为它包含函数,类或模块对象)" + +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "发现无效的配置值:“language = None”。请修改为有效的语言代码。回退至“en”(英语)。" -#: sphinx/theming.py:269 +#: config.py:599 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "" +msgid "There is a syntax error in your configuration file: %s\n" +msgstr "配置文件中存在语法错误:%s\n" + +#: config.py:603 +msgid "" +"The configuration file (or one of the modules it imports) called sys.exit()" +msgstr "配置文件(或配置文件导入的模块)调用了 sys.exit()" -#: sphinx/theming.py:295 +#: config.py:611 #, python-format -msgid "no theme configuration file found in %r" -msgstr "" +msgid "" +"There is a programmable error in your configuration file:\n" +"\n" +"%s" +msgstr "配置文件中有程序上的错误:\n\n%s" -#: sphinx/theming.py:323 sphinx/theming.py:374 +#: config.py:633 #, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "" +msgid "Failed to convert %r to a frozenset" +msgstr "无法将 %r 转换为 frozenset" -#: sphinx/theming.py:327 +#: config.py:651 config.py:659 #, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "" +msgid "Converting `source_suffix = %r` to `source_suffix = %r`." +msgstr "正在转换 `source_suffix = %r` 为 `source_suffix = %r` 。" -#: sphinx/theming.py:331 sphinx/theming.py:377 +#: config.py:665 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "" +msgid "" +"The config value `source_suffix' expects a dictionary, a string, or a list " +"of strings. Got `%r' instead (type %s)." +msgstr "配置项“source_suffix”的值应为字典、字符串或字符串列表。但给定的值是“%r”(类型是 %s)。" -#: sphinx/theming.py:335 +#: config.py:686 #, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "" +msgid "Section %s" +msgstr "节 %s" -#: sphinx/theming.py:353 +#: config.py:687 #, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "" +msgid "Fig. %s" +msgstr "图 %s" -#: sphinx/builders/__init__.py:183 +#: config.py:688 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "没有找到适合 %s 构建器的图像:%s(%s)" +msgid "Table %s" +msgstr "表 %s" -#: sphinx/builders/__init__.py:187 +#: config.py:689 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "没有找到适合 %s 构建器的图像:%s" +msgid "Listing %s" +msgstr "列表 %s" -#: sphinx/builders/__init__.py:207 -msgid "building [mo]: " -msgstr "正在构建 [mo]: " +#: config.py:798 +#, python-brace-format +msgid "" +"The config value `{name}` has to be a one of {candidates}, but `{current}` " +"is given." +msgstr "配置项“{name}”的值只能在“{candidates}”中选取,而当前给定的值是“{current}”。" -#: sphinx/builders/__init__.py:208 sphinx/builders/__init__.py:574 -#: sphinx/builders/__init__.py:601 -msgid "writing output... " -msgstr "正在写入输出……" +#: config.py:829 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}'; expected " +"{permitted}." +msgstr "配置项“{name}”的值被配置成“{current.__name__}”类型,应为{permitted}。" -#: sphinx/builders/__init__.py:217 -#, python-format -msgid "all of %d po files" -msgstr "所有的 %d po 文件" +#: config.py:846 +#, python-brace-format +msgid "" +"The config value `{name}' has type `{current.__name__}', defaults to " +"`{default.__name__}'." +msgstr "配置项“{name}”的值被配置成“{current.__name__}”类型,默认为“{default.__name__}”。" -#: sphinx/builders/__init__.py:235 +#: config.py:858 #, python-format -msgid "targets for %d po files that are specified" -msgstr "指定了 %d 个 po 文件的目标文件" +msgid "primary_domain %r not found, ignored." +msgstr "primary_domain %r 不存在,已忽略。" -#: sphinx/builders/__init__.py:243 -#, python-format -msgid "targets for %d po files that are out of date" -msgstr "%d 个 po 文件的目标文件已过期" +#: config.py:878 +msgid "" +"Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" +" behaviour, set \"master_doc = 'contents'\"." +msgstr "Sphinx 现在默认使用“index”作为主文档。为了保留 2.0 之前的行为,请设置“ master_doc = 'contents' ”。" -#: sphinx/builders/__init__.py:252 -msgid "all source files" -msgstr "所有源文件" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." +msgstr "对非 UTF-8 编码的源代码支持已废弃,并将在 Sphinx 10 中被移除。如果这对您的使用造成问题,请在 https://github.com/sphinx-doc/sphinx/issues/13665 留言。" -#: sphinx/builders/__init__.py:262 -#, python-format -msgid "file %r given on command line does not exist, " -msgstr "命令行给定的文件 %r 不存在" +#: environment/__init__.py:89 +msgid "new config" +msgstr "新配置" + +#: environment/__init__.py:90 +msgid "config changed" +msgstr "配置发生了变化" + +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "扩展发生了变化" + +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "构建环境版本与当前环境不符" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "源文件目录发生了变化" -#: sphinx/builders/__init__.py:267 +#: environment/__init__.py:350 #, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "源文件目录中不存在命令行给定的文件 %r,将被忽略" +msgid "The configuration has changed (1 option: %r)" +msgstr "配置已改变 (1 个选项: %r)" -#: sphinx/builders/__init__.py:273 +#: environment/__init__.py:355 #, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "命令行给定的文件 %r 不是有效文档,将被忽略" +msgid "The configuration has changed (%d options: %s)" +msgstr "配置已改变 (%d 个选项: %s)" -#: sphinx/builders/__init__.py:282 +#: environment/__init__.py:361 #, python-format -msgid "%d source files given on command line" -msgstr "命令行给定了 %d 个源文件" +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "配置已改变 (%d 个选项: %s, ...)" + +#: environment/__init__.py:404 +msgid "" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "本环境与选择的构建器不兼容,请选择其他的文档树目录。" -#: sphinx/builders/__init__.py:294 +#: environment/__init__.py:518 #, python-format -msgid "targets for %d source files that are out of date" -msgstr "%d 个源文件的目标文件已过期" +msgid "Failed to scan documents in %s: %r" +msgstr "无法在 %s 中扫描文档:%r" -#: sphinx/builders/__init__.py:309 sphinx/builders/gettext.py:243 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "building [%s]: " -msgstr "正在构建 [%s]: " +msgid "Domain %r is not registered" +msgstr "未注册的域 %r" -#: sphinx/builders/__init__.py:316 -msgid "looking for now-outdated files... " -msgstr "正在查找当前已过期的文件……" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "文档没有加入到任何目录树中" -#: sphinx/builders/__init__.py:320 +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "目录树存在自引用,已忽略。" + +#: environment/__init__.py:952 #, python-format -msgid "%d found" -msgstr "找到 %d 个已过期文件" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "文档在多个 toctree 中被引用: %s, 选择: %s <- %s" -#: sphinx/builders/__init__.py:322 -msgid "none found" -msgstr "没有找到已过期文件" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "注意" -#: sphinx/builders/__init__.py:327 -msgid "pickling environment" -msgstr "正在 Pickle 序列化环境" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "小心" -#: sphinx/builders/__init__.py:333 -msgid "checking consistency" -msgstr "正在校验一致性" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "危险" -#: sphinx/builders/__init__.py:337 -msgid "no targets are out of date." -msgstr "没有过期的目标文件。" +#: locale/__init__.py:232 +msgid "Error" +msgstr "错误" -#: sphinx/builders/__init__.py:376 -msgid "updating environment: " -msgstr "正在更新环境:" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "提示" -#: sphinx/builders/__init__.py:397 -#, python-format -msgid "%s added, %s changed, %s removed" -msgstr "有 %s 个新增文件,有 %s 个文件已被修改,有 %s 个文件已被移除" +#: locale/__init__.py:234 +msgid "Important" +msgstr "重要" -#: sphinx/builders/__init__.py:435 sphinx/builders/__init__.py:447 -msgid "reading sources... " -msgstr "正在读取源文件……" +#: locale/__init__.py:235 +msgid "Note" +msgstr "备注" -#: sphinx/builders/__init__.py:549 -#, python-format -msgid "docnames to write: %s" -msgstr "待写入文档名称:%s" +#: locale/__init__.py:236 +msgid "See also" +msgstr "参见" -#: sphinx/builders/__init__.py:558 sphinx/builders/singlehtml.py:157 -msgid "preparing documents" -msgstr "正在准备写入文档" +#: locale/__init__.py:237 +msgid "Tip" +msgstr "小技巧" -#: sphinx/builders/__init__.py:561 -msgid "copying assets" -msgstr "正在复制资产文件" +#: locale/__init__.py:238 +msgid "Warning" +msgstr "警告" -#: sphinx/builders/_epub_base.py:215 +#: builders/texinfo.py:41 #, python-format -msgid "duplicated ToC entry found: %s" -msgstr "发现重复的目录条目:%s" +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo 文件保存在 %(outdir)s 目录。" -#: sphinx/builders/_epub_base.py:404 sphinx/builders/html/__init__.py:758 -#: sphinx/builders/latex/__init__.py:432 sphinx/builders/texinfo.py:187 -msgid "copying images... " -msgstr "正在复制图像文件……" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\n在该目录下运行“make”命令以通过 makeinfo 处理这些 Texinfo 文件\n(在此处用“make info”即可自动执行上述操作)。" -#: sphinx/builders/_epub_base.py:411 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "无法读取图像文件 %r:改为直接复制" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "未找到“texinfo_documents”配置项,不会写入文档" -#: sphinx/builders/_epub_base.py:417 sphinx/builders/html/__init__.py:766 -#: sphinx/builders/latex/__init__.py:440 sphinx/builders/texinfo.py:197 +#: builders/texinfo.py:85 #, python-format -msgid "cannot copy image file %r: %s" -msgstr "无法复制图像文件 %r:%s" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "配置项“texinfo_documents”引用了文档 %s 不存在" -#: sphinx/builders/_epub_base.py:434 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "cannot write image file %r: %s" -msgstr "无法写入图像文件 %r:%s" +msgid "processing %s" +msgstr "正在处理 %s" -#: sphinx/builders/_epub_base.py:444 -msgid "Pillow not found - copying image files" -msgstr "未找到 Pillow - 正在复制图像文件" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "正在写入" -#: sphinx/builders/_epub_base.py:470 -msgid "writing mimetype file..." -msgstr "正在写入 mimetype 文件……" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "正在解析引用……" -#: sphinx/builders/_epub_base.py:475 -msgid "writing META-INF/container.xml file..." -msgstr "正在写入 META-INF/container.xml 文件……" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (在 " -#: sphinx/builders/_epub_base.py:508 -msgid "writing content.opf file..." -msgstr "正在写入 content.opf 文件……" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "正在复制图像文件……" -#: sphinx/builders/_epub_base.py:539 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "%s 的 MIME 类型未知,已忽略" +msgid "cannot copy image file %r: %s" +msgstr "无法复制图像文件 %r:%s" -#: sphinx/builders/_epub_base.py:686 -msgid "writing toc.ncx file..." -msgstr "正在写入 toc.ncx 文件……" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "正在复制 Texinfo 支持文件" -#: sphinx/builders/_epub_base.py:711 +#: builders/texinfo.py:218 #, python-format -msgid "writing %s file..." -msgstr "正在写入 %s 文件……" +msgid "error writing file Makefile: %s" +msgstr "写入 Makefile 文件时出错:%s" -#: sphinx/builders/changes.py:32 +#: builders/manpage.py:37 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "概览文件保存在 %(outdir)s 目录 。" +msgid "The manual pages are in %(outdir)s." +msgstr "手册页保存在 %(outdir)s 目录。" + +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "未找到“man_pages”配置项,不会写入手册页" -#: sphinx/builders/changes.py:59 +#: builders/manpage.py:64 #, python-format -msgid "no changes in version %s." -msgstr "%s 版本中没有做出修改。" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "配置项“man_pages”引用的文档 %s 不存在" -#: sphinx/builders/changes.py:61 -msgid "writing summary file..." -msgstr "正在写入摘要文件……" +#: builders/singlehtml.py:35 +#, python-format +msgid "The HTML page is in %(outdir)s." +msgstr "HTML 页面保存在 %(outdir)s 目录。" -#: sphinx/builders/changes.py:76 -msgid "Builtins" -msgstr "内置模块" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "正在装配成单页面文档" -#: sphinx/builders/changes.py:78 -msgid "Module level" -msgstr "模块级" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "正在写入附加文件" -#: sphinx/builders/changes.py:123 -msgid "copying source files..." -msgstr "正在复制源文件……" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "伪构建器不生成文件。" -#: sphinx/builders/changes.py:130 +#: builders/gettext.py:243 #, python-format -msgid "could not read %r for changelog creation" -msgstr "无法读取用于创建变更记录的 %r" +msgid "The message catalogs are in %(outdir)s." +msgstr "消息目录保存在 %(outdir)s 目录。" -#: sphinx/builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "伪构建器不生成文件。" +#: builders/__init__.py:400 builders/gettext.py:264 +#, python-format +msgid "building [%s]: " +msgstr "正在构建 [%s]: " + +#: builders/gettext.py:265 +#, python-format +msgid "targets for %d template files" +msgstr "%d 个模板文件的目标文件" + +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "正在读取模板……" + +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "正在写入消息目录... " + +#: builders/linkcheck.py:87 +#, python-format +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "请在上述输出或 %(outdir)s/output.txt 中查找错误" + +#: builders/linkcheck.py:159 +#, python-format +msgid "broken link: %s (%s)" +msgstr "损坏的链接:%s(%s)" + +#: builders/linkcheck.py:561 +#, python-format +msgid "Anchor '%s' not found" +msgstr "未找到锚点“%s”" + +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "linkcheck_allowed_redirects. 需要一个 dict" + +#: builders/linkcheck.py:799 +#, python-format +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "无法编译 linkcheck_allowed_redirects 配置项中的正则表达式:%r %s" -#: sphinx/builders/epub3.py:81 +#: builders/epub3.py:83 #, python-format msgid "The ePub file is in %(outdir)s." msgstr "ePub 文件保存在 %(outdir)s。" -#: sphinx/builders/epub3.py:185 +#: builders/epub3.py:188 msgid "writing nav.xhtml file..." msgstr "正在写入 nav.xhtml 文件……" -#: sphinx/builders/epub3.py:211 +#: builders/epub3.py:224 msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_language”(或“language”)的值不能为空" -#: sphinx/builders/epub3.py:215 +#: builders/epub3.py:230 msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_uid”的值应为 XML 名称格式的字符串" -#: sphinx/builders/epub3.py:218 +#: builders/epub3.py:235 msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_title”(或“html_title”)的值不能为空" -#: sphinx/builders/epub3.py:222 +#: builders/epub3.py:241 msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_author”的值不能为空" -#: sphinx/builders/epub3.py:225 +#: builders/epub3.py:245 msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_contributor”的值不能为空" -#: sphinx/builders/epub3.py:228 +#: builders/epub3.py:250 msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_description”的值不能为空" -#: sphinx/builders/epub3.py:231 +#: builders/epub3.py:254 msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_publisher”的值不能为空" -#: sphinx/builders/epub3.py:234 +#: builders/epub3.py:259 msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_copyright”(或“copyright”)不能为空" -#: sphinx/builders/epub3.py:238 +#: builders/epub3.py:265 msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“epub_identifier”的值不能为空" -#: sphinx/builders/epub3.py:241 +#: builders/epub3.py:268 msgid "conf value \"version\" should not be empty for EPUB3" msgstr "对于 EPUB3 格式,配置项“version”的值不能为空" -#: sphinx/builders/epub3.py:255 sphinx/builders/html/__init__.py:1187 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format msgid "invalid css_file: %r, ignored" msgstr "无效的 css_file:%r,已忽略" -#: sphinx/builders/gettext.py:222 +#: builders/xml.py:29 #, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "消息目录保存在 %(outdir)s 目录。" +msgid "The XML files are in %(outdir)s." +msgstr "XML 文件保存在 %(outdir)s 目录。" -#: sphinx/builders/gettext.py:244 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "targets for %d template files" -msgstr "%d 个模板文件的目标文件" - -#: sphinx/builders/gettext.py:248 -msgid "reading templates... " -msgstr "正在读取模板……" - -#: sphinx/builders/gettext.py:282 -msgid "writing message catalogs... " -msgstr "正在写入消息目录... " +msgid "error writing file %s: %s" +msgstr "写入文件 %s 时发生错误:%s" -#: sphinx/builders/linkcheck.py:59 +#: builders/xml.py:103 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "请在上述输出或 %(outdir)s/output.txt 中查找错误" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "伪 XML 文件保存在 %(outdir)s。" -#: sphinx/builders/linkcheck.py:137 +#: builders/_epub_base.py:223 #, python-format -msgid "broken link: %s (%s)" -msgstr "损坏的链接:%s(%s)" +msgid "duplicated ToC entry found: %s" +msgstr "发现重复的目录条目:%s" -#: sphinx/builders/linkcheck.py:660 +#: builders/_epub_base.py:436 #, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "无法编译 linkcheck_allowed_redirects 配置项中的正则表达式:%r %s" +msgid "cannot read image file %r: copying it instead" +msgstr "无法读取图像文件 %r:改为直接复制" -#: sphinx/builders/manpage.py:37 +#: builders/_epub_base.py:467 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "手册页保存在 %(outdir)s 目录。" +msgid "cannot write image file %r: %s" +msgstr "无法写入图像文件 %r:%s" -#: sphinx/builders/manpage.py:44 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "未找到“man_pages”配置项,不会写入手册页" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "未找到 Pillow - 正在复制图像文件" -#: sphinx/builders/latex/__init__.py:314 sphinx/builders/manpage.py:53 -#: sphinx/builders/singlehtml.py:165 sphinx/builders/texinfo.py:112 -msgid "writing" -msgstr "正在写入" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "正在写入 mimetype 文件……" -#: sphinx/builders/manpage.py:68 -#, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "配置项“man_pages”引用的文档 %s 不存在" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "正在写入 META-INF/container.xml 文件……" -#: sphinx/builders/singlehtml.py:34 +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "正在写入 content.opf 文件……" + +#: builders/_epub_base.py:594 #, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML 页面保存在 %(outdir)s 目录。" +msgid "unknown mimetype for %s, ignoring" +msgstr "%s 的 MIME 类型未知,已忽略" -#: sphinx/builders/singlehtml.py:160 -msgid "assembling single document" -msgstr "正在装配成单页面文档" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "节点具有无效的级别" -#: sphinx/builders/singlehtml.py:178 -msgid "writing additional files" -msgstr "正在写入附加文件" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "正在写入 toc.ncx 文件……" -#: sphinx/builders/texinfo.py:48 +#: builders/_epub_base.py:802 #, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfo 文件保存在 %(outdir)s 目录。" - -#: sphinx/builders/texinfo.py:50 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\n在该目录下运行“make”命令以通过 makeinfo 处理这些 Texinfo 文件\n(在此处用“make info”即可自动执行上述操作)。" - -#: sphinx/builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "未找到“texinfo_documents”配置项,不会写入文档" +msgid "writing %s file..." +msgstr "正在写入 %s 文件……" -#: sphinx/builders/texinfo.py:85 +#: builders/text.py:27 #, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "配置项“texinfo_documents”引用了文档 %s 不存在" +msgid "The text files are in %(outdir)s." +msgstr "文本文件保存在 %(outdir)s 目录。" -#: sphinx/builders/latex/__init__.py:296 sphinx/builders/texinfo.py:108 +#: builders/__init__.py:229 #, python-format -msgid "processing %s" -msgstr "正在处理 %s" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "没有找到适合 %s 构建器的图像:%s(%s)" -#: sphinx/builders/latex/__init__.py:369 sphinx/builders/texinfo.py:161 -msgid "resolving references..." -msgstr "正在解析引用……" +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "没有找到适合 %s 构建器的图像:%s" -#: sphinx/builders/latex/__init__.py:380 sphinx/builders/texinfo.py:171 -msgid " (in " -msgstr " (在 " +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "正在构建 [mo]: " -#: sphinx/builders/texinfo.py:202 -msgid "copying Texinfo support files" -msgstr "正在复制 Texinfo 支持文件" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "正在写入输出……" -#: sphinx/builders/texinfo.py:206 +#: builders/__init__.py:280 #, python-format -msgid "error writing file Makefile: %s" -msgstr "写入 Makefile 文件时出错:%s" +msgid "all of %d po files" +msgstr "所有的 %d po 文件" -#: sphinx/builders/text.py:30 +#: builders/__init__.py:302 #, python-format -msgid "The text files are in %(outdir)s." -msgstr "文本文件保存在 %(outdir)s 目录。" +msgid "targets for %d po files that are specified" +msgstr "指定了 %d 个 po 文件的目标文件" -#: sphinx/builders/html/__init__.py:1138 sphinx/builders/text.py:77 -#: sphinx/builders/xml.py:96 +#: builders/__init__.py:314 #, python-format -msgid "error writing file %s: %s" -msgstr "写入文件 %s 时发生错误:%s" +msgid "targets for %d po files that are out of date" +msgstr "%d 个 po 文件的目标文件已过期" -#: sphinx/builders/xml.py:36 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XML 文件保存在 %(outdir)s 目录。" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "所有源文件" -#: sphinx/builders/xml.py:109 +#: builders/__init__.py:335 #, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "伪 XML 文件保存在 %(outdir)s。" +msgid "file %r given on command line does not exist, " +msgstr "命令行给定的文件 %r 不存在" -#: sphinx/builders/html/__init__.py:130 +#: builders/__init__.py:342 #, python-format -msgid "build info file is broken: %r" -msgstr "构建信息文件损坏:%r" +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "源文件目录中不存在命令行给定的文件 %r,将被忽略" -#: sphinx/builders/html/__init__.py:168 +#: builders/__init__.py:353 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTML 页面保存在 %(outdir)s 目录。" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "命令行给定的文件 %r 不是有效文档,将被忽略" -#: sphinx/builders/html/__init__.py:394 +#: builders/__init__.py:366 #, python-format -msgid "Failed to read build info file: %r" -msgstr "读取构建信息文件失败:%r" +msgid "%d source files given on command line" +msgstr "命令行给定了 %d 个源文件" -#: sphinx/builders/html/__init__.py:487 sphinx/builders/latex/__init__.py:189 -#: sphinx/transforms/__init__.py:119 sphinx/writers/manpage.py:101 -#: sphinx/writers/texinfo.py:227 +#: builders/__init__.py:382 #, python-format -msgid "%b %d, %Y" -msgstr "%Y 年 %m 月 %d 日" - -#: sphinx/builders/html/__init__.py:506 sphinx/themes/basic/defindex.html:30 -msgid "General Index" -msgstr "总索引" - -#: sphinx/builders/html/__init__.py:506 -msgid "index" -msgstr "索引" - -#: sphinx/builders/html/__init__.py:579 -msgid "next" -msgstr "下一页" - -#: sphinx/builders/html/__init__.py:588 -msgid "previous" -msgstr "上一页" - -#: sphinx/builders/html/__init__.py:684 -msgid "generating indices" -msgstr "正在生成索引" - -#: sphinx/builders/html/__init__.py:699 -msgid "writing additional pages" -msgstr "正在写入附加页面" +msgid "targets for %d source files that are out of date" +msgstr "%d 个源文件的目标文件已过期" -#: sphinx/builders/html/__init__.py:776 -msgid "copying downloadable files... " -msgstr "正在复制可下载文件……" +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "正在查找当前已过期的文件……" -#: sphinx/builders/html/__init__.py:784 +#: builders/__init__.py:415 #, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "无法复制可下载文件 %r:%s" +msgid "%d found" +msgstr "找到 %d 个已过期文件" -#: sphinx/builders/html/__init__.py:817 sphinx/builders/html/__init__.py:829 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "无法复制 html_static_file 中的文件:%s: %r" +#: builders/__init__.py:417 +msgid "none found" +msgstr "没有找到已过期文件" -#: sphinx/builders/html/__init__.py:850 -msgid "copying static files" -msgstr "正在复制静态文件" +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "正在 Pickle 序列化环境" -#: sphinx/builders/html/__init__.py:866 -#, python-format -msgid "cannot copy static file %r" -msgstr "无法复制静态文件 %r" +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "正在校验一致性" -#: sphinx/builders/html/__init__.py:871 -msgid "copying extra files" -msgstr "正在复制额外文件" +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "没有过期的目标文件。" -#: sphinx/builders/html/__init__.py:877 -#, python-format -msgid "cannot copy extra file %r" -msgstr "无法复制额外文件 %r" +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "正在更新环境:" -#: sphinx/builders/html/__init__.py:884 +#: builders/__init__.py:499 #, python-format -msgid "Failed to write build info file: %r" -msgstr "写入构建信息文件失败:%r" +msgid "%s added, %s changed, %s removed" +msgstr "有 %s 个新增文件,有 %s 个文件已被修改,有 %s 个文件已被移除" -#: sphinx/builders/html/__init__.py:933 +#: builders/__init__.py:536 +#, python-format msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "无法加载搜索索引,不会构建所有文档:索引将不完整。" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "Sphinx 无法加载主文档(%s),原因是其与内置的排除模式 %r 相匹配。请把主文档移动到其他位置。" -#: sphinx/builders/html/__init__.py:978 +#: builders/__init__.py:545 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "页面 %s 同时符合两条 html_sidebars 规则:%r 和 %r" +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "Sphinx 无法加载主文档(%s),原因是其与 conf.py 指定的排除模式 %r 相匹配。请从 conf.py 中移除该排除模式。" -#: sphinx/builders/html/__init__.py:1121 +#: builders/__init__.py:556 #, python-format msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "在渲染页面 %s 时发生了 Unicode 错误。请确保所有包含非 ASCII 字符的配置项均为 Unicode 字符串。" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "Sphinx 无法加载主文档(%s),原因是其没有与自定义的 include_patterns = %r 匹配。请确保 include_patterns 中的规则能匹配到主文档。" -#: sphinx/builders/html/__init__.py:1126 +#: builders/__init__.py:563 #, python-format msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "渲染页面 %s 时发生了错误。\n原因:%r" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "Sphinx 无法加载主文档(%s)。主文档必须位于源文件目录及其子目录下。" -#: sphinx/builders/html/__init__.py:1154 -msgid "dumping object inventory" -msgstr "正在导出对象清单" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "正在读取源文件……" -#: sphinx/builders/html/__init__.py:1162 +#: builders/__init__.py:725 #, python-format -msgid "dumping search index in %s" -msgstr "正在导出 %s 的搜索索引" +msgid "docnames to write: %s" +msgstr "待写入文档名称:%s" -#: sphinx/builders/html/__init__.py:1210 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "无效的 js_file:%r,已忽略" +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "没有可写的文档名称!" -#: sphinx/builders/html/__init__.py:1238 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "注册了多个 math_renderer,但没有选择 math_renderer。" +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "正在准备写入文档" -#: sphinx/builders/html/__init__.py:1241 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "给定的 math_renderer %r 不存在。" +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "正在复制资产文件" -#: sphinx/builders/html/__init__.py:1249 +#: builders/changes.py:29 #, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path 入口 %r 不存在" +msgid "The overview file is in %(outdir)s." +msgstr "概览文件保存在 %(outdir)s 目录 。" -#: sphinx/builders/html/__init__.py:1253 +#: builders/changes.py:65 #, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path 入口 %r 被置于输出目录内" +msgid "no changes in version %s." +msgstr "%s 版本中没有做出修改。" -#: sphinx/builders/html/__init__.py:1262 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path 入口 %r 不存在" +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "正在写入摘要文件……" -#: sphinx/builders/html/__init__.py:1266 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path 入口 %r 置于输出目录内" +#: builders/changes.py:79 +msgid "Builtins" +msgstr "内置模块" -#: sphinx/builders/html/__init__.py:1275 sphinx/builders/latex/__init__.py:444 -#, python-format -msgid "logo file %r does not exist" -msgstr "logo 文件 %r 不存在" +#: builders/changes.py:81 +msgid "Module level" +msgstr "模块级" -#: sphinx/builders/html/__init__.py:1284 +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "正在复制源文件……" + +#: builders/changes.py:146 #, python-format -msgid "favicon file %r does not exist" -msgstr "favicon 文件 %r 不存在" +msgid "could not read %r for changelog creation" +msgstr "无法读取用于创建变更记录的 %r" -#: sphinx/builders/html/__init__.py:1291 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "Sphinx 不再支持 HTML 4。(在配置项中检测到了“html4_writer=True”)" +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "无效的正则表达式 %r 出现在 %s" -#: sphinx/builders/html/__init__.py:1306 +#: ext/coverage.py:140 ext/coverage.py:301 #, python-format -msgid "%s %s documentation" -msgstr "%s %s 文档" +msgid "module %s could not be imported: %s" +msgstr "无法导入模块 %s:%s" -#: sphinx/builders/latex/__init__.py:115 +#: ext/coverage.py:148 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTex 文件保存在 %(outdir)s 目录。" +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "下列模块有对应文档但未在 coverage_modules 中列出:%s" -#: sphinx/builders/latex/__init__.py:117 +#: ext/coverage.py:158 +#, python-format msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\n在该目录下运行“make”以通过 (pdf)latex 处理这些 LaTex 文件\n(在此处用“make latexpdf”即可自动执行上述操作)。" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "以下模块在 coverage_modules 中有指定,但未被记录:%s" -#: sphinx/builders/latex/__init__.py:152 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "未找到“latex_documents”配置项,不会写入文档" +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "源文件中的覆盖率测试已完成,请查看 %(outdir)s{sep}python.txt 中的结果。" -#: sphinx/builders/latex/__init__.py:160 +#: ext/coverage.py:187 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "配置项“latex_documents”引用的文档 %s 不存在" +msgid "invalid regex %r in coverage_c_regexes" +msgstr "coverage_c_regexes 中有无效的正则表达式 %r" -#: sphinx/builders/latex/__init__.py:196 sphinx/domains/std/__init__.py:559 -#: sphinx/domains/std/__init__.py:571 sphinx/templates/latex/latex.tex_t:106 -#: sphinx/themes/basic/genindex-single.html:30 -#: sphinx/themes/basic/genindex-single.html:55 -#: sphinx/themes/basic/genindex-split.html:11 -#: sphinx/themes/basic/genindex-split.html:14 -#: sphinx/themes/basic/genindex.html:11 sphinx/themes/basic/genindex.html:34 -#: sphinx/themes/basic/genindex.html:67 sphinx/themes/basic/layout.html:138 -#: sphinx/writers/texinfo.py:497 -msgid "Index" -msgstr "索引" +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "缺少文档的 C API:%s [%s] 在 %s 文件中" -#: sphinx/builders/latex/__init__.py:199 sphinx/templates/latex/latex.tex_t:91 -msgid "Release" -msgstr "发行版本" +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "缺少文档的 Python 函数: %s :: %s" -#: sphinx/builders/latex/__init__.py:213 sphinx/writers/latex.py:370 +#: ext/coverage.py:473 #, python-format -msgid "no Babel option known for language %r" -msgstr "没有语种 %r 的 Babel 选项" +msgid "undocumented python class: %s :: %s" +msgstr "缺少文档的 Python 类:%s :: %s" -#: sphinx/builders/latex/__init__.py:394 -msgid "copying TeX support files" -msgstr "正在复制 TeX 支持文件" +#: ext/coverage.py:492 +#, python-format +msgid "undocumented python method: %s :: %s :: %s" +msgstr "缺少文档的 Python 方法:%s :: %s :: %s" -#: sphinx/builders/latex/__init__.py:410 -msgid "copying TeX support files..." -msgstr "正在复制 TeX 支持文件……" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "可以用 extlink 替换硬编码链接 %r(请尝试改用 %r)" -#: sphinx/builders/latex/__init__.py:423 -msgid "copying additional files" -msgstr "正在复制附加文件" +#: ext/todo.py:61 +msgid "Todo" +msgstr "待处理" -#: sphinx/builders/latex/__init__.py:466 +#: ext/todo.py:94 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "未知配置项:latex_elements[%r],已忽略。" +msgid "TODO entry found: %s" +msgstr "发现待处理条目:%s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" -#: sphinx/builders/latex/__init__.py:474 +#: ext/todo.py:154 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "未知主题选项:latex_theme_options[%r],已忽略。" +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> 见 %s,第 %d 行。)" -#: sphinx/builders/latex/theming.py:87 +#: ext/todo.py:166 +msgid "original entry" +msgstr "原始条目" + +#: ext/imgconverter.py:44 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r 中缺少“theme”配置项" +msgid "" +"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" +"\n" +"Traceback: %s" +msgstr "无法运行图像转换命令 %r。“sphinx.ext.imgconverter”默认依赖于 ImageMagick。请确保已安装了它,或者可以自定义“image_converter”选项,设置一个其他的转换命令。\n\n回溯信息:%s" -#: sphinx/builders/latex/theming.py:90 +#: ext/imgconverter.py:56 ext/imgconverter.py:90 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r 中缺少“%s”配置项" +msgid "" +"convert exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "格式转换发生错误并退出:\n[stderr]\n%r\n[stdout]\n%r" -#: sphinx/builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "无法获取文档名称!" +#: ext/imgconverter.py:83 +#, python-format +msgid "convert command %r cannot be run, check the image_converter setting" +msgstr "无法运行格式转换命令 %r,请检查 image_converter 的设置" -#: sphinx/builders/latex/transforms.py:121 -msgid "Failed to get a docname for source {source!r}!" -msgstr "无法获取文档源码 {source!r} 的文档名称!" +#: ext/graphviz.py:138 +msgid "Graphviz directive cannot have both content and a filename argument" +msgstr "不能同时指定 Graphviz 指令的内容和文件名参数" -#: sphinx/builders/latex/transforms.py:482 +#: ext/graphviz.py:153 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "给定的引用节点 %r 没有对应的脚注" +msgid "External Graphviz file %r not found or reading it failed" +msgstr "外部 Graphviz 文件 %r 不存在或读取失败" -#: sphinx/cmd/build.py:46 -msgid "Exception occurred while building, starting debugger:" -msgstr "构建时抛出异常,正在启动调试器:" +#: ext/graphviz.py:164 +msgid "Ignoring \"graphviz\" directive without content." +msgstr "已忽略无内容的“graphviz”指令。" -#: sphinx/cmd/build.py:61 -msgid "Interrupted!" -msgstr "已中断!" +#: ext/graphviz.py:287 +#, python-format +msgid "graphviz_dot executable path must be set! %r" +msgstr "必须设置 graphviz_dot 可执行程序的路径!%r" -#: sphinx/cmd/build.py:63 -msgid "reST markup error:" -msgstr "reST 标记错误:" +#: ext/graphviz.py:328 +#, python-format +msgid "" +"dot command %r cannot be run (needed for graphviz output), check the " +"graphviz_dot setting" +msgstr "无法运行 dot 命令 %r(为输出 graphviz 所必需),请检查 graphviz_dot 的设置" -#: sphinx/cmd/build.py:69 -msgid "Encoding error:" -msgstr "编码错误:" +#: ext/graphviz.py:339 +#, python-format +msgid "" +"dot exited with error:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot 发生错误并退出:\n[stderr]\n%r\n[stdout]\n%r" -#: sphinx/cmd/build.py:72 sphinx/cmd/build.py:87 +#: ext/graphviz.py:344 #, python-format msgid "" -"The full traceback has been saved in %s, if you want to report the issue to " -"the developers." -msgstr "如果你想向开发者报告问题,可以查阅已经保存在 %s 的完整 Traceback 信息 。" +"dot did not produce an output file:\n" +"[stderr]\n" +"%r\n" +"[stdout]\n" +"%r" +msgstr "dot 未生成输出文件:\n[stderr]\n%r\n[stdout]\n%r" -#: sphinx/cmd/build.py:76 -msgid "Recursion error:" -msgstr "递归错误:" +#: ext/graphviz.py:367 +#, python-format +msgid "graphviz_output_format must be either 'png' or 'svg', but is %r" +msgstr "graphviz_output_format 必须是 'png' 或 'svg',但为 %r" -#: sphinx/cmd/build.py:79 -msgid "" -"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 中默认递归层数上限为 1000,可以像这样在 conf.py 中增大这一上限,请谨慎修改:" +#: ext/graphviz.py:373 ext/graphviz.py:436 ext/graphviz.py:480 +#, python-format +msgid "dot code %r: %s" +msgstr "dot 代码 %r: %s" -#: sphinx/cmd/build.py:84 -msgid "Exception occurred:" -msgstr "抛出异常:" +#: ext/graphviz.py:493 ext/graphviz.py:501 +#, python-format +msgid "[graph: %s]" +msgstr "[图表:%s]" -#: sphinx/cmd/build.py:90 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "即便抛出的错误时是用户导致的,也请向我们投递报告,以便将来可以提示更友好、更详细的错误信息。" +#: ext/graphviz.py:495 ext/graphviz.py:503 +msgid "[graph]" +msgstr "[图表]" -#: sphinx/cmd/build.py:93 +#: ext/imgmath.py:148 +#, python-format msgid "" -"A bug report can be filed in the tracker at . Thanks!" -msgstr "Bug 报告可以在 Bug 追踪系统 处投递。谢谢!" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "无法运行 LaTeX 命令 %r (显示数学公式所必需),请检查 imgmath_latex 的设置" -#: sphinx/cmd/build.py:109 -msgid "job number should be a positive number" -msgstr "并发任务数应为正值" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "无法运行 %s 命令 %r (显示数学公式所必需),请检查 imgmath_%s 的设置" -#: sphinx/cmd/build.py:117 sphinx/cmd/quickstart.py:474 -#: sphinx/ext/apidoc.py:317 sphinx/ext/autosummary/generate.py:689 -msgid "For more information, visit ." -msgstr "想要了解更多信息,请访问 。" +#: ext/imgmath.py:326 +#, python-format +msgid "display latex %r: %s" +msgstr "显示 LaTeX %r:%s" -#: sphinx/cmd/build.py:118 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\n从源文件生成文档。\n\nsphinx-build 从 SOURCEDIR 中的文件生成文档,并保存在 OUTPUTDIR。\n它从 SOURCEDIR 的“conf.py”中读取配置。“sphinx-quickstart”工具可以生\n成包括“conf.py”在内的模板文件。\n\nsphinx-build 可以生成多种格式的文档。在命令行中指定构建器名称即可\n选择文档格式,默认是 HTML。构建器也可以执行文档处理相关的其他\n任务。\n\n默认只会重新构建过期内容。如果指定了文件名,那么只会产生这些文件\n的输出。\n" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "内联 LaTeX %r:%s" -#: sphinx/cmd/build.py:139 -msgid "path to documentation source files" -msgstr "文档源文件的路径" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "链接到此公式" -#: sphinx/cmd/build.py:141 -msgid "path to output directory" -msgstr "输出目录的路径" +#: ext/doctest.py:118 +#, python-format +msgid "missing '+' or '-' in '%s' option." +msgstr "“%s”选项中缺少“+”或“-”。" -#: sphinx/cmd/build.py:143 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" +#: ext/doctest.py:124 +#, python-format +msgid "'%s' is not a valid option." +msgstr "无效的选项“%s”。" -#: sphinx/cmd/build.py:146 -msgid "general options" -msgstr "通用选项" +#: ext/doctest.py:139 +#, python-format +msgid "'%s' is not a valid pyversion option" +msgstr "无效的 pyversion 选项“%s”" -#: sphinx/cmd/build.py:149 -msgid "builder to use (default: 'html')" -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "无效的 TestCode 类型" -#: sphinx/cmd/build.py:152 +#: ext/doctest.py:297 +#, python-format msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "已完成源文件的文档测试,结果保存在 %(outdir)s/output.txt 中,请查阅。" -#: sphinx/cmd/build.py:155 -msgid "write all files (default: only write new and changed files)" -msgstr "写入所有文件(默认:只写入新文件和修改过的文件)" +#: ext/doctest.py:451 +#, python-format +msgid "no code/output in %s block at %s:%s" +msgstr "块 %s 没有代码或没有输出,该块出现在 %s:%s" -#: sphinx/cmd/build.py:158 -msgid "don't use a saved environment, always read all files" -msgstr "不使用已保存的环境,始终读取全部文件" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" +msgstr "已忽略无效的文档代码:%r" -#: sphinx/cmd/build.py:161 -msgid "path options" -msgstr "" +#: ext/autosectionlabel.py:52 +#, python-format +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "为“%s”一节增加标签“%s”" + +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 +#, python-format +msgid "duplicate label %s, other instance in %s" +msgstr "重复的标签 %s,另一标签出现在 %s" + +#: ext/duration.py:47 +#, python-format +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "读取时长 %.3f 超过了时长限制 %.3f 秒" -#: sphinx/cmd/build.py:163 +#: ext/duration.py:117 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" +"====================== total reading duration ==========================" +msgstr "====================== 总读取时长 ==========================" -#: sphinx/cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" +#: ext/duration.py:124 +#, python-format +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "读取 %d 文件%s 的总时长:%d 分 %.3f 秒" -#: sphinx/cmd/build.py:171 -msgid "use no configuration file, only use settings from -D options" -msgstr "" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== 最长读取耗时 =======================" -#: sphinx/cmd/build.py:174 -msgid "override a setting in configuration file" -msgstr "覆盖配置文件中的配置项" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" +msgstr "%.3f 秒 %s" -#: sphinx/cmd/build.py:177 +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[源代码]" + +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "正在高亮模块代码……" + +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[文档]" + +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "模块代码" + +#: ext/viewcode.py:359 +#, python-format +msgid "

Source code for %s

" +msgstr "

%s 源代码

" + +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "概览:模块代码" + +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

代码可用的所有模块

" + +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" +msgstr "重复的引文 %s,另一引文出现在 %s" + +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." +msgstr "引文 [%s] 没有被引用过。" + +#: domains/math.py:73 +#, python-format +msgid "duplicate label of equation %s, other instance in %s" +msgstr "重复的公式标签 %s,另一公式出现在 %s" + +#: domains/math.py:130 writers/latex.py:2500 +#, python-format +msgid "Invalid math_eqref_format: %r" +msgstr "无效的 math_eqref_format:%r" + +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" +msgstr "%s() (内置函数)" + +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" +msgstr "%s() (%s 方法)" + +#: domains/javascript.py:186 +#, python-format +msgid "%s() (class)" +msgstr "%s()(类)" + +#: domains/javascript.py:188 +#, python-format +msgid "%s (global variable or constant)" +msgstr "%s(全局变量或常量)" + +#: domains/javascript.py:190 domains/python/__init__.py:370 +#, python-format +msgid "%s (%s attribute)" +msgstr "%s(%s 属性)" + +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "参数" + +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "抛出" + +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "返回" + +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "返回类型" + +#: domains/javascript.py:374 +#, python-format +msgid "%s (module)" +msgstr "%s(模块)" + +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "函数" + +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "方法" + +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "类" + +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "数据" + +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "属性" + +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "模块" + +#: domains/javascript.py:458 +#, python-format +msgid "duplicate %s description of %s, other %s in %s" +msgstr "重复的 %s描述 %s,其他的 %s 描述出现在 %s" + +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" +msgstr "%s(指令)" + +#: domains/rst.py:191 domains/rst.py:202 +#, python-format +msgid ":%s: (directive option)" +msgstr ":%s:(指令选项)" + +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" +msgstr "%s(角色)" + +#: domains/rst.py:234 +msgid "directive" +msgstr "指令" + +#: domains/rst.py:235 +msgid "directive-option" +msgstr "指令-选项" + +#: domains/rst.py:236 +msgid "role" +msgstr "角色" + +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" +msgstr "重复的 %s %s 描述,另一描述出现在 %s" + +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "在 %s 版本加入" + +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "在 %s 版本发生变更" + +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "自 %s 版本弃用" + +#: domains/changeset.py:35 +#, python-format +msgid "Removed in version %s" +msgstr "在版本 %s 移除" + +#: domains/__init__.py:322 +#, python-format +msgid "%s %s" +msgstr "%s %s" + +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "并发任务数应为正值" + +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "想要了解更多信息,请访问 。" + +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\n从源文件生成文档。\n\nsphinx-build 从 SOURCEDIR 中的文件生成文档,并保存在 OUTPUTDIR。\n它从 SOURCEDIR 的“conf.py”中读取配置。“sphinx-quickstart”工具可以生\n成包括“conf.py”在内的模板文件。\n\nsphinx-build 可以生成多种格式的文档。在命令行中指定构建器名称即可\n选择文档格式,默认是 HTML。构建器也可以执行文档处理相关的其他\n任务。\n\n默认只会重新构建过期内容。如果指定了文件名,那么只会产生这些文件\n的输出。\n" + +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "文档源文件的路径" + +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "输出目录的路径" + +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "(可选)要重新构建的文件列表。如果指定了 --write-all 参数则忽略此项。" + +#: cmd/build.py:114 +msgid "general options" +msgstr "通用选项" + +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "要使用的构建器(默认:“html”)" + +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "在可能的情况下以 N 个进程并行运行。值为“auto”时为 CPU 核心数量。" + +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "写入所有文件(默认:只写入新文件和修改过的文件)" + +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "不使用已保存的环境,始终读取全部文件" + +#: cmd/build.py:150 +msgid "path options" +msgstr "路径选项" + +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "文档树和环境文件的目录(默认:OUTPUT_DIR/.doctrees)" + +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "配置文件(conf.py)的目录(默认:SOURCE_DIR)" + +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "不使用配置文件,仅使用 -D 选项指定的配置" + +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "覆盖配置文件中的配置项" + +#: cmd/build.py:193 msgid "pass a value into HTML templates" msgstr "向 HTML 模板传值" -#: sphinx/cmd/build.py:180 +#: cmd/build.py:202 msgid "define tag: include \"only\" blocks with TAG" msgstr "定义标签,把涉及标签 TAG 的“only”块纳入到构建中" -#: sphinx/cmd/build.py:182 -msgid "nit-picky mode: warn about all missing references" -msgstr "" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "挑刺模式:在引用了不存在的内容时发出警告" -#: sphinx/cmd/build.py:184 +#: cmd/build.py:212 msgid "console output options" msgstr "控制台输出选项" -#: sphinx/cmd/build.py:187 +#: cmd/build.py:219 msgid "increase verbosity (can be repeated)" msgstr "输出更详细的日志(甚至可能重复)" -#: sphinx/cmd/build.py:189 sphinx/ext/apidoc.py:340 +#: cmd/build.py:226 ext/apidoc/_cli.py:66 msgid "no output on stdout, just warnings on stderr" msgstr "不输出到 stdout,只在 stderr 上输出警告" -#: sphinx/cmd/build.py:191 +#: cmd/build.py:233 msgid "no output at all, not even warnings" msgstr "无任何输出,甚至不会输出警告" -#: sphinx/cmd/build.py:194 +#: cmd/build.py:241 msgid "do emit colored output (default: auto-detect)" msgstr "着色输出(默认:自动检测)" -#: sphinx/cmd/build.py:197 +#: cmd/build.py:249 msgid "do not emit colored output (default: auto-detect)" msgstr "不着色输出(默认:自动检测)" -#: sphinx/cmd/build.py:199 +#: cmd/build.py:252 msgid "warning control options" -msgstr "" +msgstr "警告控制选项" -#: sphinx/cmd/build.py:201 +#: cmd/build.py:258 msgid "write warnings (and errors) to given file" msgstr "把警告(以及错误)信息写入给定的文件" -#: sphinx/cmd/build.py:203 +#: cmd/build.py:265 msgid "turn warnings into errors" msgstr "把警告视为错误" -#: sphinx/cmd/build.py:205 -msgid "with --fail-on-warning, keep going when getting warnings" -msgstr "" - -#: sphinx/cmd/build.py:207 +#: cmd/build.py:273 msgid "show full traceback on exception" msgstr "发生异常时显示完整回溯信息" -#: sphinx/cmd/build.py:209 +#: cmd/build.py:276 msgid "run Pdb on exception" msgstr "发生异常时运行 Pdb" -#: sphinx/cmd/build.py:244 +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "在发出警告时抛出异常" + +#: cmd/build.py:325 msgid "cannot combine -a option and filenames" msgstr "-a 选项和文件名不能同时使用" -#: sphinx/cmd/build.py:276 +#: cmd/build.py:357 #, python-format -msgid "cannot open warning file %r: %s" -msgstr "无法打开用于保存警告信息的文件 %r:%s" +msgid "cannot open warning file '%s': %s" +msgstr "无法打开警告文件 '%s': %s" -#: sphinx/cmd/build.py:296 +#: cmd/build.py:376 msgid "-D option argument must be in the form name=value" msgstr "-D 选项的参数必须是 name=value 形式" -#: sphinx/cmd/build.py:303 +#: cmd/build.py:383 msgid "-A option argument must be in the form name=value" msgstr "-A 选项的参数必须是 name=value 形式" -#: sphinx/cmd/quickstart.py:42 +#: cmd/quickstart.py:52 msgid "automatically insert docstrings from modules" msgstr "自动插入模块中的文档字符串" -#: sphinx/cmd/quickstart.py:43 +#: cmd/quickstart.py:53 msgid "automatically test code snippets in doctest blocks" msgstr "自动运行 doctest 块中的测试代码片段" -#: sphinx/cmd/quickstart.py:44 +#: cmd/quickstart.py:54 msgid "link between Sphinx documentation of different projects" msgstr "链接不同项目的 Sphinx 文档" -#: sphinx/cmd/quickstart.py:45 +#: cmd/quickstart.py:55 msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "编写在构建时可以选择显示、隐藏的“todo”条目" -#: sphinx/cmd/quickstart.py:46 +#: cmd/quickstart.py:56 msgid "checks for documentation coverage" msgstr "检查文档覆盖率" -#: sphinx/cmd/quickstart.py:47 +#: cmd/quickstart.py:57 msgid "include math, rendered as PNG or SVG images" msgstr "支持数学公式,渲染成 PNG 或 SVG 图像" -#: sphinx/cmd/quickstart.py:48 +#: cmd/quickstart.py:58 msgid "include math, rendered in the browser by MathJax" msgstr "支持数学公式,用 MathJax 在浏览器中渲染" -#: sphinx/cmd/quickstart.py:49 +#: cmd/quickstart.py:59 msgid "conditional inclusion of content based on config values" msgstr "基于配置值控制构建中包含哪些文档内容" -#: sphinx/cmd/quickstart.py:50 +#: cmd/quickstart.py:60 msgid "include links to the source code of documented Python objects" msgstr "支持链接到文档涉及的 Python 对象源码" -#: sphinx/cmd/quickstart.py:51 +#: cmd/quickstart.py:61 msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "创建 .nojekyll 文件,用于在 GitHub Pages 服务发布文档" -#: sphinx/cmd/quickstart.py:93 +#: cmd/quickstart.py:111 msgid "Please enter a valid path name." msgstr "请输入有效的路径名。" -#: sphinx/cmd/quickstart.py:109 +#: cmd/quickstart.py:127 msgid "Please enter some text." msgstr "请输入文本。" -#: sphinx/cmd/quickstart.py:116 +#: cmd/quickstart.py:134 #, python-format msgid "Please enter one of %s." msgstr "请输入 %s 之一。" -#: sphinx/cmd/quickstart.py:123 +#: cmd/quickstart.py:142 msgid "Please enter either 'y' or 'n'." msgstr "请输入“y”或“n”。" -#: sphinx/cmd/quickstart.py:129 +#: cmd/quickstart.py:148 msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "请输入文件后缀,例如:“.rst”或者“.txt”。" -#: sphinx/cmd/quickstart.py:208 +#: cmd/quickstart.py:230 #, python-format msgid "Welcome to the Sphinx %s quickstart utility." msgstr "欢迎使用 Sphinx %s 快速配置工具。" -#: sphinx/cmd/quickstart.py:210 +#: cmd/quickstart.py:235 msgid "" "Please enter values for the following settings (just press Enter to\n" "accept a default value, if one is given in brackets)." msgstr "请输入接下来各项设定的值(如果方括号中指定了默认值,直接\n按回车即可使用默认值)。" -#: sphinx/cmd/quickstart.py:215 +#: cmd/quickstart.py:242 #, python-format msgid "Selected root path: %s" msgstr "已选择根路径:%s" -#: sphinx/cmd/quickstart.py:218 +#: cmd/quickstart.py:245 msgid "Enter the root path for documentation." msgstr "输入文档的根路径。" -#: sphinx/cmd/quickstart.py:219 +#: cmd/quickstart.py:246 msgid "Root path for the documentation" msgstr "文档的根路径" -#: sphinx/cmd/quickstart.py:224 +#: cmd/quickstart.py:255 msgid "Error: an existing conf.py has been found in the selected root path." msgstr "错误:选择的根路径中已存在 conf.py 文件。" -#: sphinx/cmd/quickstart.py:226 +#: cmd/quickstart.py:260 msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "sphinx-quickstart 不会覆盖已有的 Sphinx 项目。" -#: sphinx/cmd/quickstart.py:228 +#: cmd/quickstart.py:263 msgid "Please enter a new root path (or just Enter to exit)" msgstr "请输入新的根路径(或按回车退出)" -#: sphinx/cmd/quickstart.py:235 +#: cmd/quickstart.py:274 msgid "" "You have two options for placing the build directory for Sphinx output.\n" "Either, you use a directory \"_build\" within the root path, or you separate\n" "\"source\" and \"build\" directories within the root path." msgstr "有两种方式来设置用于放置 Sphinx 输出的构建目录:\n一是在根路径下创建“_build”目录,二是在根路径下创建“source”\n和“build”两个独立的目录。" -#: sphinx/cmd/quickstart.py:238 +#: cmd/quickstart.py:280 msgid "Separate source and build directories (y/n)" msgstr "独立的源文件和构建目录(y/n)" -#: sphinx/cmd/quickstart.py:242 +#: cmd/quickstart.py:287 msgid "" "Inside the root directory, two more directories will be created; \"_templates\"\n" "for custom HTML templates and \"_static\" for custom stylesheets and other static\n" "files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "这个选项将在根目录中创建两个新目录:\n“_templates”用于放置自定义 HTML 模板文件,“_static”用于自定义样\n式表及其他静态文件。您可以输入其他的前缀(比如“.”)代替下划线。" -#: sphinx/cmd/quickstart.py:245 +#: cmd/quickstart.py:292 msgid "Name prefix for templates and static dir" msgstr "模板目录和静态目录的名称前缀" -#: sphinx/cmd/quickstart.py:249 +#: cmd/quickstart.py:298 msgid "" "The project name will occur in several places in the built documentation." msgstr "项目名称将会出现在文档的许多地方。" -#: sphinx/cmd/quickstart.py:250 +#: cmd/quickstart.py:301 msgid "Project name" msgstr "项目名称" -#: sphinx/cmd/quickstart.py:252 +#: cmd/quickstart.py:303 msgid "Author name(s)" msgstr "作者名称" -#: sphinx/cmd/quickstart.py:256 +#: cmd/quickstart.py:309 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" @@ -1578,15 +1939,15 @@ msgid "" "just set both to the same value." msgstr "在 Sphinx 中,会区分“版本”和“发行版本”两个概念。同一版本可以\n有多个发行版本。例如,Python 版本可以是 2.5 或 3.0,而发行版\n本则是 2.5.1 或 3.0a1。如果你不需要这样的双重版本结构,请把这\n两个选项设置为相同值。" -#: sphinx/cmd/quickstart.py:261 +#: cmd/quickstart.py:316 msgid "Project version" msgstr "项目版本" -#: sphinx/cmd/quickstart.py:263 +#: cmd/quickstart.py:318 msgid "Project release" msgstr "项目发行版本" -#: sphinx/cmd/quickstart.py:267 +#: cmd/quickstart.py:324 msgid "" "If the documents are to be written in a language other than English,\n" "you can select a language here by its language code. Sphinx will then\n" @@ -1596,21 +1957,21 @@ msgid "" "https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "如果用英语以外的语言编写文档,\n你可以在此按语言代码选择语种。\nSphinx 会把内置文本翻译成相应语言的版本。\n\n支持的语言代码列表见:\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language。" -#: sphinx/cmd/quickstart.py:275 +#: cmd/quickstart.py:332 msgid "Project language" msgstr "项目语种" -#: sphinx/cmd/quickstart.py:281 +#: cmd/quickstart.py:340 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 "源文件的文件名后缀。一般是“.txt”或“.rst”。只有此后缀的文件才会\n被视为文档的源文件。" -#: sphinx/cmd/quickstart.py:283 +#: cmd/quickstart.py:344 msgid "Source file suffix" msgstr "源文件后缀" -#: sphinx/cmd/quickstart.py:287 +#: cmd/quickstart.py:350 msgid "" "One document is special in that it is considered the top node of the\n" "\"contents tree\", that is, it is the root of the hierarchical structure\n" @@ -1618,91 +1979,91 @@ msgid "" "document is a custom template, you can also set this to another filename." msgstr "有一种特殊的文档被视作“目录树”的树顶节点,即文档层级结构的\n根。通常情况下,这个文档是“index”,但是如果你的“index”文档\n使用了自定义模板,你也可以使用其它文件名。" -#: sphinx/cmd/quickstart.py:291 +#: cmd/quickstart.py:357 msgid "Name of your master document (without suffix)" msgstr "主文档文件名(不含后缀)" -#: sphinx/cmd/quickstart.py:296 +#: cmd/quickstart.py:368 #, python-format msgid "" "Error: the master file %s has already been found in the selected root path." msgstr "错误:选择的根目录下已存在主文档文件 %s。" -#: sphinx/cmd/quickstart.py:298 +#: cmd/quickstart.py:374 msgid "sphinx-quickstart will not overwrite the existing file." msgstr "sphinx-quickstart 不会覆盖已有的文件。" -#: sphinx/cmd/quickstart.py:300 +#: cmd/quickstart.py:378 msgid "" "Please enter a new file name, or rename the existing file and press Enter" msgstr "请输入新文件名,若要重命名现有文件请按回车" -#: sphinx/cmd/quickstart.py:304 +#: cmd/quickstart.py:386 msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "指出下列 Sphinx 扩展中,需要启用的有哪些:" -#: sphinx/cmd/quickstart.py:312 +#: cmd/quickstart.py:397 msgid "" "Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " "been deselected." msgstr "注意:imgmath 和 mathjax 不能同时启用。已取消选择 imgmath。" -#: sphinx/cmd/quickstart.py:318 +#: cmd/quickstart.py:407 msgid "" "A Makefile and a Windows command file can be generated for you so that you\n" "only have to run e.g. `make html' instead of invoking sphinx-build\n" "directly." msgstr "生成 Makefile 和 Windows 批处理文件,可以直接像“make html”这样\n运行,而不需要直接调用 sphinx-build。" -#: sphinx/cmd/quickstart.py:321 +#: cmd/quickstart.py:412 msgid "Create Makefile? (y/n)" msgstr "是否创建 Makefile?(y/n)" -#: sphinx/cmd/quickstart.py:324 +#: cmd/quickstart.py:416 msgid "Create Windows command file? (y/n)" msgstr "是否创建 Windows 批处理文件?(y/n)" -#: sphinx/cmd/quickstart.py:368 sphinx/ext/apidoc.py:93 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format msgid "Creating file %s." msgstr "正在创建文件 %s。" -#: sphinx/cmd/quickstart.py:373 sphinx/ext/apidoc.py:90 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format msgid "File %s already exists, skipping." msgstr "文件 %s 已存在,已跳过。" -#: sphinx/cmd/quickstart.py:418 +#: cmd/quickstart.py:516 msgid "Finished: An initial directory structure has been created." msgstr "完成:已创建初始目录结构。" -#: sphinx/cmd/quickstart.py:420 +#: cmd/quickstart.py:520 #, python-format msgid "" "You should now populate your master file %s and create other documentation\n" "source files. " msgstr "你现在可以填写主文档文件 %s 然后创建其他文档源文件了。 " -#: sphinx/cmd/quickstart.py:423 +#: cmd/quickstart.py:527 msgid "" "Use the Makefile to build the docs, like so:\n" " make builder" msgstr "像这样用 Makefile 构建文档:\n  make builder" -#: sphinx/cmd/quickstart.py:426 +#: cmd/quickstart.py:531 #, python-format msgid "" "Use the sphinx-build command to build the docs, like so:\n" " sphinx-build -b builder %s %s" msgstr "像这样用 sphinx-build 命令构建文档:\n  sphinx-build -b builder %s %s" -#: sphinx/cmd/quickstart.py:428 +#: cmd/quickstart.py:538 msgid "" "where \"builder\" is one of the supported builders, e.g. html, latex or " "linkcheck." msgstr "此处的“builder”代指支持的构建器名称,比如 html、latex 或 linkcheck。" -#: sphinx/cmd/quickstart.py:464 +#: cmd/quickstart.py:573 msgid "" "\n" "Generate required files for a Sphinx project.\n" @@ -1712,1243 +2073,1350 @@ msgid "" "Makefile to be used with sphinx-build.\n" msgstr "\n生成 Sphinx 项目的必需文件。\n\nsphinx-quickstart 是一个交互式工具,询问一些关于项目的问题,生成\n完整的文档目录和用于 sphinx-build 的示例 Makefile。\n" -#: sphinx/cmd/quickstart.py:479 +#: cmd/quickstart.py:592 msgid "quiet mode" msgstr "静默模式" -#: sphinx/cmd/quickstart.py:484 +#: cmd/quickstart.py:602 msgid "project root" msgstr "项目根目录" -#: sphinx/cmd/quickstart.py:486 +#: cmd/quickstart.py:605 msgid "Structure options" msgstr "目录结构选项" -#: sphinx/cmd/quickstart.py:488 +#: cmd/quickstart.py:611 msgid "if specified, separate source and build dirs" msgstr "如果指定了此选项,将分别建立源文件目录和构建目录" -#: sphinx/cmd/quickstart.py:490 +#: cmd/quickstart.py:617 msgid "if specified, create build dir under source dir" msgstr "如果指定了此选项,在源文件目录下创建构建目录" -#: sphinx/cmd/quickstart.py:492 +#: cmd/quickstart.py:623 msgid "replacement for dot in _templates etc." msgstr "用句点替代“ _templates”等文件夹名称中的下划线。" -#: sphinx/cmd/quickstart.py:494 +#: cmd/quickstart.py:626 msgid "Project basic options" msgstr "项目基本参数" -#: sphinx/cmd/quickstart.py:496 +#: cmd/quickstart.py:628 msgid "project name" msgstr "项目名称" -#: sphinx/cmd/quickstart.py:498 +#: cmd/quickstart.py:631 msgid "author names" msgstr "作者名称" -#: sphinx/cmd/quickstart.py:500 +#: cmd/quickstart.py:638 msgid "version of project" msgstr "项目版本" -#: sphinx/cmd/quickstart.py:502 +#: cmd/quickstart.py:645 msgid "release of project" msgstr "项目发行版本" -#: sphinx/cmd/quickstart.py:504 +#: cmd/quickstart.py:652 msgid "document language" msgstr "项目语种" -#: sphinx/cmd/quickstart.py:506 +#: cmd/quickstart.py:655 msgid "source file suffix" msgstr "源文件后缀" -#: sphinx/cmd/quickstart.py:508 +#: cmd/quickstart.py:658 msgid "master document name" msgstr "主文档名" -#: sphinx/cmd/quickstart.py:510 +#: cmd/quickstart.py:661 msgid "use epub" msgstr "启用 ePub 支持" -#: sphinx/cmd/quickstart.py:512 +#: cmd/quickstart.py:664 msgid "Extension options" msgstr "扩展程序选项" -#: sphinx/cmd/quickstart.py:516 sphinx/ext/apidoc.py:400 +#: cmd/quickstart.py:671 #, python-format msgid "enable %s extension" msgstr "启用 %s 扩展" -#: sphinx/cmd/quickstart.py:518 sphinx/ext/apidoc.py:396 +#: cmd/quickstart.py:678 msgid "enable arbitrary extensions" msgstr "启用多个扩展" -#: sphinx/cmd/quickstart.py:520 +#: cmd/quickstart.py:681 msgid "Makefile and Batchfile creation" msgstr "创建 Makefile 和批处理文件" -#: sphinx/cmd/quickstart.py:522 +#: cmd/quickstart.py:687 msgid "create makefile" msgstr "创建 Makefile" -#: sphinx/cmd/quickstart.py:524 +#: cmd/quickstart.py:693 msgid "do not create makefile" msgstr "不创建 Makefile" -#: sphinx/cmd/quickstart.py:526 +#: cmd/quickstart.py:700 msgid "create batchfile" msgstr "创建批处理文件" -#: sphinx/cmd/quickstart.py:529 +#: cmd/quickstart.py:706 msgid "do not create batchfile" msgstr "不创建批处理文件" -#: sphinx/cmd/quickstart.py:532 +#: cmd/quickstart.py:715 msgid "use make-mode for Makefile/make.bat" msgstr "Makefile/make.bat 采用 Sphinx 的 make 模式" -#: sphinx/cmd/quickstart.py:535 -msgid "do not use make-mode for Makefile/make.bat" -msgstr "Makefile/make.bat 不采用 Sphinx 的 make 模式" - -#: sphinx/cmd/quickstart.py:537 sphinx/ext/apidoc.py:402 +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 msgid "Project templating" msgstr "项目模板" -#: sphinx/cmd/quickstart.py:540 sphinx/ext/apidoc.py:405 +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 msgid "template directory for template files" msgstr "放置模板文件的模板目录" -#: sphinx/cmd/quickstart.py:543 +#: cmd/quickstart.py:731 msgid "define a template variable" msgstr "定义一个模板变量" -#: sphinx/cmd/quickstart.py:576 +#: cmd/quickstart.py:767 msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." msgstr "指定了“quiet”,但是没有指定“project”和“author”。" -#: sphinx/cmd/quickstart.py:590 +#: cmd/quickstart.py:786 msgid "" "Error: specified path is not a directory, or sphinx files already exist." msgstr "错误:指定的路径不是一个目录,或是 Sphinx 文件已存在。" -#: sphinx/cmd/quickstart.py:592 +#: cmd/quickstart.py:793 msgid "" "sphinx-quickstart only generate into a empty directory. Please specify a new" " root path." msgstr "sphinx-quickstart 只会在空目录中生成文件。请指定一个新的根路径。" -#: sphinx/cmd/quickstart.py:607 +#: cmd/quickstart.py:810 #, python-format msgid "Invalid template variable: %s" msgstr "无效模板变量:%s" -#: sphinx/directives/code.py:61 -msgid "non-whitespace stripped by dedent" -msgstr "取消缩进操作清除了空白字符" - -#: sphinx/directives/code.py:82 -#, python-format -msgid "Invalid caption: %s" -msgstr "无效的标题:%s" - -#: sphinx/directives/code.py:127 sphinx/directives/code.py:277 -#: sphinx/directives/code.py:453 -#, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "指定的行号超出范围(1-%d):%r" - -#: sphinx/directives/code.py:206 -#, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "“%s”和“%s”选项不可联用" - -#: sphinx/directives/code.py:220 -#, python-format -msgid "Include file %r not found or reading it failed" -msgstr "要包含的文件 %r 不存在或读取失败" - -#: sphinx/directives/code.py:223 -#, python-format -msgid "" -"Encoding %r used for reading included file %r seems to be wrong, try giving " -"an :encoding: option" -msgstr "用于读取包含文件 %r 的编码 %r 不正确,请重新给定 encoding: 选项" - -#: sphinx/directives/code.py:260 -#, python-format -msgid "Object named %r not found in include file %r" -msgstr "对象 %r 未出现在包含文件 %r 中" - -#: sphinx/directives/code.py:286 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "不能在不连续的“lines”上使用“lineno-match”选项" - -#: sphinx/directives/code.py:291 -#, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "指定的行 %r:未能从包含文件 %r 中拉取指定的行" - -#: sphinx/directives/other.py:120 +#: directives/other.py:119 #, python-format msgid "toctree glob pattern %r didn't match any documents" msgstr "目录树 glob 规则 %r 未能匹配到文档" -#: sphinx/directives/other.py:146 sphinx/environment/adapters/toctree.py:324 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format msgid "toctree contains reference to excluded document %r" msgstr "目录树中引用了已排除的文档 %r" -#: sphinx/directives/other.py:149 sphinx/environment/adapters/toctree.py:328 +#: directives/other.py:156 #, python-format msgid "toctree contains reference to nonexisting document %r" msgstr "目录树中引用的文档 %r 不存在" -#: sphinx/directives/other.py:160 +#: directives/other.py:169 #, python-format msgid "duplicated entry found in toctree: %s" msgstr "目录树中存在重复的条目:%s" -#: sphinx/directives/other.py:193 +#: directives/other.py:203 msgid "Section author: " msgstr "节作者: " -#: sphinx/directives/other.py:195 +#: directives/other.py:205 msgid "Module author: " msgstr "模块作者: " -#: sphinx/directives/other.py:197 +#: directives/other.py:207 msgid "Code author: " msgstr "代码作者: " -#: sphinx/directives/other.py:199 +#: directives/other.py:209 msgid "Author: " msgstr "作者: " -#: sphinx/directives/other.py:275 +#: directives/other.py:269 msgid ".. acks content is not a list" msgstr ".. acks 的内容不是列表" -#: sphinx/directives/other.py:301 +#: directives/other.py:292 msgid ".. hlist content is not a list" msgstr ".. hlist 的内容不是列表" -#: sphinx/directives/patches.py:66 +#: directives/patches.py:70 msgid "" "\":file:\" option for csv-table directive now recognizes an absolute path as" " a relative path from source directory. Please update your document." msgstr "csv-table 指令的“:file”选项现在会将绝对路径视为源文件目录的相对路径。请更新你的文档内容。" -#: sphinx/domains/__init__.py:397 -#, python-format -msgid "%s %s" -msgstr "%s %s" +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "取消缩进操作清除了空白字符" -#: sphinx/domains/changeset.py:23 +#: directives/code.py:87 #, python-format -msgid "Added in version %s" -msgstr "" +msgid "Invalid caption: %s" +msgstr "无效的标题:%s" -#: sphinx/domains/changeset.py:24 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "Changed in version %s" -msgstr "在 %s 版本发生变更" +msgid "line number spec is out of range(1-%d): %r" +msgstr "指定的行号超出范围(1-%d):%r" -#: sphinx/domains/changeset.py:25 +#: directives/code.py:216 #, python-format -msgid "Deprecated since version %s" -msgstr "自 %s 版本弃用" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "“%s”和“%s”选项不可联用" -#: sphinx/domains/changeset.py:26 +#: directives/code.py:231 #, python-format -msgid "Removed in version %s" -msgstr "" +msgid "Include file '%s' not found or reading it failed" +msgstr "包括文件 '%s' 未找到或读取失败" -#: sphinx/domains/citation.py:71 +#: directives/code.py:235 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "重复的引文 %s,另一引文出现在 %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" +msgstr "用编码格式 %r 读取包含的文件 '%s' 可能不正确,请尝试给定 :encoding: 选项" -#: sphinx/domains/citation.py:82 +#: directives/code.py:276 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "引文 [%s] 没有被引用过。" +msgid "Object named %r not found in include file %r" +msgstr "对象 %r 未出现在包含文件 %r 中" -#: sphinx/domains/javascript.py:165 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (内置函数)" +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "不能在不连续的“lines”上使用“lineno-match”选项" -#: sphinx/domains/javascript.py:166 sphinx/domains/python/__init__.py:240 +#: directives/code.py:314 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s 方法)" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "指定的行 %r:未能从包含文件 %r 中拉取指定的行" -#: sphinx/domains/javascript.py:168 +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 #, python-format -msgid "%s() (class)" -msgstr "%s()(类)" +msgid "%b %d, %Y" +msgstr "%Y 年 %m 月 %d 日" -#: sphinx/domains/javascript.py:170 -#, python-format -msgid "%s (global variable or constant)" -msgstr "%s(全局变量或常量)" +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" +msgstr "索引" + +#: writers/latex.py:768 writers/texinfo.py:646 +msgid "" +"encountered title node not in section, topic, table, admonition or sidebar" +msgstr "在节、话题、表格、警示或边栏以外的位置发现标题节点" + +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "脚注" -#: sphinx/domains/javascript.py:172 sphinx/domains/python/__init__.py:325 +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." +msgstr "在图示之外发现了图题。" + +#: writers/texinfo.py:1303 #, python-format -msgid "%s (%s attribute)" -msgstr "%s(%s 属性)" +msgid "unimplemented node type: %r" +msgstr "未实现的节点类型:%r" -#: sphinx/domains/javascript.py:255 -msgid "Arguments" -msgstr "参数" +#: writers/manpage.py:288 writers/text.py:971 +#, python-format +msgid "[image: %s]" +msgstr "[图片: %s]" -#: sphinx/domains/cpp/__init__.py:350 sphinx/domains/javascript.py:258 -msgid "Throws" -msgstr "抛出" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[图片]" -#: sphinx/domains/c/__init__.py:251 sphinx/domains/cpp/__init__.py:361 -#: sphinx/domains/javascript.py:261 sphinx/domains/python/_object.py:175 -msgid "Returns" -msgstr "返回" +#: writers/html5.py:96 writers/html5.py:105 +msgid "Link to this definition" +msgstr "链接到此定义。" -#: sphinx/domains/c/__init__.py:253 sphinx/domains/javascript.py:263 -#: sphinx/domains/python/_object.py:177 -msgid "Return type" -msgstr "返回类型" +#: writers/html5.py:431 +#, python-format +msgid "numfig_format is not defined for %s" +msgstr "未定义 %s 的 numfig_format" -#: sphinx/domains/javascript.py:331 +#: writers/html5.py:441 #, python-format -msgid "%s (module)" -msgstr "%s(模块)" +msgid "Any IDs not assigned for %s node" +msgstr "没有给 %s 节点分配 ID" -#: sphinx/domains/c/__init__.py:622 sphinx/domains/cpp/__init__.py:764 -#: sphinx/domains/javascript.py:368 sphinx/domains/python/__init__.py:574 -msgid "function" -msgstr "函数" +#: writers/html5.py:496 +msgid "Link to this term" +msgstr "链接到此术语。" -#: sphinx/domains/javascript.py:369 sphinx/domains/python/__init__.py:578 -msgid "method" -msgstr "方法" +#: writers/html5.py:548 writers/html5.py:553 +msgid "Link to this heading" +msgstr "链接到此标题。" -#: sphinx/domains/cpp/__init__.py:762 sphinx/domains/javascript.py:370 -#: sphinx/domains/python/__init__.py:576 -msgid "class" -msgstr "类" +#: writers/html5.py:558 +msgid "Link to this table" +msgstr "链接到此表格。" -#: sphinx/domains/javascript.py:371 sphinx/domains/python/__init__.py:575 -msgid "data" -msgstr "数据" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "不支持的红字标题等级:%s" -#: sphinx/domains/javascript.py:372 sphinx/domains/python/__init__.py:581 -msgid "attribute" -msgstr "属性" +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "链接到此段代码" -#: sphinx/domains/javascript.py:373 sphinx/domains/python/__init__.py:583 -msgid "module" -msgstr "模块" +#: writers/html5.py:638 +msgid "Link to this image" +msgstr "链接到此图片" + +#: writers/html5.py:640 +msgid "Link to this toctree" +msgstr "链接到此目录树" -#: sphinx/domains/javascript.py:404 +#: writers/html5.py:766 +msgid "Could not obtain image size. :scale: option is ignored." +msgstr "无法获取图像尺寸,已忽略 :scale: 选项。" + +#: writers/latex.py:386 #, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "重复的 %s描述 %s,其他的 %s 描述出现在 %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "未知的 %r toplevel_sectioning 被用于 %r 类" -#: sphinx/domains/math.py:63 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "重复的公式标签 %s,另一公式出现在 %s" +msgid "no Babel option known for language %r" +msgstr "没有语种 %r 的 Babel 选项" + +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":mathdepth: 值过大,已忽略。" -#: sphinx/domains/math.py:118 sphinx/writers/latex.py:2252 +#: writers/latex.py:616 #, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "无效的 math_eqref_format:%r" +msgid "template %s not found; loading from legacy %s instead" +msgstr "没有找到 %s 模板;使用传统模板 %s 代替" -#: sphinx/domains/rst.py:127 sphinx/domains/rst.py:184 +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "文档标题不是一个单纯文本节点" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "同时指定了 tabularcolumns 和 :widths: 选项,已忽略 :widths:。" + +#: writers/latex.py:1228 #, python-format -msgid "%s (directive)" -msgstr "%s(指令)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "已给出的 colspec %s 似乎使用了 tabulary 语法。但此表格无法以 tabulary 格式呈现;给出的 colspec 将被忽略。" -#: sphinx/domains/rst.py:185 sphinx/domains/rst.py:189 +#: writers/latex.py:1615 #, python-format -msgid ":%s: (directive option)" -msgstr ":%s:(指令选项)" +msgid "dimension unit %s is invalid. Ignored." +msgstr "无效的量纲单位 %s,已忽略。" -#: sphinx/domains/rst.py:213 +#: writers/latex.py:1950 #, python-format -msgid "%s (role)" -msgstr "%s(角色)" +msgid "unknown index entry type %s found" +msgstr "发现未知的索引条目类型 %s" -#: sphinx/domains/rst.py:223 -msgid "directive" -msgstr "指令" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "使用方法:" -#: sphinx/domains/rst.py:224 -msgid "directive-option" -msgstr "指令-选项" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "{0} [OPTIONS] []" -#: sphinx/domains/rst.py:225 -msgid "role" -msgstr "角色" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "Sphinx 文档生成器。" -#: sphinx/domains/rst.py:247 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "重复的 %s %s 描述,另一描述出现在 %s" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "命令:" -#: sphinx/domains/c/__init__.py:146 -#, python-format -msgid "%s (C %s)" -msgstr "%s(C %s)" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "选项" -#: sphinx/domains/c/__init__.py:207 sphinx/domains/c/_symbol.py:552 -#, python-format +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "更多信息请参阅 https://www.sphinx-doc.org/en/master/man/ 。" + +#: _cli/__init__.py:171 +#, python-brace-format msgid "" -"Duplicate C declaration, also defined at %s:%s.\n" -"Declaration is '.. c:%s:: %s'." -msgstr "重复的 C 声明,已经在 %s:%s 处声明。\n声明为“.. c:%s:: %s”。" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "{0}: 错误: {1}\n运行“{0} --help”获取帮助信息" -#: sphinx/domains/c/__init__.py:245 sphinx/domains/cpp/__init__.py:344 -#: sphinx/domains/python/_object.py:163 sphinx/ext/napoleon/docstring.py:762 -msgid "Parameters" -msgstr "参数" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr " 用 Sphinx 管理文档。" -#: sphinx/domains/c/__init__.py:248 sphinx/domains/cpp/__init__.py:357 -msgid "Return values" -msgstr "返回值" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "显示版本并退出。" -#: sphinx/domains/c/__init__.py:620 sphinx/domains/cpp/__init__.py:765 -msgid "member" -msgstr "成员" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "显示此信息并退出。" -#: sphinx/domains/c/__init__.py:621 -msgid "variable" -msgstr "变量" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "日志" -#: sphinx/domains/c/__init__.py:623 -msgid "macro" -msgstr "宏" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "增加日志详细级别(可以重复叠加)" -#: sphinx/domains/c/__init__.py:624 -msgid "struct" -msgstr "结构体" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "只打印错误和警告。" -#: sphinx/domains/c/__init__.py:625 sphinx/domains/cpp/__init__.py:763 -msgid "union" -msgstr "联合体" +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "完全没有输出" -#: sphinx/domains/c/__init__.py:626 sphinx/domains/cpp/__init__.py:768 -msgid "enum" -msgstr "枚举" +#: _cli/__init__.py:231 +msgid "" +msgstr "" -#: sphinx/domains/c/__init__.py:627 sphinx/domains/cpp/__init__.py:769 -msgid "enumerator" -msgstr "枚举成员" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "参见 'sphinx --help' 。\n" -#: sphinx/domains/c/__init__.py:628 sphinx/domains/cpp/__init__.py:766 -msgid "type" -msgstr "类型" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "译文中的脚注引用与原文不一致。原文中为:{0},翻文中为:{1}" -#: sphinx/domains/c/__init__.py:630 sphinx/domains/cpp/__init__.py:771 -msgid "function parameter" -msgstr "函数参数" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "译文中的引用与原文不一致。原文中为:{0},译文中为:{1}" -#: sphinx/domains/cpp/__init__.py:63 -msgid "Template Parameters" -msgstr "模板参数" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "译文中的引文引用与原文不一致。原文中为:{0},译文中为:{1}" -#: sphinx/domains/cpp/__init__.py:185 -#, python-format -msgid "%s (C++ %s)" -msgstr "%s(C++ %s)" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "译文中的术语引用与原文不一致。原文中为:{0},译文中为:{1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "无法计算转译进度!" -#: sphinx/domains/cpp/__init__.py:268 sphinx/domains/cpp/_symbol.py:790 +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "尚无已转译的元素!" + +#: transforms/__init__.py:258 #, python-format msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "重复的 C++ 声明,已经在 %s:%s 处声明。\n声明为“.. cpp:%s:: %s”。" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "索引页使用了 4 列布局,可能是你所用的扩展出现了 Bug:%r" -#: sphinx/domains/cpp/__init__.py:767 -msgid "concept" -msgstr "概念" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." +msgstr "脚注 [%s] 没有被引用过。" -#: sphinx/domains/cpp/__init__.py:772 -msgid "template parameter" -msgstr "模板参数" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "脚注 [*] 没有被引用过。" + +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "脚注 [#] 没有被引用过。" -#: sphinx/domains/python/__init__.py:94 sphinx/domains/python/__init__.py:231 +#: util/inventory.py:147 #, python-format -msgid "%s() (in module %s)" -msgstr "%s()(在 %s 模块中)" +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "清单 <%s> 中包含重复的 %s 定义" -#: sphinx/domains/python/__init__.py:154 sphinx/domains/python/__init__.py:321 -#: sphinx/domains/python/__init__.py:372 +#: util/inventory.py:166 #, python-format -msgid "%s (in module %s)" -msgstr "%s()(在 %s 模块中)" +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "清单 <%s> 中包含多个 %s 的定义" -#: sphinx/domains/python/__init__.py:156 +#: util/i18n.py:100 #, python-format -msgid "%s (built-in variable)" -msgstr "%s(内置变量)" +msgid "reading error: %s, %s" +msgstr "读取时发生错误:%s,%s" -#: sphinx/domains/python/__init__.py:181 +#: util/i18n.py:113 #, python-format -msgid "%s (built-in class)" -msgstr "%s(内置类)" +msgid "writing error: %s, %s" +msgstr "写入时发生错误:%s,%s" -#: sphinx/domains/python/__init__.py:182 +#: util/i18n.py:146 #, python-format -msgid "%s (class in %s)" -msgstr "%s(%s 中的类)" +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s 不存在" -#: sphinx/domains/python/__init__.py:236 +#: util/i18n.py:244 #, python-format -msgid "%s() (%s class method)" -msgstr "%s()(%s 类方法)" +msgid "Invalid Babel locale: %r." +msgstr "无效的 Babel locale:%r" -#: sphinx/domains/python/__init__.py:238 +#: util/i18n.py:253 #, python-format -msgid "%s() (%s static method)" -msgstr "%s()(%s 静态方法)" +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "无效的日期格式。如果你想直接输出日期字符串,请用单引号包裹该字符串:%s" -#: sphinx/domains/python/__init__.py:376 +#: util/osutil.py:131 #, python-format -msgid "%s (%s property)" -msgstr "%s(%s 属性)" +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "中止了把 %s 复制至 %s 的尝试(目的路径非空)。" -#: sphinx/domains/python/__init__.py:502 -msgid "Python Module Index" -msgstr "Python 模块索引" +#: util/display.py:82 +msgid "skipped" +msgstr "已跳过" -#: sphinx/domains/python/__init__.py:503 -msgid "modules" -msgstr "模块" +#: util/display.py:87 +msgid "failed" +msgstr "失败" -#: sphinx/domains/python/__init__.py:552 -msgid "Deprecated" -msgstr "已弃用" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" +msgstr "未知的指令名称:%s" -#: sphinx/domains/python/__init__.py:577 -msgid "exception" -msgstr "异常" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" +msgstr "未知的角色名称:%s" -#: sphinx/domains/python/__init__.py:579 -msgid "class method" -msgstr "类方法" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" +msgstr "未知节点类型:%r" -#: sphinx/domains/python/__init__.py:580 -msgid "static method" -msgstr "静态方法" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "中止了把已渲染模板 %s 复制至 %s 的尝试(目的路径非空)。" -#: sphinx/domains/python/__init__.py:582 -msgid "property" -msgstr "托管属性" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" +msgstr "正在把已求值的模板结果写入 %s" -#: sphinx/domains/python/__init__.py:640 +#: util/docfields.py:103 #, python-format msgid "" -"duplicate object description of %s, other instance in %s, use :no-index: for" -" one of them" -msgstr "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "%s 域中的问题:字段应采用“%s”角色,但域中并不包含该角色。" -#: sphinx/domains/python/__init__.py:760 +#: util/rst.py:73 #, python-format -msgid "more than one target found for cross-reference %r: %s" -msgstr "交叉引用 %r 找到了多个目标:%s" +msgid "default role %s not found" +msgstr "未找到默认角色 %s" -#: sphinx/domains/python/__init__.py:821 -msgid " (deprecated)" -msgstr "(已弃用)" +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "%r 不再支持索引条目 (来自条目 %r)请改用 pair: %s。" -#: sphinx/domains/python/_object.py:168 -msgid "Variables" -msgstr "变量" +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" +msgstr "目录树引用的文件 %r 不存在" -#: sphinx/domains/python/_object.py:172 -msgid "Raises" -msgstr "抛出" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "only 指令的表达式求值时抛出异常:%s" + +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "接上页" + +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "续下页" + +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "非字母" + +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "符号" + +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "数字" -#: sphinx/domains/std/__init__.py:80 sphinx/domains/std/__init__.py:97 +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "页" + +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "发行版本" + +#: transforms/post_transforms/images.py:79 #, python-format -msgid "environment variable; %s" -msgstr "环境变量; %s" +msgid "Could not fetch remote image: %s [%s]" +msgstr "无法拉取远程图像:%s [%s]" + +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "无法拉取远程图像:%s [%d]" -#: sphinx/domains/std/__init__.py:157 +#: transforms/post_transforms/images.py:143 #, python-format +msgid "Unknown image format: %s..." +msgstr "未知的图像格式:%s……" + +#: transforms/post_transforms/__init__.py:88 msgid "" -"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" -"--opt args\", \"/opt args\" or \"+opt args\"" -msgstr "畸形的选项描述 %r,应是“opt”、“-opt args”、“--opt args”、“/opt args”或“+opt args”形式" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "无法确定交叉引用的回退文本。可能是 Bug。" -#: sphinx/domains/std/__init__.py:228 +#: transforms/post_transforms/__init__.py:233 #, python-format -msgid "%s command line option" -msgstr "%s命令行选项" +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "“any”交叉引用 %r 的目标不唯一:可能是 %s" -#: sphinx/domains/std/__init__.py:230 -msgid "command line option" -msgstr "命令行选项" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "未找到 %s:%s 的引用目标: %s" -#: sphinx/domains/std/__init__.py:348 -msgid "glossary term must be preceded by empty line" -msgstr "术语词汇前必须有空行" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "未找到 %r 的引用目标:%s" -#: sphinx/domains/std/__init__.py:356 -msgid "glossary terms must not be separated by empty lines" -msgstr "术语词汇不能用空行分隔" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "已中断!" -#: sphinx/domains/std/__init__.py:362 sphinx/domains/std/__init__.py:375 -msgid "glossary seems to be misformatted, check indentation" -msgstr "术语词汇格式不正确,请检查缩进" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "reStructuredText 错误!" -#: sphinx/domains/std/__init__.py:518 -msgid "glossary term" -msgstr "术语词汇" +#: _cli/util/errors.py:200 +msgid "Encoding error!" +msgstr "编码错误!" -#: sphinx/domains/std/__init__.py:519 -msgid "grammar token" -msgstr "语法记号" +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "递归错误!" -#: sphinx/domains/std/__init__.py:520 -msgid "reference label" -msgstr "引用标签" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "源文件非常大或嵌套很深时可能会发生这种情况。您可以谨慎地在 conf.py 中增加默认的 Python 递归限制 1,000,例如:" -#: sphinx/domains/std/__init__.py:522 -msgid "environment variable" -msgstr "环境变量" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "启动调试器:" -#: sphinx/domains/std/__init__.py:523 -msgid "program option" -msgstr "程序选项" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "完整回溯已保存至:" -#: sphinx/domains/std/__init__.py:524 -msgid "document" -msgstr "文档" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "若要向开发者报告此错误,请访问 提交问题。谢谢!" -#: sphinx/domains/std/__init__.py:560 sphinx/domains/std/__init__.py:572 -msgid "Module Index" -msgstr "模块索引" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "即便抛出的错误时是用户导致的,也请向我们投递报告,以便将来可以提示更友好、更详细的错误信息。" -#: sphinx/domains/std/__init__.py:561 sphinx/domains/std/__init__.py:573 -#: sphinx/themes/basic/defindex.html:25 -msgid "Search Page" -msgstr "搜索页面" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "折叠边栏" -#: sphinx/domains/std/__init__.py:616 sphinx/domains/std/__init__.py:722 -#: sphinx/ext/autosectionlabel.py:53 -#, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "重复的标签 %s,另一标签出现在 %s" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "导航" -#: sphinx/domains/std/__init__.py:635 +#: themes/basic/layout.html:115 #, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "重复的 %s 描述 %s,另一描述出现在 %s" +msgid "Search within %(docstitle)s" +msgstr "在 %(docstitle)s 中搜索" -#: sphinx/domains/std/__init__.py:841 -msgid "numfig is disabled. :numref: is ignored." -msgstr "numfig 已禁用,忽略 :numref:。" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "关于此文档" -#: sphinx/domains/std/__init__.py:849 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "无法创建交叉引用。未指定题图数字:%s" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "搜索" -#: sphinx/domains/std/__init__.py:861 -#, python-format -msgid "the link has no caption: %s" -msgstr "链接没有标题:%s" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "版权所有" -#: sphinx/domains/std/__init__.py:875 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "无效的 numfig_format:%s(%r)" +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." -#: sphinx/domains/std/__init__.py:878 +#: themes/basic/layout.html:201 #, python-format -msgid "invalid numfig_format: %s" -msgstr "无效的 numfig_format:%s" +msgid "Last updated on %(last_updated)s." +msgstr "最后更新于 %(last_updated)s." -#: sphinx/domains/std/__init__.py:1109 +#: themes/basic/layout.html:204 #, python-format -msgid "undefined label: %r" -msgstr "标签未定义:%r" +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "由 Sphinx %(sphinx_version)s创建。" + +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "上一主题" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "上一章" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "下一主题" + +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "下一章" -#: sphinx/domains/std/__init__.py:1111 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "无法创建交叉引用,缺少标题或图题:%r" +msgid "Index – %(key)s" +msgstr "索引 – %(key)s" -#: sphinx/environment/__init__.py:71 -msgid "new config" -msgstr "新配置" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "单页全索引" -#: sphinx/environment/__init__.py:72 -msgid "config changed" -msgstr "配置发生了变化" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "本页" -#: sphinx/environment/__init__.py:73 -msgid "extensions changed" -msgstr "扩展发生了变化" +#: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 +msgid "Show Source" +msgstr "显示源代码" -#: sphinx/environment/__init__.py:279 -msgid "build environment version not current" -msgstr "构建环境版本与当前环境不符" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "快速搜索" -#: sphinx/environment/__init__.py:281 -msgid "source directory has changed" -msgstr "源文件目录发生了变化" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "提交" -#: sphinx/environment/__init__.py:360 -msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "本环境与选择的构建器不兼容,请选择其他的文档树目录。" +#: themes/basic/defindex.html:4 +msgid "Overview" +msgstr "概述" -#: sphinx/environment/__init__.py:459 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "无法在 %s 中扫描文档:%r" +#: themes/basic/defindex.html:8 +msgid "Welcome! This is" +msgstr "欢迎!" -#: sphinx/environment/__init__.py:596 -#, python-format -msgid "Domain %r is not registered" -msgstr "未注册的域 %r" +#: themes/basic/defindex.html:9 +msgid "the documentation for" +msgstr "本文档属于" -#: sphinx/environment/__init__.py:730 -msgid "document isn't included in any toctree" -msgstr "文档没有加入到任何目录树中" +#: themes/basic/defindex.html:10 +msgid "last updated" +msgstr "最后更新于" -#: sphinx/environment/__init__.py:766 -msgid "self referenced toctree found. Ignored." -msgstr "目录树存在自引用,已忽略。" +#: themes/basic/defindex.html:13 +msgid "Indices and tables:" +msgstr "索引和表格:" -#: sphinx/environment/adapters/indexentries.py:69 -#, python-format -msgid "see %s" -msgstr "见 %s" +#: themes/basic/defindex.html:16 +msgid "Complete Table of Contents" +msgstr "完整目录" -#: sphinx/environment/adapters/indexentries.py:73 -#, python-format -msgid "see also %s" -msgstr "另请参见 %s" +#: themes/basic/defindex.html:17 +msgid "lists all sections and subsections" +msgstr "列出所有的章节和部分" -#: sphinx/environment/adapters/indexentries.py:76 -#, python-format -msgid "unknown index entry type %r" -msgstr "未知的索引条目类型 %r" +#: domains/std/__init__.py:773 domains/std/__init__.py:786 +#: themes/basic/defindex.html:18 +msgid "Search Page" +msgstr "搜索页面" -#: sphinx/environment/adapters/indexentries.py:187 -#: sphinx/templates/latex/sphinxmessages.sty_t:11 -msgid "Symbols" -msgstr "符号" +#: themes/basic/defindex.html:19 +msgid "search this documentation" +msgstr "搜索文档" -#: sphinx/environment/adapters/toctree.py:297 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "在文档树中检测到循环引用,已忽略:%s <- %s" +#: themes/basic/defindex.html:21 +msgid "Global Module Index" +msgstr "全局模块索引" + +#: themes/basic/defindex.html:22 +msgid "quick access to all modules" +msgstr "快速查看所有的模块" -#: sphinx/environment/adapters/toctree.py:317 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 +msgid "General Index" +msgstr "总索引" + +#: themes/basic/defindex.html:24 +msgid "all functions, classes, terms" +msgstr "所有函数、类、术语词汇" + +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "目录" + +#: themes/basic/opensearch.xml:4 #, python-format +msgid "Search %(docstitle)s" +msgstr "搜索 %(docstitle)s" + +#: themes/basic/genindex-split.html:8 +msgid "Index pages by letter" +msgstr "字母索引" + +#: themes/basic/genindex-split.html:17 +msgid "can be huge" +msgstr "可能会大" + +#: themes/basic/search.html:20 msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "目录树引用的文档 %r 缺少标题:不会生成链接" +"Please activate JavaScript to enable the search\n" +" functionality." +msgstr "请激活 JavaScript 以开启搜索功能。" -#: sphinx/environment/adapters/toctree.py:326 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "目录树引用了未包含的文档 %r" +#: themes/basic/search.html:28 +msgid "" +"Searching for multiple words only shows matches that contain\n" +" all words." +msgstr "当搜索多个关键词时,只会显示同时包含所有关键词的内容。" -#: sphinx/environment/collectors/asset.py:89 -#, python-format -msgid "image file not readable: %s" -msgstr "无法读取图像文件:%s" +#: themes/basic/search.html:35 +msgid "search" +msgstr "搜索" -#: sphinx/environment/collectors/asset.py:108 -#, python-format -msgid "image file %s not readable: %s" -msgstr "无法读取图像文件 %s:%s" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "目录" + +#: themes/basic/static/searchtools.js:132 +msgid "Search Results" +msgstr "搜索结果" + +#: themes/basic/static/searchtools.js:134 +msgid "" +"Your search did not match any documents. Please make sure that all words are" +" spelled correctly and that you've selected enough categories." +msgstr "您的搜索没有匹配到文档。请确保关键词拼写正确,并且选择了合适的分类。" + +#: themes/basic/static/searchtools.js:138 +#, python-brace-format +msgid "Search finished, found one page matching the search query." +msgid_plural "" +"Search finished, found ${resultCount} pages matching the search query." +msgstr[0] "搜索完成,匹配搜索条件的有 ${resultCount} 个页面。" + +#: themes/basic/static/searchtools.js:276 +msgid "Searching" +msgstr "正在搜索中" + +#: themes/basic/static/searchtools.js:293 +msgid "Preparing search..." +msgstr "正在准备搜索……" + +#: themes/basic/static/searchtools.js:526 +msgid ", in " +msgstr ",在 " -#: sphinx/environment/collectors/asset.py:134 +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "隐藏搜索结果" + +#: themes/basic/changes/frameset.html:5 +#: themes/basic/changes/versionchanges.html:12 #, python-format -msgid "download file not readable: %s" -msgstr "无法读取下载文件:%s" +msgid "Changes in Version %(version)s — %(docstitle)s" +msgstr "于版本 %(version)s— %(docstitle)s 变更" -#: sphinx/environment/collectors/toctree.py:225 +#: themes/basic/changes/rstsource.html:5 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "已经给 %s 分配了章节编号(嵌套的带编号文档树?)" +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" -#: sphinx/ext/apidoc.py:86 +#: themes/basic/changes/versionchanges.html:17 #, python-format -msgid "Would create file %s." -msgstr "将会创建文件 %s。" +msgid "Automatically generated list of changes in version %(version)s" +msgstr "自动生成的 %(version)s 版本变更列表" -#: sphinx/ext/apidoc.py:318 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\n在 中递归查找 Python 模块和包,然后在 中为每个使用了\nautomodule 指令的包创建一个 reST 文件。\n\n 可以排除生成符合规则的文件/目录的文档。\n\n提示:本脚本默认不会覆盖已有文件。" +#: themes/basic/changes/versionchanges.html:18 +msgid "Library changes" +msgstr "库的变更" -#: sphinx/ext/apidoc.py:331 -msgid "path to module to document" -msgstr "指定模块的路径,用于生成该模块的文档" +#: themes/basic/changes/versionchanges.html:23 +msgid "C API changes" +msgstr "C API 的变更" -#: sphinx/ext/apidoc.py:333 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "以 fnmatch 风格的文件/目录规则,不生成与该规则匹配的文档" +#: themes/basic/changes/versionchanges.html:25 +msgid "Other changes" +msgstr "其他变更" -#: sphinx/ext/apidoc.py:338 -msgid "directory to place all output" -msgstr "存放输出内容的目录" +#: themes/classic/static/sidebar.js.jinja:42 +msgid "Expand sidebar" +msgstr "展开边栏" -#: sphinx/ext/apidoc.py:343 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "在目录树中展示子模块的最大深度(默认:4)" +#: domains/python/_annotations.py:522 +msgid "Positional-only parameter separator (PEP 570)" +msgstr "仅位置参数分隔符 (PEP 570)" -#: sphinx/ext/apidoc.py:346 -msgid "overwrite existing files" -msgstr "覆盖已有文件" +#: domains/python/_annotations.py:533 +msgid "Keyword-only parameters separator (PEP 3102)" +msgstr "仅关键字参数分隔符 (PEP 3102)" -#: sphinx/ext/apidoc.py:349 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "遵循符号链接。配合 collective.recipe.omelette 使用尤其奏效。" +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "参数" -#: sphinx/ext/apidoc.py:352 -msgid "run the script without creating files" -msgstr "运行脚本,但不创建文件" +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "变量" -#: sphinx/ext/apidoc.py:355 -msgid "put documentation for each module on its own page" -msgstr "给模块创建各自的文档页" +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "抛出" -#: sphinx/ext/apidoc.py:358 -msgid "include \"_private\" modules" -msgstr "包含“_private”模块" +#: domains/python/__init__.py:105 domains/python/__init__.py:270 +#, python-format +msgid "%s() (in module %s)" +msgstr "%s()(在 %s 模块中)" -#: sphinx/ext/apidoc.py:360 -msgid "filename of table of contents (default: modules)" -msgstr "目录的文件名(默认:modules)" +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 +#, python-format +msgid "%s (in module %s)" +msgstr "%s()(在 %s 模块中)" -#: sphinx/ext/apidoc.py:362 -msgid "don't create a table of contents file" -msgstr "不创建目录文件" +#: domains/python/__init__.py:174 +#, python-format +msgid "%s (built-in variable)" +msgstr "%s(内置变量)" -#: sphinx/ext/apidoc.py:365 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "不创建模块/包的标题(比如当 docstring 中已经有标题时,可以使用这个选项)" +#: domains/python/__init__.py:209 +#, python-format +msgid "%s (built-in class)" +msgstr "%s(内置类)" -#: sphinx/ext/apidoc.py:370 -msgid "put module documentation before submodule documentation" -msgstr "把模块文档放置在子模块文档之前" +#: domains/python/__init__.py:210 +#, python-format +msgid "%s (class in %s)" +msgstr "%s(%s 中的类)" -#: sphinx/ext/apidoc.py:374 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "根据 PEP-0420 隐式命名空间规范解释模块路径" +#: domains/python/__init__.py:275 +#, python-format +msgid "%s() (%s class method)" +msgstr "%s()(%s 类方法)" -#: sphinx/ext/apidoc.py:378 -msgid "file suffix (default: rst)" -msgstr "文件后缀(默认:rst)" +#: domains/python/__init__.py:277 +#, python-format +msgid "%s() (%s static method)" +msgstr "%s()(%s 静态方法)" -#: sphinx/ext/apidoc.py:380 -msgid "generate a full project with sphinx-quickstart" -msgstr "用 sphinx-quickstart 生成完整项目" +#: domains/python/__init__.py:430 +#, python-format +msgid "%s (%s property)" +msgstr "%s(%s 属性)" -#: sphinx/ext/apidoc.py:383 -msgid "append module_path to sys.path, used when --full is given" -msgstr "当指定了 --full 选项,把 module_path 附加到 sys.path" +#: domains/python/__init__.py:470 +#, python-format +msgid "%s (type alias in %s)" +msgstr "%s (%s 中的类型别名)" -#: sphinx/ext/apidoc.py:385 -msgid "project name (default: root module name)" -msgstr "项目名称(默认:根模块名)" +#: domains/python/__init__.py:624 +msgid "Python Module Index" +msgstr "Python 模块索引" -#: sphinx/ext/apidoc.py:387 -msgid "project author(s), used when --full is given" -msgstr "项目作者,指定了 --full 选项时使用" +#: domains/python/__init__.py:625 +msgid "modules" +msgstr "模块" -#: sphinx/ext/apidoc.py:389 -msgid "project version, used when --full is given" -msgstr "项目版本,指定了 --full 选项时使用" +#: domains/python/__init__.py:703 +msgid "Deprecated" +msgstr "已弃用" -#: sphinx/ext/apidoc.py:391 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "项目发行版本,指定了 --full 选项时使用,默认为 --doc-version 的值" +#: domains/python/__init__.py:729 +msgid "exception" +msgstr "异常" -#: sphinx/ext/apidoc.py:394 -msgid "extension options" -msgstr "扩展选项" +#: domains/python/__init__.py:731 +msgid "class method" +msgstr "类方法" -#: sphinx/ext/apidoc.py:427 -#, python-format -msgid "%s is not a directory." -msgstr "%s 不是一个目录。" +#: domains/python/__init__.py:732 +msgid "static method" +msgstr "静态方法" + +#: domains/python/__init__.py:734 +msgid "property" +msgstr "托管属性" -#: sphinx/ext/autosectionlabel.py:49 +#: domains/python/__init__.py:735 +msgid "type alias" +msgstr "类型别名" + +#: domains/python/__init__.py:804 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "为“%s”一节增加标签“%s”" +msgid "" +"duplicate object description of %s, other instance in %s, use :no-index: for" +" one of them" +msgstr "重复的对象描述 %s,另一处为 %s,请在其中一处使用 :no-index:。" -#: sphinx/ext/coverage.py:46 +#: domains/python/__init__.py:974 #, python-format -msgid "invalid regex %r in %s" -msgstr "无效的正则表达式 %r 出现在 %s" +msgid "more than one target found for cross-reference %r: %s" +msgstr "交叉引用 %r 找到了多个目标:%s" + +#: domains/python/__init__.py:1048 +msgid " (deprecated)" +msgstr "(已弃用)" -#: sphinx/ext/coverage.py:75 +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 #, python-format msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)spython.txt." -msgstr "已完成源文件的覆盖率测试,结果保存在 %(outdir)s/python.txt 中,请查阅。" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "重复的 C++ 声明,已经在 %s:%s 处声明。\n声明为“.. cpp:%s:: %s”。" -#: sphinx/ext/coverage.py:89 -#, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "coverage_c_regexes 中有无效的正则表达式 %r" +#: domains/cpp/__init__.py:159 +msgid "Template Parameters" +msgstr "模板参数" -#: sphinx/ext/coverage.py:157 +#: domains/cpp/__init__.py:302 #, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "缺少文档的 C API:%s [%s] 在 %s 文件中" +msgid "%s (C++ %s)" +msgstr "%s(C++ %s)" -#: sphinx/ext/coverage.py:189 -#, python-format -msgid "module %s could not be imported: %s" -msgstr "无法导入模块 %s:%s" +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 +msgid "Return values" +msgstr "返回值" -#: sphinx/ext/coverage.py:340 -#, python-format -msgid "undocumented python function: %s :: %s" -msgstr "缺少文档的 Python 函数: %s :: %s" +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 +msgid "union" +msgstr "联合体" -#: sphinx/ext/coverage.py:356 -#, python-format -msgid "undocumented python class: %s :: %s" -msgstr "缺少文档的 Python 类:%s :: %s" +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 +msgid "member" +msgstr "成员" -#: sphinx/ext/coverage.py:369 -#, python-format -msgid "undocumented python method: %s :: %s :: %s" -msgstr "缺少文档的 Python 方法:%s :: %s :: %s" +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 +msgid "type" +msgstr "类型" -#: sphinx/ext/doctest.py:115 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "“%s”选项中缺少“+”或“-”。" +#: domains/cpp/__init__.py:946 +msgid "concept" +msgstr "概念" -#: sphinx/ext/doctest.py:120 -#, python-format -msgid "'%s' is not a valid option." -msgstr "无效的选项“%s”。" +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 +msgid "enum" +msgstr "枚举" -#: sphinx/ext/doctest.py:134 -#, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "无效的 pyversion 选项“%s”" +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 +msgid "enumerator" +msgstr "枚举成员" -#: sphinx/ext/doctest.py:220 -msgid "invalid TestCode type" -msgstr "无效的 TestCode 类型" +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 +msgid "function parameter" +msgstr "函数参数" + +#: domains/cpp/__init__.py:954 +msgid "template parameter" +msgstr "模板参数" -#: sphinx/ext/doctest.py:281 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "已完成源文件的文档测试,结果保存在 %(outdir)s/output.txt 中,请查阅。" +"Duplicate C declaration, also defined at %s:%s.\n" +"Declaration is '.. c:%s:: %s'." +msgstr "重复的 C 声明,已经在 %s:%s 处声明。\n声明为“.. c:%s:: %s”。" -#: sphinx/ext/doctest.py:438 +#: domains/c/__init__.py:211 #, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "块 %s 没有代码或没有输出,该块出现在 %s:%s" +msgid "%s (C %s)" +msgstr "%s(C %s)" -#: sphinx/ext/doctest.py:526 -#, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "已忽略无效的文档代码:%r" +#: domains/c/__init__.py:778 +msgid "variable" +msgstr "变量" -#: sphinx/ext/duration.py:77 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== 最长读取耗时 =======================" +#: domains/c/__init__.py:780 +msgid "macro" +msgstr "宏" -#: sphinx/ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "可以用 extlink 替换硬编码链接 %r(请尝试改用 %r)" +#: domains/c/__init__.py:781 +msgid "struct" +msgstr "结构体" -#: sphinx/ext/graphviz.py:135 -msgid "Graphviz directive cannot have both content and a filename argument" -msgstr "不能同时指定 Graphviz 指令的内容和文件名参数" +#: domains/std/__init__.py:88 domains/std/__init__.py:108 +#, python-format +msgid "environment variable; %s" +msgstr "环境变量; %s" -#: sphinx/ext/graphviz.py:145 +#: domains/std/__init__.py:116 #, python-format -msgid "External Graphviz file %r not found or reading it failed" -msgstr "外部 Graphviz 文件 %r 不存在或读取失败" +msgid "%s; configuration value" +msgstr "%s; 配置值" -#: sphinx/ext/graphviz.py:152 -msgid "Ignoring \"graphviz\" directive without content." -msgstr "已忽略无内容的“graphviz”指令。" +#: domains/std/__init__.py:172 +msgid "Type" +msgstr "类型" -#: sphinx/ext/graphviz.py:268 -#, python-format -msgid "graphviz_dot executable path must be set! %r" -msgstr "" +#: domains/std/__init__.py:182 +msgid "Default" +msgstr "默认" -#: sphinx/ext/graphviz.py:303 +#: domains/std/__init__.py:239 #, python-format msgid "" -"dot command %r cannot be run (needed for graphviz output), check the " -"graphviz_dot setting" -msgstr "无法运行 dot 命令 %r(为输出 graphviz 所必需),请检查 graphviz_dot 的设置" +"Malformed option description %r, should look like \"opt\", \"-opt args\", \"" +"--opt args\", \"/opt args\" or \"+opt args\"" +msgstr "畸形的选项描述 %r,应是“opt”、“-opt args”、“--opt args”、“/opt args”或“+opt args”形式" -#: sphinx/ext/graphviz.py:310 +#: domains/std/__init__.py:319 #, python-format -msgid "" -"dot exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot 发生错误并退出:\n[stderr]\n%r\n[stdout]\n%r" +msgid "%s command line option" +msgstr "%s命令行选项" -#: sphinx/ext/graphviz.py:313 -#, python-format -msgid "" -"dot did not produce an output file:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "dot 未生成输出文件:\n[stderr]\n%r\n[stdout]\n%r" +#: domains/std/__init__.py:321 +msgid "command line option" +msgstr "命令行选项" -#: sphinx/ext/graphviz.py:329 -#, python-format -msgid "graphviz_output_format must be one of 'png', 'svg', but is %r" -msgstr "graphviz_output_format 的值只能是“png”或“svg”,但现在给定的是 %r" +#: domains/std/__init__.py:461 +msgid "glossary term must be preceded by empty line" +msgstr "术语词汇前必须有空行" -#: sphinx/ext/graphviz.py:333 sphinx/ext/graphviz.py:386 -#: sphinx/ext/graphviz.py:423 -#, python-format -msgid "dot code %r: %s" -msgstr "dot 代码 %r: %s" +#: domains/std/__init__.py:474 +msgid "glossary terms must not be separated by empty lines" +msgstr "术语词汇不能用空行分隔" -#: sphinx/ext/graphviz.py:436 sphinx/ext/graphviz.py:444 -#, python-format -msgid "[graph: %s]" -msgstr "[图表:%s]" +#: domains/std/__init__.py:486 domains/std/__init__.py:504 +msgid "glossary seems to be misformatted, check indentation" +msgstr "术语词汇格式不正确,请检查缩进" -#: sphinx/ext/graphviz.py:438 sphinx/ext/graphviz.py:446 -msgid "[graph]" -msgstr "[图表]" +#: domains/std/__init__.py:729 +msgid "glossary term" +msgstr "术语词汇" -#: sphinx/ext/imgconverter.py:39 -#, python-format -msgid "" -"Unable to run the image conversion command %r. 'sphinx.ext.imgconverter' requires ImageMagick by default. Ensure it is installed, or set the 'image_converter' option to a custom conversion command.\n" -"\n" -"Traceback: %s" -msgstr "无法运行图像转换命令 %r。“sphinx.ext.imgconverter”默认依赖于 ImageMagick。请确保已安装了它,或者可以自定义“image_converter”选项,设置一个其他的转换命令。\n\n回溯信息:%s" +#: domains/std/__init__.py:730 +msgid "grammar token" +msgstr "语法记号" -#: sphinx/ext/imgconverter.py:48 sphinx/ext/imgconverter.py:72 -#, python-format -msgid "" -"convert exited with error:\n" -"[stderr]\n" -"%r\n" -"[stdout]\n" -"%r" -msgstr "格式转换发生错误并退出:\n[stderr]\n%r\n[stdout]\n%r" +#: domains/std/__init__.py:731 +msgid "reference label" +msgstr "引用标签" -#: sphinx/ext/imgconverter.py:67 -#, python-format -msgid "convert command %r cannot be run, check the image_converter setting" -msgstr "无法运行格式转换命令 %r,请检查 image_converter 的设置" +#: domains/std/__init__.py:733 +msgid "environment variable" +msgstr "环境变量" -#: sphinx/ext/imgmath.py:158 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "无法运行 LaTeX 命令 %r (显示数学公式所必需),请检查 imgmath_latex 的设置" +#: domains/std/__init__.py:734 +msgid "program option" +msgstr "程序选项" -#: sphinx/ext/imgmath.py:173 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "无法运行 %s 命令 %r (显示数学公式所必需),请检查 imgmath_%s 的设置" +#: domains/std/__init__.py:735 +msgid "document" +msgstr "文档" -#: sphinx/ext/imgmath.py:327 -#, python-format -msgid "display latex %r: %s" -msgstr "显示 LaTeX %r:%s" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" +msgstr "模块索引" -#: sphinx/ext/imgmath.py:361 +#: domains/std/__init__.py:857 #, python-format -msgid "inline latex %r: %s" -msgstr "内联 LaTeX %r:%s" +msgid "duplicate %s description of %s, other instance in %s" +msgstr "重复的 %s 描述 %s,另一描述出现在 %s" -#: sphinx/ext/imgmath.py:368 sphinx/ext/mathjax.py:53 -msgid "Link to this equation" -msgstr "" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." +msgstr "numfig 已禁用,忽略 :numref:。" -#: sphinx/ext/intersphinx.py:195 +#: domains/std/__init__.py:1124 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "intersphinx 清单被移动过:%s -> %s" +msgid "Failed to create a cross reference. Any number is not assigned: %s" +msgstr "无法创建交叉引用。未指定题图数字:%s" -#: sphinx/ext/intersphinx.py:230 +#: domains/std/__init__.py:1138 #, python-format -msgid "loading intersphinx inventory from %s..." -msgstr "正在从 %s 加载 intersphinx 清单……" - -#: sphinx/ext/intersphinx.py:244 -msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "在读取这些清单时遇到了一些问题,但已找到可用替代:" - -#: sphinx/ext/intersphinx.py:250 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "无法访问任何清单,问题如下:" +msgid "the link has no caption: %s" +msgstr "链接没有标题:%s" -#: sphinx/ext/intersphinx.py:303 +#: domains/std/__init__.py:1153 #, python-format -msgid "(in %s v%s)" -msgstr "(在 %s v%s)" +msgid "invalid numfig_format: %s (%r)" +msgstr "无效的 numfig_format:%s(%r)" -#: sphinx/ext/intersphinx.py:305 +#: domains/std/__init__.py:1157 #, python-format -msgid "(in %s)" -msgstr "(在 %s)" +msgid "invalid numfig_format: %s" +msgstr "无效的 numfig_format:%s" -#: sphinx/ext/intersphinx.py:538 +#: domains/std/__init__.py:1453 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "" +msgid "undefined label: %r" +msgstr "标签未定义:%r" -#: sphinx/ext/intersphinx.py:546 +#: domains/std/__init__.py:1456 #, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "" +msgid "Failed to create a cross reference. A title or caption not found: %r" +msgstr "无法创建交叉引用,缺少标题或图题:%r" -#: sphinx/ext/intersphinx.py:557 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "" +msgid "invalid value set (missing closing brace): %s" +msgstr "无效的值集合(缺少右括号):%s" -#: sphinx/ext/intersphinx.py:750 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "未找到外部 %s:%s 引用目标:%s" +msgid "invalid value set (missing opening brace): %s" +msgstr "无效的值集合(缺少左括号):%s" -#: sphinx/ext/intersphinx.py:775 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "intersphinx identifier %r is not string. Ignored" -msgstr "intersphinx 标识符 %r 不是字符串,已忽略" +msgid "malformed string literal (missing closing quote): %s" +msgstr "异常的字符串字面量(缺少右引号):%s" -#: sphinx/ext/intersphinx.py:797 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read intersphinx_mapping[%s], ignored: %r" -msgstr "无法读取 intersphinx_mapping[%s],已忽略:%r" +msgid "malformed string literal (missing opening quote): %s" +msgstr "异常的字符串字面量(缺少左引号):%s" -#: sphinx/ext/linkcode.py:69 sphinx/ext/viewcode.py:199 -msgid "[source]" -msgstr "[源代码]" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "示例" -#: sphinx/ext/todo.py:69 -msgid "Todo" -msgstr "待处理" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "示例" -#: sphinx/ext/todo.py:102 -#, python-format -msgid "TODO entry found: %s" -msgstr "发现待处理条目:%s" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "关键字参数" -#: sphinx/ext/todo.py:161 -msgid "<>" -msgstr "<>" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "备注" -#: sphinx/ext/todo.py:163 -#, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> 见 %s,第 %d 行。)" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "其他参数" -#: sphinx/ext/todo.py:173 -msgid "original entry" -msgstr "原始条目" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "接受" -#: sphinx/ext/viewcode.py:256 -msgid "highlighting module code... " -msgstr "正在高亮模块代码……" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "引用" -#: sphinx/ext/viewcode.py:284 -msgid "[docs]" -msgstr "[文档]" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "警告" -#: sphinx/ext/viewcode.py:304 -msgid "Module code" -msgstr "模块代码" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "生成器" -#: sphinx/ext/viewcode.py:310 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "

Source code for %s

" -msgstr "

%s 源代码

" +msgid "A mocked object is detected: %r" +msgstr "检测到仿制的对象:%r" -#: sphinx/ext/viewcode.py:336 -msgid "Overview: module code" -msgstr "概览:模块代码" +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 +#, python-format +msgid "alias of %s" +msgstr "%s 的别名" -#: sphinx/ext/viewcode.py:337 -msgid "

All modules for which code is available

" -msgstr "

代码可用的所有模块

" +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 +#, python-format +msgid "Bases: %s" +msgstr "基类:%s" -#: sphinx/ext/autodoc/__init__.py:135 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format msgid "invalid value for member-order option: %s" msgstr "无效的 member-order 选项值:%s" -#: sphinx/ext/autodoc/__init__.py:143 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format msgid "invalid value for class-doc-from option: %s" msgstr "无效的 class-doc-from 选项值:%s" -#: sphinx/ext/autodoc/__init__.py:399 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format msgid "invalid signature for auto%s (%r)" msgstr "无效的 auto%s 签名(%r)" -#: sphinx/ext/autodoc/__init__.py:515 -#, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "在格式化 %s 的参数时报错:%s" - -#: sphinx/ext/autodoc/__init__.py:798 -#, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc:无法确定是否生成 %s.%s (%r) 的文档,抛出了下列异常:\n%s" - -#: sphinx/ext/autodoc/__init__.py:893 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format msgid "" "don't know which module to import for autodocumenting %r (try placing a " @@ -2956,159 +3424,249 @@ msgid "" "explicit module name)" msgstr "无法判断导入哪个模块以自动生成文档 %r(尝试在文档中使用“module”或“currentmodule”指令,或者显式给定模块名)" -#: sphinx/ext/autodoc/__init__.py:937 +#: ext/autodoc/_names.py:89 #, python-format -msgid "A mocked object is detected: %r" -msgstr "检测到仿制的对象:%r" +msgid "signature arguments given for automodule: '%s'" +msgstr "为 automodule 给出的签名参数:%s" -#: sphinx/ext/autodoc/__init__.py:956 +#: ext/autodoc/_names.py:93 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "在格式化 %s 的签名时发生错误:%s" +msgid "return annotation given for automodule: '%s'" +msgstr "返回为 automodule 给出的批注:%s" -#: sphinx/ext/autodoc/__init__.py:1019 +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 msgid "\"::\" in automodule name doesn't make sense" msgstr "automodule 名中的“::”无意义" -#: sphinx/ext/autodoc/__init__.py:1026 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "automodule %s 给定了函数签名参数或返回类型标注" +msgid "Failed to remove %s: %s" +msgstr "删除 %s 失败: %s" -#: sphinx/ext/autodoc/__init__.py:1039 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "将会创建文件 %s。" + +#: ext/apidoc/_cli.py:28 msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ 应是一个字符串列表,而不是 %r (出现在模块 %s 中) -- 已忽略__all__" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\n在 中递归查找 Python 模块和包,然后在 中为每个使用了\nautomodule 指令的包创建一个 reST 文件。\n\n 可以排除生成符合规则的文件/目录的文档。\n\n提示:本脚本默认不会覆盖已有文件。" -#: sphinx/ext/autodoc/__init__.py:1105 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "指定模块的路径,用于生成该模块的文档" + +#: ext/apidoc/_cli.py:50 msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr ":members: 选项中涉及的属性不存在:模块 %s,属性%s" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "以 fnmatch 风格的文件/目录规则,不生成与该规则匹配的文档" -#: sphinx/ext/autodoc/__init__.py:1327 sphinx/ext/autodoc/__init__.py:1404 -#: sphinx/ext/autodoc/__init__.py:2824 -#, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "无法获取函数 %s 的签名:%s" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "存放输出内容的目录" -#: sphinx/ext/autodoc/__init__.py:1618 -#, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "无法获取构造函数 %s 的签名:%s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "在目录树中展示子模块的最大深度(默认:4)" -#: sphinx/ext/autodoc/__init__.py:1745 -#, python-format -msgid "Bases: %s" -msgstr "基类:%s" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "覆盖已有文件" -#: sphinx/ext/autodoc/__init__.py:1759 -#, python-format -msgid "missing attribute %s in object %s" -msgstr "指定了 %s 属性,但对象 %s 缺少该属性" +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "遵循符号链接。配合 collective.recipe.omelette 使用尤其奏效。" + +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "运行脚本,但不创建文件" + +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "给模块创建各自的文档页" + +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "包含“_private”模块" + +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "目录的文件名(默认:modules)" + +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "不创建目录文件" + +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "不创建模块/包的标题(比如当 docstring 中已经有标题时,可以使用这个选项)" + +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "把模块文档放置在子模块文档之前" + +#: ext/apidoc/_cli.py:152 +msgid "" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "根据 PEP-0420 隐式命名空间规范解释模块路径" + +#: ext/apidoc/_cli.py:160 +msgid "" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "传递给 automodule 指令的选项的逗号分隔列表(或使用 SPHINX_APIDOC_OPTIONS)。" + +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "文件后缀(默认:rst)" + +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "删除此次未生成,但存在于输出目录中的文件" + +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "用 sphinx-quickstart 生成完整项目" + +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "当指定了 --full 选项,把 module_path 附加到 sys.path" + +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "项目名称(默认:根模块名)" + +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "项目作者,指定了 --full 选项时使用" + +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "项目版本,指定了 --full 选项时使用" + +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "项目发行版本,指定了 --full 选项时使用,默认为 --doc-version 的值" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "扩展选项" -#: sphinx/ext/autodoc/__init__.py:1858 sphinx/ext/autodoc/__init__.py:1895 -#: sphinx/ext/autodoc/__init__.py:1990 +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "启用任意扩展,在给出 --full 时使用" + +#: ext/apidoc/_cli.py:240 #, python-format -msgid "alias of %s" -msgstr "%s 的别名" +msgid "enable %s extension, used when --full is given" +msgstr "启用 %s 扩展,在给出 --full 时使用" -#: sphinx/ext/autodoc/__init__.py:1878 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "TypeVar(%s) 的别名" +msgid "%s is not a directory." +msgstr "%s 不是一个目录。" + +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" +msgstr "运行 apidoc" -#: sphinx/ext/autodoc/__init__.py:2216 sphinx/ext/autodoc/__init__.py:2316 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "无法获取方法 %s 的签名:%s" +msgid "apidoc_modules item %i must be a dict" +msgstr "apidoc_modules 项目 %i 必须是一个 dict" -#: sphinx/ext/autodoc/__init__.py:2447 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "%s 上有无效的 __slots__,已忽略。" +msgid "apidoc_modules item %i must have a 'path' key" +msgstr "apidoc_modules 项目 %i 必须有一个“path”键" -#: sphinx/ext/autodoc/preserve_defaults.py:190 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "无法解析 %r 的默认参数值:%s" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "apidoc_modules 项目 %i 'path' 必须是一个字符串" -#: sphinx/ext/autodoc/type_comment.py:132 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "无法更新 %r 的签名:未找到参数:%s" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "apidoc_modules 项目 %i 'path' 不是一个存在的文件夹:%s" -#: sphinx/ext/autodoc/type_comment.py:135 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "无法解析 %r 的类型注释:%s" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "apidoc_modules 项目 %i 必须有一个“destination”键" -#: sphinx/ext/autosummary/__init__.py:251 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "autosummary references excluded document %r. Ignored." -msgstr "自动摘要引用了排除的文档 %r,已忽略。" +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "apidoc_modules 项目 %i 'destination' 必须是一个字符串" -#: sphinx/ext/autosummary/__init__.py:253 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "" -"autosummary: stub file not found %r. Check your autosummary_generate " -"setting." -msgstr "自动摘要:无法找到存根文件 %r。请检查你的 autosummary_generate 设置。" +msgid "apidoc_modules item %i 'destination' should be a relative path" +msgstr "apidoc_modules 项目 %i 'destination' 应该是相对路径" -#: sphinx/ext/autosummary/__init__.py:272 -msgid "A captioned autosummary requires :toctree: option. ignored." -msgstr "在自动摘要中指定标题时也需要指定 :toctree: 选项,已忽略。" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "apidoc_modules 项目 %i 无法创建目标目录:%s" -#: sphinx/ext/autosummary/__init__.py:325 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "" -"autosummary: failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "自动摘要:无法导入 %s。\n可能原因:\n%s" +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "apidoc_modules 项目 %i '%s' 必须是一个 int" -#: sphinx/ext/autosummary/__init__.py:339 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "failed to parse name %s" -msgstr "无法解析名称 %s" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "apidoc_modules 项目 %i '%s' 必须是一个 boolean" -#: sphinx/ext/autosummary/__init__.py:344 +#: ext/apidoc/_extension.py:210 #, python-format -msgid "failed to import object %s" -msgstr "无法导入对象 %s" +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "apidoc_modules 项目 %i包含意外的键:%s" -#: sphinx/ext/autosummary/__init__.py:802 +#: ext/apidoc/_extension.py:248 #, python-format -msgid "autosummary_generate: file not found: %s" -msgstr "autosummary_generate 配置项:文件 %s 不存在" +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "apidoc_modules 项目 %i '%s' 必须是一个 sequence" -#: sphinx/ext/autosummary/__init__.py:810 -msgid "" -"autosummary generates .rst files internally. But your source_suffix does not" -" contain .rst. Skipped." -msgstr "" +#: ext/apidoc/_extension.py:257 +#, python-format +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "apidoc_modules 项目 %i '%s' 必须包含字符串" -#: sphinx/ext/autosummary/generate.py:200 -#: sphinx/ext/autosummary/generate.py:358 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format msgid "" "autosummary: failed to determine %r to be documented, the following exception was raised:\n" "%s" msgstr "自动摘要:无法判断是否生成 %r 的文档。抛出了下列异常:\n%s" -#: sphinx/ext/autosummary/generate.py:470 +#: ext/autosummary/generate.py:630 #, python-format msgid "[autosummary] generating autosummary for: %s" msgstr "[自动摘要] 正在生成自动摘要:%s" -#: sphinx/ext/autosummary/generate.py:474 +#: ext/autosummary/generate.py:634 #, python-format msgid "[autosummary] writing to %s" msgstr "[自动摘要] 正在写入 %s" -#: sphinx/ext/autosummary/generate.py:517 +#: ext/autosummary/generate.py:679 #, python-format msgid "" "[autosummary] failed to import %s.\n" @@ -3116,7 +3674,7 @@ msgid "" "%s" msgstr "[自动摘要]无法导入 %s。\n可能原因:\n%s" -#: sphinx/ext/autosummary/generate.py:690 +#: ext/autosummary/generate.py:877 msgid "" "\n" "Generate ReStructuredText using autosummary directives.\n" @@ -3131,639 +3689,639 @@ msgid "" " pydoc sphinx.ext.autosummary\n" msgstr "\n用 autosummary 指令生成 ReStructuredText\n\nsphinx-autogen 是 sphinx.ext.autosummary.generate 的前端,它根据\n给定输入文件中的 autosummary 指令生成 reStructuredText 文件。\n\nautosummary 指令的格式见 Python 模块 ``sphinx.ext.autosummary`` 的\n文档。可以这样调出文档以供阅读::\n\n pydoc sphinx.ext.autosummary\n" -#: sphinx/ext/autosummary/generate.py:707 +#: ext/autosummary/generate.py:899 msgid "source files to generate rST files for" msgstr "用于生成 rst 文件的源文件" -#: sphinx/ext/autosummary/generate.py:711 +#: ext/autosummary/generate.py:907 msgid "directory to place all output in" msgstr "存放输出内容的目录" -#: sphinx/ext/autosummary/generate.py:714 -#, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "默认的文件名后缀(默认:%(default)s)" - -#: sphinx/ext/autosummary/generate.py:718 -#, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "自定义模板目录(默认:%(default)s)" - -#: sphinx/ext/autosummary/generate.py:722 -#, python-format -msgid "document imported members (default: %(default)s)" -msgstr "文档导入的成员(默认:%(default)s)" - -#: sphinx/ext/autosummary/generate.py:726 -#, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "仅生成模块中 __all__ 属性成员的文档。(默认值:%(default)s)" - -#: sphinx/ext/napoleon/__init__.py:341 sphinx/ext/napoleon/docstring.py:728 -msgid "Keyword Arguments" -msgstr "关键字参数" - -#: sphinx/ext/napoleon/docstring.py:682 -msgid "Example" -msgstr "示例" - -#: sphinx/ext/napoleon/docstring.py:683 -msgid "Examples" -msgstr "示例" - -#: sphinx/ext/napoleon/docstring.py:744 -msgid "Notes" -msgstr "备注" - -#: sphinx/ext/napoleon/docstring.py:753 -msgid "Other Parameters" -msgstr "其他参数" - -#: sphinx/ext/napoleon/docstring.py:789 -msgid "Receives" -msgstr "接受" - -#: sphinx/ext/napoleon/docstring.py:793 -msgid "References" -msgstr "引用" - -#: sphinx/ext/napoleon/docstring.py:825 -msgid "Warns" -msgstr "警告" - -#: sphinx/ext/napoleon/docstring.py:829 -msgid "Yields" -msgstr "生成器" - -#: sphinx/ext/napoleon/docstring.py:987 -#, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "无效的值集合(缺少右括号):%s" - -#: sphinx/ext/napoleon/docstring.py:994 -#, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "无效的值集合(缺少左括号):%s" - -#: sphinx/ext/napoleon/docstring.py:1001 -#, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "异常的字符串字面量(缺少右引号):%s" - -#: sphinx/ext/napoleon/docstring.py:1008 -#, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "异常的字符串字面量(缺少左引号):%s" - -#: sphinx/locale/__init__.py:228 -msgid "Attention" -msgstr "注意" - -#: sphinx/locale/__init__.py:229 -msgid "Caution" -msgstr "小心" - -#: sphinx/locale/__init__.py:230 -msgid "Danger" -msgstr "危险" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "默认的文件名后缀(默认:%(default)s)" -#: sphinx/locale/__init__.py:231 -msgid "Error" -msgstr "错误" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "自定义模板目录(默认:%(default)s)" -#: sphinx/locale/__init__.py:232 -msgid "Hint" -msgstr "提示" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "文档导入的成员(默认:%(default)s)" -#: sphinx/locale/__init__.py:233 -msgid "Important" -msgstr "重要" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "仅生成模块中 __all__ 属性成员的文档。(默认值:%(default)s)" -#: sphinx/locale/__init__.py:234 -msgid "Note" -msgstr "备注" +#: ext/autosummary/__init__.py:235 +#, python-format +msgid "autosummary references excluded document %r. Ignored." +msgstr "自动摘要引用了排除的文档 %r,已忽略。" -#: sphinx/locale/__init__.py:235 -msgid "See also" -msgstr "参见" +#: ext/autosummary/__init__.py:239 +#, python-format +msgid "" +"autosummary: stub file not found %r. Check your autosummary_generate " +"setting." +msgstr "自动摘要:无法找到存根文件 %r。请检查你的 autosummary_generate 设置。" -#: sphinx/locale/__init__.py:236 -msgid "Tip" -msgstr "小技巧" +#: ext/autosummary/__init__.py:260 +msgid "A captioned autosummary requires :toctree: option. ignored." +msgstr "在自动摘要中指定标题时也需要指定 :toctree: 选项,已忽略。" -#: sphinx/locale/__init__.py:237 -msgid "Warning" -msgstr "警告" +#: ext/autosummary/__init__.py:329 +#, python-format +msgid "" +"autosummary: failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "自动摘要:无法导入 %s。\n可能原因:\n%s" -#: sphinx/templates/latex/longtable.tex_t:52 -#: sphinx/templates/latex/sphinxmessages.sty_t:8 -msgid "continued from previous page" -msgstr "接上页" +#: ext/autosummary/__init__.py:358 +#, python-format +msgid "failed to import object %s" +msgstr "无法导入对象 %s" -#: sphinx/templates/latex/longtable.tex_t:63 -#: sphinx/templates/latex/sphinxmessages.sty_t:9 -msgid "continues on next page" -msgstr "续下页" +#: ext/autosummary/__init__.py:652 +#, python-format +msgid "" +"Summarised items should not include the current module. Replace %r with %r." +msgstr "摘要项不应该包含当前模块。请把 %r 替换为 %r。" -#: sphinx/templates/latex/sphinxmessages.sty_t:10 -msgid "Non-alphabetical" -msgstr "非字母" +#: ext/autosummary/__init__.py:850 +#, python-format +msgid "autosummary_generate: file not found: %s" +msgstr "autosummary_generate 配置项:文件 %s 不存在" -#: sphinx/templates/latex/sphinxmessages.sty_t:12 -msgid "Numbers" -msgstr "数字" +#: ext/autosummary/__init__.py:860 +msgid "" +"autosummary generates .rst files internally. But your source_suffix does not" +" contain .rst. Skipped." +msgstr "自动摘要功能内部会生成 .rst 文件。但你的 source_suffix 配置中不包含 .rst。已跳过。" -#: sphinx/templates/latex/sphinxmessages.sty_t:13 -msgid "page" -msgstr "页" +#: ext/intersphinx/_load.py:61 +#, python-format +msgid "" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "intersphinx_mapping 中存在无效的 Sphinx 互联项目标识“%r”。项目标识必须是非空字符串。" -#: sphinx/themes/agogo/layout.html:38 sphinx/themes/basic/globaltoc.html:10 -#: sphinx/themes/basic/localtoc.html:12 sphinx/themes/scrolls/layout.html:41 -msgid "Table of Contents" -msgstr "目录" +#: ext/intersphinx/_load.py:72 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "无效值“%r”出现在 intersphinx_mapping[%r]。应为两元素元组或列表。" -#: sphinx/themes/agogo/layout.html:43 sphinx/themes/basic/layout.html:141 -#: sphinx/themes/basic/search.html:11 sphinx/themes/basic/search.html:23 -msgid "Search" -msgstr "搜索" +#: ext/intersphinx/_load.py:83 +#, python-format +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "无效值“%r”出现在 intersphinx_mapping[%r]。此处的值必须是 (目标 URI, 清单位置) 对。" -#: sphinx/themes/agogo/layout.html:46 sphinx/themes/basic/searchbox.html:16 -#: sphinx/themes/basic/searchfield.html:18 -msgid "Go" -msgstr "提交" +#: ext/intersphinx/_load.py:94 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "无效的目标 URI 值“%r”出现在 intersphinx_mapping[%r][0]。目标 URI 必须是唯一的非空字符串。" -#: sphinx/themes/agogo/layout.html:90 sphinx/themes/basic/sourcelink.html:15 -msgid "Show Source" -msgstr "显示源代码" +#: ext/intersphinx/_load.py:103 +#, python-format +msgid "" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "无效的目标 URI 值“%r”出现在 intersphinx_mapping[%r][0]。目标 URI 必须唯一(在 intersphinx_mapping[%r] 发现了相同 URI 值)。" -#: sphinx/themes/basic/defindex.html:11 -msgid "Overview" -msgstr "概述" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "无效的清单位置值“%r”出现在 intersphinx_mapping[%r][1]。清单位置必须是非空字符串或 None。" -#: sphinx/themes/basic/defindex.html:15 -msgid "Welcome! This is" -msgstr "欢迎!" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "无效的“intersphinx_mapping”配置(1 个错误)。" -#: sphinx/themes/basic/defindex.html:16 -msgid "the documentation for" -msgstr "本文档属于" +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "无效的“intersphinx_mapping”配置(%s 个错误)。" -#: sphinx/themes/basic/defindex.html:17 -msgid "last updated" -msgstr "最后更新于" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "在规范化后添加了一个无效的 intersphinx_mapping 条目。" -#: sphinx/themes/basic/defindex.html:20 -msgid "Indices and tables:" -msgstr "索引和表格:" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "正在加载 Sphinx 互联清单“%s”,来自 %s……" -#: sphinx/themes/basic/defindex.html:23 -msgid "Complete Table of Contents" -msgstr "完整目录" +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "在读取这些清单时遇到了一些问题,但已找到可用替代:" -#: sphinx/themes/basic/defindex.html:24 -msgid "lists all sections and subsections" -msgstr "列出所有的章节和部分" +#: ext/intersphinx/_load.py:332 +#, python-format +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "访问任意清单失败,问题如下:\n%s" -#: sphinx/themes/basic/defindex.html:26 -msgid "search this documentation" -msgstr "搜索文档" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "Sphinx 互联清单已移动:%s -> %s" -#: sphinx/themes/basic/defindex.html:28 -msgid "Global Module Index" -msgstr "全局模块索引" +#: ext/intersphinx/_resolve.py:53 +#, python-format +msgid "(in %s %s)" +msgstr "(位于 %s %s)" -#: sphinx/themes/basic/defindex.html:29 -msgid "quick access to all modules" -msgstr "快速查看所有的模块" +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" +msgstr "(在 %s)" -#: sphinx/themes/basic/defindex.html:31 -msgid "all functions, classes, terms" -msgstr "所有函数、类、术语词汇" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" +msgstr "清单“%s”:发现了重复匹配 %s:%s" -#: sphinx/themes/basic/genindex-single.html:33 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Index – %(key)s" -msgstr "索引 – %(key)s" +msgid "inventory '%s': multiple matches found for %s:%s" +msgstr "清单“%s”:发现了多个匹配 %s:%s" -#: sphinx/themes/basic/genindex-single.html:61 -#: sphinx/themes/basic/genindex-split.html:24 -#: sphinx/themes/basic/genindex-split.html:38 -#: sphinx/themes/basic/genindex.html:73 -msgid "Full index on one page" -msgstr "单页全索引" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "未找到外部交叉引用的清单:%r" -#: sphinx/themes/basic/genindex-split.html:16 -msgid "Index pages by letter" -msgstr "字母索引" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "无效的外部交叉引用后缀:%r" -#: sphinx/themes/basic/genindex-split.html:25 -msgid "can be huge" -msgstr "可能会大" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "未找到外部交叉引用的域:%r" -#: sphinx/themes/basic/layout.html:26 -msgid "Navigation" -msgstr "导航" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "未找到外部 %s:%s 引用目标:%s" -#: sphinx/themes/basic/layout.html:126 +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 #, python-format -msgid "Search within %(docstitle)s" -msgstr "在 %(docstitle)s 中搜索" +msgid "error while formatting signature for %s: %s" +msgstr "在格式化 %s 的签名时发生错误:%s" -#: sphinx/themes/basic/layout.html:135 -msgid "About these documents" -msgstr "关于此文档" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "忽略 invalid __all__ in 模块 %s:%r" -#: sphinx/themes/basic/layout.html:144 sphinx/themes/basic/layout.html:188 -#: sphinx/themes/basic/layout.html:190 -msgid "Copyright" -msgstr "版权所有" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "无法获取函数 %s 的签名:%s" -#: sphinx/themes/basic/layout.html:194 sphinx/themes/basic/layout.html:200 +#: ext/autodoc/_dynamic/_type_comments.py:120 #, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "无法更新 %r 的签名:未找到参数:%s" -#: sphinx/themes/basic/layout.html:212 +#: ext/autodoc/_dynamic/_type_comments.py:123 #, python-format -msgid "Last updated on %(last_updated)s." -msgstr "最后更新于 %(last_updated)s." +msgid "Failed to parse type_comment for %r: %s" +msgstr "无法解析 %r 的类型注释:%s" -#: sphinx/themes/basic/layout.html:215 +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 #, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "由 Sphinx %(sphinx_version)s创建。" +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "%s 上有无效的 __slots__,已忽略。" -#: sphinx/themes/basic/opensearch.xml:4 +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 #, python-format -msgid "Search %(docstitle)s" -msgstr "搜索 %(docstitle)s" +msgid "error while formatting arguments for %s: %s" +msgstr "在格式化 %s 的参数时报错:%s" -#: sphinx/themes/basic/relations.html:12 -msgid "Previous topic" -msgstr "上一主题" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "无法获取构造函数 %s 的签名:%s" -#: sphinx/themes/basic/relations.html:14 -msgid "previous chapter" -msgstr "上一章" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "无法获取方法 %s 的签名:%s" -#: sphinx/themes/basic/relations.html:19 -msgid "Next topic" -msgstr "下一主题" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "获取 %s 的签名失败:%s" -#: sphinx/themes/basic/relations.html:21 -msgid "next chapter" -msgstr "下一章" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "无法解析 %r 的默认参数值:%s" -#: sphinx/themes/basic/search.html:28 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Please activate JavaScript to enable the search\n" -" functionality." -msgstr "请激活 JavaScript 以开启搜索功能。" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" +msgstr "属性 %s 已在 :members: 中列出但缺失,它无法在对象 %r 中找到。" -#: sphinx/themes/basic/search.html:36 +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format msgid "" -"Searching for multiple words only shows matches that contain\n" -" all words." -msgstr "当搜索多个关键词时,只会显示同时包含所有关键词的内容。" - -#: sphinx/themes/basic/search.html:43 -msgid "search" -msgstr "搜索" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc:无法确定是否生成 %s.%s (%r) 的文档,抛出了下列异常:\n%s" -#: sphinx/themes/basic/searchbox.html:12 -msgid "Quick search" -msgstr "快速搜索" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "automodule %s 给定了函数签名参数或返回类型标注" -#: sphinx/themes/basic/sourcelink.html:12 -msgid "This Page" -msgstr "本页" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ 应是一个字符串列表,而不是 %r (出现在模块 %s 中) -- 已忽略__all__" -#: sphinx/themes/basic/changes/frameset.html:5 -#: sphinx/themes/basic/changes/versionchanges.html:12 +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 #, python-format -msgid "Changes in Version %(version)s — %(docstitle)s" -msgstr "于版本 %(version)s— %(docstitle)s 变更" +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr ":members: 选项中涉及的属性不存在:模块 %s,属性%s" -#: sphinx/themes/basic/changes/rstsource.html:5 +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 #, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +msgid "missing attribute %s in object %s" +msgstr "指定了 %s 属性,但对象 %s 缺少该属性" -#: sphinx/themes/basic/changes/versionchanges.html:17 +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 #, python-format -msgid "Automatically generated list of changes in version %(version)s" -msgstr "自动生成的 %(version)s 版本变更列表" +msgid "alias of TypeVar(%s)" +msgstr "TypeVar(%s) 的别名" -#: sphinx/themes/basic/changes/versionchanges.html:18 -msgid "Library changes" -msgstr "库的变更" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "无法读取损坏的构建信息文件(未知版本)" -#: sphinx/themes/basic/changes/versionchanges.html:23 -msgid "C API changes" -msgstr "C API 的变更" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "无法读取损坏的构建信息文件(缺少 config 条目)" -#: sphinx/themes/basic/changes/versionchanges.html:25 -msgid "Other changes" -msgstr "其他变更" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" +msgstr "无法读取损坏的构建信息文件(缺少 tags 条目)" -#: sphinx/themes/basic/static/searchtools.js:112 -msgid "Search Results" -msgstr "搜索结果" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML 页面保存在 %(outdir)s 目录。" -#: sphinx/themes/basic/static/searchtools.js:114 -msgid "" -"Your search did not match any documents. Please make sure that all words are" -" spelled correctly and that you've selected enough categories." -msgstr "您的搜索没有匹配到文档。请确保关键词拼写正确,并且选择了合适的分类。" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" +msgstr "读取构建信息文件失败:%r" + +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +msgstr "build_info 不匹配,正在把 .buildinfo 复制为 .buildinfo.bak" -#: sphinx/themes/basic/static/searchtools.js:118 +#: builders/html/__init__.py:355 +msgid "building [html]: " +msgstr "正在构建 [html]:" + +#: builders/html/__init__.py:372 +#, python-format msgid "" -"Search finished, found ${resultCount} page(s) matching the search query." -msgstr "搜索完成,匹配到 ${resultCount} 页。" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" +msgstr "自上次构建后模板 %s 发生了变动,将重新构建所有文档。" -#: sphinx/themes/basic/static/searchtools.js:246 -msgid "Searching" -msgstr "正在搜索中" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "索引" -#: sphinx/themes/basic/static/searchtools.js:262 -msgid "Preparing search..." -msgstr "正在准备搜索……" +#: builders/html/__init__.py:549 +#, python-format +msgid "Logo of %s" +msgstr "%s 的 Logo" -#: sphinx/themes/basic/static/searchtools.js:463 -msgid ", in " -msgstr ",在 " +#: builders/html/__init__.py:578 +msgid "next" +msgstr "下一页" -#: sphinx/themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "隐藏搜索结果" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "上一页" -#: sphinx/themes/classic/layout.html:20 -#: sphinx/themes/classic/static/sidebar.js_t:57 -msgid "Collapse sidebar" -msgstr "折叠边栏" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "正在生成索引" -#: sphinx/themes/classic/static/sidebar.js_t:48 -msgid "Expand sidebar" -msgstr "展开边栏" +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "正在写入附加页面" -#: sphinx/themes/haiku/layout.html:24 -msgid "Contents" -msgstr "目录" +#: builders/html/__init__.py:783 +#, python-format +msgid "cannot copy image file '%s': %s" +msgstr "无法复制图像文件“%s”:%s" -#: sphinx/transforms/__init__.py:128 -msgid "could not calculate translation progress!" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "正在复制可下载文件……" -#: sphinx/transforms/__init__.py:133 -msgid "no translated elements!" -msgstr "" +#: builders/html/__init__.py:807 +#, python-format +msgid "cannot copy downloadable file %r: %s" +msgstr "无法复制可下载文件 %r:%s" -#: sphinx/transforms/__init__.py:250 +#: builders/html/__init__.py:853 #, python-format -msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "索引页使用了 4 列布局,可能是你所用的扩展出现了 Bug:%r" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgstr "向主题的“static”目录复制文件失败:%s: %r" -#: sphinx/transforms/__init__.py:291 +#: builders/html/__init__.py:871 #, python-format -msgid "Footnote [%s] is not referenced." -msgstr "脚注 [%s] 没有被引用过。" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "无法复制 html_static_file 中的文件:%s: %r" -#: sphinx/transforms/__init__.py:297 -msgid "Footnote [#] is not referenced." -msgstr "脚注 [#] 没有被引用过。" +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "正在复制静态文件" -#: sphinx/transforms/i18n.py:205 sphinx/transforms/i18n.py:270 -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "译文中的脚注引用与原文不一致。原文中为:{0},翻文中为:{1}" +#: builders/html/__init__.py:923 +#, python-format +msgid "cannot copy static file %r" +msgstr "无法复制静态文件 %r" -#: sphinx/transforms/i18n.py:245 -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "译文中的引用与原文不一致。原文中为:{0},译文中为:{1}" +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "正在复制额外文件" -#: sphinx/transforms/i18n.py:285 -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "译文中的引文引用与原文不一致。原文中为:{0},译文中为:{1}" +#: builders/html/__init__.py:938 +#, python-format +msgid "cannot copy extra file %r" +msgstr "无法复制额外文件 %r" -#: sphinx/transforms/i18n.py:302 -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "译文中的术语引用与原文不一致。原文中为:{0},译文中为:{1}" +#: builders/html/__init__.py:944 +#, python-format +msgid "Failed to write build info file: %r" +msgstr "写入构建信息文件失败:%r" -#: sphinx/transforms/post_transforms/__init__.py:116 +#: builders/html/__init__.py:994 msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "无法确定交叉引用的回退文本。可能是 Bug。" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "无法加载搜索索引,不会构建所有文档:索引将不完整。" -#: sphinx/transforms/post_transforms/__init__.py:158 +#: builders/html/__init__.py:1038 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "“any”交叉引用 %r 的目标不唯一:可能是 %s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "页面 %s 同时符合两条 html_sidebars 规则:%r 和 %r" -#: sphinx/transforms/post_transforms/__init__.py:209 +#: builders/html/__init__.py:1204 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "未找到 %s:%s 的引用目标: %s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "在渲染页面 %s 时发生了 Unicode 错误。请确保所有包含非 ASCII 字符的配置项均为 Unicode 字符串。" -#: sphinx/transforms/post_transforms/__init__.py:212 +#: builders/html/__init__.py:1217 #, python-format -msgid "%r reference target not found: %s" -msgstr "未找到 %r 的引用目标:%s" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" +msgstr "'%s' 主题不支持此版本的 Sphinx,因为它使用了 HTML 模板中的“style”字段,而该字段在 Sphinx 5.1 中已弃用,并在 Sphinx 7.0 中被移除。必须更新主题才能使用“styles”字段。请参阅 https://www.sphinx-doc.org/en/master/development/html_themes/templating.html#styles" -#: sphinx/transforms/post_transforms/images.py:89 +#: builders/html/__init__.py:1225 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "无法拉取远程图像:%s [%d]" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "渲染页面 %s 时发生了错误。\n原因:%r" -#: sphinx/transforms/post_transforms/images.py:117 -#, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "无法拉取远程图像:%s [%s]" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "正在导出对象清单" -#: sphinx/transforms/post_transforms/images.py:135 +#: builders/html/__init__.py:1266 #, python-format -msgid "Unknown image format: %s..." -msgstr "未知的图像格式:%s……" +msgid "dumping search index in %s" +msgstr "正在导出 %s 的搜索索引" -#: sphinx/util/__init__.py:168 +#: builders/html/__init__.py:1313 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "源码中存在编码无法识别的字符,已经替换为“?”:%r" +msgid "invalid js_file: %r, ignored" +msgstr "无效的 js_file:%r,已忽略" -#: sphinx/util/display.py:78 -msgid "skipped" -msgstr "已跳过" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "注册了多个 math_renderer,但没有选择 math_renderer。" -#: sphinx/util/display.py:83 -msgid "failed" -msgstr "失败" +#: builders/html/__init__.py:1351 +#, python-format +msgid "Unknown math_renderer %r is given." +msgstr "给定的 math_renderer %r 不存在。" -#: sphinx/util/docfields.py:87 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "%s 域中的问题:字段应采用“%s”角色,但域中并不包含该角色。" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path 入口 %r 被置于输出目录内" -#: sphinx/util/docutils.py:295 +#: builders/html/__init__.py:1370 #, python-format -msgid "unknown directive or role name: %s:%s" -msgstr "未知的指令或角色名称:%s:%s" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path 入口 %r 不存在" -#: sphinx/util/docutils.py:591 +#: builders/html/__init__.py:1385 #, python-format -msgid "unknown node type: %r" -msgstr "未知节点类型:%r" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path 入口 %r 置于输出目录内" -#: sphinx/util/i18n.py:94 +#: builders/html/__init__.py:1390 #, python-format -msgid "reading error: %s, %s" -msgstr "读取时发生错误:%s,%s" +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path 入口 %r 不存在" -#: sphinx/util/i18n.py:101 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "writing error: %s, %s" -msgstr "写入时发生错误:%s,%s" +msgid "logo file %r does not exist" +msgstr "logo 文件 %r 不存在" -#: sphinx/util/i18n.py:125 +#: builders/html/__init__.py:1412 #, python-format -msgid "locale_dir %s does not exist" -msgstr "" +msgid "favicon file %r does not exist" +msgstr "favicon 文件 %r 不存在" -#: sphinx/util/i18n.py:215 +#: builders/html/__init__.py:1425 #, python-format msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "无效的日期格式。如果你想直接输出日期字符串,请用单引号包裹该字符串:%s" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." +msgstr "“html_sidebars”的值必须是字符串列表。至少一个模式的值为字符串:%s。请修改为“html_sidebars = %r”。" -#: sphinx/util/nodes.py:386 -#, python-format +#: builders/html/__init__.py:1438 msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r 不再适用于索引款目(源自 %r 款目)。请使用“pair: %s”作为替代。" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "Sphinx 不再支持 HTML 4。(在配置项中检测到了“html4_writer=True”)" -#: sphinx/util/nodes.py:439 +#: builders/html/__init__.py:1454 #, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "目录树引用的文件 %r 不存在" +msgid "%s %s documentation" +msgstr "%s %s 文档" -#: sphinx/util/nodes.py:637 +#: builders/latex/theming.py:87 #, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "only 指令的表达式求值时抛出异常:%s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r 中缺少“theme”配置项" -#: sphinx/util/rst.py:71 +#: builders/latex/theming.py:90 #, python-format -msgid "default role %s not found" -msgstr "未找到默认角色 %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r 中缺少“%s”配置项" -#: sphinx/writers/html5.py:100 sphinx/writers/html5.py:109 -msgid "Link to this definition" -msgstr "" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "无法获取文档名称!" -#: sphinx/writers/html5.py:397 +#: builders/latex/transforms.py:121 #, python-format -msgid "numfig_format is not defined for %s" -msgstr "未定义 %s 的 numfig_format" +msgid "Failed to get a docname for source %r!" +msgstr "无法获取文档源码 %r 的文档名称!" -#: sphinx/writers/html5.py:407 +#: builders/latex/transforms.py:487 #, python-format -msgid "Any IDs not assigned for %s node" -msgstr "没有给 %s 节点分配 ID" +msgid "No footnote was found for given reference node %r" +msgstr "给定的引用节点 %r 没有对应的脚注" -#: sphinx/writers/html5.py:462 -msgid "Link to this term" -msgstr "" +#: builders/latex/__init__.py:115 +#, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTex 文件保存在 %(outdir)s 目录。" -#: sphinx/writers/html5.py:496 sphinx/writers/html5.py:501 -msgid "Link to this heading" -msgstr "" +#: builders/latex/__init__.py:118 +msgid "" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\n在该目录下运行“make”以通过 (pdf)latex 处理这些 LaTex 文件\n(在此处用“make latexpdf”即可自动执行上述操作)。" -#: sphinx/writers/html5.py:505 -msgid "Link to this table" -msgstr "" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "未找到“latex_documents”配置项,不会写入文档" -#: sphinx/writers/html5.py:548 -msgid "Link to this code" -msgstr "" +#: builders/latex/__init__.py:167 +#, python-format +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "配置项“latex_documents”引用的文档 %s 不存在" -#: sphinx/writers/html5.py:550 -msgid "Link to this image" -msgstr "" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "正在复制 TeX 支持文件" -#: sphinx/writers/html5.py:552 -msgid "Link to this toctree" -msgstr "" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "正在复制附加文件" -#: sphinx/writers/html5.py:688 -msgid "Could not obtain image size. :scale: option is ignored." -msgstr "无法获取图像尺寸,已忽略 :scale: 选项。" +#: builders/latex/__init__.py:529 +#, python-format +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "未知配置项:latex_elements[%r],已忽略。" -#: sphinx/writers/latex.py:335 +#: builders/latex/__init__.py:537 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "未知的 %r toplevel_sectioning 被用于 %r 类" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "未知主题选项:latex_theme_options[%r],已忽略。" -#: sphinx/writers/latex.py:386 -msgid "too large :maxdepth:, ignored." -msgstr ":mathdepth: 值过大,已忽略。" +#: environment/collectors/toctree.py:259 +#, python-format +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "已经给 %s 分配了章节编号(嵌套的带编号文档树?)" -#: sphinx/writers/latex.py:625 -msgid "document title is not a single Text node" -msgstr "文档标题不是一个单纯文本节点" +#: environment/collectors/asset.py:98 +#, python-format +msgid "image file not readable: %s" +msgstr "无法读取图像文件:%s" -#: sphinx/writers/latex.py:656 sphinx/writers/texinfo.py:626 -msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" -msgstr "在节、话题、表格、警示或边栏以外的位置发现标题节点" +#: environment/collectors/asset.py:126 +#, python-format +msgid "image file %s not readable: %s" +msgstr "无法读取图像文件 %s:%s" -#: sphinx/writers/latex.py:959 sphinx/writers/manpage.py:259 -#: sphinx/writers/texinfo.py:641 -msgid "Footnotes" -msgstr "脚注" +#: environment/collectors/asset.py:165 +#, python-format +msgid "download file not readable: %s" +msgstr "无法读取下载文件:%s" -#: sphinx/writers/latex.py:1028 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "同时指定了 tabularcolumns 和 :widths: 选项,已忽略 :widths:。" +#: environment/adapters/toctree.py:335 +#, python-format +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "在文档树中检测到循环引用,已忽略:%s <- %s" -#: sphinx/writers/latex.py:1388 +#: environment/adapters/toctree.py:360 #, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "无效的量纲单位 %s,已忽略。" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "目录树引用的文档 %r 缺少标题:不会生成链接" -#: sphinx/writers/latex.py:1722 +#: environment/adapters/toctree.py:375 #, python-format -msgid "unknown index entry type %s found" -msgstr "发现未知的索引条目类型 %s" +msgid "toctree contains reference to non-included document %r" +msgstr "目录树引用了未包含的文档 %r" -#: sphinx/writers/manpage.py:305 sphinx/writers/text.py:907 +#: environment/adapters/toctree.py:378 #, python-format -msgid "[image: %s]" -msgstr "[图片: %s]" +msgid "toctree contains reference to non-existing document %r" +msgstr "目录树包含对不存在的文档 %r 的引用" -#: sphinx/writers/manpage.py:306 sphinx/writers/text.py:908 -msgid "[image]" -msgstr "[图片]" +#: environment/adapters/indexentries.py:122 +#, python-format +msgid "see %s" +msgstr "见 %s" -#: sphinx/writers/texinfo.py:1197 -msgid "caption not inside a figure." -msgstr "在图示之外发现了图题。" +#: environment/adapters/indexentries.py:132 +#, python-format +msgid "see also %s" +msgstr "另请参见 %s" -#: sphinx/writers/texinfo.py:1284 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "unimplemented node type: %r" -msgstr "未实现的节点类型:%r" +msgid "unknown index entry type %r" +msgstr "未知的索引条目类型 %r" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/zh_HK/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/zh_HK/LC_MESSAGES/sphinx.mo index 967b0531ea9186ae85be948edeafd98139979101..796b47a010cd3a95cb1797f18d0fdaa409f6d26d 100644 GIT binary patch delta 24 fcmX@adWdy{I3u^Ak*\n" "Language-Team: Chinese (Hong Kong) (http://app.transifex.com/sphinx-doc/sphinx-1/language/zh_HK/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: zh_HK\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,42 +2923,41 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2826,6 +2966,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2847,119 +2992,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2971,92 +3123,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3084,581 +3229,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3666,548 +3719,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/zh_TW.Big5/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/zh_TW.Big5/LC_MESSAGES/sphinx.mo index a36852c1705fd714d70af3c2caaf8a96e4c66612..ebd115ebae2302fbc182eca46c9075b34247dd6f 100644 GIT binary patch delta 24 fcmcb}dXaU5I3u^Ak*\n" "Language-Team: Chinese (Taiwan) (Big5) (http://app.transifex.com/sphinx-doc/sphinx-1/language/zh_TW.Big5/)\n" @@ -18,6 +18,127 @@ msgstr "" "Language: zh_TW.Big5\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "" + #: extension.py:58 #, python-format msgid "" @@ -32,127 +153,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "" -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -160,12 +308,12 @@ msgid "" "explicit" msgstr "" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -173,82 +321,214 @@ msgid "" "explicit" msgstr "" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" msgstr "" -#: config.py:366 +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "" + +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" msgstr "" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -256,491 +536,648 @@ msgid "" "%s" msgstr "" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" +#: config.py:892 +msgid "" +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." +#: environment/__init__.py:89 +msgid "new config" msgstr "" -#: theming.py:115 -#, python-format -msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +#: environment/__init__.py:90 +msgid "config changed" msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" +#: environment/__init__.py:91 +msgid "extensions changed" msgstr "" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" +#: environment/__init__.py:261 +msgid "build environment version not current" msgstr "" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" +#: environment/__init__.py:263 +msgid "source directory has changed" msgstr "" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" +msgid "The configuration has changed (1 option: %r)" msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" +msgid "The configuration has changed (%d options: %s)" msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." msgstr "" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" +msgid "Failed to scan documents in %s: %r" msgstr "" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" +msgid "Domain %r is not registered" msgstr "" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" msgstr "" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." msgstr "" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" +#: locale/__init__.py:229 +msgid "Attention" msgstr "" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +#: locale/__init__.py:230 +msgid "Caution" msgstr "" -#: events.py:77 -#, python-format -msgid "Event %r already present" +#: locale/__init__.py:231 +msgid "Danger" msgstr "" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" +#: locale/__init__.py:232 +msgid "Error" msgstr "" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" +#: locale/__init__.py:233 +msgid "Hint" msgstr "" -#: project.py:72 -#, python-format -msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." +#: locale/__init__.py:234 +msgid "Important" msgstr "" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." +#: locale/__init__.py:235 +msgid "Note" msgstr "" -#: registry.py:167 -#, python-format -msgid "Builder class %s has no \"name\" attribute" +#: locale/__init__.py:236 +msgid "See also" msgstr "" -#: registry.py:171 -#, python-format -msgid "Builder %r already exists (in module %s)" +#: locale/__init__.py:237 +msgid "Tip" msgstr "" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" +#: locale/__init__.py:238 +msgid "Warning" msgstr "" -#: registry.py:197 +#: builders/texinfo.py:41 #, python-format -msgid "Builder name %s not registered" +msgid "The Texinfo files are in %(outdir)s." msgstr "" -#: registry.py:204 -#, python-format -msgid "domain %s already registered" +#: builders/texinfo.py:44 +msgid "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." msgstr "" -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" msgstr "" -#: registry.py:235 +#: builders/texinfo.py:85 #, python-format -msgid "The %r directive is already registered to domain %s" +msgid "\"texinfo_documents\" config value references unknown document %s" msgstr "" -#: registry.py:253 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "The %r role is already registered to domain %s" +msgid "processing %s" msgstr "" -#: registry.py:266 -#, python-format -msgid "The %r index is already registered to domain %s" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" msgstr "" -#: registry.py:313 -#, python-format -msgid "The %r object_type is already registered" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." msgstr "" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " msgstr "" -#: registry.py:353 -#, python-format -msgid "source_suffix %r is already registered" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " msgstr "" -#: registry.py:363 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "source_parser for %r is already registered" +msgid "cannot copy image file %r: %s" msgstr "" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" msgstr "" -#: registry.py:390 +#: builders/texinfo.py:218 #, python-format -msgid "Translator for %r already exists" +msgid "error writing file Makefile: %s" msgstr "" -#: registry.py:407 +#: builders/manpage.py:37 #, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgid "The manual pages are in %(outdir)s." msgstr "" -#: registry.py:496 -#, python-format -msgid "enumerable_node %r already registered" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" msgstr "" -#: registry.py:512 +#: builders/manpage.py:64 #, python-format -msgid "math renderer %s is already registered" +msgid "\"man_pages\" config value references unknown document %s" msgstr "" -#: registry.py:529 +#: builders/singlehtml.py:35 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." +msgid "The HTML page is in %(outdir)s." msgstr "" -#: registry.py:543 -msgid "Original exception:\n" +#: builders/singlehtml.py:171 +msgid "assembling single document" msgstr "" -#: registry.py:545 -#, python-format -msgid "Could not import extension %s" +#: builders/singlehtml.py:189 +msgid "writing additional files" msgstr "" -#: registry.py:552 -#, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." msgstr "" -#: registry.py:565 +#: builders/gettext.py:243 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." +msgid "The message catalogs are in %(outdir)s." msgstr "" -#: registry.py:577 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" +msgid "building [%s]: " msgstr "" -#: registry.py:612 +#: builders/gettext.py:265 #, python-format -msgid "`None` is not a valid filetype for %r." +msgid "targets for %d template files" msgstr "" -#: roles.py:206 -#, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" +#: builders/gettext.py:271 +msgid "reading templates... " msgstr "" -#: roles.py:229 -#, python-format -msgid "invalid CVE number %s" +#: builders/gettext.py:310 +msgid "writing message catalogs... " msgstr "" -#: roles.py:251 +#: builders/linkcheck.py:87 #, python-format -msgid "Common Weakness Enumeration; CWE %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" msgstr "" -#: roles.py:274 +#: builders/linkcheck.py:159 #, python-format -msgid "invalid CWE number %s" +msgid "broken link: %s (%s)" msgstr "" -#: roles.py:294 +#: builders/linkcheck.py:561 #, python-format -msgid "Python Enhancement Proposals; PEP %s" +msgid "Anchor '%s' not found" msgstr "" -#: roles.py:317 -#, python-format -msgid "invalid PEP number %s" +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." msgstr "" -#: roles.py:355 +#: builders/linkcheck.py:799 #, python-format -msgid "invalid RFC number %s" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" msgstr "" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" +#: builders/epub3.py:83 +#, python-format +msgid "The ePub file is in %(outdir)s." msgstr "" -#: ext/viewcode.py:289 -msgid "highlighting module code... " +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." msgstr "" -#: ext/viewcode.py:320 -msgid "[docs]" +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:346 -msgid "Module code" +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" msgstr "" -#: ext/viewcode.py:353 -#, python-format -msgid "

Source code for %s

" +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:380 -msgid "Overview: module code" +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" msgstr "" -#: ext/extlinks.py:82 -#, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" msgstr "" -#: ext/autosectionlabel.py:52 -#, python-format -msgid "section \"%s\" gets labeled as \"%s\"" +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" msgstr "" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 -#, python-format -msgid "duplicate label %s, other instance in %s" +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" msgstr "" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" msgstr "" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" msgstr "" -#: ext/doctest.py:118 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "missing '+' or '-' in '%s' option." +msgid "invalid css_file: %r, ignored" msgstr "" -#: ext/doctest.py:124 +#: builders/xml.py:29 #, python-format -msgid "'%s' is not a valid option." +msgid "The XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:139 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "'%s' is not a valid pyversion option" +msgid "error writing file %s: %s" msgstr "" -#: ext/doctest.py:226 -msgid "invalid TestCode type" +#: builders/xml.py:103 +#, python-format +msgid "The pseudo-XML files are in %(outdir)s." msgstr "" -#: ext/doctest.py:297 +#: builders/_epub_base.py:223 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." +msgid "duplicated ToC entry found: %s" msgstr "" -#: ext/doctest.py:457 +#: builders/_epub_base.py:436 #, python-format -msgid "no code/output in %s block at %s:%s" +msgid "cannot read image file %r: copying it instead" msgstr "" -#: ext/doctest.py:568 +#: builders/_epub_base.py:467 #, python-format -msgid "ignoring invalid doctest code: %r" +msgid "cannot write image file %r: %s" msgstr "" -#: ext/imgmath.py:162 -#, python-format -msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" msgstr "" -#: ext/imgmath.py:181 -#, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." msgstr "" -#: ext/imgmath.py:344 -#, python-format -msgid "display latex %r: %s" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." msgstr "" -#: ext/imgmath.py:380 -#, python-format -msgid "inline latex %r: %s" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." msgstr "" -#: ext/coverage.py:48 +#: builders/_epub_base.py:594 #, python-format -msgid "invalid regex %r in %s" +msgid "unknown mimetype for %s, ignoring" msgstr "" -#: ext/coverage.py:140 ext/coverage.py:301 -#, python-format -msgid "module %s could not be imported: %s" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" msgstr "" -#: ext/coverage.py:148 -#, python-format +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "" + +#: builders/_epub_base.py:802 +#, python-format +msgid "writing %s file..." +msgstr "" + +#: builders/text.py:27 +#, python-format +msgid "The text files are in %(outdir)s." +msgstr "" + +#: builders/__init__.py:229 +#, python-format +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "" + +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "" + +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "" + +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "" + +#: builders/__init__.py:280 +#, python-format +msgid "all of %d po files" +msgstr "" + +#: builders/__init__.py:302 +#, python-format +msgid "targets for %d po files that are specified" +msgstr "" + +#: builders/__init__.py:314 +#, python-format +msgid "targets for %d po files that are out of date" +msgstr "" + +#: builders/__init__.py:324 +msgid "all source files" +msgstr "" + +#: builders/__init__.py:335 +#, python-format +msgid "file %r given on command line does not exist, " +msgstr "" + +#: builders/__init__.py:342 +#, python-format +msgid "" +"file %r given on command line is not under the source directory, ignoring" +msgstr "" + +#: builders/__init__.py:353 +#, python-format +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "" + +#: builders/__init__.py:366 +#, python-format +msgid "%d source files given on command line" +msgstr "" + +#: builders/__init__.py:382 +#, python-format +msgid "targets for %d source files that are out of date" +msgstr "" + +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "" + +#: builders/__init__.py:415 +#, python-format +msgid "%d found" +msgstr "" + +#: builders/__init__.py:417 +msgid "none found" +msgstr "" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "" + +#: builders/__init__.py:499 +#, python-format +msgid "%s added, %s changed, %s removed" +msgstr "" + +#: builders/__init__.py:536 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." +msgstr "" + +#: builders/__init__.py:545 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." +msgstr "" + +#: builders/__init__.py:556 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." +msgstr "" + +#: builders/__init__.py:563 +#, python-format +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" + +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "" + +#: builders/__init__.py:725 +#, python-format +msgid "docnames to write: %s" +msgstr "" + +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "" + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "" + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "" + +#: ext/coverage.py:148 +#, python-format msgid "" "the following modules are documented but were not specified in " "coverage_modules: %s" msgstr "" #: ext/coverage.py:158 +#, python-format msgid "" "the following modules are specified in coverage_modules but were not " -"documented" +"documented: %s" msgstr "" #: ext/coverage.py:172 @@ -775,6 +1212,34 @@ msgstr "" msgid "undocumented python method: %s :: %s :: %s" msgstr "" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "" + +#: ext/todo.py:152 +msgid "<>" +msgstr "" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -862,947 +1327,993 @@ msgstr "" msgid "[graph]" msgstr "" -#: ext/todo.py:61 -msgid "Todo" -msgstr "" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" msgstr "" -#: ext/todo.py:152 -msgid "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" msgstr "" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" +msgid "display latex %r: %s" msgstr "" -#: ext/todo.py:166 -msgid "original entry" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" msgstr "" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" msgstr "" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" +msgid "missing '+' or '-' in '%s' option." msgstr "" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" +msgid "'%s' is not a valid option." msgstr "" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" +msgid "'%s' is not a valid pyversion option" msgstr "" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" +#: ext/doctest.py:226 +msgid "invalid TestCode type" msgstr "" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." msgstr "" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" +msgid "no code/output in %s block at %s:%s" msgstr "" -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +#: ext/doctest.py:568 +#, python-format +msgid "ignoring invalid doctest code: %r" msgstr "" -#: directives/code.py:314 +#: ext/autosectionlabel.py:52 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" +msgid "section \"%s\" gets labeled as \"%s\"" msgstr "" -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "" - -#: directives/other.py:119 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree glob pattern %r didn't match any documents" +msgid "duplicate label %s, other instance in %s" msgstr "" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to excluded document %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" msgstr "" -#: directives/other.py:156 -#, python-format -msgid "toctree contains reference to nonexisting document %r" +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" msgstr "" -#: directives/other.py:169 +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "" - -#: directives/other.py:203 -msgid "Section author: " +msgid "Total time reading %d file%s: %dm %.3fs" msgstr "" -#: directives/other.py:205 -msgid "Module author: " +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" msgstr "" -#: directives/other.py:207 -msgid "Code author: " +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" msgstr "" -#: directives/other.py:209 -msgid "Author: " +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" msgstr "" -#: directives/other.py:269 -msgid ".. acks content is not a list" +#: ext/viewcode.py:295 +msgid "highlighting module code... " msgstr "" -#: directives/other.py:292 -msgid ".. hlist content is not a list" +#: ext/viewcode.py:326 +msgid "[docs]" msgstr "" -#: builders/changes.py:29 -#, python-format -msgid "The overview file is in %(outdir)s." +#: ext/viewcode.py:352 +msgid "Module code" msgstr "" -#: builders/changes.py:56 +#: ext/viewcode.py:359 #, python-format -msgid "no changes in version %s." +msgid "

Source code for %s

" msgstr "" -#: builders/changes.py:58 -msgid "writing summary file..." +#: ext/viewcode.py:386 +msgid "Overview: module code" msgstr "" -#: builders/changes.py:70 -msgid "Builtins" +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" msgstr "" -#: builders/changes.py:72 -msgid "Module level" +#: domains/citation.py:75 +#, python-format +msgid "duplicate citation %s, other instance in %s" msgstr "" -#: builders/changes.py:124 -msgid "copying source files..." +#: domains/citation.py:92 +#, python-format +msgid "Citation [%s] is not referenced." msgstr "" -#: builders/changes.py:133 +#: domains/math.py:73 #, python-format -msgid "could not read %r for changelog creation" +msgid "duplicate label of equation %s, other instance in %s" msgstr "" -#: builders/manpage.py:37 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "The manual pages are in %(outdir)s." +msgid "Invalid math_eqref_format: %r" msgstr "" -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" +#: domains/javascript.py:183 +#, python-format +msgid "%s() (built-in function)" msgstr "" -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" +#: domains/javascript.py:184 domains/python/__init__.py:279 +#, python-format +msgid "%s() (%s method)" msgstr "" -#: builders/manpage.py:71 +#: domains/javascript.py:186 #, python-format -msgid "\"man_pages\" config value references unknown document %s" +msgid "%s() (class)" msgstr "" -#: builders/__init__.py:224 +#: domains/javascript.py:188 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" +msgid "%s (global variable or constant)" msgstr "" -#: builders/__init__.py:232 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "a suitable image for %s builder not found: %s" +msgid "%s (%s attribute)" msgstr "" -#: builders/__init__.py:255 -msgid "building [mo]: " +#: domains/javascript.py:274 +msgid "Arguments" msgstr "" -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" msgstr "" -#: builders/__init__.py:275 -#, python-format -msgid "all of %d po files" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" msgstr "" -#: builders/__init__.py:297 -#, python-format -msgid "targets for %d po files that are specified" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" msgstr "" -#: builders/__init__.py:309 +#: domains/javascript.py:374 #, python-format -msgid "targets for %d po files that are out of date" +msgid "%s (module)" msgstr "" -#: builders/__init__.py:319 -msgid "all source files" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" msgstr "" -#: builders/__init__.py:330 -#, python-format -msgid "file %r given on command line does not exist, " +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" msgstr "" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" msgstr "" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" msgstr "" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" msgstr "" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" msgstr "" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:458 #, python-format -msgid "building [%s]: " +msgid "duplicate %s description of %s, other %s in %s" msgstr "" -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " +#: domains/rst.py:131 domains/rst.py:190 +#, python-format +msgid "%s (directive)" msgstr "" -#: builders/__init__.py:410 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "%d found" +msgid ":%s: (directive option)" msgstr "" -#: builders/__init__.py:412 -msgid "none found" +#: domains/rst.py:224 +#, python-format +msgid "%s (role)" msgstr "" -#: builders/__init__.py:419 -msgid "pickling environment" +#: domains/rst.py:234 +msgid "directive" msgstr "" -#: builders/__init__.py:426 -msgid "checking consistency" +#: domains/rst.py:235 +msgid "directive-option" msgstr "" -#: builders/__init__.py:430 -msgid "no targets are out of date." +#: domains/rst.py:236 +msgid "role" msgstr "" -#: builders/__init__.py:469 -msgid "updating environment: " +#: domains/rst.py:262 +#, python-format +msgid "duplicate description of %s %s, other instance in %s" msgstr "" -#: builders/__init__.py:494 +#: domains/changeset.py:32 #, python-format -msgid "%s added, %s changed, %s removed" +msgid "Added in version %s" msgstr "" -#: builders/__init__.py:531 +#: domains/changeset.py:33 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." +msgid "Changed in version %s" msgstr "" -#: builders/__init__.py:540 +#: domains/changeset.py:34 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." +msgid "Deprecated since version %s" msgstr "" -#: builders/__init__.py:551 +#: domains/changeset.py:35 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." +msgid "Removed in version %s" msgstr "" -#: builders/__init__.py:558 +#: domains/__init__.py:322 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." +msgid "%s %s" msgstr "" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " +#: cmd/build.py:64 +msgid "job number should be a positive number" msgstr "" -#: builders/__init__.py:713 -#, python-format -msgid "docnames to write: %s" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." msgstr "" -#: builders/__init__.py:715 -msgid "no docnames to write!" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" msgstr "" -#: builders/__init__.py:728 -msgid "preparing documents" +#: cmd/build.py:100 +msgid "path to documentation source files" msgstr "" -#: builders/__init__.py:731 -msgid "copying assets" +#: cmd/build.py:103 +msgid "path to output directory" msgstr "" -#: builders/__init__.py:883 -#, python-format -msgid "undecodable source characters, replacing with \"?\": %r" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" msgstr "" -#: builders/epub3.py:84 -#, python-format -msgid "The ePub file is in %(outdir)s." +#: cmd/build.py:114 +msgid "general options" msgstr "" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" msgstr "" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" msgstr "" -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" msgstr "" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" msgstr "" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" +#: cmd/build.py:150 +msgid "path options" msgstr "" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" msgstr "" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" msgstr "" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" msgstr "" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +#: cmd/build.py:184 +msgid "override a setting in configuration file" msgstr "" -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" msgstr "" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" msgstr "" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" msgstr "" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." +#: cmd/build.py:212 +msgid "console output options" msgstr "" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" msgstr "" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" msgstr "" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." +#: cmd/build.py:233 +msgid "no output at all, not even warnings" msgstr "" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" msgstr "" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "" - -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "" - -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." +#: cmd/build.py:252 +msgid "warning control options" msgstr "" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" msgstr "" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " +#: cmd/build.py:265 +msgid "turn warnings into errors" msgstr "" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" +#: cmd/build.py:273 +msgid "show full traceback on exception" msgstr "" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" +#: cmd/build.py:276 +msgid "run Pdb on exception" msgstr "" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" +#: cmd/build.py:282 +msgid "raise an exception on warnings" msgstr "" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" msgstr "" -#: builders/_epub_base.py:433 +#: cmd/build.py:357 #, python-format -msgid "cannot read image file %r: copying it instead" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" msgstr "" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" msgstr "" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" msgstr "" -#: builders/_epub_base.py:591 -#, python-format -msgid "unknown mimetype for %s, ignoring" +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" msgstr "" -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" msgstr "" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" msgstr "" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" msgstr "" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" msgstr "" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" msgstr "" -#: builders/gettext.py:271 -msgid "reading templates... " +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." msgstr "" -#: builders/gettext.py:307 -msgid "writing message catalogs... " +#: cmd/quickstart.py:127 +msgid "Please enter some text." msgstr "" -#: builders/singlehtml.py:35 +#: cmd/quickstart.py:134 #, python-format -msgid "The HTML page is in %(outdir)s." +msgid "Please enter one of %s." msgstr "" -#: builders/singlehtml.py:171 -msgid "assembling single document" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." msgstr "" -#: builders/singlehtml.py:189 -msgid "writing additional files" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." msgstr "" -#: builders/linkcheck.py:77 +#: cmd/quickstart.py:230 #, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgid "Welcome to the Sphinx %s quickstart utility." msgstr "" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" +#: cmd/quickstart.py:235 +msgid "" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." msgstr "" -#: builders/linkcheck.py:548 +#: cmd/quickstart.py:242 #, python-format -msgid "Anchor '%s' not found" +msgid "Selected root path: %s" msgstr "" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." msgstr "" -#: builders/text.py:29 -#, python-format -msgid "The text files are in %(outdir)s." +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" msgstr "" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." msgstr "" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." msgstr "" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" msgstr "" -#: transforms/i18n.py:344 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." msgstr "" -#: transforms/__init__.py:144 -msgid "no translated elements!" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" msgstr "" -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:287 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." msgstr "" -#: transforms/__init__.py:294 -#, python-format -msgid "Footnote [%s] is not referenced." +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" msgstr "" -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." msgstr "" -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." +#: cmd/quickstart.py:301 +msgid "Project name" msgstr "" -#: _cli/__init__.py:73 -msgid "Usage:" +#: cmd/quickstart.py:303 +msgid "Author name(s)" msgstr "" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." msgstr "" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." +#: cmd/quickstart.py:316 +msgid "Project version" msgstr "" -#: _cli/__init__.py:87 -msgid "Commands:" +#: cmd/quickstart.py:318 +msgid "Project release" msgstr "" -#: _cli/__init__.py:98 -msgid "Options" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." msgstr "" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +#: cmd/quickstart.py:332 +msgid "Project language" msgstr "" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:340 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" +"The file name suffix for source files. Commonly, this is either \".txt\"\n" +"or \".rst\". Only files with this suffix are considered documents." msgstr "" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." +#: cmd/quickstart.py:344 +msgid "Source file suffix" msgstr "" -#: _cli/__init__.py:191 -msgid "Show the version and exit." +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." msgstr "" -#: _cli/__init__.py:199 -msgid "Show this message and exit." +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" msgstr "" -#: _cli/__init__.py:203 -msgid "Logging" +#: cmd/quickstart.py:368 +#, python-format +msgid "" +"Error: the master file %s has already been found in the selected root path." msgstr "" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." msgstr "" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." +#: cmd/quickstart.py:378 +msgid "" +"Please enter a new file name, or rename the existing file and press Enter" msgstr "" -#: _cli/__init__.py:225 -msgid "No output at all" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" msgstr "" -#: _cli/__init__.py:231 -msgid "" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." msgstr "" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." msgstr "" -#: environment/__init__.py:86 -msgid "new config" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" msgstr "" -#: environment/__init__.py:87 -msgid "config changed" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" msgstr "" -#: environment/__init__.py:88 -msgid "extensions changed" +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 +#, python-format +msgid "Creating file %s." msgstr "" -#: environment/__init__.py:253 -msgid "build environment version not current" +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 +#, python-format +msgid "File %s already exists, skipping." msgstr "" -#: environment/__init__.py:255 -msgid "source directory has changed" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." msgstr "" -#: environment/__init__.py:325 +#: cmd/quickstart.py:520 #, python-format -msgid "The configuration has changed (1 option: %r)" +msgid "" +"You should now populate your master file %s and create other documentation\n" +"source files. " msgstr "" -#: environment/__init__.py:330 -#, python-format -msgid "The configuration has changed (%d options: %s)" +#: cmd/quickstart.py:527 +msgid "" +"Use the Makefile to build the docs, like so:\n" +" make builder" msgstr "" -#: environment/__init__.py:336 +#: cmd/quickstart.py:531 #, python-format -msgid "The configuration has changed (%d options: %s, ...)" +msgid "" +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" msgstr "" -#: environment/__init__.py:379 +#: cmd/quickstart.py:538 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." msgstr "" -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" msgstr "" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" +#: cmd/quickstart.py:592 +msgid "quiet mode" msgstr "" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" +#: cmd/quickstart.py:602 +msgid "project root" msgstr "" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." +#: cmd/quickstart.py:605 +msgid "Structure options" msgstr "" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" msgstr "" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" msgstr "" -#: util/i18n.py:113 -#, python-format -msgid "writing error: %s, %s" +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." msgstr "" -#: util/i18n.py:146 -#, python-format -msgid "locale_dir %s does not exist" +#: cmd/quickstart.py:626 +msgid "Project basic options" msgstr "" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." +#: cmd/quickstart.py:628 +msgid "project name" msgstr "" -#: util/i18n.py:245 -#, python-format -msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" +#: cmd/quickstart.py:631 +msgid "author names" msgstr "" -#: util/docfields.py:103 -#, python-format -msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." +#: cmd/quickstart.py:638 +msgid "version of project" msgstr "" -#: util/nodes.py:423 -#, python-format -msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." +#: cmd/quickstart.py:645 +msgid "release of project" msgstr "" -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" +#: cmd/quickstart.py:652 +msgid "document language" msgstr "" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" +#: cmd/quickstart.py:655 +msgid "source file suffix" msgstr "" -#: util/display.py:82 -msgid "skipped" +#: cmd/quickstart.py:658 +msgid "master document name" msgstr "" -#: util/display.py:87 -msgid "failed" +#: cmd/quickstart.py:661 +msgid "use epub" msgstr "" -#: util/osutil.py:131 +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." +"Error: specified path is not a directory, or sphinx files already exist." msgstr "" -#: util/docutils.py:309 -#, python-format -msgid "unknown directive name: %s" +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." msgstr "" -#: util/docutils.py:345 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown role name: %s" +msgid "Invalid template variable: %s" msgstr "" -#: util/docutils.py:789 +#: directives/other.py:119 #, python-format -msgid "unknown node type: %r" +msgid "toctree glob pattern %r didn't match any documents" msgstr "" -#: util/fileutil.py:76 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." +msgid "toctree contains reference to excluded document %r" msgstr "" -#: util/fileutil.py:89 +#: directives/other.py:156 #, python-format -msgid "Writing evaluated template result to %s" +msgid "toctree contains reference to nonexisting document %r" msgstr "" -#: util/rst.py:73 +#: directives/other.py:169 #, python-format -msgid "default role %s not found" +msgid "duplicated entry found in toctree: %s" msgstr "" -#: util/inventory.py:147 -#, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +#: directives/other.py:203 +msgid "Section author: " msgstr "" -#: util/inventory.py:166 -#, python-format -msgid "inventory <%s> contains multiple definitions for %s" +#: directives/other.py:205 +msgid "Module author: " msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" +#: directives/other.py:207 +msgid "Code author: " msgstr "" -#: writers/manpage.py:289 writers/text.py:945 -#, python-format -msgid "[image: %s]" +#: directives/other.py:209 +msgid "Author: " msgstr "" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" +#: directives/other.py:269 +msgid ".. acks content is not a list" msgstr "" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 -#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 -#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 -#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 -#: themes/basic/genindex.html:59 themes/basic/layout.html:127 -#: writers/texinfo.py:514 -msgid "Index" +#: directives/other.py:292 +msgid ".. hlist content is not a list" msgstr "" -#: writers/latex.py:743 writers/texinfo.py:646 +#: directives/patches.py:70 msgid "" -"encountered title node not in section, topic, table, admonition or sidebar" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." msgstr "" -#: writers/texinfo.py:1217 -msgid "caption not inside a figure." +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" msgstr "" -#: writers/texinfo.py:1303 +#: directives/code.py:87 #, python-format -msgid "unimplemented node type: %r" +msgid "Invalid caption: %s" msgstr "" -#: writers/latex.py:361 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "unknown %r toplevel_sectioning for class %r" +msgid "line number spec is out of range(1-%d): %r" msgstr "" -#: builders/latex/__init__.py:224 writers/latex.py:411 +#: directives/code.py:216 #, python-format -msgid "no Babel option known for language %r" +msgid "Cannot use both \"%s\" and \"%s\" options" msgstr "" -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: writers/latex.py:591 +#: directives/code.py:235 #, python-format -msgid "template %s not found; loading from legacy %s instead" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:707 -msgid "document title is not a single Text node" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" msgstr "" -#: writers/html5.py:572 writers/latex.py:1106 +#: directives/code.py:314 #, python-format -msgid "unsupported rubric heading level: %s" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "" + +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "" + +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 +#: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 +#: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 +#: themes/basic/genindex.html:3 themes/basic/genindex.html:26 +#: themes/basic/genindex.html:59 themes/basic/layout.html:127 +#: writers/texinfo.py:514 +msgid "Index" msgstr "" -#: writers/latex.py:1183 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." +"encountered title node not in section, topic, table, admonition or sidebar" msgstr "" -#: writers/latex.py:1580 -#, python-format -msgid "dimension unit %s is invalid. Ignored." +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "" + +#: writers/texinfo.py:1217 +msgid "caption not inside a figure." msgstr "" -#: writers/latex.py:1939 +#: writers/texinfo.py:1303 #, python-format -msgid "unknown index entry type %s found" +msgid "unimplemented node type: %r" msgstr "" -#: domains/math.py:128 writers/latex.py:2495 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "Invalid math_eqref_format: %r" +msgid "[image: %s]" +msgstr "" + +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" msgstr "" #: writers/html5.py:96 writers/html5.py:105 @@ -1831,6 +2342,11 @@ msgstr "" msgid "Link to this table" msgstr "" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + #: writers/html5.py:636 msgid "Link to this code" msgstr "" @@ -1847,793 +2363,477 @@ msgstr "" msgid "Could not obtain image size. :scale: option is ignored." msgstr "" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" msgstr "" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" +msgid "no Babel option known for language %r" msgstr "" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." msgstr "" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" +msgid "template %s not found; loading from legacy %s instead" msgstr "" -#: domains/javascript.py:185 -#, python-format -msgid "%s() (class)" +#: writers/latex.py:732 +msgid "document title is not a single Text node" msgstr "" -#: domains/javascript.py:187 -#, python-format -msgid "%s (global variable or constant)" +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." msgstr "" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1228 #, python-format -msgid "%s (%s attribute)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." msgstr "" -#: domains/javascript.py:273 -msgid "Arguments" +#: writers/latex.py:1615 +#, python-format +msgid "dimension unit %s is invalid. Ignored." msgstr "" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" +#: writers/latex.py:1950 +#, python-format +msgid "unknown index entry type %s found" msgstr "" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" +#: _cli/__init__.py:73 +msgid "Usage:" msgstr "" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" msgstr "" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." msgstr "" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" +#: _cli/__init__.py:87 +msgid "Commands:" msgstr "" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" +#: _cli/__init__.py:98 +msgid "Options" msgstr "" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." msgstr "" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" msgstr "" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." msgstr "" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" +#: _cli/__init__.py:191 +msgid "Show the version and exit." msgstr "" -#: domains/javascript.py:454 -#, python-format -msgid "duplicate %s description of %s, other %s in %s" +#: _cli/__init__.py:199 +msgid "Show this message and exit." msgstr "" -#: domains/changeset.py:26 -#, python-format -msgid "Added in version %s" +#: _cli/__init__.py:203 +msgid "Logging" msgstr "" -#: domains/changeset.py:27 -#, python-format -msgid "Changed in version %s" +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" msgstr "" -#: domains/changeset.py:28 -#, python-format -msgid "Deprecated since version %s" +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." msgstr "" -#: domains/changeset.py:29 -#, python-format -msgid "Removed in version %s" +#: _cli/__init__.py:225 +msgid "No output at all" msgstr "" -#: domains/rst.py:131 domains/rst.py:190 -#, python-format -msgid "%s (directive)" +#: _cli/__init__.py:231 +msgid "" msgstr "" -#: domains/rst.py:191 domains/rst.py:202 -#, python-format -msgid ":%s: (directive option)" +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" msgstr "" -#: domains/rst.py:224 -#, python-format -msgid "%s (role)" +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:234 -msgid "directive" +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" msgstr "" -#: domains/rst.py:235 -msgid "directive-option" +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:236 -msgid "role" +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" msgstr "" -#: domains/rst.py:262 -#, python-format -msgid "duplicate description of %s %s, other instance in %s" +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" msgstr "" -#: domains/citation.py:75 -#, python-format -msgid "duplicate citation %s, other instance in %s" +#: transforms/__init__.py:149 +msgid "no translated elements!" msgstr "" -#: domains/citation.py:92 +#: transforms/__init__.py:258 #, python-format -msgid "Citation [%s] is not referenced." +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" msgstr "" -#: locale/__init__.py:228 -msgid "Attention" +#: transforms/__init__.py:299 +#, python-format +msgid "Footnote [%s] is not referenced." msgstr "" -#: locale/__init__.py:229 -msgid "Caution" +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." msgstr "" -#: locale/__init__.py:230 -msgid "Danger" +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." msgstr "" -#: locale/__init__.py:231 -msgid "Error" +#: util/inventory.py:147 +#, python-format +msgid "inventory <%s> contains duplicate definitions of %s" msgstr "" -#: locale/__init__.py:232 -msgid "Hint" +#: util/inventory.py:166 +#, python-format +msgid "inventory <%s> contains multiple definitions for %s" msgstr "" -#: locale/__init__.py:233 -msgid "Important" +#: util/i18n.py:100 +#, python-format +msgid "reading error: %s, %s" msgstr "" -#: locale/__init__.py:234 -msgid "Note" +#: util/i18n.py:113 +#, python-format +msgid "writing error: %s, %s" msgstr "" -#: locale/__init__.py:235 -msgid "See also" +#: util/i18n.py:146 +#, python-format +msgid "locale_dir %s does not exist" msgstr "" -#: locale/__init__.py:236 -msgid "Tip" +#: util/i18n.py:244 +#, python-format +msgid "Invalid Babel locale: %r." msgstr "" -#: locale/__init__.py:237 -msgid "Warning" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" msgstr "" -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." msgstr "" -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" +#: util/display.py:82 +msgid "skipped" msgstr "" -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" +#: util/display.py:87 +msgid "failed" msgstr "" -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" +#: util/docutils.py:325 +#, python-format +msgid "unknown directive name: %s" msgstr "" -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" +#: util/docutils.py:361 +#, python-format +msgid "unknown role name: %s" msgstr "" -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" +#: util/docutils.py:805 +#, python-format +msgid "unknown node type: %r" msgstr "" -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." msgstr "" -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" +#: util/fileutil.py:89 +#, python-format +msgid "Writing evaluated template result to %s" msgstr "" -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" +#: util/docfields.py:103 +#, python-format +msgid "" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." msgstr "" -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" +#: util/rst.py:73 +#, python-format +msgid "default role %s not found" msgstr "" -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." +#: util/nodes.py:462 +#, python-format +msgid "" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." msgstr "" -#: cmd/quickstart.py:126 -msgid "Please enter some text." +#: util/nodes.py:523 +#, python-format +msgid "toctree contains ref to nonexisting file %r" msgstr "" -#: cmd/quickstart.py:133 +#: util/nodes.py:739 #, python-format -msgid "Please enter one of %s." +msgid "exception while evaluating only directive expression: %s" msgstr "" -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" msgstr "" -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" msgstr "" -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" msgstr "" -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" msgstr "" -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" msgstr "" -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" msgstr "" -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" msgstr "" -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" msgstr "" -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" msgstr "" -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." msgstr "" -#: cmd/quickstart.py:273 +#: transforms/post_transforms/__init__.py:88 msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." msgstr "" -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" msgstr "" -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" msgstr "" -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "" - -#: cmd/quickstart.py:331 -msgid "Project language" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" msgstr "" -#: cmd/quickstart.py:339 -msgid "" -"The file name suffix for source files. Commonly, this is either \".txt\"\n" -"or \".rst\". Only files with this suffix are considered documents." +#: _cli/util/errors.py:190 +msgid "Interrupted!" msgstr "" -#: cmd/quickstart.py:343 -msgid "Source file suffix" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" msgstr "" -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" +#: _cli/util/errors.py:203 +msgid "Recursion error!" msgstr "" -#: cmd/quickstart.py:367 -#, python-format +#: _cli/util/errors.py:207 msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" msgstr "" -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" msgstr "" -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" msgstr "" -#: cmd/quickstart.py:396 +#: _cli/util/errors.py:240 msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." +"To report this error to the developers, please open an issue at " +". Thanks!" msgstr "" -#: cmd/quickstart.py:406 +#: _cli/util/errors.py:246 msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." msgstr "" -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" msgstr "" -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." +#: themes/basic/layout.html:18 +msgid "Navigation" msgstr "" -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 +#: themes/basic/layout.html:115 #, python-format -msgid "File %s already exists, skipping." +msgid "Search within %(docstitle)s" msgstr "" -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." +#: themes/basic/layout.html:124 +msgid "About these documents" msgstr "" -#: cmd/quickstart.py:519 -#, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" msgstr "" -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" msgstr "" -#: cmd/quickstart.py:530 +#: themes/basic/layout.html:183 themes/basic/layout.html:189 #, python-format -msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "" - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "" - -#: cmd/quickstart.py:663 -msgid "Extension options" +msgid "© %(copyright_prefix)s %(copyright)s." msgstr "" -#: cmd/quickstart.py:670 +#: themes/basic/layout.html:201 #, python-format -msgid "enable %s extension" -msgstr "" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "" - -#: cmd/quickstart.py:792 -msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." +msgid "Last updated on %(last_updated)s." msgstr "" -#: cmd/quickstart.py:809 +#: themes/basic/layout.html:204 #, python-format -msgid "Invalid template variable: %s" -msgstr "" - -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "" - -#: cmd/build.py:74 msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "" - -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "" - -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "" - -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "" - -#: cmd/build.py:114 -msgid "general options" -msgstr "" - -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "" - -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "" - -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "" - -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "" - -#: cmd/build.py:150 -msgid "path options" -msgstr "" - -#: cmd/build.py:157 -msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "" - -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "" - -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "" - -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "" - -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "" - -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "" - -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" -msgstr "" - -#: cmd/build.py:212 -msgid "console output options" -msgstr "" - -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "" - -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "" - -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "" - -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "" - -#: cmd/build.py:252 -msgid "warning control options" -msgstr "" - -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "" - -#: cmd/build.py:265 -msgid "turn warnings into errors" +"Created using Sphinx " +"%(sphinx_version)s." msgstr "" -#: cmd/build.py:273 -msgid "show full traceback on exception" +#: themes/basic/relations.html:4 +msgid "Previous topic" msgstr "" -#: cmd/build.py:276 -msgid "run Pdb on exception" +#: themes/basic/relations.html:6 +msgid "previous chapter" msgstr "" -#: cmd/build.py:282 -msgid "raise an exception on warnings" +#: themes/basic/relations.html:11 +msgid "Next topic" msgstr "" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" +#: themes/basic/relations.html:13 +msgid "next chapter" msgstr "" -#: cmd/build.py:357 +#: themes/basic/genindex-single.html:26 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" - -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "" - -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "" - -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "" - -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" +msgid "Index – %(key)s" msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" msgstr "" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" +#: themes/basic/sourcelink.html:4 +msgid "This Page" msgstr "" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "" -#: themes/haiku/layout.html:16 -msgid "Contents" +#: themes/basic/searchbox.html:4 +msgid "Quick search" msgstr "" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" msgstr "" #: themes/basic/defindex.html:4 @@ -2681,7 +2881,7 @@ msgstr "" msgid "quick access to all modules" msgstr "" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "" @@ -2689,22 +2889,14 @@ msgstr "" msgid "all functions, classes, terms" msgstr "" -#: themes/basic/sourcelink.html:4 -msgid "This Page" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" msgstr "" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" +msgid "Search %(docstitle)s" msgstr "" #: themes/basic/genindex-split.html:8 @@ -2715,57 +2907,6 @@ msgstr "" msgid "can be huge" msgstr "" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "" - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2782,42 +2923,41 @@ msgstr "" msgid "search" msgstr "" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" +#: themes/haiku/layout.html:16 +msgid "Contents" msgstr "" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr "" -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" msgstr "" #: themes/basic/changes/frameset.html:5 @@ -2826,6 +2966,11 @@ msgstr "" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2847,119 +2992,126 @@ msgstr "" msgid "Expand sidebar" msgstr "" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "" - -#: domains/python/_object.py:214 -msgid "Raises" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." msgstr "" #: domains/cpp/__init__.py:159 @@ -2971,92 +3123,85 @@ msgstr "" msgid "%s (C++ %s)" msgstr "" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3084,581 +3229,489 @@ msgstr "" msgid "glossary seems to be misformatted, check indentation" msgstr "" -#: domains/std/__init__.py:729 -msgid "glossary term" -msgstr "" - -#: domains/std/__init__.py:730 -msgid "grammar token" -msgstr "" - -#: domains/std/__init__.py:731 -msgid "reference label" -msgstr "" - -#: domains/std/__init__.py:733 -msgid "environment variable" -msgstr "" - -#: domains/std/__init__.py:734 -msgid "program option" -msgstr "" - -#: domains/std/__init__.py:735 -msgid "document" -msgstr "" - -#: domains/std/__init__.py:772 domains/std/__init__.py:785 -msgid "Module Index" -msgstr "" - -#: domains/std/__init__.py:857 -#, python-format -msgid "duplicate %s description of %s, other instance in %s" -msgstr "" - -#: domains/std/__init__.py:1113 -msgid "numfig is disabled. :numref: is ignored." -msgstr "" - -#: domains/std/__init__.py:1124 -#, python-format -msgid "Failed to create a cross reference. Any number is not assigned: %s" -msgstr "" - -#: domains/std/__init__.py:1138 -#, python-format -msgid "the link has no caption: %s" -msgstr "" - -#: domains/std/__init__.py:1153 -#, python-format -msgid "invalid numfig_format: %s (%r)" -msgstr "" - -#: domains/std/__init__.py:1157 -#, python-format -msgid "invalid numfig_format: %s" -msgstr "" - -#: domains/std/__init__.py:1453 -#, python-format -msgid "undefined label: %r" -msgstr "" - -#: domains/std/__init__.py:1456 -#, python-format -msgid "Failed to create a cross reference. A title or caption not found: %r" -msgstr "" - -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "" - -#: environment/adapters/toctree.py:367 -#, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:126 -#, python-format -msgid "image file %s not readable: %s" -msgstr "" - -#: environment/collectors/asset.py:163 -#, python-format -msgid "download file not readable: %s" -msgstr "" - -#: environment/collectors/toctree.py:259 -#, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" +#: domains/std/__init__.py:729 +msgid "glossary term" msgstr "" -#: _cli/util/errors.py:190 -msgid "Interrupted!" +#: domains/std/__init__.py:730 +msgid "grammar token" msgstr "" -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" +#: domains/std/__init__.py:731 +msgid "reference label" msgstr "" -#: _cli/util/errors.py:200 -msgid "Encoding error!" +#: domains/std/__init__.py:733 +msgid "environment variable" msgstr "" -#: _cli/util/errors.py:203 -msgid "Recursion error!" +#: domains/std/__init__.py:734 +msgid "program option" msgstr "" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" +#: domains/std/__init__.py:735 +msgid "document" msgstr "" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" +#: domains/std/__init__.py:772 domains/std/__init__.py:785 +msgid "Module Index" msgstr "" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" +#: domains/std/__init__.py:857 +#, python-format +msgid "duplicate %s description of %s, other instance in %s" msgstr "" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" +#: domains/std/__init__.py:1113 +msgid "numfig is disabled. :numref: is ignored." msgstr "" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." +#: domains/std/__init__.py:1124 +#, python-format +msgid "Failed to create a cross reference. Any number is not assigned: %s" msgstr "" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." +#: domains/std/__init__.py:1138 +#, python-format +msgid "the link has no caption: %s" msgstr "" -#: transforms/post_transforms/__init__.py:237 +#: domains/std/__init__.py:1153 #, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgid "invalid numfig_format: %s (%r)" msgstr "" -#: transforms/post_transforms/__init__.py:299 +#: domains/std/__init__.py:1157 #, python-format -msgid "%s:%s reference target not found: %s" +msgid "invalid numfig_format: %s" msgstr "" -#: transforms/post_transforms/__init__.py:305 +#: domains/std/__init__.py:1453 #, python-format -msgid "%r reference target not found: %s" +msgid "undefined label: %r" msgstr "" -#: transforms/post_transforms/images.py:79 +#: domains/std/__init__.py:1456 #, python-format -msgid "Could not fetch remote image: %s [%s]" +msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "" -#: transforms/post_transforms/images.py:96 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "Could not fetch remote image: %s [%d]" +msgid "invalid value set (missing closing brace): %s" msgstr "" -#: transforms/post_transforms/images.py:143 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "Unknown image format: %s..." +msgid "invalid value set (missing opening brace): %s" msgstr "" -#: builders/html/__init__.py:113 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "The HTML pages are in %(outdir)s." +msgid "malformed string literal (missing closing quote): %s" msgstr "" -#: builders/html/__init__.py:348 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "Failed to read build info file: %r" +msgid "malformed string literal (missing opening quote): %s" msgstr "" -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" +#: ext/napoleon/docstring.py:902 +msgid "Example" msgstr "" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/napoleon/docstring.py:903 +msgid "Examples" msgstr "" -#: builders/html/__init__.py:383 -#, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" +#: ext/napoleon/docstring.py:962 +msgid "Notes" msgstr "" -#: builders/html/__init__.py:560 -#, python-format -msgid "Logo of %s" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" msgstr "" -#: builders/html/__init__.py:598 -msgid "previous" +#: ext/napoleon/docstring.py:1011 +msgid "References" msgstr "" -#: builders/html/__init__.py:696 -msgid "generating indices" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" msgstr "" -#: builders/html/__init__.py:711 -msgid "writing additional pages" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" msgstr "" -#: builders/html/__init__.py:794 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" - -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " +msgid "A mocked object is detected: %r" msgstr "" -#: builders/html/__init__.py:818 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "cannot copy downloadable file %r: %s" +msgid "alias of %s" msgstr "" -#: builders/html/__init__.py:864 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" +msgid "Bases: %s" msgstr "" -#: builders/html/__init__.py:882 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" +msgid "invalid value for member-order option: %s" msgstr "" -#: builders/html/__init__.py:917 -msgid "copying static files" +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 +#, python-format +msgid "invalid value for class-doc-from option: %s" msgstr "" -#: builders/html/__init__.py:934 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "cannot copy static file %r" +msgid "invalid signature for auto%s (%r)" msgstr "" -#: builders/html/__init__.py:939 -msgid "copying extra files" +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 +#, python-format +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" msgstr "" -#: builders/html/__init__.py:949 +#: ext/autodoc/_names.py:89 #, python-format -msgid "cannot copy extra file %r" +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:955 +#: ext/autodoc/_names.py:93 #, python-format -msgid "Failed to write build info file: %r" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:1005 -msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" msgstr "" -#: builders/html/__init__.py:1052 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:1216 +#: ext/apidoc/_generate.py:69 #, python-format +msgid "Would create file %s." +msgstr "" + +#: ext/apidoc/_cli.py:28 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." msgstr "" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "" + +#: ext/apidoc/_cli.py:50 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" +"fnmatch-style file and/or directory patterns to exclude from generation" msgstr "" -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" msgstr "" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." msgstr "" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" msgstr "" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" msgstr "" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" msgstr "" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" msgstr "" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" msgstr "" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" +#: ext/apidoc/_cli.py:135 +msgid "" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" msgstr "" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" msgstr "" -#: builders/html/__init__.py:1420 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" msgstr "" -#: builders/html/__init__.py:1433 +#: ext/apidoc/_cli.py:160 msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." msgstr "" -#: builders/html/__init__.py:1449 -#, python-format -msgid "%s %s documentation" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" msgstr "" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" msgstr "" -#: builders/latex/__init__.py:118 -#, python-format -msgid "The LaTeX files are in %(outdir)s." +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" msgstr "" -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" msgstr "" -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" msgstr "" -#: builders/latex/__init__.py:170 -#, python-format -msgid "\"latex_documents\" config value references unknown document %s" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "" + +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "" + +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" msgstr "" -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" +#: ext/apidoc/_cli.py:240 +#, python-format +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" +#: ext/apidoc/_cli.py:291 +#, python-format +msgid "%s is not a directory." msgstr "" -#: builders/latex/__init__.py:465 -msgid "copying additional files" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:102 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:110 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'path' must be a string" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "No footnote was found for given reference node %r" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "%r doesn't have \"theme\" setting" +msgid "apidoc_modules item %i must have a 'destination' key" msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "%r doesn't have \"%s\" setting" +msgid "apidoc_modules item %i 'destination' must be a string" msgstr "" -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" +#: ext/apidoc/_extension.py:147 +#, python-format +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" +#: ext/apidoc/_extension.py:157 +#, python-format +msgid "apidoc_modules item %i cannot create destination directory: %s" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" +#: ext/apidoc/_extension.py:178 +#, python-format +msgid "apidoc_modules item %i '%s' must be an int" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" +#: ext/apidoc/_extension.py:192 +#, python-format +msgid "apidoc_modules item %i '%s' must be a boolean" msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" +msgid "apidoc_modules item %i '%s' must contain strings" msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" +msgid "[autosummary] generating autosummary for: %s" msgstr "" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" +msgid "[autosummary] writing to %s" msgstr "" -#: ext/napoleon/docstring.py:895 -msgid "Example" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" msgstr "" -#: ext/napoleon/docstring.py:896 -msgid "Examples" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" msgstr "" -#: ext/napoleon/docstring.py:956 -msgid "Notes" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" msgstr "" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" msgstr "" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1005 -msgid "References" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" msgstr "" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" msgstr "" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "" -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3666,548 +3719,585 @@ msgid "" "%s" msgstr "" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." msgstr "" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:135 #, python-format -msgid "default suffix for files (default: %(default)s)" +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." msgstr "" -#: ext/autosummary/generate.py:882 -#, python-format -msgid "custom template directory (default: %(default)s)" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." msgstr "" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_load.py:297 #, python-format -msgid "document imported members (default: %(default)s)" +msgid "loading intersphinx inventory '%s' from %s ..." msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "" + +#: ext/intersphinx/_load.py:332 #, python-format msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" +"failed to reach any of the inventories with the following issues:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_load.py:411 +#, python-format +msgid "intersphinx inventory has moved: %s -> %s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "Failed to remove %s: %s" +msgid "(in %s %s)" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." +#: ext/intersphinx/_resolve.py:55 +#, python-format +msgid "(in %s)" msgstr "" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" +#: ext/intersphinx/_resolve.py:122 +#, python-format +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" msgstr "" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" msgstr "" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" msgstr "" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" msgstr "" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" msgstr "" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" + +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" msgstr "" -#: ext/apidoc/_cli.py:135 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" msgstr "" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" msgstr "" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" msgstr "" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" msgstr "" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" msgstr "" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" msgstr "" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" +#: builders/html/__init__.py:114 +#, python-format +msgid "The HTML pages are in %(outdir)s." msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" +#: builders/html/__init__.py:337 +#, python-format +msgid "Failed to read build info file: %r" msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_cli.py:240 -#, python-format -msgid "enable %s extension, used when --full is given" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:372 #, python-format -msgid "%s is not a directory." +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:496 +msgid "index" msgstr "" -#: ext/apidoc/_extension.py:102 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i must be a dict" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:110 -#, python-format -msgid "apidoc_modules item %i must have a 'path' key" +#: builders/html/__init__.py:578 +msgid "next" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" +#: builders/html/__init__.py:587 +msgid "previous" msgstr "" -#: ext/apidoc/_extension.py:121 -#, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +#: builders/html/__init__.py:685 +msgid "generating indices" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" +#: builders/html/__init__.py:700 +msgid "writing additional pages" msgstr "" -#: ext/apidoc/_extension.py:140 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i 'destination' must be a string" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " msgstr "" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy downloadable file %r: %s" msgstr "" -#: ext/apidoc/_extension.py:178 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i '%s' must be an int" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" +msgid "Failed to copy a file in html_static_file: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:210 -#, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +#: builders/html/__init__.py:906 +msgid "copying static files" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" +msgid "cannot copy static file %r" msgstr "" -#: ext/apidoc/_extension.py:256 -#, python-format -msgid "apidoc_modules item %i '%s' must contain strings" +#: builders/html/__init__.py:928 +msgid "copying extra files" msgstr "" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." +msgid "cannot copy extra file %r" msgstr "" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" +msgid "Failed to write build info file: %r" msgstr "" -#: ext/intersphinx/_resolve.py:51 -#, python-format -msgid "(in %s)" +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." msgstr "" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1038 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" +msgid "page %s matches two patterns in html_sidebars: %r and %r" msgstr "" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory for external cross-reference not found: %r" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:392 +#: builders/html/__init__.py:1225 #, python-format -msgid "invalid external cross-reference suffix: %r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" msgstr "" -#: ext/intersphinx/_resolve.py:403 -#, python-format -msgid "domain for external cross-reference not found: %r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" msgstr "" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1266 #, python-format -msgid "external %s:%s reference target not found: %s" +msgid "dumping search index in %s" msgstr "" -#: ext/intersphinx/_load.py:60 +#: builders/html/__init__.py:1313 #, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." +msgid "invalid js_file: %r, ignored" msgstr "" -#: ext/intersphinx/_load.py:71 -#, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." msgstr "" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." +msgid "Unknown math_renderer %r is given." msgstr "" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." +msgid "html_extra_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." +msgid "html_extra_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." +msgid "html_static_path entry %r is placed inside outdir" msgstr "" -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." +#: builders/html/__init__.py:1390 +#, python-format +msgid "html_static_path entry %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgid "logo file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" msgstr "" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" msgstr "" -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" +#: builders/html/__init__.py:1454 +#, python-format +msgid "%s %s documentation" msgstr "" -#: ext/intersphinx/_load.py:361 +#: builders/latex/theming.py:87 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" +msgid "%r doesn't have \"theme\" setting" msgstr "" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for member-order option: %s" +msgid "%r doesn't have \"%s\" setting" msgstr "" -#: ext/autodoc/__init__.py:158 -#, python-format -msgid "invalid value for class-doc-from option: %s" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" msgstr "" -#: ext/autodoc/__init__.py:460 +#: builders/latex/transforms.py:121 #, python-format -msgid "invalid signature for auto%s (%r)" +msgid "Failed to get a docname for source %r!" msgstr "" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:487 #, python-format -msgid "error while formatting arguments for %s: %s" +msgid "No footnote was found for given reference node %r" msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/__init__.py:115 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" +msgid "The LaTeX files are in %(outdir)s." msgstr "" -#: ext/autodoc/__init__.py:1021 -#, python-format +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." msgstr "" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" msgstr "" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" +msgid "\"latex_documents\" config value references unknown document %s" msgstr "" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" msgstr "" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" msgstr "" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" +msgid "Unknown configure key: latex_elements[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." msgstr "" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" msgstr "" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" +msgid "image file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" +msgid "image file %s not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" +msgid "download file not readable: %s" msgstr "" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" +msgid "circular toctree references detected, ignoring: %s <- %s" msgstr "" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" msgstr "" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" +msgid "toctree contains reference to non-included document %r" msgstr "" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." +msgid "toctree contains reference to non-existing document %r" msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" +msgid "see %s" msgstr "" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" +msgid "see also %s" msgstr "" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" +msgid "unknown index entry type %r" msgstr "" diff --git a/addons/source-python/packages/site-packages/sphinx/locale/zh_TW/LC_MESSAGES/sphinx.mo b/addons/source-python/packages/site-packages/sphinx/locale/zh_TW/LC_MESSAGES/sphinx.mo index 7ec2653d74858840518d883ffd5324b4b55f9dc1..dbc534fcfc47f264af4f656c728accb2294cb593 100644 GIT binary patch delta 12155 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 xrEYbf9rdHCiKDMXOX}R;k@Z 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 PHl47hy<mT diff --git a/addons/source-python/packages/site-packages/sphinx/locale/zh_TW/LC_MESSAGES/sphinx.po b/addons/source-python/packages/site-packages/sphinx/locale/zh_TW/LC_MESSAGES/sphinx.po index dc9c8eb60..7e3fad59e 100644 --- a/addons/source-python/packages/site-packages/sphinx/locale/zh_TW/LC_MESSAGES/sphinx.po +++ b/addons/source-python/packages/site-packages/sphinx/locale/zh_TW/LC_MESSAGES/sphinx.po @@ -11,13 +11,14 @@ # Liang-Bo Wang , 2016 # Liang-Bo Wang , 2016-2017 # Steven Hsu , 2021-2024 +# Tony Ng, 2025 msgid "" msgstr "" "Project-Id-Version: Sphinx\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2025-02-18 00:33+0000\n" +"POT-Creation-Date: 2025-12-01 16:14+0000\n" "PO-Revision-Date: 2013-04-02 08:44+0000\n" -"Last-Translator: Steven Hsu , 2021-2024\n" +"Last-Translator: Tony Ng, 2025\n" "Language-Team: Chinese (Taiwan) (http://app.transifex.com/sphinx-doc/sphinx-1/language/zh_TW/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -26,6 +27,127 @@ msgstr "" "Language: zh_TW\n" "Plural-Forms: nplurals=1; plural=0;\n" +#: roles.py:205 +#, python-format +msgid "Common Vulnerabilities and Exposures; CVE %s" +msgstr "" + +#: roles.py:228 +#, python-format +msgid "invalid CVE number %s" +msgstr "" + +#: roles.py:250 +#, python-format +msgid "Common Weakness Enumeration; CWE %s" +msgstr "" + +#: roles.py:273 +#, python-format +msgid "invalid CWE number %s" +msgstr "" + +#: roles.py:293 +#, python-format +msgid "Python Enhancement Proposals; PEP %s" +msgstr "Python Enhancement Proposals; PEP %s" + +#: roles.py:316 +#, python-format +msgid "invalid PEP number %s" +msgstr "無效的 PEP 號碼 %s" + +#: roles.py:354 +#, python-format +msgid "invalid RFC number %s" +msgstr "無效的 RFC 號碼 %s" + +#: theming.py:117 +#, python-format +msgid "" +"Theme configuration sections other than [theme] and [options] are not " +"supported (tried to get a value from %r)." +msgstr "" + +#: theming.py:122 +#, python-format +msgid "setting %s.%s occurs in none of the searched theme configs" +msgstr "設定 %s。%s 不在已被搜尋的主題組態中出現" + +#: theming.py:137 +#, python-format +msgid "unsupported theme option %r given" +msgstr "未支援的主題選項 %r 被給予" + +#: theming.py:218 +#, python-format +msgid "file %r on theme path is not a valid zipfile or contains no theme" +msgstr "主題路徑中的檔案 %r 不是有效的 zipfile 或未包含主題" + +#: theming.py:238 +#, python-format +msgid "no theme named %r found (missing theme.toml?)" +msgstr "找不到名稱為 %r 的主題(遺失 theme.toml?)" + +#: theming.py:278 +#, python-format +msgid "The %r theme has circular inheritance" +msgstr "%r 主題有循環繼承" + +#: theming.py:286 +#, python-format +msgid "" +"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " +"are: %s" +msgstr "%r 主題是從 %r 繼承的,而它不是一個已載入的主題。已載入的主題是:%s" + +#: theming.py:292 +#, python-format +msgid "The %r theme has too many ancestors" +msgstr "%r 主題有太多上代 (ancestor)" + +#: theming.py:320 +#, python-format +msgid "no theme configuration file found in %r" +msgstr "在 %r 中找不到主題的組態檔" + +#: theming.py:345 theming.py:398 +#, python-format +msgid "theme %r doesn't have the \"theme\" table" +msgstr "主題 %r 內沒有 \"theme\" 表格" + +#: theming.py:349 +#, python-format +msgid "The %r theme \"[theme]\" table is not a table" +msgstr "%r 主題的 \"[theme]\" 表格不是一個表格" + +#: theming.py:353 theming.py:401 +#, python-format +msgid "The %r theme must define the \"theme.inherit\" setting" +msgstr "%r 主題必須定義 \"theme.inherit\" 的設定" + +#: theming.py:357 +#, python-format +msgid "The %r theme \"[options]\" table is not a table" +msgstr "%r 主題的 \"[options]\" 表格不是一個表格" + +#: theming.py:376 +#, python-format +msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" +msgstr "\"theme.pygments_style\" 設定必須是一個表格。提示:\"%s\"" + +#: project.py:72 +#, python-format +msgid "" +"multiple files found for the document \"%s\": %s\n" +"Use %r for the build." +msgstr "" + +#: project.py:87 +#, python-format +msgid "Ignored unreadable document %r." +msgstr "已略過無法讀取的文件 %r 。" + #: extension.py:58 #, python-format msgid "" @@ -40,127 +162,154 @@ msgid "" "cannot be built with the loaded version (%s)." msgstr "這個專案需要擴充套件 %s 的最低版本是 %s,所以無法以載入的版本 (%s) 被建立。" -#: application.py:212 +#: highlighting.py:170 +#, python-format +msgid "Pygments lexer name %r is not known" +msgstr "Pygments lexer 名稱 %r 不是已知的" + +#: highlighting.py:209 +#, python-format +msgid "" +"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " +"Retrying in relaxed mode." +msgstr "將 literal_block %r lex 為 \"%s\" 時,在 token %r 造成錯誤。正在以 relaxed 模式重試中。" + +#: events.py:92 +#, python-format +msgid "Event %r already present" +msgstr "事件 %r 已經存在" + +#: events.py:386 +#, python-format +msgid "Unknown event name: %s" +msgstr "未知的事件名稱:%s" + +#: events.py:451 +#, python-format +msgid "Handler %r for event %r threw an exception" +msgstr "對於事件 %r 的 handler %r 拋出了一個例外" + +#: application.py:218 #, python-format msgid "Cannot find source directory (%s)" msgstr "找不到來源資料夾 (%s)" -#: application.py:217 +#: application.py:223 #, python-format msgid "Output directory (%s) is not a directory" msgstr "輸出資料夾 (%s) 不是一個資料夾" -#: application.py:222 +#: application.py:228 msgid "Source directory and destination directory cannot be identical" msgstr "來源資料夾與目的資料夾不能為相同" -#: application.py:252 +#: application.py:258 #, python-format msgid "Running Sphinx v%s" msgstr "正在執行 Sphinx v%s 版本" -#: application.py:278 +#: application.py:286 #, python-format msgid "" "This project needs at least Sphinx v%s and therefore cannot be built with " "this version." msgstr "本專案需要 Sphinx v%s 版或以上,故無法以現版本編譯。" -#: application.py:297 +#: application.py:305 msgid "making output directory" msgstr "正在建立輸出目錄" -#: application.py:302 registry.py:538 +#: application.py:310 registry.py:540 #, python-format msgid "while setting up extension %s:" msgstr "正在設置擴充套件 %s 時:" -#: application.py:309 +#: application.py:317 msgid "" "'setup' as currently defined in conf.py isn't a Python callable. Please " "modify its definition to make it a callable function. This is needed for " "conf.py to behave as a Sphinx extension." msgstr "目前在 conf.py 裡定義的 'setup' 並非一個 Python 的可呼叫物件。請將其定義修改為一個可呼叫的函式。若要使 conf.py 以 Sphinx 擴充套件的方式運作,這個修改是必須的。" -#: application.py:346 +#: application.py:360 #, python-format msgid "loading translations [%s]... " msgstr "正在載入翻譯 [%s]..." -#: application.py:370 util/display.py:89 +#: application.py:384 util/display.py:89 msgid "done" msgstr "完成" -#: application.py:372 +#: application.py:386 msgid "not available for built-in messages" msgstr "不是有效的內建訊息" -#: application.py:386 +#: application.py:400 msgid "loading pickled environment" msgstr "正在載入已 pickle 的環境" -#: application.py:394 +#: application.py:408 #, python-format msgid "failed: %s" msgstr "失敗:%s" -#: application.py:407 +#: application.py:423 msgid "No builder selected, using default: html" msgstr "沒有指定 builder,使用預設:html" -#: application.py:439 +#: application.py:455 msgid "build finished with problems." msgstr "" -#: application.py:441 +#: application.py:457 msgid "build succeeded." msgstr "" -#: application.py:446 +#: application.py:462 msgid "" "build finished with problems, 1 warning (with warnings treated as errors)." msgstr "" -#: application.py:450 +#: application.py:466 msgid "build finished with problems, 1 warning." msgstr "" -#: application.py:452 +#: application.py:468 msgid "build succeeded, 1 warning." msgstr "" -#: application.py:458 +#: application.py:474 #, python-format msgid "" "build finished with problems, %s warnings (with warnings treated as errors)." msgstr "" -#: application.py:462 +#: application.py:478 #, python-format msgid "build finished with problems, %s warnings." msgstr "" -#: application.py:464 +#: application.py:480 #, python-format msgid "build succeeded, %s warnings." msgstr "" -#: application.py:1026 +#: application.py:1020 #, python-format msgid "node class %r is already registered, its visitors will be overridden" msgstr "node class %r 已經被註冊,它的訪客將會被覆寫" -#: application.py:1119 +#: application.py:1113 #, python-format msgid "directive %r is already registered and will not be overridden" msgstr "" -#: application.py:1145 application.py:1173 +#: application.py:1139 application.py:1167 #, python-format msgid "role %r is already registered and will not be overridden" msgstr "" -#: application.py:1770 +#: application.py:1766 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel reading, " @@ -168,12 +317,12 @@ msgid "" "explicit" msgstr "%s 擴充套件並未宣告平行讀取是否安全,假設為否 - 請尋求擴充套件作者以檢查並明確表示" -#: application.py:1775 +#: application.py:1771 #, python-format msgid "the %s extension is not safe for parallel reading" msgstr "%s 擴充套件對於平行讀取是不安全的" -#: application.py:1779 +#: application.py:1775 #, python-format msgid "" "the %s extension does not declare if it is safe for parallel writing, " @@ -181,82 +330,214 @@ msgid "" "explicit" msgstr "%s 擴充套件並未宣告平行寫入是否安全,假設為否 - 請尋求擴充套件作者以檢查並明確表示" -#: application.py:1784 +#: application.py:1780 #, python-format msgid "the %s extension is not safe for parallel writing" msgstr "%s 擴充套件對於平行寫入是不安全的" -#: application.py:1792 application.py:1796 +#: application.py:1788 application.py:1792 #, python-format msgid "doing serial %s" msgstr "執行串列 %s" -#: config.py:355 +#: registry.py:162 #, python-format -msgid "config directory doesn't contain a conf.py file (%s)" -msgstr "config 資料夾沒有包含 conf.py 檔案 (%s)" +msgid "Builder class %s has no \"name\" attribute" +msgstr "Builder class %s 沒有 \"name\" 屬性" + +#: registry.py:166 +#, python-format +msgid "Builder %r already exists (in module %s)" +msgstr "Builder %r 已存在(於 %s 模組)" + +#: registry.py:182 +#, python-format +msgid "Builder name %s not registered or available through entry point" +msgstr "Builder 名稱 %s 未註冊或無法從 entry point 取得" + +#: registry.py:192 +#, python-format +msgid "Builder name %s not registered" +msgstr "Builder 名稱 %s 未註冊" + +#: registry.py:199 +#, python-format +msgid "domain %s already registered" +msgstr "domain %s 已註冊" + +#: registry.py:223 registry.py:244 registry.py:257 +#, python-format +msgid "domain %s not yet registered" +msgstr "domain %s 尚未被註冊" + +#: registry.py:230 +#, python-format +msgid "The %r directive is already registered to domain %s" +msgstr "%r 指令已註冊給 domain %s" + +#: registry.py:248 +#, python-format +msgid "The %r role is already registered to domain %s" +msgstr "%r 角色已註冊給 domain %s" + +#: registry.py:261 +#, python-format +msgid "The %r index is already registered to domain %s" +msgstr "%r 索引已註冊給 domain %s" + +#: registry.py:308 +#, python-format +msgid "The %r object_type is already registered" +msgstr "%r object_type 已註冊" + +#: registry.py:339 +#, python-format +msgid "The %r crossref_type is already registered" +msgstr "%r crossref_type 已註冊" + +#: registry.py:348 +#, python-format +msgid "source_suffix %r is already registered" +msgstr "source_suffix %r 已註冊" + +#: registry.py:358 +#, python-format +msgid "source_parser for %r is already registered" +msgstr "對於 %r 的 source_parser 已註冊" + +#: registry.py:367 +#, python-format +msgid "Source parser for %s not registered" +msgstr "對於 %s 的源碼剖析器未註冊" + +#: registry.py:388 +#, python-format +msgid "Translator for %r already exists" +msgstr "對於 %r 的翻譯器已經存在" + +#: registry.py:405 +#, python-format +msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" +msgstr "對於 add_node() 的 kwargs 必須是一個 (visit, depart) 函式值組:%r=%r" + +#: registry.py:498 +#, python-format +msgid "enumerable_node %r already registered" +msgstr "enumerable_node %r 已註冊" + +#: registry.py:514 +#, python-format +msgid "math renderer %s is already registered" +msgstr "數學描繪器 %s 已註冊" -#: config.py:366 +#: registry.py:531 +#, python-format msgid "" -"Invalid configuration value found: 'language = None'. Update your " -"configuration to a valid language code. Falling back to 'en' (English)." -msgstr "找到無效的組態值: 'language = None' 。請以一個有效的語言碼更新您的配置。跳回 'en' (英語)。" +"the extension %r was already merged with Sphinx since version %s; this " +"extension is ignored." +msgstr "擴充套件 %r 已被併入 %s 版以上的 Sphinx:此擴充套件已略過。" + +#: registry.py:545 +msgid "Original exception:\n" +msgstr "原始的例外:\n" + +#: registry.py:547 +#, python-format +msgid "Could not import extension %s" +msgstr "無法引入擴充套件 %s" + +#: registry.py:554 +#, python-format +msgid "" +"extension %r has no setup() function; is it really a Sphinx extension " +"module?" +msgstr "擴充套件 %r 沒有 setup() 函式;它真的是 Sphinx 擴充套件模組嗎?" + +#: registry.py:567 +#, python-format +msgid "" +"The %s extension used by this project needs at least Sphinx v%s; it " +"therefore cannot be built with this version." +msgstr "此專案使用的 %s 擴充套件需要 Sphinx v%s 以上的版本;所以它無法以此版本被建立。" + +#: registry.py:579 +#, python-format +msgid "" +"extension %r returned an unsupported object from its setup() function; it " +"should return None or a metadata dictionary" +msgstr "擴充套件 %r 從它的 setup() 函式回傳一個未支援物件;它應該回傳 None 或一個元數據資料夾" + +#: registry.py:605 +#, python-format +msgid "`None` is not a valid filetype for %r." +msgstr "" + +#: config.py:351 +#, python-format +msgid "config directory doesn't contain a conf.py file (%s)" +msgstr "config 資料夾沒有包含 conf.py 檔案 (%s)" -#: config.py:394 +#: config.py:374 #, python-format msgid "'%s' must be '0' or '1', got '%s'" msgstr "" -#: config.py:399 +#: config.py:379 #, python-format msgid "" "cannot override dictionary config setting %r, ignoring (use %r to set " "individual elements)" msgstr "無法覆寫資料夾組態設定 %r,忽略中(使用 %r 來設定個別元素)" -#: config.py:411 +#: config.py:391 #, python-format msgid "invalid number %r for config value %r, ignoring" msgstr "無效的數字 %r 於組態值 %r,忽略中" -#: config.py:419 +#: config.py:399 #, python-format msgid "cannot override config setting %r with unsupported type, ignoring" msgstr "無法以未支援的型別覆寫組態設定 %r,忽略中" -#: config.py:442 +#: config.py:422 #, python-format msgid "unknown config value %r in override, ignoring" msgstr "覆寫未知的組態值 %r,忽略中" -#: config.py:496 +#: config.py:476 #, python-format msgid "No such config value: %r" msgstr "缺少此組態值:%r" -#: config.py:524 +#: config.py:504 #, python-format msgid "Config value %r already present" msgstr "組態值 %r 已經存在" -#: config.py:561 +#: config.py:541 #, python-format msgid "" "cannot cache unpickleable configuration value: %r (because it contains a " "function, class, or module object)" msgstr "" -#: config.py:603 +#: config.py:577 +msgid "" +"Invalid configuration value found: 'language = None'. Update your " +"configuration to a valid language code. Falling back to 'en' (English)." +msgstr "找到無效的組態值: 'language = None' 。請以一個有效的語言碼更新您的配置。跳回 'en' (英語)。" + +#: config.py:599 #, python-format msgid "There is a syntax error in your configuration file: %s\n" msgstr "在您的組態檔中有一個語法錯誤:%s\n" -#: config.py:607 +#: config.py:603 msgid "" "The configuration file (or one of the modules it imports) called sys.exit()" msgstr "組態檔(或它 import 的其中一個模組)呼叫了 sys.exit()" -#: config.py:615 +#: config.py:611 #, python-format msgid "" "There is a programmable error in your configuration file:\n" @@ -264,525 +545,710 @@ msgid "" "%s" msgstr "在您的組態檔中有一個程式化錯誤:\n\n%s" -#: config.py:637 +#: config.py:633 #, python-format msgid "Failed to convert %r to a frozenset" msgstr "" -#: config.py:655 config.py:663 +#: config.py:651 config.py:659 #, python-format msgid "Converting `source_suffix = %r` to `source_suffix = %r`." msgstr "" -#: config.py:669 +#: config.py:665 #, python-format msgid "" "The config value `source_suffix' expects a dictionary, a string, or a list " "of strings. Got `%r' instead (type %s)." msgstr "" -#: config.py:690 +#: config.py:686 #, python-format msgid "Section %s" msgstr "章節 %s" -#: config.py:691 +#: config.py:687 #, python-format msgid "Fig. %s" msgstr "圖 %s" -#: config.py:692 +#: config.py:688 #, python-format msgid "Table %s" msgstr "表格 %s" -#: config.py:693 +#: config.py:689 #, python-format msgid "Listing %s" msgstr "列表 %s" -#: config.py:802 +#: config.py:798 #, python-brace-format msgid "" "The config value `{name}` has to be a one of {candidates}, but `{current}` " "is given." msgstr "組態值 `{name}` 必須是 {candidates} 的其中之一,但 `{current}` 被給予。" -#: config.py:833 +#: config.py:829 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}'; expected " "{permitted}." msgstr "組態值 `{name}' 有 `{current.__name__}' 型別;預期 {permitted} 。" -#: config.py:850 +#: config.py:846 #, python-brace-format msgid "" "The config value `{name}' has type `{current.__name__}', defaults to " "`{default.__name__}'." msgstr "組態值 `{name}' 有 `{current.__name__}' 型別;預設為 `{default.__name__}' 。" -#: config.py:862 +#: config.py:858 #, python-format msgid "primary_domain %r not found, ignored." msgstr "找不到 primary_domain %r,已略過。" -#: config.py:882 +#: config.py:878 msgid "" "Sphinx now uses \"index\" as the master document by default. To keep pre-2.0" " behaviour, set \"master_doc = 'contents'\"." msgstr "" -#: highlighting.py:170 -#, python-format -msgid "Pygments lexer name %r is not known" -msgstr "Pygments lexer 名稱 %r 不是已知的" - -#: highlighting.py:209 -#, python-format -msgid "" -"Lexing literal_block %r as \"%s\" resulted in an error at token: %r. " -"Retrying in relaxed mode." -msgstr "將 literal_block %r lex 為 \"%s\" 時,在 token %r 造成錯誤。正在以 relaxed 模式重試中。" - -#: theming.py:115 -#, python-format +#: config.py:892 msgid "" -"Theme configuration sections other than [theme] and [options] are not " -"supported (tried to get a value from %r)." +"Support for source encodings other than UTF-8 is deprecated and will be " +"removed in Sphinx 10. Please comment at https://github.com/sphinx-" +"doc/sphinx/issues/13665 if this causes a problem." msgstr "" -#: theming.py:120 -#, python-format -msgid "setting %s.%s occurs in none of the searched theme configs" -msgstr "設定 %s。%s 不在已被搜尋的主題組態中出現" +#: environment/__init__.py:89 +msgid "new config" +msgstr "新的組態" -#: theming.py:135 -#, python-format -msgid "unsupported theme option %r given" -msgstr "未支援的主題選項 %r 被給予" +#: environment/__init__.py:90 +msgid "config changed" +msgstr "組態已變更" -#: theming.py:208 -#, python-format -msgid "file %r on theme path is not a valid zipfile or contains no theme" -msgstr "主題路徑中的檔案 %r 不是有效的 zipfile 或未包含主題" +#: environment/__init__.py:91 +msgid "extensions changed" +msgstr "擴充套件已變更" + +#: environment/__init__.py:261 +msgid "build environment version not current" +msgstr "建立環境的版本不是目前的" + +#: environment/__init__.py:263 +msgid "source directory has changed" +msgstr "來源資料夾已變更" -#: theming.py:228 +#: environment/__init__.py:350 #, python-format -msgid "no theme named %r found (missing theme.toml?)" -msgstr "找不到名稱為 %r 的主題(遺失 theme.toml?)" +msgid "The configuration has changed (1 option: %r)" +msgstr "" -#: theming.py:268 +#: environment/__init__.py:355 #, python-format -msgid "The %r theme has circular inheritance" -msgstr "%r 主題有循環繼承" +msgid "The configuration has changed (%d options: %s)" +msgstr "" -#: theming.py:276 +#: environment/__init__.py:361 #, python-format +msgid "The configuration has changed (%d options: %s, ...)" +msgstr "" + +#: environment/__init__.py:404 msgid "" -"The %r theme inherits from %r, which is not a loaded theme. Loaded themes " -"are: %s" -msgstr "%r 主題是從 %r 繼承的,而它不是一個已載入的主題。已載入的主題是:%s" +"This environment is incompatible with the selected builder, please choose " +"another doctree directory." +msgstr "這個環境與所選的 builder 不相容,請選擇另一個 doctree 資料夾。" -#: theming.py:282 +#: environment/__init__.py:518 #, python-format -msgid "The %r theme has too many ancestors" -msgstr "%r 主題有太多上代 (ancestor)" +msgid "Failed to scan documents in %s: %r" +msgstr "無法掃描 %s 中的文件: %r" -#: theming.py:310 +#: environment/__init__.py:645 ext/intersphinx/_resolve.py:238 #, python-format -msgid "no theme configuration file found in %r" -msgstr "在 %r 中找不到主題的組態檔" +msgid "Domain %r is not registered" +msgstr "Domain %r 未被註冊" -#: theming.py:335 theming.py:388 -#, python-format -msgid "theme %r doesn't have the \"theme\" table" -msgstr "主題 %r 內沒有 \"theme\" 表格" +#: environment/__init__.py:811 +msgid "document isn't included in any toctree" +msgstr "文件未被包含於任何 toctree" -#: theming.py:339 -#, python-format -msgid "The %r theme \"[theme]\" table is not a table" -msgstr "%r 主題的 \"[theme]\" 表格不是一個表格" +#: environment/__init__.py:922 +msgid "self referenced toctree found. Ignored." +msgstr "找到自我參照的 toctree。已略過。" -#: theming.py:343 theming.py:391 +#: environment/__init__.py:952 #, python-format -msgid "The %r theme must define the \"theme.inherit\" setting" -msgstr "%r 主題必須定義 \"theme.inherit\" 的設定" +msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" +msgstr "" -#: theming.py:347 -#, python-format -msgid "The %r theme \"[options]\" table is not a table" -msgstr "%r 主題的 \"[options]\" 表格不是一個表格" +#: locale/__init__.py:229 +msgid "Attention" +msgstr "注意" -#: theming.py:366 -#, python-format -msgid "The \"theme.pygments_style\" setting must be a table. Hint: \"%s\"" -msgstr "\"theme.pygments_style\" 設定必須是一個表格。提示:\"%s\"" +#: locale/__init__.py:230 +msgid "Caution" +msgstr "警示" -#: events.py:77 -#, python-format -msgid "Event %r already present" -msgstr "事件 %r 已經存在" +#: locale/__init__.py:231 +msgid "Danger" +msgstr "危險" -#: events.py:370 -#, python-format -msgid "Unknown event name: %s" -msgstr "未知的事件名稱:%s" +#: locale/__init__.py:232 +msgid "Error" +msgstr "錯誤" -#: events.py:416 -#, python-format -msgid "Handler %r for event %r threw an exception" -msgstr "對於事件 %r 的 handler %r 拋出了一個例外" +#: locale/__init__.py:233 +msgid "Hint" +msgstr "提示" -#: project.py:72 +#: locale/__init__.py:234 +msgid "Important" +msgstr "重要" + +#: locale/__init__.py:235 +msgid "Note" +msgstr "備註" + +#: locale/__init__.py:236 +msgid "See also" +msgstr "請參閱" + +#: locale/__init__.py:237 +msgid "Tip" +msgstr "小訣竅" + +#: locale/__init__.py:238 +msgid "Warning" +msgstr "警告" + +#: builders/texinfo.py:41 #, python-format +msgid "The Texinfo files are in %(outdir)s." +msgstr "Texinfo 檔案在 %(outdir)s 。" + +#: builders/texinfo.py:44 msgid "" -"multiple files found for the document \"%s\": %s\n" -"Use %r for the build." -msgstr "" +"\n" +"Run 'make' in that directory to run these through makeinfo\n" +"(use 'make info' here to do that automatically)." +msgstr "\n在該目錄中執行 'make' 以透過 makeinfo 執行這些\n(在此使用 'make info' 以自動執行)" -#: project.py:87 -#, python-format -msgid "Ignored unreadable document %r." -msgstr "已略過無法讀取的文件 %r 。" +#: builders/texinfo.py:73 +msgid "no \"texinfo_documents\" config value found; no documents will be written" +msgstr "未找到 \"texinfo_documents\" 組態值;不會編寫任何文件" -#: registry.py:167 +#: builders/texinfo.py:85 #, python-format -msgid "Builder class %s has no \"name\" attribute" -msgstr "Builder class %s 沒有 \"name\" 屬性" +msgid "\"texinfo_documents\" config value references unknown document %s" +msgstr "\"texinfo_documents\" 組態值引用未知的文件 %s" -#: registry.py:171 +#: builders/latex/__init__.py:310 builders/texinfo.py:105 #, python-format -msgid "Builder %r already exists (in module %s)" -msgstr "Builder %r 已存在(於 %s 模組)" +msgid "processing %s" +msgstr "正在處理 %s" -#: registry.py:187 -#, python-format -msgid "Builder name %s not registered or available through entry point" -msgstr "Builder 名稱 %s 未註冊或無法從 entry point 取得" +#: builders/latex/__init__.py:332 builders/manpage.py:54 +#: builders/singlehtml.py:176 builders/texinfo.py:111 +msgid "writing" +msgstr "編寫中" -#: registry.py:197 -#, python-format -msgid "Builder name %s not registered" -msgstr "Builder 名稱 %s 未註冊" +#: builders/latex/__init__.py:398 builders/texinfo.py:160 +msgid "resolving references..." +msgstr "正在解析參照..." -#: registry.py:204 -#, python-format -msgid "domain %s already registered" -msgstr "domain %s 已註冊" +#: builders/latex/__init__.py:409 builders/texinfo.py:170 +msgid " (in " +msgstr " (於 " -#: registry.py:228 registry.py:249 registry.py:262 -#, python-format -msgid "domain %s not yet registered" -msgstr "domain %s 尚未被註冊" +#: builders/_epub_base.py:425 builders/html/__init__.py:768 +#: builders/latex/__init__.py:474 builders/texinfo.py:186 +msgid "copying images... " +msgstr "正在複製圖片..." -#: registry.py:235 +#: builders/_epub_base.py:447 builders/latex/__init__.py:489 +#: builders/texinfo.py:203 #, python-format -msgid "The %r directive is already registered to domain %s" -msgstr "%r 指令已註冊給 domain %s" +msgid "cannot copy image file %r: %s" +msgstr "無法複製圖片檔 %r: %s" -#: registry.py:253 -#, python-format -msgid "The %r role is already registered to domain %s" -msgstr "%r 角色已註冊給 domain %s" +#: builders/texinfo.py:210 +msgid "copying Texinfo support files" +msgstr "正在複製 Texinfo 支援檔案" -#: registry.py:266 +#: builders/texinfo.py:218 #, python-format -msgid "The %r index is already registered to domain %s" -msgstr "%r 索引已註冊給 domain %s" +msgid "error writing file Makefile: %s" +msgstr "錯誤寫入檔案 Makefile: %s" -#: registry.py:313 +#: builders/manpage.py:37 #, python-format -msgid "The %r object_type is already registered" -msgstr "%r object_type 已註冊" +msgid "The manual pages are in %(outdir)s." +msgstr "手冊頁面在 %(outdir)s" -#: registry.py:344 -#, python-format -msgid "The %r crossref_type is already registered" -msgstr "%r crossref_type 已註冊" +#: builders/manpage.py:45 +msgid "no \"man_pages\" config value found; no manual pages will be written" +msgstr "未找到 \"man_pages\" 組態值:不會編寫任何手冊頁面" -#: registry.py:353 +#: builders/manpage.py:64 #, python-format -msgid "source_suffix %r is already registered" -msgstr "source_suffix %r 已註冊" +msgid "\"man_pages\" config value references unknown document %s" +msgstr "\"man_pages\" 組態值引用未知的文件 %s" -#: registry.py:363 +#: builders/singlehtml.py:35 #, python-format -msgid "source_parser for %r is already registered" -msgstr "對於 %r 的 source_parser 已註冊" +msgid "The HTML page is in %(outdir)s." +msgstr "HTML 頁面在 %(outdir)s 。" -#: registry.py:372 -#, python-format -msgid "Source parser for %s not registered" -msgstr "對於 %s 的源碼剖析器未註冊" +#: builders/singlehtml.py:171 +msgid "assembling single document" +msgstr "正在組合單一文件" -#: registry.py:390 -#, python-format -msgid "Translator for %r already exists" -msgstr "對於 %r 的翻譯器已經存在" +#: builders/singlehtml.py:189 +msgid "writing additional files" +msgstr "正在寫入附加檔案" -#: registry.py:407 -#, python-format -msgid "kwargs for add_node() must be a (visit, depart) function tuple: %r=%r" -msgstr "對於 add_node() 的 kwargs 必須是一個 (visit, depart) 函式值組:%r=%r" +#: builders/dummy.py:19 +msgid "The dummy builder generates no files." +msgstr "虛擬建立器未產生任何檔案。" -#: registry.py:496 +#: builders/gettext.py:243 #, python-format -msgid "enumerable_node %r already registered" -msgstr "enumerable_node %r 已註冊" +msgid "The message catalogs are in %(outdir)s." +msgstr "訊息目錄是在 %(outdir)s" -#: registry.py:512 +#: builders/__init__.py:400 builders/gettext.py:264 #, python-format -msgid "math renderer %s is already registered" -msgstr "數學描繪器 %s 已註冊" +msgid "building [%s]: " +msgstr "正在建立 [%s]:" -#: registry.py:529 +#: builders/gettext.py:265 #, python-format -msgid "" -"the extension %r was already merged with Sphinx since version %s; this " -"extension is ignored." -msgstr "擴充套件 %r 已被併入 %s 版以上的 Sphinx:此擴充套件已略過。" +msgid "targets for %d template files" +msgstr "模板檔 %d 的目標" -#: registry.py:543 -msgid "Original exception:\n" -msgstr "原始的例外:\n" +#: builders/gettext.py:271 +msgid "reading templates... " +msgstr "正在讀取模板..." -#: registry.py:545 +#: builders/gettext.py:310 +msgid "writing message catalogs... " +msgstr "正在寫入訊息目錄..." + +#: builders/linkcheck.py:87 #, python-format -msgid "Could not import extension %s" -msgstr "無法引入擴充套件 %s" +msgid "Look for any errors in the above output or in %(outdir)s/output.txt" +msgstr "尋找以上輸出或 %(outdir)s/output.txt 中的任何錯誤" -#: registry.py:552 +#: builders/linkcheck.py:159 #, python-format -msgid "" -"extension %r has no setup() function; is it really a Sphinx extension " -"module?" -msgstr "擴充套件 %r 沒有 setup() 函式;它真的是 Sphinx 擴充套件模組嗎?" +msgid "broken link: %s (%s)" +msgstr "錯誤連結: %s (%s)" -#: registry.py:565 +#: builders/linkcheck.py:561 #, python-format -msgid "" -"The %s extension used by this project needs at least Sphinx v%s; it " -"therefore cannot be built with this version." -msgstr "此專案使用的 %s 擴充套件需要 Sphinx v%s 以上的版本;所以它無法以此版本被建立。" +msgid "Anchor '%s' not found" +msgstr "未找到錨 '%s'" + +#: builders/linkcheck.py:789 +msgid "linkcheck_allowed_redirects. Expected a dictionary." +msgstr "" -#: registry.py:577 +#: builders/linkcheck.py:799 #, python-format -msgid "" -"extension %r returned an unsupported object from its setup() function; it " -"should return None or a metadata dictionary" -msgstr "擴充套件 %r 從它的 setup() 函式回傳一個未支援物件;它應該回傳 None 或一個元數據資料夾" +msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" +msgstr "在 linkcheck_allowed_redirects 編譯 regex 失敗: %r %s" -#: registry.py:612 +#: builders/epub3.py:83 #, python-format -msgid "`None` is not a valid filetype for %r." -msgstr "" +msgid "The ePub file is in %(outdir)s." +msgstr "ePub 檔案是在 %(outdir)s 。" + +#: builders/epub3.py:188 +msgid "writing nav.xhtml file..." +msgstr "正在寫入 nav.xhtml 檔案..." + +#: builders/epub3.py:224 +msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" +msgstr "conf 值 \"epub_language\" (或 \"language\") 在 EPUB3 不應該為空" + +#: builders/epub3.py:230 +msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" +msgstr "conf 值 \"epub_uid\" 在 EPUB3 應該是 XML NAME" + +#: builders/epub3.py:235 +msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" +msgstr "conf 值 \"epub_title\" (或 \"html_title\") 在 EPUB3 不應該為空" + +#: builders/epub3.py:241 +msgid "conf value \"epub_author\" should not be empty for EPUB3" +msgstr "conf 值 \"epub_author\" 在 EPUB3 不應該為空" + +#: builders/epub3.py:245 +msgid "conf value \"epub_contributor\" should not be empty for EPUB3" +msgstr "conf 值 \"epub_contributor\" 在 EPUB3 不應該為空" + +#: builders/epub3.py:250 +msgid "conf value \"epub_description\" should not be empty for EPUB3" +msgstr "conf 值 \"epub_description\" 在 EPUB3 不應該為空" + +#: builders/epub3.py:254 +msgid "conf value \"epub_publisher\" should not be empty for EPUB3" +msgstr "conf 值 \"epub_publisher\" 在 EPUB3 不應該為空" + +#: builders/epub3.py:259 +msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" +msgstr "conf 值 \"epub_copyright\" (或 \"copyright\") 在 EPUB3 不應該為空" + +#: builders/epub3.py:265 +msgid "conf value \"epub_identifier\" should not be empty for EPUB3" +msgstr "conf 值 \"epub_identifier\" 在 EPUB3 不應該為空" + +#: builders/epub3.py:268 +msgid "conf value \"version\" should not be empty for EPUB3" +msgstr "conf 值 \"version\" 在 EPUB3 不應該為空" -#: roles.py:206 +#: builders/epub3.py:282 builders/html/__init__.py:1296 #, python-format -msgid "Common Vulnerabilities and Exposures; CVE %s" -msgstr "" +msgid "invalid css_file: %r, ignored" +msgstr "無效的 css_file: %r, 已略過" -#: roles.py:229 +#: builders/xml.py:29 #, python-format -msgid "invalid CVE number %s" -msgstr "" +msgid "The XML files are in %(outdir)s." +msgstr "XML 檔案在 %(outdir)s 。" -#: roles.py:251 +#: builders/html/__init__.py:1242 builders/text.py:71 builders/xml.py:81 #, python-format -msgid "Common Weakness Enumeration; CWE %s" -msgstr "" +msgid "error writing file %s: %s" +msgstr "錯誤寫入檔案 %s: %s" -#: roles.py:274 +#: builders/xml.py:103 #, python-format -msgid "invalid CWE number %s" -msgstr "" +msgid "The pseudo-XML files are in %(outdir)s." +msgstr "pseudo-XML 檔案在 %(outdir)s 。" -#: roles.py:294 +#: builders/_epub_base.py:223 #, python-format -msgid "Python Enhancement Proposals; PEP %s" -msgstr "Python Enhancement Proposals; PEP %s" +msgid "duplicated ToC entry found: %s" +msgstr "找到了重複的 ToC 項目: %s" -#: roles.py:317 +#: builders/_epub_base.py:436 #, python-format -msgid "invalid PEP number %s" -msgstr "無效的 PEP 號碼 %s" +msgid "cannot read image file %r: copying it instead" +msgstr "無法讀取圖片檔 %r: 正在複製它做為替代" -#: roles.py:355 +#: builders/_epub_base.py:467 #, python-format -msgid "invalid RFC number %s" -msgstr "無效的 RFC 號碼 %s" +msgid "cannot write image file %r: %s" +msgstr "無法寫入圖片檔 %r: %s" -#: ext/linkcode.py:86 ext/viewcode.py:226 -msgid "[source]" -msgstr "[原始碼]" +#: builders/_epub_base.py:479 +msgid "Pillow not found - copying image files" +msgstr "未找到 Pillow - 正在複製圖片檔" -#: ext/viewcode.py:289 -msgid "highlighting module code... " -msgstr "正在 highlight 模組程式碼..." +#: builders/_epub_base.py:514 +msgid "writing mimetype file..." +msgstr "正在寫入 mimetype 檔案..." -#: ext/viewcode.py:320 -msgid "[docs]" -msgstr "[文件]" +#: builders/_epub_base.py:523 +msgid "writing META-INF/container.xml file..." +msgstr "正在寫入 META-INF/container.xml 檔案..." -#: ext/viewcode.py:346 -msgid "Module code" -msgstr "模組原始碼" +#: builders/_epub_base.py:561 +msgid "writing content.opf file..." +msgstr "正在寫入 content.opf 檔案..." -#: ext/viewcode.py:353 +#: builders/_epub_base.py:594 #, python-format -msgid "

Source code for %s

" -msgstr "

%s 的原始碼

" +msgid "unknown mimetype for %s, ignoring" +msgstr "對於 %s 未知的 mimetype,忽略中" -#: ext/viewcode.py:380 -msgid "Overview: module code" -msgstr "概要:模組原始碼" +#: builders/_epub_base.py:749 +msgid "node has an invalid level" +msgstr "" -#: ext/viewcode.py:381 -msgid "

All modules for which code is available

" -msgstr "

所有可得程式碼的模組

" +#: builders/_epub_base.py:769 +msgid "writing toc.ncx file..." +msgstr "正在寫入 toc.ncx 檔案..." -#: ext/extlinks.py:82 +#: builders/_epub_base.py:802 #, python-format -msgid "" -"hardcoded link %r could be replaced by an extlink (try using %r instead)" -msgstr "hardcoded link %r 可以被一個 extlink 所取代(試試改用 %r)" +msgid "writing %s file..." +msgstr "正在寫入 %s 檔案..." -#: ext/autosectionlabel.py:52 +#: builders/text.py:27 #, python-format -msgid "section \"%s\" gets labeled as \"%s\"" -msgstr "段落 \"%s\" 取得標籤 \"%s\"" +msgid "The text files are in %(outdir)s." +msgstr "文字檔案在 %(outdir)s 。" -#: domains/std/__init__.py:833 domains/std/__init__.py:960 -#: ext/autosectionlabel.py:61 +#: builders/__init__.py:229 #, python-format -msgid "duplicate label %s, other instance in %s" -msgstr "重複的標籤 %s,亦出現於 %s" +msgid "a suitable image for %s builder not found: %s (%s)" +msgstr "未找到對於 %s builder 適用的圖片:%s (%s)" -#: ext/imgmath.py:387 ext/mathjax.py:60 -msgid "Link to this equation" -msgstr "連結到這個方程式" +#: builders/__init__.py:237 +#, python-format +msgid "a suitable image for %s builder not found: %s" +msgstr "未找到對於 %s builder 適用的圖片:%s" -#: ext/duration.py:90 -msgid "" -"====================== slowest reading durations =======================" -msgstr "====================== 最慢的讀取歷時 =======================" +#: builders/__init__.py:260 +msgid "building [mo]: " +msgstr "建立 [mo]:" -#: ext/doctest.py:118 -#, python-format -msgid "missing '+' or '-' in '%s' option." -msgstr "在 '%s' 選項中遺漏 '+' 或 '-'。" +#: builders/__init__.py:263 builders/__init__.py:771 builders/__init__.py:795 +msgid "writing output... " +msgstr "編寫輸出..." -#: ext/doctest.py:124 +#: builders/__init__.py:280 #, python-format -msgid "'%s' is not a valid option." -msgstr "'%s' 不是有效的選項" +msgid "all of %d po files" +msgstr "所有的 %d po 檔" -#: ext/doctest.py:139 +#: builders/__init__.py:302 #, python-format -msgid "'%s' is not a valid pyversion option" -msgstr "'%s' 不是有效的 pyversion 選項" - -#: ext/doctest.py:226 -msgid "invalid TestCode type" -msgstr "無效的 TestCode 型別" +msgid "targets for %d po files that are specified" +msgstr "對於指定的 po 檔 %d 的目標" -#: ext/doctest.py:297 +#: builders/__init__.py:314 #, python-format -msgid "" -"Testing of doctests in the sources finished, look at the results in " -"%(outdir)s/output.txt." -msgstr "來源的 doctests 測試已結束,在 %(outdir)s/output.txt 中查看結果。" +msgid "targets for %d po files that are out of date" +msgstr "對於已過期 po 檔 %d 的目標" -#: ext/doctest.py:457 -#, python-format -msgid "no code/output in %s block at %s:%s" -msgstr "在 %s 區塊中的 %s:%s 沒有程式碼/輸出" +#: builders/__init__.py:324 +msgid "all source files" +msgstr "所有原始檔案" -#: ext/doctest.py:568 +#: builders/__init__.py:335 #, python-format -msgid "ignoring invalid doctest code: %r" -msgstr "正在忽略無效的 doctest 碼: %r" +msgid "file %r given on command line does not exist, " +msgstr "在命令列給的檔案 %r 不存在," -#: ext/imgmath.py:162 +#: builders/__init__.py:342 #, python-format msgid "" -"LaTeX command %r cannot be run (needed for math display), check the " -"imgmath_latex setting" -msgstr "LaTeX 命令 %r 無法被執行(數學顯示所需要),請檢查 imgmath_latex 設定" +"file %r given on command line is not under the source directory, ignoring" +msgstr "在命令列給的檔案 %r 不在來源資料夾下,忽略中" -#: ext/imgmath.py:181 +#: builders/__init__.py:353 #, python-format -msgid "" -"%s command %r cannot be run (needed for math display), check the imgmath_%s " -"setting" -msgstr "%s 命令 %r 無法被執行(數學顯示所需要),請檢查 imgmath_%s 設定" +msgid "file %r given on command line is not a valid document, ignoring" +msgstr "在命令列給的檔案 %r 不是有效的文件,忽略中" -#: ext/imgmath.py:344 +#: builders/__init__.py:366 #, python-format -msgid "display latex %r: %s" -msgstr "顯示 latex %r: %s" +msgid "%d source files given on command line" +msgstr "在命令列給了 %d 個原始檔案" -#: ext/imgmath.py:380 +#: builders/__init__.py:382 #, python-format -msgid "inline latex %r: %s" -msgstr "行內 latex %r: %s" +msgid "targets for %d source files that are out of date" +msgstr "%d 個過時原始檔案的目標" -#: ext/coverage.py:48 +#: builders/__init__.py:411 +msgid "looking for now-outdated files... " +msgstr "正在尋找目前已過期的檔案..." + +#: builders/__init__.py:415 #, python-format -msgid "invalid regex %r in %s" -msgstr "無效的 regex %r 在 %s" +msgid "%d found" +msgstr "已找到 %d" -#: ext/coverage.py:140 ext/coverage.py:301 +#: builders/__init__.py:417 +msgid "none found" +msgstr "找不到任何結果" + +#: builders/__init__.py:424 +msgid "pickling environment" +msgstr "正在 pickle 環境" + +#: builders/__init__.py:431 +msgid "checking consistency" +msgstr "正在檢查一致性" + +#: builders/__init__.py:435 +msgid "no targets are out of date." +msgstr "沒有過時的目標。" + +#: builders/__init__.py:474 +msgid "updating environment: " +msgstr "正在更新環境:" + +#: builders/__init__.py:499 #, python-format -msgid "module %s could not be imported: %s" -msgstr "模組 %s 無法被 import: %s" +msgid "%s added, %s changed, %s removed" +msgstr "%s 已新增, %s 已變更, %s 已移除" -#: ext/coverage.py:148 +#: builders/__init__.py:536 #, python-format msgid "" -"the following modules are documented but were not specified in " -"coverage_modules: %s" +"Sphinx is unable to load the master document (%s) because it matches a " +"built-in exclude pattern %r. Please move your master document to a different" +" location." msgstr "" -#: ext/coverage.py:158 +#: builders/__init__.py:545 +#, python-format msgid "" -"the following modules are specified in coverage_modules but were not " -"documented" +"Sphinx is unable to load the master document (%s) because it matches an " +"exclude pattern specified in conf.py, %r. Please remove this pattern from " +"conf.py." msgstr "" -#: ext/coverage.py:172 -#, python-brace-format, python-format +#: builders/__init__.py:556 +#, python-format msgid "" -"Testing of coverage in the sources finished, look at the results in " -"%(outdir)s{sep}python.txt." +"Sphinx is unable to load the master document (%s) because it is not included" +" in the custom include_patterns = %r. Ensure that a pattern in " +"include_patterns matches the master document." msgstr "" -#: ext/coverage.py:187 +#: builders/__init__.py:563 #, python-format -msgid "invalid regex %r in coverage_c_regexes" -msgstr "無效的 regex %r 在 coverage_c_regexes" +msgid "" +"Sphinx is unable to load the master document (%s). The master document must " +"be within the source directory or a subdirectory of it." +msgstr "" -#: ext/coverage.py:260 -#, python-format -msgid "undocumented c api: %s [%s] in file %s" -msgstr "未文件化的 c api: %s [%s] 在檔案 %s 中" +#: builders/__init__.py:581 builders/__init__.py:598 +msgid "reading sources... " +msgstr "正在讀取來源..." -#: ext/coverage.py:452 +#: builders/__init__.py:725 #, python-format -msgid "undocumented python function: %s :: %s" -msgstr "未文件化的 python 函式: %s :: %s" +msgid "docnames to write: %s" +msgstr "待寫入的 docname: %s" -#: ext/coverage.py:473 -#, python-format -msgid "undocumented python class: %s :: %s" -msgstr "未文件化的 python class: %s :: %s" +#: builders/__init__.py:727 +msgid "no docnames to write!" +msgstr "" + +#: builders/__init__.py:740 +msgid "preparing documents" +msgstr "正在準備文件" + +#: builders/__init__.py:743 +msgid "copying assets" +msgstr "正在複製資產 (asset)" + +#: builders/changes.py:29 +#, python-format +msgid "The overview file is in %(outdir)s." +msgstr "概觀檔案是在 %(outdir)s 。" + +#: builders/changes.py:65 +#, python-format +msgid "no changes in version %s." +msgstr "在 %s 版中無變更" + +#: builders/changes.py:67 +msgid "writing summary file..." +msgstr "正在寫入摘要檔案..." + +#: builders/changes.py:79 +msgid "Builtins" +msgstr "內建" + +#: builders/changes.py:81 +msgid "Module level" +msgstr "模組層次" + +#: builders/changes.py:137 +msgid "copying source files..." +msgstr "正在複製原始檔案..." + +#: builders/changes.py:146 +#, python-format +msgid "could not read %r for changelog creation" +msgstr "在變更日誌建立時無法讀取 %r" + +#: ext/coverage.py:48 +#, python-format +msgid "invalid regex %r in %s" +msgstr "無效的 regex %r 在 %s" + +#: ext/coverage.py:140 ext/coverage.py:301 +#, python-format +msgid "module %s could not be imported: %s" +msgstr "模組 %s 無法被 import: %s" + +#: ext/coverage.py:148 +#, python-format +msgid "" +"the following modules are documented but were not specified in " +"coverage_modules: %s" +msgstr "" + +#: ext/coverage.py:158 +#, python-format +msgid "" +"the following modules are specified in coverage_modules but were not " +"documented: %s" +msgstr "" + +#: ext/coverage.py:172 +#, python-brace-format, python-format +msgid "" +"Testing of coverage in the sources finished, look at the results in " +"%(outdir)s{sep}python.txt." +msgstr "" + +#: ext/coverage.py:187 +#, python-format +msgid "invalid regex %r in coverage_c_regexes" +msgstr "無效的 regex %r 在 coverage_c_regexes" + +#: ext/coverage.py:260 +#, python-format +msgid "undocumented c api: %s [%s] in file %s" +msgstr "未文件化的 c api: %s [%s] 在檔案 %s 中" + +#: ext/coverage.py:452 +#, python-format +msgid "undocumented python function: %s :: %s" +msgstr "未文件化的 python 函式: %s :: %s" + +#: ext/coverage.py:473 +#, python-format +msgid "undocumented python class: %s :: %s" +msgstr "未文件化的 python class: %s :: %s" #: ext/coverage.py:492 #, python-format msgid "undocumented python method: %s :: %s :: %s" msgstr "未文件化的 python method: %s :: %s :: %s" +#: ext/extlinks.py:82 +#, python-format +msgid "" +"hardcoded link %r could be replaced by an extlink (try using %r instead)" +msgstr "hardcoded link %r 可以被一個 extlink 所取代(試試改用 %r)" + +#: ext/todo.py:61 +msgid "Todo" +msgstr "Todo" + +#: ext/todo.py:94 +#, python-format +msgid "TODO entry found: %s" +msgstr "找到 TODO 項目: %s" + +#: ext/todo.py:152 +msgid "<>" +msgstr "<>" + +#: ext/todo.py:154 +#, python-format +msgid "(The <> is located in %s, line %d.)" +msgstr "(<> 見 %s ,第 %d 行)" + +#: ext/todo.py:166 +msgid "original entry" +msgstr "原始記錄" + #: ext/imgconverter.py:44 #, python-format msgid "" @@ -870,879 +1336,960 @@ msgstr "[圖:%s]" msgid "[graph]" msgstr "[圖]" -#: ext/todo.py:61 -msgid "Todo" -msgstr "Todo" - -#: ext/todo.py:94 +#: ext/imgmath.py:148 #, python-format -msgid "TODO entry found: %s" -msgstr "找到 TODO 項目: %s" +msgid "" +"LaTeX command %r cannot be run (needed for math display), check the " +"imgmath_latex setting" +msgstr "LaTeX 命令 %r 無法被執行(數學顯示所需要),請檢查 imgmath_latex 設定" -#: ext/todo.py:152 -msgid "<>" -msgstr "<>" +#: ext/imgmath.py:167 +#, python-format +msgid "" +"%s command %r cannot be run (needed for math display), check the imgmath_%s " +"setting" +msgstr "%s 命令 %r 無法被執行(數學顯示所需要),請檢查 imgmath_%s 設定" -#: ext/todo.py:154 +#: ext/imgmath.py:326 #, python-format -msgid "(The <> is located in %s, line %d.)" -msgstr "(<> 見 %s ,第 %d 行)" +msgid "display latex %r: %s" +msgstr "顯示 latex %r: %s" -#: ext/todo.py:166 -msgid "original entry" -msgstr "原始記錄" +#: ext/imgmath.py:362 +#, python-format +msgid "inline latex %r: %s" +msgstr "行內 latex %r: %s" -#: directives/code.py:66 -msgid "non-whitespace stripped by dedent" -msgstr "非空白字元被凸排去除" +#: ext/imgmath.py:369 ext/mathjax.py:60 +msgid "Link to this equation" +msgstr "連結到這個方程式" -#: directives/code.py:87 +#: ext/doctest.py:118 #, python-format -msgid "Invalid caption: %s" -msgstr "無效標題:%s" +msgid "missing '+' or '-' in '%s' option." +msgstr "在 '%s' 選項中遺漏 '+' 或 '-'。" -#: directives/code.py:131 directives/code.py:297 directives/code.py:483 +#: ext/doctest.py:124 #, python-format -msgid "line number spec is out of range(1-%d): %r" -msgstr "列號規格超出範圍 (1-%d): %r" +msgid "'%s' is not a valid option." +msgstr "'%s' 不是有效的選項" -#: directives/code.py:216 +#: ext/doctest.py:139 #, python-format -msgid "Cannot use both \"%s\" and \"%s\" options" -msgstr "不能使用 \"%s\" 及 \"%s\" 兩個選項" +msgid "'%s' is not a valid pyversion option" +msgstr "'%s' 不是有效的 pyversion 選項" -#: directives/code.py:231 -#, python-format -msgid "Include file '%s' not found or reading it failed" -msgstr "" +#: ext/doctest.py:226 +msgid "invalid TestCode type" +msgstr "無效的 TestCode 型別" -#: directives/code.py:235 +#: ext/doctest.py:297 #, python-format msgid "" -"Encoding %r used for reading included file '%s' seems to be wrong, try " -"giving an :encoding: option" -msgstr "" +"Testing of doctests in the sources finished, look at the results in " +"%(outdir)s/output.txt." +msgstr "來源的 doctests 測試已結束,在 %(outdir)s/output.txt 中查看結果。" -#: directives/code.py:276 +#: ext/doctest.py:451 #, python-format -msgid "Object named %r not found in include file %r" -msgstr "名為 %r 的物件在 include 檔案 %r 中未找到" - -#: directives/code.py:309 -msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" -msgstr "無法以一個 \"lines\" 的互斥集使用 \"lineno-match\" " +msgid "no code/output in %s block at %s:%s" +msgstr "在 %s 區塊中的 %s:%s 沒有程式碼/輸出" -#: directives/code.py:314 +#: ext/doctest.py:568 #, python-format -msgid "Line spec %r: no lines pulled from include file %r" -msgstr "Line spec %r: 從 include 檔案 %r 沒有提取任何一行" - -#: directives/patches.py:71 -msgid "" -"\":file:\" option for csv-table directive now recognizes an absolute path as" -" a relative path from source directory. Please update your document." -msgstr "對 csv-table 指令的 \":file:\" 選項現在會將絕對路徑辨識為基於來源資料夾的相對路徑。請更新您的文件。" +msgid "ignoring invalid doctest code: %r" +msgstr "正在忽略無效的 doctest 碼: %r" -#: directives/other.py:119 +#: ext/autosectionlabel.py:52 #, python-format -msgid "toctree glob pattern %r didn't match any documents" -msgstr "toctree glob 型樣 %r 未匹配任何文件" +msgid "section \"%s\" gets labeled as \"%s\"" +msgstr "段落 \"%s\" 取得標籤 \"%s\"" -#: directives/other.py:153 environment/adapters/toctree.py:361 +#: domains/std/__init__.py:833 domains/std/__init__.py:960 +#: ext/autosectionlabel.py:61 #, python-format -msgid "toctree contains reference to excluded document %r" -msgstr "toctree 包含了指向已排除文件的參照 %r" +msgid "duplicate label %s, other instance in %s" +msgstr "重複的標籤 %s,亦出現於 %s" -#: directives/other.py:156 +#: ext/duration.py:47 #, python-format -msgid "toctree contains reference to nonexisting document %r" -msgstr "toctree 包含了指向不存在文件的參照 %r" +msgid "Reading duration %.3fs exceeded the duration limit %.3fs" +msgstr "" -#: directives/other.py:169 +#: ext/duration.py:117 +msgid "" +"====================== total reading duration ==========================" +msgstr "" + +#: ext/duration.py:124 #, python-format -msgid "duplicated entry found in toctree: %s" -msgstr "在 toctree 中找到重複的項目: %s" +msgid "Total time reading %d file%s: %dm %.3fs" +msgstr "" -#: directives/other.py:203 -msgid "Section author: " -msgstr "章節作者:" +#: ext/duration.py:136 +msgid "" +"====================== slowest reading durations =======================" +msgstr "====================== 最慢的讀取歷時 =======================" -#: directives/other.py:205 -msgid "Module author: " -msgstr "模組作者:" +#: ext/duration.py:139 +#, python-format +msgid "%.3fs %s" +msgstr "" -#: directives/other.py:207 -msgid "Code author: " -msgstr "程式作者:" +#: ext/linkcode.py:86 ext/viewcode.py:232 +msgid "[source]" +msgstr "[原始碼]" -#: directives/other.py:209 -msgid "Author: " -msgstr "作者:" +#: ext/viewcode.py:295 +msgid "highlighting module code... " +msgstr "正在 highlight 模組程式碼..." -#: directives/other.py:269 -msgid ".. acks content is not a list" -msgstr ".. acks 的內容不是一個列表" +#: ext/viewcode.py:326 +msgid "[docs]" +msgstr "[文件]" -#: directives/other.py:292 -msgid ".. hlist content is not a list" -msgstr ".. hlist 的內容不是一個列表" +#: ext/viewcode.py:352 +msgid "Module code" +msgstr "模組原始碼" -#: builders/changes.py:29 +#: ext/viewcode.py:359 #, python-format -msgid "The overview file is in %(outdir)s." -msgstr "概觀檔案是在 %(outdir)s 。" +msgid "

Source code for %s

" +msgstr "

%s 的原始碼

" -#: builders/changes.py:56 -#, python-format -msgid "no changes in version %s." -msgstr "在 %s 版中無變更" - -#: builders/changes.py:58 -msgid "writing summary file..." -msgstr "正在寫入摘要檔案..." - -#: builders/changes.py:70 -msgid "Builtins" -msgstr "內建" - -#: builders/changes.py:72 -msgid "Module level" -msgstr "模組層次" +#: ext/viewcode.py:386 +msgid "Overview: module code" +msgstr "概要:模組原始碼" -#: builders/changes.py:124 -msgid "copying source files..." -msgstr "正在複製原始檔案..." +#: ext/viewcode.py:387 +msgid "

All modules for which code is available

" +msgstr "

所有可得程式碼的模組

" -#: builders/changes.py:133 +#: domains/citation.py:75 #, python-format -msgid "could not read %r for changelog creation" -msgstr "在變更日誌建立時無法讀取 %r" +msgid "duplicate citation %s, other instance in %s" +msgstr "重複的引用 %s,亦出現於 %s" -#: builders/manpage.py:37 +#: domains/citation.py:92 #, python-format -msgid "The manual pages are in %(outdir)s." -msgstr "手冊頁面在 %(outdir)s" - -#: builders/manpage.py:45 -msgid "no \"man_pages\" config value found; no manual pages will be written" -msgstr "未找到 \"man_pages\" 組態值:不會編寫任何手冊頁面" - -#: builders/latex/__init__.py:347 builders/manpage.py:54 -#: builders/singlehtml.py:176 builders/texinfo.py:119 -msgid "writing" -msgstr "編寫中" +msgid "Citation [%s] is not referenced." +msgstr "引用 [%s] 未被參照。" -#: builders/manpage.py:71 +#: domains/math.py:73 #, python-format -msgid "\"man_pages\" config value references unknown document %s" -msgstr "\"man_pages\" 組態值引用未知的文件 %s" +msgid "duplicate label of equation %s, other instance in %s" +msgstr "重複公式標籤 %s,亦出現於 %s" -#: builders/__init__.py:224 +#: domains/math.py:130 writers/latex.py:2500 #, python-format -msgid "a suitable image for %s builder not found: %s (%s)" -msgstr "未找到對於 %s builder 適用的圖片:%s (%s)" +msgid "Invalid math_eqref_format: %r" +msgstr "無效的 math_eqref_format: %r" -#: builders/__init__.py:232 +#: domains/javascript.py:183 #, python-format -msgid "a suitable image for %s builder not found: %s" -msgstr "未找到對於 %s builder 適用的圖片:%s" - -#: builders/__init__.py:255 -msgid "building [mo]: " -msgstr "建立 [mo]:" - -#: builders/__init__.py:258 builders/__init__.py:759 builders/__init__.py:791 -msgid "writing output... " -msgstr "編寫輸出..." +msgid "%s() (built-in function)" +msgstr "%s() (內建函式)" -#: builders/__init__.py:275 +#: domains/javascript.py:184 domains/python/__init__.py:279 #, python-format -msgid "all of %d po files" -msgstr "所有的 %d po 檔" +msgid "%s() (%s method)" +msgstr "%s() (%s 的方法)" -#: builders/__init__.py:297 +#: domains/javascript.py:186 #, python-format -msgid "targets for %d po files that are specified" -msgstr "對於指定的 po 檔 %d 的目標" +msgid "%s() (class)" +msgstr "%s() (類別)" -#: builders/__init__.py:309 +#: domains/javascript.py:188 #, python-format -msgid "targets for %d po files that are out of date" -msgstr "對於已過期 po 檔 %d 的目標" - -#: builders/__init__.py:319 -msgid "all source files" -msgstr "所有原始檔案" +msgid "%s (global variable or constant)" +msgstr "%s (全域變數或常數)" -#: builders/__init__.py:330 +#: domains/javascript.py:190 domains/python/__init__.py:370 #, python-format -msgid "file %r given on command line does not exist, " -msgstr "在命令列給的檔案 %r 不存在," +msgid "%s (%s attribute)" +msgstr "%s (%s 的屬性)" -#: builders/__init__.py:337 -#, python-format -msgid "" -"file %r given on command line is not under the source directory, ignoring" -msgstr "在命令列給的檔案 %r 不在來源資料夾下,忽略中" +#: domains/javascript.py:274 +msgid "Arguments" +msgstr "引數" -#: builders/__init__.py:348 -#, python-format -msgid "file %r given on command line is not a valid document, ignoring" -msgstr "在命令列給的檔案 %r 不是有效的文件,忽略中" +#: domains/cpp/__init__.py:491 domains/javascript.py:281 +msgid "Throws" +msgstr "拋出" -#: builders/__init__.py:361 -#, python-format -msgid "%d source files given on command line" -msgstr "在命令列給了 %d 個原始檔案" +#: domains/c/__init__.py:367 domains/cpp/__init__.py:504 +#: domains/javascript.py:288 domains/python/_object.py:221 +msgid "Returns" +msgstr "回傳" -#: builders/__init__.py:377 -#, python-format -msgid "targets for %d source files that are out of date" -msgstr "%d 個過時原始檔案的目標" +#: domains/c/__init__.py:373 domains/javascript.py:294 +#: domains/python/_object.py:227 +msgid "Return type" +msgstr "回傳型別" -#: builders/__init__.py:395 builders/gettext.py:265 +#: domains/javascript.py:374 #, python-format -msgid "building [%s]: " -msgstr "正在建立 [%s]:" - -#: builders/__init__.py:406 -msgid "looking for now-outdated files... " -msgstr "正在尋找目前已過期的檔案..." +msgid "%s (module)" +msgstr "%s (模組)" -#: builders/__init__.py:410 -#, python-format -msgid "%d found" -msgstr "已找到 %d" +#: domains/c/__init__.py:779 domains/cpp/__init__.py:943 +#: domains/javascript.py:419 domains/python/__init__.py:726 +msgid "function" +msgstr "函式" -#: builders/__init__.py:412 -msgid "none found" -msgstr "找不到任何結果" +#: domains/javascript.py:420 domains/python/__init__.py:730 +msgid "method" +msgstr "方法" -#: builders/__init__.py:419 -msgid "pickling environment" -msgstr "正在 pickle 環境" +#: domains/cpp/__init__.py:941 domains/javascript.py:421 +#: domains/python/__init__.py:728 +msgid "class" +msgstr "類別" -#: builders/__init__.py:426 -msgid "checking consistency" -msgstr "正在檢查一致性" +#: domains/javascript.py:422 domains/python/__init__.py:727 +msgid "data" +msgstr "資料" -#: builders/__init__.py:430 -msgid "no targets are out of date." -msgstr "沒有過時的目標。" +#: domains/javascript.py:423 domains/python/__init__.py:733 +msgid "attribute" +msgstr "屬性" -#: builders/__init__.py:469 -msgid "updating environment: " -msgstr "正在更新環境:" +#: domains/javascript.py:424 domains/python/__init__.py:736 +msgid "module" +msgstr "模組" -#: builders/__init__.py:494 +#: domains/javascript.py:458 #, python-format -msgid "%s added, %s changed, %s removed" -msgstr "%s 已新增, %s 已變更, %s 已移除" +msgid "duplicate %s description of %s, other %s in %s" +msgstr "%s 的重複 %s 敘述,其他的 %s 在 %s" -#: builders/__init__.py:531 +#: domains/rst.py:131 domains/rst.py:190 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches a " -"built-in exclude pattern %r. Please move your master document to a different" -" location." -msgstr "" +msgid "%s (directive)" +msgstr "%s (指令)" -#: builders/__init__.py:540 +#: domains/rst.py:191 domains/rst.py:202 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it matches an " -"exclude pattern specified in conf.py, %r. Please remove this pattern from " -"conf.py." -msgstr "" +msgid ":%s: (directive option)" +msgstr ":%s: (指令選項)" -#: builders/__init__.py:551 +#: domains/rst.py:224 #, python-format -msgid "" -"Sphinx is unable to load the master document (%s) because it is not included" -" in the custom include_patterns = %r. Ensure that a pattern in " -"include_patterns matches the master document." -msgstr "" +msgid "%s (role)" +msgstr "%s (角色)" -#: builders/__init__.py:558 -#, python-format -msgid "" -"Sphinx is unable to load the master document (%s). The master document must " -"be within the source directory or a subdirectory of it." -msgstr "" +#: domains/rst.py:234 +msgid "directive" +msgstr "指令" -#: builders/__init__.py:576 builders/__init__.py:592 -msgid "reading sources... " -msgstr "正在讀取來源..." +#: domains/rst.py:235 +msgid "directive-option" +msgstr "指令選項" + +#: domains/rst.py:236 +msgid "role" +msgstr "角色" -#: builders/__init__.py:713 +#: domains/rst.py:262 #, python-format -msgid "docnames to write: %s" -msgstr "待寫入的 docname: %s" +msgid "duplicate description of %s %s, other instance in %s" +msgstr "%s %s 的重複敘述,其他的實例在 %s" -#: builders/__init__.py:715 -msgid "no docnames to write!" -msgstr "" +#: domains/changeset.py:32 +#, python-format +msgid "Added in version %s" +msgstr "在 %s 版被加入" -#: builders/__init__.py:728 -msgid "preparing documents" -msgstr "正在準備文件" +#: domains/changeset.py:33 +#, python-format +msgid "Changed in version %s" +msgstr "在 %s 版的變更" -#: builders/__init__.py:731 -msgid "copying assets" -msgstr "正在複製資產 (asset)" +#: domains/changeset.py:34 +#, python-format +msgid "Deprecated since version %s" +msgstr "在 %s 版之後被棄用" -#: builders/__init__.py:883 +#: domains/changeset.py:35 #, python-format -msgid "undecodable source characters, replacing with \"?\": %r" -msgstr "無法解碼的原始字元,以 \"?\" 取代: %r" +msgid "Removed in version %s" +msgstr "在 %s 版被移除" -#: builders/epub3.py:84 +#: domains/__init__.py:322 #, python-format -msgid "The ePub file is in %(outdir)s." -msgstr "ePub 檔案是在 %(outdir)s 。" +msgid "%s %s" +msgstr "%s %s" -#: builders/epub3.py:189 -msgid "writing nav.xhtml file..." -msgstr "正在寫入 nav.xhtml 檔案..." +#: cmd/build.py:64 +msgid "job number should be a positive number" +msgstr "工件編號應該是一個正數" -#: builders/epub3.py:221 -msgid "conf value \"epub_language\" (or \"language\") should not be empty for EPUB3" -msgstr "conf 值 \"epub_language\" (或 \"language\") 在 EPUB3 不應該為空" +#: cmd/build.py:73 cmd/quickstart.py:582 ext/apidoc/_cli.py:27 +#: ext/autosummary/generate.py:876 +msgid "For more information, visit ." +msgstr "需要更多資訊,請拜訪 ." -#: builders/epub3.py:227 -msgid "conf value \"epub_uid\" should be XML NAME for EPUB3" -msgstr "conf 值 \"epub_uid\" 在 EPUB3 應該是 XML NAME" +#: cmd/build.py:74 +msgid "" +"\n" +"Generate documentation from source files.\n" +"\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" +"including 'conf.py'\n" +"\n" +"sphinx-build can create documentation in different formats. A format is\n" +"selected by specifying the builder name on the command line; it defaults to\n" +"HTML. Builders can also perform other tasks related to documentation\n" +"processing.\n" +"\n" +"By default, everything that is outdated is built. Output only for selected\n" +"files can be built by specifying individual filenames.\n" +msgstr "\n從原始檔案產生說明文件。\n\nsphinx-build 會從 SOURCEDIR 中的檔案來產生說明文件,並\n將它置放於 OUTPUTDIR。它會在 SOURCEDIR 中尋找 'conf.py' \n內的組態設定。'sphinx-quickstart' 工具可以用來產生模板檔案,\n包括 'conf.py'\n\nsphinx-build 能以不同的格式建立說明文件。在命令列指定建立\n器的名稱來選擇一種格式;其預設值為 HTML。建立器也能執行\n與處理說明文件有關的其他任務。\n\n在預設情況,所有舊的文件都已經被建立。指定個別的檔名,\n可以在建立時僅限於輸出所選的檔案。\n" -#: builders/epub3.py:232 -msgid "conf value \"epub_title\" (or \"html_title\") should not be empty for EPUB3" -msgstr "conf 值 \"epub_title\" (或 \"html_title\") 在 EPUB3 不應該為空" +#: cmd/build.py:100 +msgid "path to documentation source files" +msgstr "到說明文件原始檔案的路徑" -#: builders/epub3.py:238 -msgid "conf value \"epub_author\" should not be empty for EPUB3" -msgstr "conf 值 \"epub_author\" 在 EPUB3 不應該為空" +#: cmd/build.py:103 +msgid "path to output directory" +msgstr "到輸出資料夾的路徑" -#: builders/epub3.py:242 -msgid "conf value \"epub_contributor\" should not be empty for EPUB3" -msgstr "conf 值 \"epub_contributor\" 在 EPUB3 不應該為空" +#: cmd/build.py:109 +msgid "" +"(optional) a list of specific files to rebuild. Ignored if --write-all is " +"specified" +msgstr "(選用)一份要重建的特定檔案清單。如果已指定 --write-all,則會被忽略。" -#: builders/epub3.py:247 -msgid "conf value \"epub_description\" should not be empty for EPUB3" -msgstr "conf 值 \"epub_description\" 在 EPUB3 不應該為空" +#: cmd/build.py:114 +msgid "general options" +msgstr "一般選項" -#: builders/epub3.py:251 -msgid "conf value \"epub_publisher\" should not be empty for EPUB3" -msgstr "conf 值 \"epub_publisher\" 在 EPUB3 不應該為空" +#: cmd/build.py:121 +msgid "builder to use (default: 'html')" +msgstr "要使用的建立器(預設值:'html')" -#: builders/epub3.py:256 -msgid "conf value \"epub_copyright\" (or \"copyright\")should not be empty for EPUB3" -msgstr "conf 值 \"epub_copyright\" (或 \"copyright\") 在 EPUB3 不應該為空" - -#: builders/epub3.py:262 -msgid "conf value \"epub_identifier\" should not be empty for EPUB3" -msgstr "conf 值 \"epub_identifier\" 在 EPUB3 不應該為空" +#: cmd/build.py:131 +msgid "" +"run in parallel with N processes, when possible. 'auto' uses the number of " +"CPU cores" +msgstr "如果可以的話,N 個程序會平行執行。'auto' 會使用 CPU 核心的數量" -#: builders/epub3.py:265 -msgid "conf value \"version\" should not be empty for EPUB3" -msgstr "conf 值 \"version\" 在 EPUB3 不應該為空" +#: cmd/build.py:140 +msgid "write all files (default: only write new and changed files)" +msgstr "寫入所有檔案(預設:只寫入新增及已變更檔案)" -#: builders/epub3.py:279 builders/html/__init__.py:1291 -#, python-format -msgid "invalid css_file: %r, ignored" -msgstr "無效的 css_file: %r, 已略過" +#: cmd/build.py:147 +msgid "don't use a saved environment, always read all files" +msgstr "不要使用已儲存的環境,永遠要讀取全部的檔案" -#: builders/xml.py:31 -#, python-format -msgid "The XML files are in %(outdir)s." -msgstr "XML 檔案在 %(outdir)s 。" +#: cmd/build.py:150 +msgid "path options" +msgstr "路徑選項" -#: builders/html/__init__.py:1241 builders/text.py:76 builders/xml.py:90 -#, python-format -msgid "error writing file %s: %s" -msgstr "錯誤寫入檔案 %s: %s" +#: cmd/build.py:157 +msgid "" +"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" +msgstr "包含 doctree 及環境檔案的資料夾(預設值:OUTPUT_DIR/.doctrees)" -#: builders/xml.py:101 -#, python-format -msgid "The pseudo-XML files are in %(outdir)s." -msgstr "pseudo-XML 檔案在 %(outdir)s 。" +#: cmd/build.py:166 +msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" +msgstr "包含組態檔 (conf.py) 的資料夾(預設值:SOURCE_DIR)" -#: builders/texinfo.py:45 -#, python-format -msgid "The Texinfo files are in %(outdir)s." -msgstr "Texinfo 檔案在 %(outdir)s 。" +#: cmd/build.py:175 +msgid "use no configuration file, only use settings from -D options" +msgstr "不使用組態檔,只使用 -D 選項中的設定" -#: builders/texinfo.py:48 -msgid "" -"\n" -"Run 'make' in that directory to run these through makeinfo\n" -"(use 'make info' here to do that automatically)." -msgstr "\n在該目錄中執行 'make' 以透過 makeinfo 執行這些\n(在此使用 'make info' 以自動執行)" +#: cmd/build.py:184 +msgid "override a setting in configuration file" +msgstr "在組態檔案中置換一項設定" -#: builders/texinfo.py:77 -msgid "no \"texinfo_documents\" config value found; no documents will be written" -msgstr "未找到 \"texinfo_documents\" 組態值;不會編寫任何文件" +#: cmd/build.py:193 +msgid "pass a value into HTML templates" +msgstr "傳遞一個值進入 HTML 模板" -#: builders/texinfo.py:89 -#, python-format -msgid "\"texinfo_documents\" config value references unknown document %s" -msgstr "\"texinfo_documents\" 組態值引用未知的文件 %s" +#: cmd/build.py:202 +msgid "define tag: include \"only\" blocks with TAG" +msgstr "定義 tag:「只」包含有 TAG 的區塊" -#: builders/latex/__init__.py:325 builders/texinfo.py:113 -#, python-format -msgid "processing %s" -msgstr "正在處理 %s" +#: cmd/build.py:209 +msgid "nitpicky mode: warn about all missing references" +msgstr "" -#: builders/latex/__init__.py:405 builders/texinfo.py:172 -msgid "resolving references..." -msgstr "正在解析參照..." +#: cmd/build.py:212 +msgid "console output options" +msgstr "控制台輸出選項" -#: builders/latex/__init__.py:416 builders/texinfo.py:182 -msgid " (in " -msgstr " (於 " +#: cmd/build.py:219 +msgid "increase verbosity (can be repeated)" +msgstr "增加贅言(可以被重複)" -#: builders/_epub_base.py:422 builders/html/__init__.py:779 -#: builders/latex/__init__.py:481 builders/texinfo.py:198 -msgid "copying images... " -msgstr "正在複製圖片..." +#: cmd/build.py:226 ext/apidoc/_cli.py:66 +msgid "no output on stdout, just warnings on stderr" +msgstr "在 stdout 無輸出,只有在 stderr 的警告" -#: builders/_epub_base.py:444 builders/latex/__init__.py:496 -#: builders/texinfo.py:215 -#, python-format -msgid "cannot copy image file %r: %s" -msgstr "無法複製圖片檔 %r: %s" +#: cmd/build.py:233 +msgid "no output at all, not even warnings" +msgstr "完全沒有輸出,也沒有警告" -#: builders/texinfo.py:222 -msgid "copying Texinfo support files" -msgstr "正在複製 Texinfo 支援檔案" +#: cmd/build.py:241 +msgid "do emit colored output (default: auto-detect)" +msgstr "執行 emit 彩色輸出(預設值:auto-detect)" -#: builders/texinfo.py:230 -#, python-format -msgid "error writing file Makefile: %s" -msgstr "錯誤寫入檔案 Makefile: %s" +#: cmd/build.py:249 +msgid "do not emit colored output (default: auto-detect)" +msgstr "不執行 emit 彩色輸出(預設值:auto-detect)" -#: builders/_epub_base.py:223 -#, python-format -msgid "duplicated ToC entry found: %s" -msgstr "找到了重複的 ToC 項目: %s" +#: cmd/build.py:252 +msgid "warning control options" +msgstr "控制警告的選項" -#: builders/_epub_base.py:433 -#, python-format -msgid "cannot read image file %r: copying it instead" -msgstr "無法讀取圖片檔 %r: 正在複製它做為替代" +#: cmd/build.py:258 +msgid "write warnings (and errors) to given file" +msgstr "寫入警告(及錯誤)至給定的檔案" -#: builders/_epub_base.py:464 -#, python-format -msgid "cannot write image file %r: %s" -msgstr "無法寫入圖片檔 %r: %s" +#: cmd/build.py:265 +msgid "turn warnings into errors" +msgstr "將警告轉為錯誤" -#: builders/_epub_base.py:476 -msgid "Pillow not found - copying image files" -msgstr "未找到 Pillow - 正在複製圖片檔" +#: cmd/build.py:273 +msgid "show full traceback on exception" +msgstr "在例外中顯示完整的回溯" -#: builders/_epub_base.py:511 -msgid "writing mimetype file..." -msgstr "正在寫入 mimetype 檔案..." +#: cmd/build.py:276 +msgid "run Pdb on exception" +msgstr "在例外中執行 Pdb" -#: builders/_epub_base.py:520 -msgid "writing META-INF/container.xml file..." -msgstr "正在寫入 META-INF/container.xml 檔案..." +#: cmd/build.py:282 +msgid "raise an exception on warnings" +msgstr "" -#: builders/_epub_base.py:558 -msgid "writing content.opf file..." -msgstr "正在寫入 content.opf 檔案..." +#: cmd/build.py:325 +msgid "cannot combine -a option and filenames" +msgstr "無法合併 -a 選項及檔名" -#: builders/_epub_base.py:591 +#: cmd/build.py:357 #, python-format -msgid "unknown mimetype for %s, ignoring" -msgstr "對於 %s 未知的 mimetype,忽略中" - -#: builders/_epub_base.py:745 -msgid "node has an invalid level" +msgid "cannot open warning file '%s': %s" msgstr "" -#: builders/_epub_base.py:765 -msgid "writing toc.ncx file..." -msgstr "正在寫入 toc.ncx 檔案..." +#: cmd/build.py:376 +msgid "-D option argument must be in the form name=value" +msgstr "-D 選項引數必須是 name=value 的形式" -#: builders/_epub_base.py:794 -#, python-format -msgid "writing %s file..." -msgstr "正在寫入 %s 檔案..." +#: cmd/build.py:383 +msgid "-A option argument must be in the form name=value" +msgstr "-A 選項引數必須是 name=value 的形式" -#: builders/dummy.py:19 -msgid "The dummy builder generates no files." -msgstr "虛擬建立器未產生任何檔案。" +#: cmd/quickstart.py:52 +msgid "automatically insert docstrings from modules" +msgstr "從模組自動插入說明字串" -#: builders/gettext.py:244 -#, python-format -msgid "The message catalogs are in %(outdir)s." -msgstr "訊息目錄是在 %(outdir)s" +#: cmd/quickstart.py:53 +msgid "automatically test code snippets in doctest blocks" +msgstr "在 doctest 區塊自動測試程式碼片段" -#: builders/gettext.py:266 -#, python-format -msgid "targets for %d template files" -msgstr "模板檔 %d 的目標" +#: cmd/quickstart.py:54 +msgid "link between Sphinx documentation of different projects" +msgstr "在不同專案的 Sphinx 說明文件中鏈接" -#: builders/gettext.py:271 -msgid "reading templates... " -msgstr "正在讀取模板..." +#: cmd/quickstart.py:55 +msgid "write \"todo\" entries that can be shown or hidden on build" +msgstr "寫入 \"todo\" 項目,它們可以在組建時被顯示或隱藏" -#: builders/gettext.py:307 -msgid "writing message catalogs... " -msgstr "正在寫入訊息目錄..." +#: cmd/quickstart.py:56 +msgid "checks for documentation coverage" +msgstr "核對說明文件的涵蓋範圍" -#: builders/singlehtml.py:35 -#, python-format -msgid "The HTML page is in %(outdir)s." -msgstr "HTML 頁面在 %(outdir)s 。" +#: cmd/quickstart.py:57 +msgid "include math, rendered as PNG or SVG images" +msgstr "包含 math,以 PNG 或 SVG 影像被呈現" -#: builders/singlehtml.py:171 -msgid "assembling single document" -msgstr "正在組合單一文件" +#: cmd/quickstart.py:58 +msgid "include math, rendered in the browser by MathJax" +msgstr "包含 math,被 MathJax 在瀏覽器中呈現" -#: builders/singlehtml.py:189 -msgid "writing additional files" -msgstr "正在寫入附加檔案" +#: cmd/quickstart.py:59 +msgid "conditional inclusion of content based on config values" +msgstr "根據組態值有條件地包含內容" -#: builders/linkcheck.py:77 -#, python-format -msgid "Look for any errors in the above output or in %(outdir)s/output.txt" -msgstr "尋找以上輸出或 %(outdir)s/output.txt 中的任何錯誤" +#: cmd/quickstart.py:60 +msgid "include links to the source code of documented Python objects" +msgstr "包含鏈接至已有說明文件的 Python 物件原始碼" -#: builders/linkcheck.py:149 -#, python-format -msgid "broken link: %s (%s)" -msgstr "錯誤連結: %s (%s)" +#: cmd/quickstart.py:61 +msgid "create .nojekyll file to publish the document on GitHub pages" +msgstr "建立 .nojekyll 檔案以在 GitHub 頁面發布文件" -#: builders/linkcheck.py:548 -#, python-format -msgid "Anchor '%s' not found" -msgstr "未找到錨 '%s'" +#: cmd/quickstart.py:111 +msgid "Please enter a valid path name." +msgstr "請輸入有效的路徑名稱。" -#: builders/linkcheck.py:758 -#, python-format -msgid "Failed to compile regex in linkcheck_allowed_redirects: %r %s" -msgstr "在 linkcheck_allowed_redirects 編譯 regex 失敗: %r %s" +#: cmd/quickstart.py:127 +msgid "Please enter some text." +msgstr "請輸入一些文字。" -#: builders/text.py:29 +#: cmd/quickstart.py:134 #, python-format -msgid "The text files are in %(outdir)s." -msgstr "文字檔案在 %(outdir)s 。" +msgid "Please enter one of %s." +msgstr "請輸入一種 %s 。" -#: transforms/i18n.py:227 transforms/i18n.py:302 -#, python-brace-format -msgid "" -"inconsistent footnote references in translated message. original: {0}, " -"translated: {1}" -msgstr "被翻譯訊息中有不一致的註腳參照。原文: {0},譯文: {1}" +#: cmd/quickstart.py:142 +msgid "Please enter either 'y' or 'n'." +msgstr "請輸入 'y' 或 'n'。" -#: transforms/i18n.py:272 -#, python-brace-format -msgid "" -"inconsistent references in translated message. original: {0}, translated: " -"{1}" -msgstr "被翻譯訊息中有不一致的參照。原文: {0},譯文: {1}" +#: cmd/quickstart.py:148 +msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." +msgstr "請輸入檔案後綴,例如 '.rst' 或 '.txt'。" -#: transforms/i18n.py:322 -#, python-brace-format -msgid "" -"inconsistent citation references in translated message. original: {0}, " -"translated: {1}" -msgstr "被翻譯訊息中有不一致的參照。原文: {0},譯文: {1}" +#: cmd/quickstart.py:230 +#, python-format +msgid "Welcome to the Sphinx %s quickstart utility." +msgstr "歡迎進入 Sphinx %s 快速入門公用程式。" -#: transforms/i18n.py:344 -#, python-brace-format -msgid "" -"inconsistent term references in translated message. original: {0}, " -"translated: {1}" -msgstr "被翻譯訊息中有不一致的術語參照。原文: {0},譯文: {1}" - -#: builders/html/__init__.py:486 builders/latex/__init__.py:199 -#: transforms/__init__.py:129 writers/manpage.py:98 writers/texinfo.py:220 -#, python-format -msgid "%b %d, %Y" -msgstr "%Y 年 %m 月 %d 日" - -#: transforms/__init__.py:139 -msgid "could not calculate translation progress!" -msgstr "無法計算翻譯進度!" - -#: transforms/__init__.py:144 -msgid "no translated elements!" -msgstr "沒有已翻譯的元素!" - -#: transforms/__init__.py:253 -#, python-format +#: cmd/quickstart.py:235 msgid "" -"4 column based index found. It might be a bug of extensions you use: %r" -msgstr "找到基於 4 欄位的索引。它可能是您使用的擴充套件的一個錯誤: %r" +"Please enter values for the following settings (just press Enter to\n" +"accept a default value, if one is given in brackets)." +msgstr "請輸入以下設定值(如果括號中有給定預設值,請直接\n按下 Enter 以接受它)。" -#: transforms/__init__.py:294 +#: cmd/quickstart.py:242 #, python-format -msgid "Footnote [%s] is not referenced." -msgstr "註腳 [%s] 未被參照。" - -#: transforms/__init__.py:303 -msgid "Footnote [*] is not referenced." -msgstr "" - -#: transforms/__init__.py:314 -msgid "Footnote [#] is not referenced." -msgstr "註腳 [#] 未被參照。" - -#: _cli/__init__.py:73 -msgid "Usage:" -msgstr "使用:" +msgid "Selected root path: %s" +msgstr "被選的根路徑: %s" -#: _cli/__init__.py:75 -#, python-brace-format -msgid "{0} [OPTIONS] []" -msgstr "{0} [OPTIONS] []" +#: cmd/quickstart.py:245 +msgid "Enter the root path for documentation." +msgstr "輸入說明文件的根路徑。" -#: _cli/__init__.py:78 -msgid " The Sphinx documentation generator." -msgstr "Sphinx 說明文件產生器。" +#: cmd/quickstart.py:246 +msgid "Root path for the documentation" +msgstr "說明文件的根路徑" -#: _cli/__init__.py:87 -msgid "Commands:" -msgstr "指令:" +#: cmd/quickstart.py:255 +msgid "Error: an existing conf.py has been found in the selected root path." +msgstr "錯誤:在被選的根路徑找到一個已存在的 conf.py。" -#: _cli/__init__.py:98 -msgid "Options" -msgstr "選項" +#: cmd/quickstart.py:260 +msgid "sphinx-quickstart will not overwrite existing Sphinx projects." +msgstr "sphinx-quickstart 不會重寫已存在的 Sphinx 專案。" -#: _cli/__init__.py:113 _cli/__init__.py:181 -msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." -msgstr "如需更多資訊,請參閱 https://www.sphinx-doc.org/en/master/man/。" +#: cmd/quickstart.py:263 +msgid "Please enter a new root path (or just Enter to exit)" +msgstr "請輸入一個新的根路徑(或直接按 Enter 離開)" -#: _cli/__init__.py:171 -#, python-brace-format +#: cmd/quickstart.py:274 msgid "" -"{0}: error: {1}\n" -"Run '{0} --help' for information" -msgstr "{0}: 錯誤: {1}\n執行 '{0} --help' 取得更多資訊" +"You have two options for placing the build directory for Sphinx output.\n" +"Either, you use a directory \"_build\" within the root path, or you separate\n" +"\"source\" and \"build\" directories within the root path." +msgstr "您有兩個選擇來為 Sphinx 的輸出放置建立資料夾。\n其一,您可以在根路徑中使用資料夾 \"_build\",或者,\n您可以在根路徑中分離 \"source\" 和 \"build\" 資料夾。" -#: _cli/__init__.py:179 -msgid " Manage documentation with Sphinx." -msgstr "以 Sphinx 管理說明文件。" +#: cmd/quickstart.py:280 +msgid "Separate source and build directories (y/n)" +msgstr "分離來源並建立資料夾 (y/n)" -#: _cli/__init__.py:191 -msgid "Show the version and exit." -msgstr "顯示版本並離開。" +#: cmd/quickstart.py:287 +msgid "" +"Inside the root directory, two more directories will be created; \"_templates\"\n" +"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" +"files. You can enter another prefix (such as \".\") to replace the underscore." +msgstr "在根資料夾內部,另外兩個資料夾會被建立;\"_templates\" \n放置自訂的 HTML 模板,而 \"_static\" 放置自訂的表單及其他\n靜態檔案。您可以輸入另一個前綴(像是 \".\")來取代底線。" -#: _cli/__init__.py:199 -msgid "Show this message and exit." -msgstr "顯示此訊息並離開。" +#: cmd/quickstart.py:292 +msgid "Name prefix for templates and static dir" +msgstr "用於模板及靜態資料夾的名稱前綴" -#: _cli/__init__.py:203 -msgid "Logging" -msgstr "登錄" +#: cmd/quickstart.py:298 +msgid "" +"The project name will occur in several places in the built documentation." +msgstr "專案名稱會在已建立的說明文件中的多個位置出現。" -#: _cli/__init__.py:210 -msgid "Increase verbosity (can be repeated)" -msgstr "增加詳細內容(可以重複)" +#: cmd/quickstart.py:301 +msgid "Project name" +msgstr "專案名稱" -#: _cli/__init__.py:218 -msgid "Only print errors and warnings." -msgstr "只印出錯誤及警告。" +#: cmd/quickstart.py:303 +msgid "Author name(s)" +msgstr "作者姓名" -#: _cli/__init__.py:225 -msgid "No output at all" -msgstr "完全沒有輸出" +#: cmd/quickstart.py:309 +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" +"just set both to the same value." +msgstr "在 Sphinx 中,軟體具有「版本」和「發布版本」的概念。每個\n版本可以有多個發布版本。舉例來說,Python 的版本會像是 2.5 \n或 3.0,而發布版本則像是 2.5.1 或 3.0a1。如果您不需要這個雙\n重的結構,請直接將兩者設為相同的值。" -#: _cli/__init__.py:231 -msgid "" -msgstr "" +#: cmd/quickstart.py:316 +msgid "Project version" +msgstr "專案版本" -#: _cli/__init__.py:263 -msgid "See 'sphinx --help'.\n" -msgstr "請參閱 'sphinx --help'。\n" +#: cmd/quickstart.py:318 +msgid "Project release" +msgstr "專案發布版本" -#: environment/__init__.py:86 -msgid "new config" -msgstr "新的組態" +#: cmd/quickstart.py:324 +msgid "" +"If the documents are to be written in a language other than English,\n" +"you can select a language here by its language code. Sphinx will then\n" +"translate text that it generates into that language.\n" +"\n" +"For a list of supported codes, see\n" +"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." +msgstr "如果文件是被英語以外的語言被編寫,您可以根據它的語言碼\n在此選擇一個語言。Sphinx 會將它產生的文本翻譯為該語言。\n\n要了解可支援的語言碼列表,請參閱\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -#: environment/__init__.py:87 -msgid "config changed" -msgstr "組態已變更" +#: cmd/quickstart.py:332 +msgid "Project language" +msgstr "專案語言" -#: environment/__init__.py:88 -msgid "extensions changed" -msgstr "擴充套件已變更" +#: cmd/quickstart.py:340 +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 "用於原始檔的檔案名稱後綴。通常,這會是 \".txt\" 或 \".rst\"。\n只有具有此後綴的檔案才會被認為是文件。" -#: environment/__init__.py:253 -msgid "build environment version not current" -msgstr "建立環境的版本不是目前的" +#: cmd/quickstart.py:344 +msgid "Source file suffix" +msgstr "原始檔案後綴" -#: environment/__init__.py:255 -msgid "source directory has changed" -msgstr "來源資料夾已變更" +#: cmd/quickstart.py:350 +msgid "" +"One document is special in that it is considered the top node of the\n" +"\"contents tree\", that is, it is the root of the hierarchical structure\n" +"of the documents. Normally, this is \"index\", but if your \"index\"\n" +"document is a custom template, you can also set this to another filename." +msgstr "一份文件的特別之處在於它會被視為 \"contents tree\" 中的頂端\n節點,也就是說,它是文件階層結構中的根。通常,這會是 \n\"index\",但如果您的 \"index\" 文件是一個自訂的模板,您也可以\n將它設定為另一個檔名。" -#: environment/__init__.py:325 -#, python-format -msgid "The configuration has changed (1 option: %r)" -msgstr "" +#: cmd/quickstart.py:357 +msgid "Name of your master document (without suffix)" +msgstr "您的主要文件名稱(不含後綴)" -#: environment/__init__.py:330 +#: cmd/quickstart.py:368 #, python-format -msgid "The configuration has changed (%d options: %s)" -msgstr "" +msgid "" +"Error: the master file %s has already been found in the selected root path." +msgstr "錯誤:在被選的根路徑中已經找到主檔 %s 。" -#: environment/__init__.py:336 -#, python-format -msgid "The configuration has changed (%d options: %s, ...)" -msgstr "" +#: cmd/quickstart.py:374 +msgid "sphinx-quickstart will not overwrite the existing file." +msgstr "sphinx-quickstart 不會重寫已存在的檔案。" -#: environment/__init__.py:379 +#: cmd/quickstart.py:378 msgid "" -"This environment is incompatible with the selected builder, please choose " -"another doctree directory." -msgstr "這個環境與所選的 builder 不相容,請選擇另一個 doctree 資料夾。" - -#: environment/__init__.py:493 -#, python-format -msgid "Failed to scan documents in %s: %r" -msgstr "無法掃描 %s 中的文件: %r" +"Please enter a new file name, or rename the existing file and press Enter" +msgstr "請輸入一個新的檔案名稱,或將已存在的檔案重新命名並按下 Enter" -#: environment/__init__.py:658 ext/intersphinx/_resolve.py:234 -#, python-format -msgid "Domain %r is not registered" -msgstr "Domain %r 未被註冊" +#: cmd/quickstart.py:386 +msgid "Indicate which of the following Sphinx extensions should be enabled:" +msgstr "指示以下哪一個 Sphinx 擴充應該被啟用:" -#: environment/__init__.py:813 -msgid "document isn't included in any toctree" -msgstr "文件未被包含於任何 toctree" +#: cmd/quickstart.py:397 +msgid "" +"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " +"been deselected." +msgstr "註解:imgmath 和 mathjax 無法同時被啟用。imgmath 已被取消選擇。" -#: environment/__init__.py:859 -msgid "self referenced toctree found. Ignored." -msgstr "找到自我參照的 toctree。已略過。" +#: cmd/quickstart.py:407 +msgid "" +"A Makefile and a Windows command file can be generated for you so that you\n" +"only have to run e.g. `make html' instead of invoking sphinx-build\n" +"directly." +msgstr "會為您產生一個 Makefile 和一個 Windows 命令檔,所以\n您只需要執行像是 `make html' 而不必直接調用 \nsphinx-build。" -#: environment/__init__.py:889 -#, python-format -msgid "document is referenced in multiple toctrees: %s, selecting: %s <- %s" -msgstr "" +#: cmd/quickstart.py:412 +msgid "Create Makefile? (y/n)" +msgstr "是否建立 Makefile? (y/n)" -#: util/i18n.py:100 -#, python-format -msgid "reading error: %s, %s" -msgstr "讀取錯誤: %s, %s" +#: cmd/quickstart.py:416 +msgid "Create Windows command file? (y/n)" +msgstr "是否建立 Windows 命令檔?(y/n)" -#: util/i18n.py:113 +#: cmd/quickstart.py:468 ext/apidoc/_generate.py:76 #, python-format -msgid "writing error: %s, %s" -msgstr "寫入錯誤: %s, %s" +msgid "Creating file %s." +msgstr "正在建立檔案 %s 。" -#: util/i18n.py:146 +#: cmd/quickstart.py:473 ext/apidoc/_generate.py:73 #, python-format -msgid "locale_dir %s does not exist" -msgstr "locale_dir %s 不存在" +msgid "File %s already exists, skipping." +msgstr "檔案 %s 已存在,正在跳過。" -#: util/i18n.py:236 -#, python-format -msgid "Invalid Babel locale: %r." -msgstr "" +#: cmd/quickstart.py:516 +msgid "Finished: An initial directory structure has been created." +msgstr "已結束:一個初始資料夾結構已被建立。" -#: util/i18n.py:245 +#: cmd/quickstart.py:520 #, python-format msgid "" -"Invalid date format. Quote the string by single quote if you want to output " -"it directly: %s" -msgstr "無效的日期格式。如果您要直接將它輸出,則以單引號引用該字串: %s" +"You should now populate your master file %s and create other documentation\n" +"source files. " +msgstr "您現在應該在您的主檔 %s 輸入資料並建立其他說明文件\n原始檔。" -#: util/docfields.py:103 -#, python-format +#: cmd/quickstart.py:527 msgid "" -"Problem in %s domain: field is supposed to use role '%s', but that role is " -"not in the domain." -msgstr "在 %s domain 中的問題:欄位應該要用角色 '%s' ,但是那個角色並不在該 domain。" +"Use the Makefile to build the docs, like so:\n" +" make builder" +msgstr "使用 Makefile 來建立文件,像這樣:\n make builder" -#: util/nodes.py:423 +#: cmd/quickstart.py:531 #, python-format msgid "" -"%r is deprecated for index entries (from entry %r). Use 'pair: %s' instead." -msgstr "%r 已棄用於索引項目(從項目 %r)。請改用 'pair: %s'。" - -#: util/nodes.py:490 -#, python-format -msgid "toctree contains ref to nonexisting file %r" -msgstr "toctree 包含了不存在的檔案 %r 的參照 " +"Use the sphinx-build command to build the docs, like so:\n" +" sphinx-build -b builder %s %s" +msgstr "使用 sphinx-build 命令來建立文件,像這樣:\n sphinx-build -b builder %s %s" -#: util/nodes.py:706 -#, python-format -msgid "exception while evaluating only directive expression: %s" -msgstr "在評估只有指令的運算式時發生例外: %s" +#: cmd/quickstart.py:538 +msgid "" +"where \"builder\" is one of the supported builders, e.g. html, latex or " +"linkcheck." +msgstr "在這裡 \"builder\" 是一種被支援的建立器,例如 html,latex 或 linkcheck。" -#: util/display.py:82 -msgid "skipped" -msgstr "已省略" +#: cmd/quickstart.py:573 +msgid "" +"\n" +"Generate required files for a Sphinx project.\n" +"\n" +"sphinx-quickstart is an interactive tool that asks some questions about your\n" +"project and then generates a complete documentation directory and sample\n" +"Makefile to be used with sphinx-build.\n" +msgstr "\n為 Sphinx 專案產生需要的檔案。\n\nsphinx-quickstart 是一個互動式工具,它會問一些關於您專案\n的問題,然後產生完整的說明文件資料夾以及用於 sphinx-build \n的 Makefile 樣本。\n" -#: util/display.py:87 -msgid "failed" -msgstr "失敗" +#: cmd/quickstart.py:592 +msgid "quiet mode" +msgstr "安靜模式" -#: util/osutil.py:131 +#: cmd/quickstart.py:602 +msgid "project root" +msgstr "專案根" + +#: cmd/quickstart.py:605 +msgid "Structure options" +msgstr "結構選項" + +#: cmd/quickstart.py:611 +msgid "if specified, separate source and build dirs" +msgstr "如果有指定,會分離來源資料夾和 build 資料夾" + +#: cmd/quickstart.py:617 +msgid "if specified, create build dir under source dir" +msgstr "如果有指定,會在來源資料夾下建立 build 資料夾" + +#: cmd/quickstart.py:623 +msgid "replacement for dot in _templates etc." +msgstr "在 _templates 等處進行句號的取代" + +#: cmd/quickstart.py:626 +msgid "Project basic options" +msgstr "專案基本選項" + +#: cmd/quickstart.py:628 +msgid "project name" +msgstr "專案名稱" + +#: cmd/quickstart.py:631 +msgid "author names" +msgstr "作者名" + +#: cmd/quickstart.py:638 +msgid "version of project" +msgstr "專案版本" + +#: cmd/quickstart.py:645 +msgid "release of project" +msgstr "專案發布" + +#: cmd/quickstart.py:652 +msgid "document language" +msgstr "文件語言" + +#: cmd/quickstart.py:655 +msgid "source file suffix" +msgstr "源始檔後綴" + +#: cmd/quickstart.py:658 +msgid "master document name" +msgstr "主文件名稱" + +#: cmd/quickstart.py:661 +msgid "use epub" +msgstr "使用 epub" + +#: cmd/quickstart.py:664 +msgid "Extension options" +msgstr "擴充套件選項" + +#: cmd/quickstart.py:671 #, python-format +msgid "enable %s extension" +msgstr "啟用 %s 擴充套件" + +#: cmd/quickstart.py:678 +msgid "enable arbitrary extensions" +msgstr "啟用任意的擴充套件" + +#: cmd/quickstart.py:681 +msgid "Makefile and Batchfile creation" +msgstr "Makefile 及 Batchfile 的建立" + +#: cmd/quickstart.py:687 +msgid "create makefile" +msgstr "建立 makefile" + +#: cmd/quickstart.py:693 +msgid "do not create makefile" +msgstr "不要建立 makefile" + +#: cmd/quickstart.py:700 +msgid "create batchfile" +msgstr "建立 batchfile" + +#: cmd/quickstart.py:706 +msgid "do not create batchfile" +msgstr "不要建立 batchfile" + +#: cmd/quickstart.py:715 +msgid "use make-mode for Makefile/make.bat" +msgstr "使用 make 模式於 Makefile/make.bat" + +#: cmd/quickstart.py:718 ext/apidoc/_cli.py:243 +msgid "Project templating" +msgstr "專案模板化中" + +#: cmd/quickstart.py:724 ext/apidoc/_cli.py:249 +msgid "template directory for template files" +msgstr "用於模板檔案的模板資料夾" + +#: cmd/quickstart.py:731 +msgid "define a template variable" +msgstr "定義一個模板變數" + +#: cmd/quickstart.py:767 +msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." +msgstr "\"quiet\" 被指定,但 \"project\" 或 \"author\" 的任一項未被指定。" + +#: cmd/quickstart.py:786 msgid "" -"Aborted attempted copy from %s to %s (the destination path has existing " -"data)." -msgstr "" +"Error: specified path is not a directory, or sphinx files already exist." +msgstr "錯誤:指定的路徑不是資料夾,或是 sphinx 檔案已經存在。" + +#: cmd/quickstart.py:793 +msgid "" +"sphinx-quickstart only generate into a empty directory. Please specify a new" +" root path." +msgstr "sphinx-quickstart 只能產生於空白資料夾中。請指定一個新的根路徑。" -#: util/docutils.py:309 +#: cmd/quickstart.py:810 #, python-format -msgid "unknown directive name: %s" -msgstr "" +msgid "Invalid template variable: %s" +msgstr "無效的模板變數: %s" + +#: directives/other.py:119 +#, python-format +msgid "toctree glob pattern %r didn't match any documents" +msgstr "toctree glob 型樣 %r 未匹配任何文件" -#: util/docutils.py:345 +#: directives/other.py:153 environment/adapters/toctree.py:372 #, python-format -msgid "unknown role name: %s" -msgstr "" +msgid "toctree contains reference to excluded document %r" +msgstr "toctree 包含了指向已排除文件的參照 %r" -#: util/docutils.py:789 +#: directives/other.py:156 #, python-format -msgid "unknown node type: %r" -msgstr "未知的節點型別: %r" +msgid "toctree contains reference to nonexisting document %r" +msgstr "toctree 包含了指向不存在文件的參照 %r" -#: util/fileutil.py:76 +#: directives/other.py:169 #, python-format +msgid "duplicated entry found in toctree: %s" +msgstr "在 toctree 中找到重複的項目: %s" + +#: directives/other.py:203 +msgid "Section author: " +msgstr "章節作者:" + +#: directives/other.py:205 +msgid "Module author: " +msgstr "模組作者:" + +#: directives/other.py:207 +msgid "Code author: " +msgstr "程式作者:" + +#: directives/other.py:209 +msgid "Author: " +msgstr "作者:" + +#: directives/other.py:269 +msgid ".. acks content is not a list" +msgstr ".. acks 的內容不是一個列表" + +#: directives/other.py:292 +msgid ".. hlist content is not a list" +msgstr ".. hlist 的內容不是一個列表" + +#: directives/patches.py:70 msgid "" -"Aborted attempted copy from rendered template %s to %s (the destination path" -" has existing data)." -msgstr "" +"\":file:\" option for csv-table directive now recognizes an absolute path as" +" a relative path from source directory. Please update your document." +msgstr "對 csv-table 指令的 \":file:\" 選項現在會將絕對路徑辨識為基於來源資料夾的相對路徑。請更新您的文件。" -#: util/fileutil.py:89 +#: directives/code.py:66 +msgid "non-whitespace stripped by dedent" +msgstr "非空白字元被凸排去除" + +#: directives/code.py:87 #, python-format -msgid "Writing evaluated template result to %s" -msgstr "" +msgid "Invalid caption: %s" +msgstr "無效標題:%s" -#: util/rst.py:73 +#: directives/code.py:131 directives/code.py:297 directives/code.py:483 #, python-format -msgid "default role %s not found" -msgstr "預設角色 %s 未找到" +msgid "line number spec is out of range(1-%d): %r" +msgstr "列號規格超出範圍 (1-%d): %r" -#: util/inventory.py:147 +#: directives/code.py:216 #, python-format -msgid "inventory <%s> contains duplicate definitions of %s" +msgid "Cannot use both \"%s\" and \"%s\" options" +msgstr "不能使用 \"%s\" 及 \"%s\" 兩個選項" + +#: directives/code.py:231 +#, python-format +msgid "Include file '%s' not found or reading it failed" msgstr "" -#: util/inventory.py:166 +#: directives/code.py:235 #, python-format -msgid "inventory <%s> contains multiple definitions for %s" +msgid "" +"Encoding %r used for reading included file '%s' seems to be wrong, try " +"giving an :encoding: option" msgstr "" -#: writers/latex.py:1097 writers/manpage.py:259 writers/texinfo.py:663 -msgid "Footnotes" -msgstr "註腳" +#: directives/code.py:276 +#, python-format +msgid "Object named %r not found in include file %r" +msgstr "名為 %r 的物件在 include 檔案 %r 中未找到" + +#: directives/code.py:309 +msgid "Cannot use \"lineno-match\" with a disjoint set of \"lines\"" +msgstr "無法以一個 \"lines\" 的互斥集使用 \"lineno-match\" " -#: writers/manpage.py:289 writers/text.py:945 +#: directives/code.py:314 #, python-format -msgid "[image: %s]" -msgstr "[圖片:%s]" +msgid "Line spec %r: no lines pulled from include file %r" +msgstr "Line spec %r: 從 include 檔案 %r 沒有提取任何一行" -#: writers/manpage.py:290 writers/text.py:946 -msgid "[image]" -msgstr "[圖片]" +#: builders/html/__init__.py:475 builders/latex/__init__.py:196 +#: transforms/__init__.py:134 writers/manpage.py:97 writers/texinfo.py:220 +#, python-format +msgid "%b %d, %Y" +msgstr "%Y 年 %m 月 %d 日" -#: builders/latex/__init__.py:206 domains/std/__init__.py:771 -#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:106 +#: builders/latex/__init__.py:203 domains/std/__init__.py:771 +#: domains/std/__init__.py:784 templates/latex/latex.tex.jinja:107 #: themes/basic/genindex-single.html:22 themes/basic/genindex-single.html:48 #: themes/basic/genindex-split.html:3 themes/basic/genindex-split.html:6 #: themes/basic/genindex.html:3 themes/basic/genindex.html:26 @@ -1751,11 +2298,15 @@ msgstr "[圖片]" msgid "Index" msgstr "索引" -#: writers/latex.py:743 writers/texinfo.py:646 +#: writers/latex.py:768 writers/texinfo.py:646 msgid "" "encountered title node not in section, topic, table, admonition or sidebar" msgstr "遇到的標題節點不是在段落、主題、表格、警告或側邊欄" +#: writers/latex.py:1118 writers/manpage.py:258 writers/texinfo.py:663 +msgid "Footnotes" +msgstr "註腳" + #: writers/texinfo.py:1217 msgid "caption not inside a figure." msgstr "標題不在圖之內。" @@ -1765,53 +2316,14 @@ msgstr "標題不在圖之內。" msgid "unimplemented node type: %r" msgstr "未實作的節點型別: %r" -#: writers/latex.py:361 -#, python-format -msgid "unknown %r toplevel_sectioning for class %r" -msgstr "未知的 %r toplevel_sectioning 對於 class %r" - -#: builders/latex/__init__.py:224 writers/latex.py:411 -#, python-format -msgid "no Babel option known for language %r" -msgstr "沒有語言 %r 已知的 Babel 選項" - -#: writers/latex.py:429 -msgid "too large :maxdepth:, ignored." -msgstr ":maxdepth: 太大,已略過。" - -#: writers/latex.py:591 -#, python-format -msgid "template %s not found; loading from legacy %s instead" -msgstr "" - -#: writers/latex.py:707 -msgid "document title is not a single Text node" -msgstr "文件標題不是單一的 Text 節點" - -#: writers/html5.py:572 writers/latex.py:1106 -#, python-format -msgid "unsupported rubric heading level: %s" -msgstr "" - -#: writers/latex.py:1183 -msgid "" -"both tabularcolumns and :widths: option are given. :widths: is ignored." -msgstr "同時被給予 tabularcolumns 及 :widths: 選項。 :widths: 已略過。" - -#: writers/latex.py:1580 +#: writers/manpage.py:288 writers/text.py:971 #, python-format -msgid "dimension unit %s is invalid. Ignored." -msgstr "維度單位 %s 是無效的。已略過。" - -#: writers/latex.py:1939 -#, python-format -msgid "unknown index entry type %s found" -msgstr "找到了未知的索引條目型別 %s" +msgid "[image: %s]" +msgstr "[圖片:%s]" -#: domains/math.py:128 writers/latex.py:2495 -#, python-format -msgid "Invalid math_eqref_format: %r" -msgstr "無效的 math_eqref_format: %r" +#: writers/manpage.py:289 writers/text.py:972 +msgid "[image]" +msgstr "[圖片]" #: writers/html5.py:96 writers/html5.py:105 msgid "Link to this definition" @@ -1839,9 +2351,14 @@ msgstr "連結到這個標頭" msgid "Link to this table" msgstr "連結到這個表格" -#: writers/html5.py:636 -msgid "Link to this code" -msgstr "連結到這個程式碼" +#: writers/html5.py:572 writers/latex.py:1127 +#, python-format +msgid "unsupported rubric heading level: %s" +msgstr "" + +#: writers/html5.py:636 +msgid "Link to this code" +msgstr "連結到這個程式碼" #: writers/html5.py:638 msgid "Link to this image" @@ -1855,794 +2372,478 @@ msgstr "連結到這個 toctree" msgid "Could not obtain image size. :scale: option is ignored." msgstr "無法取得圖片大小。 :scale: 選項已略過。" -#: domains/__init__.py:322 +#: writers/latex.py:386 #, python-format -msgid "%s %s" -msgstr "%s %s" +msgid "unknown %r toplevel_sectioning for class %r" +msgstr "未知的 %r toplevel_sectioning 對於 class %r" -#: domains/math.py:73 +#: builders/latex/__init__.py:221 writers/latex.py:436 #, python-format -msgid "duplicate label of equation %s, other instance in %s" -msgstr "重複公式標籤 %s,亦出現於 %s" +msgid "no Babel option known for language %r" +msgstr "沒有語言 %r 已知的 Babel 選項" -#: domains/javascript.py:182 -#, python-format -msgid "%s() (built-in function)" -msgstr "%s() (內建函式)" +#: writers/latex.py:454 +msgid "too large :maxdepth:, ignored." +msgstr ":maxdepth: 太大,已略過。" -#: domains/javascript.py:183 domains/python/__init__.py:287 +#: writers/latex.py:616 #, python-format -msgid "%s() (%s method)" -msgstr "%s() (%s 的方法)" +msgid "template %s not found; loading from legacy %s instead" +msgstr "" + +#: writers/latex.py:732 +msgid "document title is not a single Text node" +msgstr "文件標題不是單一的 Text 節點" + +#: writers/latex.py:1198 +msgid "" +"both tabularcolumns and :widths: option are given. :widths: is ignored." +msgstr "同時被給予 tabularcolumns 及 :widths: 選項。 :widths: 已略過。" -#: domains/javascript.py:185 +#: writers/latex.py:1228 #, python-format -msgid "%s() (class)" -msgstr "%s() (類別)" +msgid "" +"colspec %s was given which appears to use tabulary syntax. But this table " +"can not be rendered as a tabulary; the given colspec will be ignored." +msgstr "" -#: domains/javascript.py:187 +#: writers/latex.py:1615 #, python-format -msgid "%s (global variable or constant)" -msgstr "%s (全域變數或常數)" +msgid "dimension unit %s is invalid. Ignored." +msgstr "維度單位 %s 是無效的。已略過。" -#: domains/javascript.py:189 domains/python/__init__.py:378 +#: writers/latex.py:1950 #, python-format -msgid "%s (%s attribute)" -msgstr "%s (%s 的屬性)" +msgid "unknown index entry type %s found" +msgstr "找到了未知的索引條目型別 %s" -#: domains/javascript.py:273 -msgid "Arguments" -msgstr "引數" +#: _cli/__init__.py:73 +msgid "Usage:" +msgstr "使用:" -#: domains/cpp/__init__.py:489 domains/javascript.py:280 -msgid "Throws" -msgstr "拋出" +#: _cli/__init__.py:75 +#, python-brace-format +msgid "{0} [OPTIONS] []" +msgstr "{0} [OPTIONS] []" -#: domains/c/__init__.py:339 domains/cpp/__init__.py:502 -#: domains/javascript.py:287 domains/python/_object.py:221 -msgid "Returns" -msgstr "回傳" +#: _cli/__init__.py:78 +msgid " The Sphinx documentation generator." +msgstr "Sphinx 說明文件產生器。" -#: domains/c/__init__.py:345 domains/javascript.py:293 -#: domains/python/_object.py:227 -msgid "Return type" -msgstr "回傳型別" +#: _cli/__init__.py:87 +msgid "Commands:" +msgstr "指令:" -#: domains/javascript.py:370 -#, python-format -msgid "%s (module)" -msgstr "%s (模組)" +#: _cli/__init__.py:98 +msgid "Options" +msgstr "選項" -#: domains/c/__init__.py:751 domains/cpp/__init__.py:941 -#: domains/javascript.py:415 domains/python/__init__.py:740 -msgid "function" -msgstr "函式" +#: _cli/__init__.py:113 _cli/__init__.py:181 +msgid "For more information, visit https://www.sphinx-doc.org/en/master/man/." +msgstr "如需更多資訊,請參閱 https://www.sphinx-doc.org/en/master/man/。" -#: domains/javascript.py:416 domains/python/__init__.py:744 -msgid "method" -msgstr "方法" +#: _cli/__init__.py:171 +#, python-brace-format +msgid "" +"{0}: error: {1}\n" +"Run '{0} --help' for information" +msgstr "{0}: 錯誤: {1}\n執行 '{0} --help' 取得更多資訊" -#: domains/cpp/__init__.py:939 domains/javascript.py:417 -#: domains/python/__init__.py:742 -msgid "class" -msgstr "類別" +#: _cli/__init__.py:179 +msgid " Manage documentation with Sphinx." +msgstr "以 Sphinx 管理說明文件。" -#: domains/javascript.py:418 domains/python/__init__.py:741 -msgid "data" -msgstr "資料" +#: _cli/__init__.py:191 +msgid "Show the version and exit." +msgstr "顯示版本並離開。" -#: domains/javascript.py:419 domains/python/__init__.py:747 -msgid "attribute" -msgstr "屬性" +#: _cli/__init__.py:199 +msgid "Show this message and exit." +msgstr "顯示此訊息並離開。" -#: domains/javascript.py:420 domains/python/__init__.py:750 -msgid "module" -msgstr "模組" +#: _cli/__init__.py:203 +msgid "Logging" +msgstr "登錄" + +#: _cli/__init__.py:210 +msgid "Increase verbosity (can be repeated)" +msgstr "增加詳細內容(可以重複)" + +#: _cli/__init__.py:218 +msgid "Only print errors and warnings." +msgstr "只印出錯誤及警告。" + +#: _cli/__init__.py:225 +msgid "No output at all" +msgstr "完全沒有輸出" + +#: _cli/__init__.py:231 +msgid "" +msgstr "" + +#: _cli/__init__.py:263 +msgid "See 'sphinx --help'.\n" +msgstr "請參閱 'sphinx --help'。\n" + +#: transforms/i18n.py:230 transforms/i18n.py:305 +#, python-brace-format +msgid "" +"inconsistent footnote references in translated message. original: {0}, " +"translated: {1}" +msgstr "被翻譯訊息中有不一致的註腳參照。原文: {0},譯文: {1}" + +#: transforms/i18n.py:275 +#, python-brace-format +msgid "" +"inconsistent references in translated message. original: {0}, translated: " +"{1}" +msgstr "被翻譯訊息中有不一致的參照。原文: {0},譯文: {1}" + +#: transforms/i18n.py:325 +#, python-brace-format +msgid "" +"inconsistent citation references in translated message. original: {0}, " +"translated: {1}" +msgstr "被翻譯訊息中有不一致的參照。原文: {0},譯文: {1}" -#: domains/javascript.py:454 +#: transforms/i18n.py:347 +#, python-brace-format +msgid "" +"inconsistent term references in translated message. original: {0}, " +"translated: {1}" +msgstr "被翻譯訊息中有不一致的術語參照。原文: {0},譯文: {1}" + +#: transforms/__init__.py:144 +msgid "could not calculate translation progress!" +msgstr "無法計算翻譯進度!" + +#: transforms/__init__.py:149 +msgid "no translated elements!" +msgstr "沒有已翻譯的元素!" + +#: transforms/__init__.py:258 #, python-format -msgid "duplicate %s description of %s, other %s in %s" -msgstr "%s 的重複 %s 敘述,其他的 %s 在 %s" +msgid "" +"4 column based index found. It might be a bug of extensions you use: %r" +msgstr "找到基於 4 欄位的索引。它可能是您使用的擴充套件的一個錯誤: %r" -#: domains/changeset.py:26 +#: transforms/__init__.py:299 #, python-format -msgid "Added in version %s" -msgstr "在 %s 版被加入" +msgid "Footnote [%s] is not referenced." +msgstr "註腳 [%s] 未被參照。" + +#: transforms/__init__.py:308 +msgid "Footnote [*] is not referenced." +msgstr "" + +#: transforms/__init__.py:319 +msgid "Footnote [#] is not referenced." +msgstr "註腳 [#] 未被參照。" -#: domains/changeset.py:27 +#: util/inventory.py:147 #, python-format -msgid "Changed in version %s" -msgstr "在 %s 版的變更" +msgid "inventory <%s> contains duplicate definitions of %s" +msgstr "" -#: domains/changeset.py:28 +#: util/inventory.py:166 #, python-format -msgid "Deprecated since version %s" -msgstr "在 %s 版之後被棄用" +msgid "inventory <%s> contains multiple definitions for %s" +msgstr "" -#: domains/changeset.py:29 +#: util/i18n.py:100 #, python-format -msgid "Removed in version %s" -msgstr "在 %s 版被移除" +msgid "reading error: %s, %s" +msgstr "讀取錯誤: %s, %s" -#: domains/rst.py:131 domains/rst.py:190 +#: util/i18n.py:113 #, python-format -msgid "%s (directive)" -msgstr "%s (指令)" +msgid "writing error: %s, %s" +msgstr "寫入錯誤: %s, %s" -#: domains/rst.py:191 domains/rst.py:202 +#: util/i18n.py:146 #, python-format -msgid ":%s: (directive option)" -msgstr ":%s: (指令選項)" +msgid "locale_dir %s does not exist" +msgstr "locale_dir %s 不存在" -#: domains/rst.py:224 +#: util/i18n.py:244 #, python-format -msgid "%s (role)" -msgstr "%s (角色)" +msgid "Invalid Babel locale: %r." +msgstr "" -#: domains/rst.py:234 -msgid "directive" -msgstr "指令" +#: util/i18n.py:253 +#, python-format +msgid "" +"Invalid date format. Quote the string by single quote if you want to output " +"it directly: %s" +msgstr "無效的日期格式。如果您要直接將它輸出,則以單引號引用該字串: %s" -#: domains/rst.py:235 -msgid "directive-option" -msgstr "指令選項" +#: util/osutil.py:131 +#, python-format +msgid "" +"Aborted attempted copy from %s to %s (the destination path has existing " +"data)." +msgstr "" -#: domains/rst.py:236 -msgid "role" -msgstr "角色" +#: util/display.py:82 +msgid "skipped" +msgstr "已省略" -#: domains/rst.py:262 +#: util/display.py:87 +msgid "failed" +msgstr "失敗" + +#: util/docutils.py:325 #, python-format -msgid "duplicate description of %s %s, other instance in %s" -msgstr "%s %s 的重複敘述,其他的實例在 %s" +msgid "unknown directive name: %s" +msgstr "" -#: domains/citation.py:75 +#: util/docutils.py:361 #, python-format -msgid "duplicate citation %s, other instance in %s" -msgstr "重複的引用 %s,亦出現於 %s" +msgid "unknown role name: %s" +msgstr "" -#: domains/citation.py:92 +#: util/docutils.py:805 #, python-format -msgid "Citation [%s] is not referenced." -msgstr "引用 [%s] 未被參照。" +msgid "unknown node type: %r" +msgstr "未知的節點型別: %r" -#: locale/__init__.py:228 -msgid "Attention" -msgstr "注意" +#: util/fileutil.py:76 +#, python-format +msgid "" +"Aborted attempted copy from rendered template %s to %s (the destination path" +" has existing data)." +msgstr "" -#: locale/__init__.py:229 -msgid "Caution" -msgstr "警示" - -#: locale/__init__.py:230 -msgid "Danger" -msgstr "危險" - -#: locale/__init__.py:231 -msgid "Error" -msgstr "錯誤" - -#: locale/__init__.py:232 -msgid "Hint" -msgstr "提示" - -#: locale/__init__.py:233 -msgid "Important" -msgstr "重要" - -#: locale/__init__.py:234 -msgid "Note" -msgstr "備註" - -#: locale/__init__.py:235 -msgid "See also" -msgstr "也參考" - -#: locale/__init__.py:236 -msgid "Tip" -msgstr "小訣竅" - -#: locale/__init__.py:237 -msgid "Warning" -msgstr "警告" - -#: cmd/quickstart.py:52 -msgid "automatically insert docstrings from modules" -msgstr "從模組自動插入說明字串" - -#: cmd/quickstart.py:53 -msgid "automatically test code snippets in doctest blocks" -msgstr "在 doctest 區塊自動測試程式碼片段" - -#: cmd/quickstart.py:54 -msgid "link between Sphinx documentation of different projects" -msgstr "在不同專案的 Sphinx 說明文件中鏈接" - -#: cmd/quickstart.py:55 -msgid "write \"todo\" entries that can be shown or hidden on build" -msgstr "寫入 \"todo\" 項目,它們可以在組建時被顯示或隱藏" - -#: cmd/quickstart.py:56 -msgid "checks for documentation coverage" -msgstr "核對說明文件的涵蓋範圍" - -#: cmd/quickstart.py:57 -msgid "include math, rendered as PNG or SVG images" -msgstr "包含 math,以 PNG 或 SVG 影像被呈現" - -#: cmd/quickstart.py:58 -msgid "include math, rendered in the browser by MathJax" -msgstr "包含 math,被 MathJax 在瀏覽器中呈現" - -#: cmd/quickstart.py:59 -msgid "conditional inclusion of content based on config values" -msgstr "根據組態值有條件地包含內容" - -#: cmd/quickstart.py:60 -msgid "include links to the source code of documented Python objects" -msgstr "包含鏈接至已有說明文件的 Python 物件原始碼" - -#: cmd/quickstart.py:61 -msgid "create .nojekyll file to publish the document on GitHub pages" -msgstr "建立 .nojekyll 檔案以在 GitHub 頁面發布文件" - -#: cmd/quickstart.py:110 -msgid "Please enter a valid path name." -msgstr "請輸入有效的路徑名稱。" - -#: cmd/quickstart.py:126 -msgid "Please enter some text." -msgstr "請輸入一些文字。" - -#: cmd/quickstart.py:133 -#, python-format -msgid "Please enter one of %s." -msgstr "請輸入一種 %s 。" - -#: cmd/quickstart.py:141 -msgid "Please enter either 'y' or 'n'." -msgstr "請輸入 'y' 或 'n'。" - -#: cmd/quickstart.py:147 -msgid "Please enter a file suffix, e.g. '.rst' or '.txt'." -msgstr "請輸入檔案後綴,例如 '.rst' 或 '.txt'。" - -#: cmd/quickstart.py:229 -#, python-format -msgid "Welcome to the Sphinx %s quickstart utility." -msgstr "歡迎進入 Sphinx %s 快速入門公用程式。" - -#: cmd/quickstart.py:234 -msgid "" -"Please enter values for the following settings (just press Enter to\n" -"accept a default value, if one is given in brackets)." -msgstr "請輸入以下設定值(如果括號中有給定預設值,請直接\n按下 Enter 以接受它)。" - -#: cmd/quickstart.py:241 -#, python-format -msgid "Selected root path: %s" -msgstr "被選的根路徑: %s" - -#: cmd/quickstart.py:244 -msgid "Enter the root path for documentation." -msgstr "輸入說明文件的根路徑。" - -#: cmd/quickstart.py:245 -msgid "Root path for the documentation" -msgstr "說明文件的根路徑" - -#: cmd/quickstart.py:254 -msgid "Error: an existing conf.py has been found in the selected root path." -msgstr "錯誤:在被選的根路徑找到一個已存在的 conf.py。" - -#: cmd/quickstart.py:259 -msgid "sphinx-quickstart will not overwrite existing Sphinx projects." -msgstr "sphinx-quickstart 不會重寫已存在的 Sphinx 專案。" - -#: cmd/quickstart.py:262 -msgid "Please enter a new root path (or just Enter to exit)" -msgstr "請輸入一個新的根路徑(或直接按 Enter 離開)" - -#: cmd/quickstart.py:273 -msgid "" -"You have two options for placing the build directory for Sphinx output.\n" -"Either, you use a directory \"_build\" within the root path, or you separate\n" -"\"source\" and \"build\" directories within the root path." -msgstr "您有兩個選擇來為 Sphinx 的輸出放置建立資料夾。\n其一,您可以在根路徑中使用資料夾 \"_build\",或者,\n您可以在根路徑中分離 \"source\" 和 \"build\" 資料夾。" - -#: cmd/quickstart.py:279 -msgid "Separate source and build directories (y/n)" -msgstr "分離來源並建立資料夾 (y/n)" - -#: cmd/quickstart.py:286 -msgid "" -"Inside the root directory, two more directories will be created; \"_templates\"\n" -"for custom HTML templates and \"_static\" for custom stylesheets and other static\n" -"files. You can enter another prefix (such as \".\") to replace the underscore." -msgstr "在根資料夾內部,另外兩個資料夾會被建立;\"_templates\" \n放置自訂的 HTML 模板,而 \"_static\" 放置自訂的表單及其他\n靜態檔案。您可以輸入另一個前綴(像是 \".\")來取代底線。" - -#: cmd/quickstart.py:291 -msgid "Name prefix for templates and static dir" -msgstr "用於模板及靜態資料夾的名稱前綴" - -#: cmd/quickstart.py:297 -msgid "" -"The project name will occur in several places in the built documentation." -msgstr "專案名稱會在已建立的說明文件中的多個位置出現。" - -#: cmd/quickstart.py:300 -msgid "Project name" -msgstr "專案名稱" - -#: cmd/quickstart.py:302 -msgid "Author name(s)" -msgstr "作者姓名" - -#: cmd/quickstart.py:308 -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" -"just set both to the same value." -msgstr "在 Sphinx 中,軟體具有「版本」和「發布版本」的概念。每個\n版本可以有多個發布版本。舉例來說,Python 的版本會像是 2.5 \n或 3.0,而發布版本則像是 2.5.1 或 3.0a1。如果您不需要這個雙\n重的結構,請直接將兩者設為相同的值。" - -#: cmd/quickstart.py:315 -msgid "Project version" -msgstr "專案版本" - -#: cmd/quickstart.py:317 -msgid "Project release" -msgstr "專案發布版本" - -#: cmd/quickstart.py:323 -msgid "" -"If the documents are to be written in a language other than English,\n" -"you can select a language here by its language code. Sphinx will then\n" -"translate text that it generates into that language.\n" -"\n" -"For a list of supported codes, see\n" -"https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." -msgstr "如果文件是被英語以外的語言被編寫,您可以根據它的語言碼\n在此選擇一個語言。Sphinx 會將它產生的文本翻譯為該語言。\n\n要了解可支援的語言碼列表,請參閱\nhttps://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language." - -#: cmd/quickstart.py:331 -msgid "Project language" -msgstr "專案語言" - -#: cmd/quickstart.py:339 -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 "用於原始檔的檔案名稱後綴。通常,這會是 \".txt\" 或 \".rst\"。\n只有具有此後綴的檔案才會被認為是文件。" - -#: cmd/quickstart.py:343 -msgid "Source file suffix" -msgstr "原始檔案後綴" - -#: cmd/quickstart.py:349 -msgid "" -"One document is special in that it is considered the top node of the\n" -"\"contents tree\", that is, it is the root of the hierarchical structure\n" -"of the documents. Normally, this is \"index\", but if your \"index\"\n" -"document is a custom template, you can also set this to another filename." -msgstr "一份文件的特別之處在於它會被視為 \"contents tree\" 中的頂端\n節點,也就是說,它是文件階層結構中的根。通常,這會是 \n\"index\",但如果您的 \"index\" 文件是一個自訂的模板,您也可以\n將它設定為另一個檔名。" - -#: cmd/quickstart.py:356 -msgid "Name of your master document (without suffix)" -msgstr "您的主要文件名稱(不含後綴)" - -#: cmd/quickstart.py:367 -#, python-format -msgid "" -"Error: the master file %s has already been found in the selected root path." -msgstr "錯誤:在被選的根路徑中已經找到主檔 %s 。" - -#: cmd/quickstart.py:373 -msgid "sphinx-quickstart will not overwrite the existing file." -msgstr "sphinx-quickstart 不會重寫已存在的檔案。" - -#: cmd/quickstart.py:377 -msgid "" -"Please enter a new file name, or rename the existing file and press Enter" -msgstr "請輸入一個新的檔案名稱,或將已存在的檔案重新命名並按下 Enter" - -#: cmd/quickstart.py:385 -msgid "Indicate which of the following Sphinx extensions should be enabled:" -msgstr "指示以下哪一個 Sphinx 擴充應該被啟用:" - -#: cmd/quickstart.py:396 -msgid "" -"Note: imgmath and mathjax cannot be enabled at the same time. imgmath has " -"been deselected." -msgstr "註解:imgmath 和 mathjax 無法同時被啟用。imgmath 已被取消選擇。" - -#: cmd/quickstart.py:406 -msgid "" -"A Makefile and a Windows command file can be generated for you so that you\n" -"only have to run e.g. `make html' instead of invoking sphinx-build\n" -"directly." -msgstr "會為您產生一個 Makefile 和一個 Windows 命令檔,所以\n您只需要執行像是 `make html' 而不必直接調用 \nsphinx-build。" - -#: cmd/quickstart.py:411 -msgid "Create Makefile? (y/n)" -msgstr "是否建立 Makefile? (y/n)" - -#: cmd/quickstart.py:415 -msgid "Create Windows command file? (y/n)" -msgstr "是否建立 Windows 命令檔?(y/n)" - -#: cmd/quickstart.py:467 ext/apidoc/_generate.py:76 -#, python-format -msgid "Creating file %s." -msgstr "正在建立檔案 %s 。" - -#: cmd/quickstart.py:472 ext/apidoc/_generate.py:73 -#, python-format -msgid "File %s already exists, skipping." -msgstr "檔案 %s 已存在,正在跳過。" - -#: cmd/quickstart.py:515 -msgid "Finished: An initial directory structure has been created." -msgstr "已結束:一個初始資料夾結構已被建立。" - -#: cmd/quickstart.py:519 +#: util/fileutil.py:89 #, python-format -msgid "" -"You should now populate your master file %s and create other documentation\n" -"source files. " -msgstr "您現在應該在您的主檔 %s 輸入資料並建立其他說明文件\n原始檔。" - -#: cmd/quickstart.py:526 -msgid "" -"Use the Makefile to build the docs, like so:\n" -" make builder" -msgstr "使用 Makefile 來建立文件,像這樣:\n make builder" +msgid "Writing evaluated template result to %s" +msgstr "" -#: cmd/quickstart.py:530 +#: util/docfields.py:103 #, python-format msgid "" -"Use the sphinx-build command to build the docs, like so:\n" -" sphinx-build -b builder %s %s" -msgstr "使用 sphinx-build 命令來建立文件,像這樣:\n sphinx-build -b builder %s %s" - -#: cmd/quickstart.py:537 -msgid "" -"where \"builder\" is one of the supported builders, e.g. html, latex or " -"linkcheck." -msgstr "在這裡 \"builder\" 是一種被支援的建立器,例如 html,latex 或 linkcheck。" - -#: cmd/quickstart.py:572 -msgid "" -"\n" -"Generate required files for a Sphinx project.\n" -"\n" -"sphinx-quickstart is an interactive tool that asks some questions about your\n" -"project and then generates a complete documentation directory and sample\n" -"Makefile to be used with sphinx-build.\n" -msgstr "\n為 Sphinx 專案產生需要的檔案。\n\nsphinx-quickstart 是一個互動式工具,它會問一些關於您專案\n的問題,然後產生完整的說明文件資料夾以及用於 sphinx-build \n的 Makefile 樣本。\n" - -#: cmd/build.py:73 cmd/quickstart.py:581 ext/apidoc/_cli.py:27 -#: ext/autosummary/generate.py:835 -msgid "For more information, visit ." -msgstr "需要更多資訊,請拜訪 ." - -#: cmd/quickstart.py:591 -msgid "quiet mode" -msgstr "安靜模式" - -#: cmd/quickstart.py:601 -msgid "project root" -msgstr "專案根" - -#: cmd/quickstart.py:604 -msgid "Structure options" -msgstr "結構選項" - -#: cmd/quickstart.py:610 -msgid "if specified, separate source and build dirs" -msgstr "如果有指定,會分離來源資料夾和 build 資料夾" - -#: cmd/quickstart.py:616 -msgid "if specified, create build dir under source dir" -msgstr "如果有指定,會在來源資料夾下建立 build 資料夾" - -#: cmd/quickstart.py:622 -msgid "replacement for dot in _templates etc." -msgstr "在 _templates 等處進行句號的取代" - -#: cmd/quickstart.py:625 -msgid "Project basic options" -msgstr "專案基本選項" - -#: cmd/quickstart.py:627 -msgid "project name" -msgstr "專案名稱" - -#: cmd/quickstart.py:630 -msgid "author names" -msgstr "作者名" - -#: cmd/quickstart.py:637 -msgid "version of project" -msgstr "專案版本" - -#: cmd/quickstart.py:644 -msgid "release of project" -msgstr "專案發布" - -#: cmd/quickstart.py:651 -msgid "document language" -msgstr "文件語言" - -#: cmd/quickstart.py:654 -msgid "source file suffix" -msgstr "源始檔後綴" - -#: cmd/quickstart.py:657 -msgid "master document name" -msgstr "主文件名稱" - -#: cmd/quickstart.py:660 -msgid "use epub" -msgstr "使用 epub" - -#: cmd/quickstart.py:663 -msgid "Extension options" -msgstr "擴充套件選項" +"Problem in %s domain: field is supposed to use role '%s', but that role is " +"not in the domain." +msgstr "在 %s domain 中的問題:欄位應該要用角色 '%s' ,但是那個角色並不在該 domain。" -#: cmd/quickstart.py:670 +#: util/rst.py:73 #, python-format -msgid "enable %s extension" -msgstr "啟用 %s 擴充套件" - -#: cmd/quickstart.py:677 -msgid "enable arbitrary extensions" -msgstr "啟用任意的擴充套件" - -#: cmd/quickstart.py:680 -msgid "Makefile and Batchfile creation" -msgstr "Makefile 及 Batchfile 的建立" - -#: cmd/quickstart.py:686 -msgid "create makefile" -msgstr "建立 makefile" - -#: cmd/quickstart.py:692 -msgid "do not create makefile" -msgstr "不要建立 makefile" - -#: cmd/quickstart.py:699 -msgid "create batchfile" -msgstr "建立 batchfile" - -#: cmd/quickstart.py:705 -msgid "do not create batchfile" -msgstr "不要建立 batchfile" - -#: cmd/quickstart.py:714 -msgid "use make-mode for Makefile/make.bat" -msgstr "使用 make 模式於 Makefile/make.bat" - -#: cmd/quickstart.py:717 ext/apidoc/_cli.py:243 -msgid "Project templating" -msgstr "專案模板化中" - -#: cmd/quickstart.py:723 ext/apidoc/_cli.py:249 -msgid "template directory for template files" -msgstr "用於模板檔案的模板資料夾" - -#: cmd/quickstart.py:730 -msgid "define a template variable" -msgstr "定義一個模板變數" - -#: cmd/quickstart.py:766 -msgid "\"quiet\" is specified, but any of \"project\" or \"author\" is not specified." -msgstr "\"quiet\" 被指定,但 \"project\" 或 \"author\" 的任一項未被指定。" - -#: cmd/quickstart.py:785 -msgid "" -"Error: specified path is not a directory, or sphinx files already exist." -msgstr "錯誤:指定的路徑不是資料夾,或是 sphinx 檔案已經存在。" +msgid "default role %s not found" +msgstr "預設角色 %s 未找到" -#: cmd/quickstart.py:792 +#: util/nodes.py:462 +#, python-format msgid "" -"sphinx-quickstart only generate into a empty directory. Please specify a new" -" root path." -msgstr "sphinx-quickstart 只能產生於空白資料夾中。請指定一個新的根路徑。" +"%r is no longer supported for index entries (from entry %r). Use 'pair: %s' " +"instead." +msgstr "" -#: cmd/quickstart.py:809 +#: util/nodes.py:523 #, python-format -msgid "Invalid template variable: %s" -msgstr "無效的模板變數: %s" +msgid "toctree contains ref to nonexisting file %r" +msgstr "toctree 包含了不存在的檔案 %r 的參照 " -#: cmd/build.py:64 -msgid "job number should be a positive number" -msgstr "工件編號應該是一個正數" +#: util/nodes.py:739 +#, python-format +msgid "exception while evaluating only directive expression: %s" +msgstr "在評估只有指令的運算式時發生例外: %s" -#: cmd/build.py:74 -msgid "" -"\n" -"Generate documentation from source files.\n" -"\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" -"including 'conf.py'\n" -"\n" -"sphinx-build can create documentation in different formats. A format is\n" -"selected by specifying the builder name on the command line; it defaults to\n" -"HTML. Builders can also perform other tasks related to documentation\n" -"processing.\n" -"\n" -"By default, everything that is outdated is built. Output only for selected\n" -"files can be built by specifying individual filenames.\n" -msgstr "\n從原始檔案產生說明文件。\n\nsphinx-build 會從 SOURCEDIR 中的檔案來產生說明文件,並\n將它置放於 OUTPUTDIR。它會在 SOURCEDIR 中尋找 'conf.py' \n內的組態設定。'sphinx-quickstart' 工具可以用來產生模板檔案,\n包括 'conf.py'\n\nsphinx-build 能以不同的格式建立說明文件。在命令列指定建立\n器的名稱來選擇一種格式;其預設值為 HTML。建立器也能執行\n與處理說明文件有關的其他任務。\n\n在預設情況,所有舊的文件都已經被建立。指定個別的檔名,\n可以在建立時僅限於輸出所選的檔案。\n" +#: templates/latex/longtable.tex.jinja:52 +#: templates/latex/sphinxmessages.sty.jinja:8 +msgid "continued from previous page" +msgstr "繼續上一頁" -#: cmd/build.py:100 -msgid "path to documentation source files" -msgstr "到說明文件原始檔案的路徑" +#: templates/latex/longtable.tex.jinja:63 +#: templates/latex/sphinxmessages.sty.jinja:9 +msgid "continues on next page" +msgstr "繼續下一頁" -#: cmd/build.py:103 -msgid "path to output directory" -msgstr "到輸出資料夾的路徑" +#: templates/latex/sphinxmessages.sty.jinja:10 +msgid "Non-alphabetical" +msgstr "非依字母順序" -#: cmd/build.py:109 -msgid "" -"(optional) a list of specific files to rebuild. Ignored if --write-all is " -"specified" -msgstr "(選用)一份要重建的特定檔案清單。如果已指定 --write-all,則會被忽略。" +#: environment/adapters/indexentries.py:267 +#: templates/latex/sphinxmessages.sty.jinja:11 +msgid "Symbols" +msgstr "符號" -#: cmd/build.py:114 -msgid "general options" -msgstr "一般選項" +#: templates/latex/sphinxmessages.sty.jinja:12 +msgid "Numbers" +msgstr "數字" -#: cmd/build.py:121 -msgid "builder to use (default: 'html')" -msgstr "要使用的建立器(預設值:'html')" +#: templates/latex/sphinxmessages.sty.jinja:13 +msgid "page" +msgstr "頁" -#: cmd/build.py:131 -msgid "" -"run in parallel with N processes, when possible. 'auto' uses the number of " -"CPU cores" -msgstr "如果可以的話,N 個程序會平行執行。'auto' 會使用 CPU 核心的數量" +#: builders/latex/__init__.py:206 templates/latex/latex.tex.jinja:92 +msgid "Release" +msgstr "發佈" -#: cmd/build.py:140 -msgid "write all files (default: only write new and changed files)" -msgstr "寫入所有檔案(預設:只寫入新增及已變更檔案)" +#: transforms/post_transforms/images.py:79 +#, python-format +msgid "Could not fetch remote image: %s [%s]" +msgstr "無法提取遠端圖片: %s [%s]" -#: cmd/build.py:147 -msgid "don't use a saved environment, always read all files" -msgstr "不要使用已儲存的環境,永遠要讀取全部的檔案" +#: transforms/post_transforms/images.py:96 +#, python-format +msgid "Could not fetch remote image: %s [%d]" +msgstr "無法提取遠端圖片: %s [%d]" -#: cmd/build.py:150 -msgid "path options" -msgstr "路徑選項" +#: transforms/post_transforms/images.py:143 +#, python-format +msgid "Unknown image format: %s..." +msgstr "未知的圖片格式: %s..." -#: cmd/build.py:157 +#: transforms/post_transforms/__init__.py:88 msgid "" -"directory for doctree and environment files (default: OUTPUT_DIR/.doctrees)" -msgstr "包含 doctree 及環境檔案的資料夾(預設值:OUTPUT_DIR/.doctrees)" +"Could not determine the fallback text for the cross-reference. Might be a " +"bug." +msgstr "無法為交互參照決定備用文字。可能是個錯誤。" -#: cmd/build.py:166 -msgid "directory for the configuration file (conf.py) (default: SOURCE_DIR)" -msgstr "包含組態檔 (conf.py) 的資料夾(預設值:SOURCE_DIR)" +#: transforms/post_transforms/__init__.py:233 +#, python-format +msgid "more than one target found for 'any' cross-reference %r: could be %s" +msgstr "為「任一個」交互參照 %r 找到多於一個目標:可能是 %s" -#: cmd/build.py:175 -msgid "use no configuration file, only use settings from -D options" -msgstr "不使用組態檔,只使用 -D 選項中的設定" +#: transforms/post_transforms/__init__.py:291 +#, python-format +msgid "%s:%s reference target not found: %s" +msgstr "%s:%s 參照目標未找到: %s" -#: cmd/build.py:184 -msgid "override a setting in configuration file" -msgstr "在組態檔案中置換一項設定" +#: transforms/post_transforms/__init__.py:297 +#, python-format +msgid "%r reference target not found: %s" +msgstr "%r 參照目標未找到: %s" -#: cmd/build.py:193 -msgid "pass a value into HTML templates" -msgstr "傳遞一個值進入 HTML 模板" +#: _cli/util/errors.py:190 +msgid "Interrupted!" +msgstr "已中斷!" -#: cmd/build.py:202 -msgid "define tag: include \"only\" blocks with TAG" -msgstr "定義 tag:「只」包含有 TAG 的區塊" +#: _cli/util/errors.py:194 +msgid "reStructuredText markup error!" +msgstr "" -#: cmd/build.py:209 -msgid "nitpicky mode: warn about all missing references" +#: _cli/util/errors.py:200 +msgid "Encoding error!" msgstr "" -#: cmd/build.py:212 -msgid "console output options" -msgstr "控制台輸出選項" +#: _cli/util/errors.py:203 +msgid "Recursion error!" +msgstr "" -#: cmd/build.py:219 -msgid "increase verbosity (can be repeated)" -msgstr "增加贅言(可以被重複)" +#: _cli/util/errors.py:207 +msgid "" +"This can happen with very large or deeply nested source files. You can " +"carefully increase the default Python recursion limit of 1,000 in conf.py " +"with e.g.:" +msgstr "" -#: cmd/build.py:226 ext/apidoc/_cli.py:66 -msgid "no output on stdout, just warnings on stderr" -msgstr "在 stdout 無輸出,只有在 stderr 的警告" +#: _cli/util/errors.py:227 +msgid "Starting debugger:" +msgstr "" -#: cmd/build.py:233 -msgid "no output at all, not even warnings" -msgstr "完全沒有輸出,也沒有警告" +#: _cli/util/errors.py:235 +msgid "The full traceback has been saved in:" +msgstr "完整的回溯已儲存於:" -#: cmd/build.py:241 -msgid "do emit colored output (default: auto-detect)" -msgstr "執行 emit 彩色輸出(預設值:auto-detect)" +#: _cli/util/errors.py:240 +msgid "" +"To report this error to the developers, please open an issue at " +". Thanks!" +msgstr "要向開發者回報此錯誤,請在 開啟一個 issue。謝謝!" -#: cmd/build.py:249 -msgid "do not emit colored output (default: auto-detect)" -msgstr "不執行 emit 彩色輸出(預設值:auto-detect)" +#: _cli/util/errors.py:246 +msgid "" +"Please also report this if it was a user error, so that a better error " +"message can be provided next time." +msgstr "如果這是一個使用者錯誤,請一併回報,如此下次才能提供較佳的錯誤訊息。" -#: cmd/build.py:252 -msgid "warning control options" -msgstr "控制警告的選項" +#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 +msgid "Collapse sidebar" +msgstr "收合側邊欄" -#: cmd/build.py:258 -msgid "write warnings (and errors) to given file" -msgstr "寫入警告(及錯誤)至給定的檔案" +#: themes/basic/layout.html:18 +msgid "Navigation" +msgstr "瀏覽" -#: cmd/build.py:265 -msgid "turn warnings into errors" -msgstr "將警告轉為錯誤" +#: themes/basic/layout.html:115 +#, python-format +msgid "Search within %(docstitle)s" +msgstr "在 %(docstitle)s 中搜尋" -#: cmd/build.py:273 -msgid "show full traceback on exception" -msgstr "在例外中顯示完整的回溯" +#: themes/basic/layout.html:124 +msgid "About these documents" +msgstr "關於這些文件" -#: cmd/build.py:276 -msgid "run Pdb on exception" -msgstr "在例外中執行 Pdb" +#: themes/agogo/layout.html:34 themes/basic/layout.html:130 +#: themes/basic/search.html:3 themes/basic/search.html:15 +msgid "Search" +msgstr "搜尋" -#: cmd/build.py:282 -msgid "raise an exception on warnings" -msgstr "" +#: themes/basic/layout.html:133 themes/basic/layout.html:177 +#: themes/basic/layout.html:179 +msgid "Copyright" +msgstr "版權所有" -#: cmd/build.py:325 -msgid "cannot combine -a option and filenames" -msgstr "無法合併 -a 選項及檔名" +#: themes/basic/layout.html:183 themes/basic/layout.html:189 +#, python-format +msgid "© %(copyright_prefix)s %(copyright)s." +msgstr "© %(copyright_prefix)s %(copyright)s." -#: cmd/build.py:357 +#: themes/basic/layout.html:201 #, python-format -msgid "cannot open warning file '%s': %s" -msgstr "" +msgid "Last updated on %(last_updated)s." +msgstr "最後更新於 %(last_updated)s。" -#: cmd/build.py:376 -msgid "-D option argument must be in the form name=value" -msgstr "-D 選項引數必須是 name=value 的形式" +#: themes/basic/layout.html:204 +#, python-format +msgid "" +"Created using Sphinx " +"%(sphinx_version)s." +msgstr "使用 Sphinx %(sphinx_version)s 建立。" -#: cmd/build.py:383 -msgid "-A option argument must be in the form name=value" -msgstr "-A 選項引數必須是 name=value 的形式" +#: themes/basic/relations.html:4 +msgid "Previous topic" +msgstr "上個主題" + +#: themes/basic/relations.html:6 +msgid "previous chapter" +msgstr "上一章" + +#: themes/basic/relations.html:11 +msgid "Next topic" +msgstr "下個主題" -#: themes/classic/layout.html:12 themes/classic/static/sidebar.js.jinja:51 -msgid "Collapse sidebar" -msgstr "收合側邊欄" +#: themes/basic/relations.html:13 +msgid "next chapter" +msgstr "下一章" -#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 -#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 -msgid "Table of Contents" -msgstr "目錄" +#: themes/basic/genindex-single.html:26 +#, python-format +msgid "Index – %(key)s" +msgstr "" -#: themes/agogo/layout.html:34 themes/basic/layout.html:130 -#: themes/basic/search.html:3 themes/basic/search.html:15 -msgid "Search" -msgstr "搜尋" +#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 +#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 +msgid "Full index on one page" +msgstr "單頁完整索引" -#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 -#: themes/basic/searchfield.html:12 -msgid "Go" -msgstr "前往" +#: themes/basic/sourcelink.html:4 +msgid "This Page" +msgstr "本頁" #: themes/agogo/layout.html:81 themes/basic/sourcelink.html:7 msgid "Show Source" msgstr "顯示原始碼" -#: themes/haiku/layout.html:16 -msgid "Contents" -msgstr "內容" +#: themes/basic/searchbox.html:4 +msgid "Quick search" +msgstr "快速搜尋" -#: themes/basic/opensearch.xml:4 -#, python-format -msgid "Search %(docstitle)s" -msgstr "搜尋 %(docstitle)s" +#: themes/agogo/layout.html:37 themes/basic/searchbox.html:8 +#: themes/basic/searchfield.html:12 +msgid "Go" +msgstr "前往" #: themes/basic/defindex.html:4 msgid "Overview" @@ -2689,7 +2890,7 @@ msgstr "全域模組索引" msgid "quick access to all modules" msgstr "迅速找到所有模組" -#: builders/html/__init__.py:507 themes/basic/defindex.html:23 +#: builders/html/__init__.py:496 themes/basic/defindex.html:23 msgid "General Index" msgstr "總索引" @@ -2697,23 +2898,15 @@ msgstr "總索引" msgid "all functions, classes, terms" msgstr "所有函式、類別、術語" -#: themes/basic/sourcelink.html:4 -msgid "This Page" -msgstr "本頁" +#: themes/agogo/layout.html:29 themes/basic/globaltoc.html:2 +#: themes/basic/localtoc.html:4 themes/scrolls/layout.html:32 +msgid "Table of Contents" +msgstr "目錄" -#: themes/basic/genindex-single.html:26 +#: themes/basic/opensearch.xml:4 #, python-format -msgid "Index – %(key)s" -msgstr "" - -#: themes/basic/genindex-single.html:54 themes/basic/genindex-split.html:16 -#: themes/basic/genindex-split.html:30 themes/basic/genindex.html:65 -msgid "Full index on one page" -msgstr "單頁完整索引" - -#: themes/basic/searchbox.html:4 -msgid "Quick search" -msgstr "快速搜尋" +msgid "Search %(docstitle)s" +msgstr "搜尋 %(docstitle)s" #: themes/basic/genindex-split.html:8 msgid "Index pages by letter" @@ -2723,57 +2916,6 @@ msgstr "按字母索引頁面" msgid "can be huge" msgstr "可能會很大" -#: themes/basic/relations.html:4 -msgid "Previous topic" -msgstr "上個主題" - -#: themes/basic/relations.html:6 -msgid "previous chapter" -msgstr "上一章" - -#: themes/basic/relations.html:11 -msgid "Next topic" -msgstr "下個主題" - -#: themes/basic/relations.html:13 -msgid "next chapter" -msgstr "下一章" - -#: themes/basic/layout.html:18 -msgid "Navigation" -msgstr "瀏覽" - -#: themes/basic/layout.html:115 -#, python-format -msgid "Search within %(docstitle)s" -msgstr "在 %(docstitle)s 中搜尋" - -#: themes/basic/layout.html:124 -msgid "About these documents" -msgstr "關於這些文件" - -#: themes/basic/layout.html:133 themes/basic/layout.html:177 -#: themes/basic/layout.html:179 -msgid "Copyright" -msgstr "版權所有" - -#: themes/basic/layout.html:183 themes/basic/layout.html:189 -#, python-format -msgid "© %(copyright_prefix)s %(copyright)s." -msgstr "© %(copyright_prefix)s %(copyright)s." - -#: themes/basic/layout.html:201 -#, python-format -msgid "Last updated on %(last_updated)s." -msgstr "最後更新於 %(last_updated)s。" - -#: themes/basic/layout.html:204 -#, python-format -msgid "" -"Created using Sphinx " -"%(sphinx_version)s." -msgstr "使用 Sphinx %(sphinx_version)s 建立。" - #: themes/basic/search.html:20 msgid "" "Please activate JavaScript to enable the search\n" @@ -2790,43 +2932,42 @@ msgstr "搜尋多個關鍵字時,只會顯示包含所有關鍵字的結果。 msgid "search" msgstr "搜尋" -#: themes/basic/static/sphinx_highlight.js:112 -msgid "Hide Search Matches" -msgstr "隱藏符合搜尋" +#: themes/haiku/layout.html:16 +msgid "Contents" +msgstr "內容" -#: themes/basic/static/searchtools.js:117 +#: themes/basic/static/searchtools.js:132 msgid "Search Results" msgstr "搜尋結果" -#: themes/basic/static/searchtools.js:119 +#: themes/basic/static/searchtools.js:134 msgid "" "Your search did not match any documents. Please make sure that all words are" " spelled correctly and that you've selected enough categories." msgstr "您的搜尋找不到任何滿足條件的文件。請確定是否所有的搜尋詞都正確地拼寫且您已選擇足夠的分類。" -#: themes/basic/static/searchtools.js:123 +#: themes/basic/static/searchtools.js:138 #, python-brace-format msgid "Search finished, found one page matching the search query." msgid_plural "" "Search finished, found ${resultCount} pages matching the search query." msgstr[0] "" -#: themes/basic/static/searchtools.js:253 +#: themes/basic/static/searchtools.js:276 msgid "Searching" msgstr "搜尋中" -#: themes/basic/static/searchtools.js:270 +#: themes/basic/static/searchtools.js:293 msgid "Preparing search..." msgstr "準備搜尋中…" -#: themes/basic/static/searchtools.js:474 +#: themes/basic/static/searchtools.js:526 msgid ", in " msgstr ",於 " -#: themes/basic/changes/rstsource.html:5 -#, python-format -msgid "%(filename)s — %(docstitle)s" -msgstr "%(filename)s — %(docstitle)s" +#: themes/basic/static/sphinx_highlight.js:112 +msgid "Hide Search Matches" +msgstr "隱藏符合搜尋" #: themes/basic/changes/frameset.html:5 #: themes/basic/changes/versionchanges.html:12 @@ -2834,6 +2975,11 @@ msgstr "%(filename)s — %(docstitle)s" msgid "Changes in Version %(version)s — %(docstitle)s" msgstr "於 %(version)s 版中的所有變更 — %(docstitle)s" +#: themes/basic/changes/rstsource.html:5 +#, python-format +msgid "%(filename)s — %(docstitle)s" +msgstr "%(filename)s — %(docstitle)s" + #: themes/basic/changes/versionchanges.html:17 #, python-format msgid "Automatically generated list of changes in version %(version)s" @@ -2855,120 +3001,127 @@ msgstr "其他變更" msgid "Expand sidebar" msgstr "展開側邊欄" -#: domains/python/_annotations.py:529 +#: domains/python/_annotations.py:522 msgid "Positional-only parameter separator (PEP 570)" msgstr "" -#: domains/python/_annotations.py:540 +#: domains/python/_annotations.py:533 msgid "Keyword-only parameters separator (PEP 3102)" msgstr "" -#: domains/python/__init__.py:113 domains/python/__init__.py:278 +#: domains/c/__init__.py:354 domains/cpp/__init__.py:485 +#: domains/python/_object.py:190 ext/napoleon/docstring.py:980 +msgid "Parameters" +msgstr "參數" + +#: domains/python/_object.py:206 +msgid "Variables" +msgstr "變數" + +#: domains/python/_object.py:214 +msgid "Raises" +msgstr "引發" + +#: domains/python/__init__.py:105 domains/python/__init__.py:270 #, python-format msgid "%s() (in module %s)" msgstr "%s() (於 %s 模組中)" -#: domains/python/__init__.py:180 domains/python/__init__.py:374 -#: domains/python/__init__.py:434 domains/python/__init__.py:474 +#: domains/python/__init__.py:172 domains/python/__init__.py:366 +#: domains/python/__init__.py:426 domains/python/__init__.py:466 #, python-format msgid "%s (in module %s)" msgstr "%s (於 %s 模組中)" -#: domains/python/__init__.py:182 +#: domains/python/__init__.py:174 #, python-format msgid "%s (built-in variable)" msgstr "%s (內建變數)" -#: domains/python/__init__.py:217 +#: domains/python/__init__.py:209 #, python-format msgid "%s (built-in class)" msgstr "%s (內建類別)" -#: domains/python/__init__.py:218 +#: domains/python/__init__.py:210 #, python-format msgid "%s (class in %s)" msgstr "%s (%s 中的類別)" -#: domains/python/__init__.py:283 +#: domains/python/__init__.py:275 #, python-format msgid "%s() (%s class method)" msgstr "%s() (%s 的類別方法)" -#: domains/python/__init__.py:285 +#: domains/python/__init__.py:277 #, python-format msgid "%s() (%s static method)" msgstr "%s() (%s 的靜態方法)" -#: domains/python/__init__.py:438 +#: domains/python/__init__.py:430 #, python-format msgid "%s (%s property)" msgstr "%s (%s 的特性)" -#: domains/python/__init__.py:478 +#: domains/python/__init__.py:470 #, python-format msgid "%s (type alias in %s)" msgstr "" -#: domains/python/__init__.py:638 +#: domains/python/__init__.py:624 msgid "Python Module Index" msgstr "Python 模組索引" -#: domains/python/__init__.py:639 +#: domains/python/__init__.py:625 msgid "modules" msgstr "模組" -#: domains/python/__init__.py:717 +#: domains/python/__init__.py:703 msgid "Deprecated" msgstr "已棄用" -#: domains/python/__init__.py:743 +#: domains/python/__init__.py:729 msgid "exception" msgstr "例外" -#: domains/python/__init__.py:745 +#: domains/python/__init__.py:731 msgid "class method" msgstr "類別方法" -#: domains/python/__init__.py:746 +#: domains/python/__init__.py:732 msgid "static method" msgstr "靜態方法" -#: domains/python/__init__.py:748 +#: domains/python/__init__.py:734 msgid "property" msgstr "特性" -#: domains/python/__init__.py:749 +#: domains/python/__init__.py:735 msgid "type alias" msgstr "" -#: domains/python/__init__.py:818 +#: domains/python/__init__.py:804 #, python-format msgid "" "duplicate object description of %s, other instance in %s, use :no-index: for" " one of them" msgstr "重複的 %s 的物件描述,在 %s 有其他實例,請在它們其中之一使用 :no-index:" -#: domains/python/__init__.py:978 +#: domains/python/__init__.py:974 #, python-format msgid "more than one target found for cross-reference %r: %s" msgstr "為交互參照 %r 找到多於一個目標: %s" -#: domains/python/__init__.py:1052 +#: domains/python/__init__.py:1048 msgid " (deprecated)" msgstr "(已棄用)" -#: domains/c/__init__.py:326 domains/cpp/__init__.py:483 -#: domains/python/_object.py:190 ext/napoleon/docstring.py:974 -msgid "Parameters" -msgstr "參數" - -#: domains/python/_object.py:206 -msgid "Variables" -msgstr "變數" - -#: domains/python/_object.py:214 -msgid "Raises" -msgstr "引發" +#: domains/cpp/__init__.py:394 domains/cpp/_symbol.py:946 +#, python-format +msgid "" +"Duplicate C++ declaration, also defined at %s:%s.\n" +"Declaration is '.. cpp:%s:: %s'." +msgstr "重複的 C++ 宣告,亦被定義於 %s:%s。\n宣告是 '.. cpp:%s:: %s'。" #: domains/cpp/__init__.py:159 msgid "Template Parameters" @@ -2979,92 +3132,85 @@ msgstr "模板參數" msgid "%s (C++ %s)" msgstr "%s (C++ %s)" -#: domains/cpp/__init__.py:392 domains/cpp/_symbol.py:942 -#, python-format -msgid "" -"Duplicate C++ declaration, also defined at %s:%s.\n" -"Declaration is '.. cpp:%s:: %s'." -msgstr "重複的 C++ 宣告,亦被定義於 %s:%s。\n宣告是 '.. cpp:%s:: %s'。" - -#: domains/c/__init__.py:333 domains/cpp/__init__.py:496 +#: domains/c/__init__.py:361 domains/cpp/__init__.py:498 msgid "Return values" msgstr "回傳值" -#: domains/c/__init__.py:754 domains/cpp/__init__.py:940 +#: domains/c/__init__.py:782 domains/cpp/__init__.py:942 msgid "union" msgstr "union" -#: domains/c/__init__.py:749 domains/cpp/__init__.py:942 +#: domains/c/__init__.py:777 domains/cpp/__init__.py:944 msgid "member" msgstr "成員函數" -#: domains/c/__init__.py:757 domains/cpp/__init__.py:943 +#: domains/c/__init__.py:785 domains/cpp/__init__.py:945 msgid "type" msgstr "型別" -#: domains/cpp/__init__.py:944 +#: domains/cpp/__init__.py:946 msgid "concept" msgstr "概念" -#: domains/c/__init__.py:755 domains/cpp/__init__.py:945 +#: domains/c/__init__.py:783 domains/cpp/__init__.py:947 msgid "enum" msgstr "enum" -#: domains/c/__init__.py:756 domains/cpp/__init__.py:946 +#: domains/c/__init__.py:784 domains/cpp/__init__.py:948 msgid "enumerator" msgstr "enumerator" -#: domains/c/__init__.py:760 domains/cpp/__init__.py:949 +#: domains/c/__init__.py:788 domains/cpp/__init__.py:951 msgid "function parameter" msgstr "函式參數" -#: domains/cpp/__init__.py:952 +#: domains/cpp/__init__.py:954 msgid "template parameter" msgstr "模板參數" -#: domains/c/__init__.py:211 -#, python-format -msgid "%s (C %s)" -msgstr "%s (C %s)" - -#: domains/c/__init__.py:277 domains/c/_symbol.py:557 +#: domains/c/__init__.py:279 domains/c/_symbol.py:569 #, python-format msgid "" "Duplicate C declaration, also defined at %s:%s.\n" "Declaration is '.. c:%s:: %s'." msgstr "重複的 C 宣告,亦被定義於 %s:%s。\n宣告是 '.. c:%s:: %s'。" -#: domains/c/__init__.py:750 +#: domains/c/__init__.py:211 +#, python-format +msgid "%s (C %s)" +msgstr "%s (C %s)" + +#: domains/c/__init__.py:778 msgid "variable" msgstr "變數" -#: domains/c/__init__.py:752 +#: domains/c/__init__.py:780 msgid "macro" msgstr "巨集" -#: domains/c/__init__.py:753 +#: domains/c/__init__.py:781 msgid "struct" msgstr "結構" -#: domains/std/__init__.py:91 domains/std/__init__.py:111 +#: domains/std/__init__.py:88 domains/std/__init__.py:108 #, python-format msgid "environment variable; %s" msgstr "環境變數; %s" -#: domains/std/__init__.py:119 +#: domains/std/__init__.py:116 #, python-format msgid "%s; configuration value" msgstr "" -#: domains/std/__init__.py:175 +#: domains/std/__init__.py:172 msgid "Type" msgstr "" -#: domains/std/__init__.py:185 +#: domains/std/__init__.py:182 msgid "Default" msgstr "" -#: domains/std/__init__.py:242 +#: domains/std/__init__.py:239 #, python-format msgid "" "Malformed option description %r, should look like \"opt\", \"-opt args\", \"" @@ -3159,514 +3305,422 @@ msgstr "未定義的標籤: %r" msgid "Failed to create a cross reference. A title or caption not found: %r" msgstr "無法建立一個交互參照。未找到標題或說明: %r" -#: environment/adapters/toctree.py:324 -#, python-format -msgid "circular toctree references detected, ignoring: %s <- %s" -msgstr "偵測到循環的 toctree 參照,忽略中: %s <- %s" - -#: environment/adapters/toctree.py:349 -#, python-format -msgid "" -"toctree contains reference to document %r that doesn't have a title: no link" -" will be generated" -msgstr "toctree 包含了到文件 %r 的參照,該文件沒有標題:不會產生任何鏈接" - -#: environment/adapters/toctree.py:364 -#, python-format -msgid "toctree contains reference to non-included document %r" -msgstr "toctree 包含了 non-included 文件 %r 的參照" - -#: environment/adapters/toctree.py:367 +#: ext/napoleon/docstring.py:178 #, python-format -msgid "toctree contains reference to non-existing document %r" -msgstr "" - -#: environment/adapters/indexentries.py:123 -#, python-format -msgid "see %s" -msgstr "參考 %s" - -#: environment/adapters/indexentries.py:133 -#, python-format -msgid "see also %s" -msgstr "也參考 %s" - -#: environment/adapters/indexentries.py:141 -#, python-format -msgid "unknown index entry type %r" -msgstr "未知的索引項目型別 %r" - -#: environment/adapters/indexentries.py:268 -#: templates/latex/sphinxmessages.sty.jinja:11 -msgid "Symbols" -msgstr "符號" - -#: environment/collectors/asset.py:98 -#, python-format -msgid "image file not readable: %s" -msgstr "影像檔案無法讀取: %s" +msgid "invalid value set (missing closing brace): %s" +msgstr "無效的值集合(缺少右括號): %s" -#: environment/collectors/asset.py:126 +#: ext/napoleon/docstring.py:185 #, python-format -msgid "image file %s not readable: %s" -msgstr "影像檔案 %s 無法讀取: %s" +msgid "invalid value set (missing opening brace): %s" +msgstr "無效的值集合(缺少左括號): %s" -#: environment/collectors/asset.py:163 +#: ext/napoleon/docstring.py:192 #, python-format -msgid "download file not readable: %s" -msgstr "下載檔案無法讀取: %s" +msgid "malformed string literal (missing closing quote): %s" +msgstr "異常的字串文本(缺少右括號): %s" -#: environment/collectors/toctree.py:259 +#: ext/napoleon/docstring.py:199 #, python-format -msgid "%s is already assigned section numbers (nested numbered toctree?)" -msgstr "%s 已經被指定段落編號(巢狀編號的 toctree?)" - -#: _cli/util/errors.py:190 -msgid "Interrupted!" -msgstr "已中斷!" - -#: _cli/util/errors.py:194 -msgid "reStructuredText markup error!" -msgstr "" +msgid "malformed string literal (missing opening quote): %s" +msgstr "異常的字串文本(缺少左括號): %s" -#: _cli/util/errors.py:200 -msgid "Encoding error!" -msgstr "" +#: ext/napoleon/docstring.py:902 +msgid "Example" +msgstr "範例" -#: _cli/util/errors.py:203 -msgid "Recursion error!" -msgstr "" +#: ext/napoleon/docstring.py:903 +msgid "Examples" +msgstr "範例" -#: _cli/util/errors.py:207 -msgid "" -"This can happen with very large or deeply nested source files. You can " -"carefully increase the default Python recursion limit of 1,000 in conf.py " -"with e.g.:" -msgstr "" +#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:947 +msgid "Keyword Arguments" +msgstr "關鍵字引數" -#: _cli/util/errors.py:227 -msgid "Starting debugger:" -msgstr "" +#: ext/napoleon/docstring.py:962 +msgid "Notes" +msgstr "備註" -#: _cli/util/errors.py:235 -msgid "The full traceback has been saved in:" -msgstr "完整的回溯已儲存於:" +#: ext/napoleon/docstring.py:971 +msgid "Other Parameters" +msgstr "其他參數" -#: _cli/util/errors.py:240 -msgid "" -"To report this error to the developers, please open an issue at " -". Thanks!" -msgstr "要向開發者回報此錯誤,請在 開啟一個 issue。謝謝!" +#: ext/napoleon/docstring.py:1007 +msgid "Receives" +msgstr "接收" -#: _cli/util/errors.py:246 -msgid "" -"Please also report this if it was a user error, so that a better error " -"message can be provided next time." -msgstr "如果這是一個使用者錯誤,請一併回報,如此下次才能提供較佳的錯誤訊息。" +#: ext/napoleon/docstring.py:1011 +msgid "References" +msgstr "參照" -#: transforms/post_transforms/__init__.py:88 -msgid "" -"Could not determine the fallback text for the cross-reference. Might be a " -"bug." -msgstr "無法為交互參照決定備用文字。可能是個錯誤。" +#: ext/napoleon/docstring.py:1043 +msgid "Warns" +msgstr "警告" -#: transforms/post_transforms/__init__.py:237 -#, python-format -msgid "more than one target found for 'any' cross-reference %r: could be %s" -msgstr "為「任一個」交互參照 %r 找到多於一個目標:可能是 %s" +#: ext/napoleon/docstring.py:1047 +msgid "Yields" +msgstr "產出" -#: transforms/post_transforms/__init__.py:299 +#: ext/autodoc/_generate.py:151 +#: ext/autodoc/_legacy_class_based/_documenters.py:859 #, python-format -msgid "%s:%s reference target not found: %s" -msgstr "%s:%s 參照目標未找到: %s" +msgid "A mocked object is detected: %r" +msgstr "一個 mocked 物件被偵測到: %r" -#: transforms/post_transforms/__init__.py:305 +#: ext/autodoc/_generate.py:334 ext/autodoc/_generate.py:348 +#: ext/autodoc/_generate.py:370 ext/autodoc/_generate.py:386 +#: ext/autodoc/_legacy_class_based/_documenters.py:1860 +#: ext/autodoc/_legacy_class_based/_documenters.py:1889 +#: ext/autodoc/_legacy_class_based/_documenters.py:1983 #, python-format -msgid "%r reference target not found: %s" -msgstr "%r 參照目標未找到: %s" +msgid "alias of %s" +msgstr "%s 的別名" -#: transforms/post_transforms/images.py:79 +#: ext/autodoc/_legacy_class_based/_documenters.py:1745 +#: ext/autodoc/_renderer.py:88 #, python-format -msgid "Could not fetch remote image: %s [%s]" -msgstr "無法提取遠端圖片: %s [%s]" +msgid "Bases: %s" +msgstr "基礎類別:%s" -#: transforms/post_transforms/images.py:96 +#: ext/autodoc/_directive_options.py:226 +#: ext/autodoc/_legacy_class_based/_directive_options.py:47 #, python-format -msgid "Could not fetch remote image: %s [%d]" -msgstr "無法提取遠端圖片: %s [%d]" +msgid "invalid value for member-order option: %s" +msgstr "對於 member-order 選項無效的值: %s" -#: transforms/post_transforms/images.py:143 +#: ext/autodoc/_directive_options.py:233 +#: ext/autodoc/_legacy_class_based/_directive_options.py:55 #, python-format -msgid "Unknown image format: %s..." -msgstr "未知的圖片格式: %s..." +msgid "invalid value for class-doc-from option: %s" +msgstr "對於 class-doc-from 選項無效的值: %s" -#: builders/html/__init__.py:113 +#: ext/autodoc/_legacy_class_based/_documenters.py:239 +#: ext/autodoc/_names.py:45 #, python-format -msgid "The HTML pages are in %(outdir)s." -msgstr "HTML 頁面在 %(outdir)s 。" +msgid "invalid signature for auto%s (%r)" +msgstr "無效的簽章給 auto%s (%r)" -#: builders/html/__init__.py:348 +#: ext/autodoc/_legacy_class_based/_documenters.py:800 +#: ext/autodoc/_names.py:53 ext/autodoc/_names.py:101 #, python-format -msgid "Failed to read build info file: %r" -msgstr "讀取 build info 檔失敗: %r" - -#: builders/html/__init__.py:364 -msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" -msgstr "" +msgid "" +"don't know which module to import for autodocumenting %r (try placing a " +"\"module\" or \"currentmodule\" directive in the document, or giving an " +"explicit module name)" +msgstr "不清楚要 import 哪個模組來 autodocument %r (試試看在文件中加入 \"module\" 或 \"currentmodule\" 指令,或是給予一個明確的模組名稱)" -#: builders/html/__init__.py:366 -msgid "building [html]: " +#: ext/autodoc/_names.py:89 +#, python-format +msgid "signature arguments given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:383 +#: ext/autodoc/_names.py:93 #, python-format -msgid "" -"template %s has been changed since the previous build, all docs will be " -"rebuilt" +msgid "return annotation given for automodule: '%s'" msgstr "" -#: builders/html/__init__.py:507 -msgid "index" -msgstr "索引" +#: ext/autodoc/_legacy_class_based/_documenters.py:956 +#: ext/autodoc/_names.py:134 +msgid "\"::\" in automodule name doesn't make sense" +msgstr "\"::\" 在 automodule 的名稱中並不合理" -#: builders/html/__init__.py:560 +#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:984 #, python-format -msgid "Logo of %s" +msgid "Failed to remove %s: %s" msgstr "" -#: builders/html/__init__.py:589 -msgid "next" -msgstr "下一頁" - -#: builders/html/__init__.py:598 -msgid "previous" -msgstr "上一頁" +#: ext/apidoc/_generate.py:69 +#, python-format +msgid "Would create file %s." +msgstr "將會建立檔案 %s 。" -#: builders/html/__init__.py:696 -msgid "generating indices" -msgstr "正在產生索引" +#: ext/apidoc/_cli.py:28 +msgid "" +"\n" +"Look recursively in for Python modules and packages and create\n" +"one reST file with automodule directives per package in the .\n" +"\n" +"The s can be file and/or directory patterns that will be\n" +"excluded from generation.\n" +"\n" +"Note: By default this script will not overwrite already created files." +msgstr "\n在 中遞迴查找 Python 模組及套件,並在 中\n為每個套件建立一個帶有 automodule 指令的 reST 檔。\n\n 可以是檔案及/或資料夾型樣,它們將在生成時被\n移除。\n\n備註:在預設情況,此腳本不會重寫已經被建立的檔案。" -#: builders/html/__init__.py:711 -msgid "writing additional pages" -msgstr "正在編寫附加頁面" +#: ext/apidoc/_cli.py:45 +msgid "path to module to document" +msgstr "要生成文件的模組路徑" -#: builders/html/__init__.py:794 -#, python-format -msgid "cannot copy image file '%s': %s" -msgstr "" +#: ext/apidoc/_cli.py:50 +msgid "" +"fnmatch-style file and/or directory patterns to exclude from generation" +msgstr "fnmatch 風格的檔案及/或資料夾模式,將在生成時移除。" -#: builders/html/__init__.py:806 -msgid "copying downloadable files... " -msgstr "正在複製可下載的檔案..." +#: ext/apidoc/_cli.py:60 +msgid "directory to place all output" +msgstr "要放置所有輸出的資料夾" -#: builders/html/__init__.py:818 -#, python-format -msgid "cannot copy downloadable file %r: %s" -msgstr "無法複製可下載的檔案 %r: %s" +#: ext/apidoc/_cli.py:75 +msgid "maximum depth of submodules to show in the TOC (default: 4)" +msgstr "能顯示 TOC 的子模組最大深度(預設值:4)" -#: builders/html/__init__.py:864 -#, python-format -msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" -msgstr "" +#: ext/apidoc/_cli.py:82 +msgid "overwrite existing files" +msgstr "重寫已存在的檔案" -#: builders/html/__init__.py:882 -#, python-format -msgid "Failed to copy a file in html_static_file: %s: %r" -msgstr "在 html_static_file 中複製一個檔案失敗: %s: %r " +#: ext/apidoc/_cli.py:91 +msgid "" +"follow symbolic links. Powerful when combined with " +"collective.recipe.omelette." +msgstr "跟隨符號鏈接。與 collective.recipe.omelette 結合時很有用。" -#: builders/html/__init__.py:917 -msgid "copying static files" -msgstr "正在複製靜態檔案" +#: ext/apidoc/_cli.py:99 +msgid "run the script without creating files" +msgstr "執行腳本而不建立檔案" -#: builders/html/__init__.py:934 -#, python-format -msgid "cannot copy static file %r" -msgstr "無法複製靜態檔案 %r" +#: ext/apidoc/_cli.py:106 +msgid "put documentation for each module on its own page" +msgstr "為每個模組在它自己的頁面置放說明文件" -#: builders/html/__init__.py:939 -msgid "copying extra files" -msgstr "正在複製額外檔案" +#: ext/apidoc/_cli.py:113 +msgid "include \"_private\" modules" +msgstr "包含 \"_private\" 模組" -#: builders/html/__init__.py:949 -#, python-format -msgid "cannot copy extra file %r" -msgstr "無法複製額外檔案 %r" +#: ext/apidoc/_cli.py:120 +msgid "filename of table of contents (default: modules)" +msgstr "目錄的檔名(預設值:模組)" -#: builders/html/__init__.py:955 -#, python-format -msgid "Failed to write build info file: %r" -msgstr "寫入 build info 檔失敗: %r" +#: ext/apidoc/_cli.py:127 +msgid "don't create a table of contents file" +msgstr "不要建立目錄檔案" -#: builders/html/__init__.py:1005 +#: ext/apidoc/_cli.py:135 msgid "" -"search index couldn't be loaded, but not all documents will be built: the " -"index will be incomplete." -msgstr "搜尋索引無法被載入,但不是所有的文件都會被建置:索引將會是不完全的。" +"don't create headings for the module/package packages (e.g. when the " +"docstrings already contain them)" +msgstr "不要為模組/套件建立標頭(例如:當說明字串已經包含它們時)" -#: builders/html/__init__.py:1052 -#, python-format -msgid "page %s matches two patterns in html_sidebars: %r and %r" -msgstr "頁面 %s 在 html_sidebars 中符合兩個型樣: %r 和 %r" +#: ext/apidoc/_cli.py:145 +msgid "put module documentation before submodule documentation" +msgstr "在子模組說明文件之前置放模組說明文件" -#: builders/html/__init__.py:1216 -#, python-format +#: ext/apidoc/_cli.py:152 msgid "" -"a Unicode error occurred when rendering the page %s. Please make sure all " -"config values that contain non-ASCII content are Unicode strings." -msgstr "在呈現頁面 %s 時發生了一個 Unicode 錯誤。請確認所有包含 non-ASCII 內容的組態值都是 Unicode 字串。" +"interpret module paths according to PEP-0420 implicit namespaces " +"specification" +msgstr "根據 PEP-0420 隱式命名空間規範來解譯模組路徑" -#: builders/html/__init__.py:1224 -#, python-format +#: ext/apidoc/_cli.py:160 msgid "" -"An error happened in rendering the page %s.\n" -"Reason: %r" -msgstr "在呈現頁面 %s 時發生了一個錯誤。\n原因: %r" - -#: builders/html/__init__.py:1257 -msgid "dumping object inventory" -msgstr "正在傾印物件庫存" +"Comma-separated list of options to pass to automodule directive (or use " +"SPHINX_APIDOC_OPTIONS)." +msgstr "" -#: builders/html/__init__.py:1265 -#, python-format -msgid "dumping search index in %s" -msgstr "正在傾印搜尋索引於 %s" +#: ext/apidoc/_cli.py:170 +msgid "file suffix (default: rst)" +msgstr "檔案後綴(預設值:rst)" -#: builders/html/__init__.py:1308 -#, python-format -msgid "invalid js_file: %r, ignored" -msgstr "無效的 js_file: %r, 已略過" +#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:950 +msgid "Remove existing files in the output directory that were not generated" +msgstr "" -#: builders/html/__init__.py:1342 -msgid "Many math_renderers are registered. But no math_renderer is selected." -msgstr "多個 math_renderer 已被註冊。但是沒有 math_renderer 被選擇。" +#: ext/apidoc/_cli.py:186 +msgid "generate a full project with sphinx-quickstart" +msgstr "以 sphinx-quickstart 生成一個完全的專案" -#: builders/html/__init__.py:1346 -#, python-format -msgid "Unknown math_renderer %r is given." -msgstr "未知的 math_renderer %r 被給予。" +#: ext/apidoc/_cli.py:193 +msgid "append module_path to sys.path, used when --full is given" +msgstr "附加 module_path 到 sys.path,在給予 --full 時使用" -#: builders/html/__init__.py:1360 -#, python-format -msgid "html_extra_path entry %r is placed inside outdir" -msgstr "html_extra_path 項目 %r 被放入 outdir" +#: ext/apidoc/_cli.py:200 +msgid "project name (default: root module name)" +msgstr "專案名稱(預設值:根模組名稱)" -#: builders/html/__init__.py:1365 -#, python-format -msgid "html_extra_path entry %r does not exist" -msgstr "html_extra_path 項目 %r 不存在" +#: ext/apidoc/_cli.py:207 +msgid "project author(s), used when --full is given" +msgstr "專案作者(們),在給予 --full 時使用" -#: builders/html/__init__.py:1380 -#, python-format -msgid "html_static_path entry %r is placed inside outdir" -msgstr "html_static_path 項目 %r 被放入 outdir" +#: ext/apidoc/_cli.py:214 +msgid "project version, used when --full is given" +msgstr "專案版本,在給予 --full 時使用" -#: builders/html/__init__.py:1385 -#, python-format -msgid "html_static_path entry %r does not exist" -msgstr "html_static_path 項目 %r 不存在" +#: ext/apidoc/_cli.py:222 +msgid "project release, used when --full is given, defaults to --doc-version" +msgstr "專案發布,在給予 --full 時使用,預設為 --doc-version" -#: builders/html/__init__.py:1396 builders/latex/__init__.py:504 -#, python-format -msgid "logo file %r does not exist" -msgstr "標誌檔案 %r 不存在" +#: ext/apidoc/_cli.py:226 +msgid "extension options" +msgstr "擴充套件選項" -#: builders/html/__init__.py:1407 -#, python-format -msgid "favicon file %r does not exist" -msgstr "favicon 檔案 %r 不存在" +#: ext/apidoc/_cli.py:232 +msgid "enable arbitrary extensions, used when --full is given" +msgstr "" -#: builders/html/__init__.py:1420 +#: ext/apidoc/_cli.py:240 #, python-format -msgid "" -"Values in 'html_sidebars' must be a list of strings. At least one pattern " -"has a string value: %s. Change to `html_sidebars = %r`." +msgid "enable %s extension, used when --full is given" msgstr "" -#: builders/html/__init__.py:1433 -msgid "" -"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " -"configuration options)" -msgstr "HTML 4 已不再被 Sphinx 所支援。(在組態選項中偵測到 \"html4_writer=True\")" - -#: builders/html/__init__.py:1449 +#: ext/apidoc/_cli.py:291 #, python-format -msgid "%s %s documentation" -msgstr "%s %s 說明文件" +msgid "%s is not a directory." +msgstr "%s 不是資料夾" -#: builders/html/_build_info.py:32 -msgid "failed to read broken build info file (unknown version)" +#: ext/apidoc/_extension.py:50 +msgid "Running apidoc" msgstr "" -#: builders/html/_build_info.py:36 -msgid "failed to read broken build info file (missing config entry)" +#: ext/apidoc/_extension.py:102 +#, python-format +msgid "apidoc_modules item %i must be a dict" msgstr "" -#: builders/html/_build_info.py:39 -msgid "failed to read broken build info file (missing tags entry)" +#: ext/apidoc/_extension.py:110 +#, python-format +msgid "apidoc_modules item %i must have a 'path' key" msgstr "" -#: builders/latex/__init__.py:118 +#: ext/apidoc/_extension.py:115 #, python-format -msgid "The LaTeX files are in %(outdir)s." -msgstr "LaTeX 檔案在 %(outdir)s 。" - -#: builders/latex/__init__.py:121 -msgid "" -"\n" -"Run 'make' in that directory to run these through (pdf)latex\n" -"(use `make latexpdf' here to do that automatically)." -msgstr "\n在該目錄中執行 'make' 以透過 (pdf)latex 執行這些\n(在此使用 'make latexpdf' 以自動執行)" - -#: builders/latex/__init__.py:159 -msgid "no \"latex_documents\" config value found; no documents will be written" -msgstr "未找到 \"latex_documents\" 組態值;不會編寫任何文件" +msgid "apidoc_modules item %i 'path' must be a string" +msgstr "" -#: builders/latex/__init__.py:170 +#: ext/apidoc/_extension.py:121 #, python-format -msgid "\"latex_documents\" config value references unknown document %s" -msgstr "\"latex_documents\" 組態值引用未知的文件 %s" - -#: builders/latex/__init__.py:209 templates/latex/latex.tex.jinja:91 -msgid "Release" -msgstr "發佈" - -#: builders/latex/__init__.py:428 -msgid "copying TeX support files" -msgstr "正在複製 TeX 支援檔案" - -#: builders/latex/__init__.py:465 -msgid "copying additional files" -msgstr "正在複製附加檔案" +msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgstr "" -#: builders/latex/__init__.py:536 +#: ext/apidoc/_extension.py:133 #, python-format -msgid "Unknown configure key: latex_elements[%r], ignored." -msgstr "未知的配置鍵: latex_elements[%r],已略過。" +msgid "apidoc_modules item %i must have a 'destination' key" +msgstr "" -#: builders/latex/__init__.py:544 +#: ext/apidoc/_extension.py:140 #, python-format -msgid "Unknown theme option: latex_theme_options[%r], ignored." -msgstr "未知的主題選項: latex_theme_options[%r],,已略過。" - -#: builders/latex/transforms.py:120 -msgid "Failed to get a docname!" -msgstr "無法取得 docname!" +msgid "apidoc_modules item %i 'destination' must be a string" +msgstr "" -#: builders/latex/transforms.py:121 +#: ext/apidoc/_extension.py:147 #, python-format -msgid "Failed to get a docname for source %r!" +msgid "apidoc_modules item %i 'destination' should be a relative path" msgstr "" -#: builders/latex/transforms.py:487 +#: ext/apidoc/_extension.py:157 #, python-format -msgid "No footnote was found for given reference node %r" -msgstr "給定的參考節點 %r 找不到註腳" +msgid "apidoc_modules item %i cannot create destination directory: %s" +msgstr "" -#: builders/latex/theming.py:88 +#: ext/apidoc/_extension.py:178 #, python-format -msgid "%r doesn't have \"theme\" setting" -msgstr "%r 沒有「主題」設定" +msgid "apidoc_modules item %i '%s' must be an int" +msgstr "" -#: builders/latex/theming.py:91 +#: ext/apidoc/_extension.py:192 #, python-format -msgid "%r doesn't have \"%s\" setting" -msgstr "%r 沒有 \"%s\" 設定" - -#: templates/latex/longtable.tex.jinja:52 -#: templates/latex/sphinxmessages.sty.jinja:8 -msgid "continued from previous page" -msgstr "繼續上一頁" - -#: templates/latex/longtable.tex.jinja:63 -#: templates/latex/sphinxmessages.sty.jinja:9 -msgid "continues on next page" -msgstr "繼續下一頁" - -#: templates/latex/sphinxmessages.sty.jinja:10 -msgid "Non-alphabetical" -msgstr "非依字母順序" - -#: templates/latex/sphinxmessages.sty.jinja:12 -msgid "Numbers" -msgstr "數字" +msgid "apidoc_modules item %i '%s' must be a boolean" +msgstr "" -#: templates/latex/sphinxmessages.sty.jinja:13 -msgid "page" -msgstr "頁" +#: ext/apidoc/_extension.py:210 +#, python-format +msgid "apidoc_modules item %i has unexpected keys: %s" +msgstr "" -#: ext/napoleon/__init__.py:356 ext/napoleon/docstring.py:940 -msgid "Keyword Arguments" -msgstr "關鍵字引數" +#: ext/apidoc/_extension.py:248 +#, python-format +msgid "apidoc_modules item %i '%s' must be a sequence" +msgstr "" -#: ext/napoleon/docstring.py:176 +#: ext/apidoc/_extension.py:257 #, python-format -msgid "invalid value set (missing closing brace): %s" -msgstr "無效的值集合(缺少右括號): %s" +msgid "apidoc_modules item %i '%s' must contain strings" +msgstr "" -#: ext/napoleon/docstring.py:183 +#: ext/autosummary/generate.py:212 ext/autosummary/generate.py:425 #, python-format -msgid "invalid value set (missing opening brace): %s" -msgstr "無效的值集合(缺少左括號): %s" +msgid "" +"autosummary: failed to determine %r to be documented, the following exception was raised:\n" +"%s" +msgstr "autosummary: 無法決定 %r 被記錄,以下例外被引發:\n%s" -#: ext/napoleon/docstring.py:190 +#: ext/autosummary/generate.py:630 #, python-format -msgid "malformed string literal (missing closing quote): %s" -msgstr "異常的字串文本(缺少右括號): %s" +msgid "[autosummary] generating autosummary for: %s" +msgstr "[autosummary] 正在產生 autosummary 給: %s" -#: ext/napoleon/docstring.py:197 +#: ext/autosummary/generate.py:634 #, python-format -msgid "malformed string literal (missing opening quote): %s" -msgstr "異常的字串文本(缺少左括號): %s" +msgid "[autosummary] writing to %s" +msgstr "[autosummary] 正在寫入 %s" -#: ext/napoleon/docstring.py:895 -msgid "Example" -msgstr "範例" +#: ext/autosummary/generate.py:679 +#, python-format +msgid "" +"[autosummary] failed to import %s.\n" +"Possible hints:\n" +"%s" +msgstr "[autosummary] import %s 失敗。\n可能的提示:\n%s" -#: ext/napoleon/docstring.py:896 -msgid "Examples" -msgstr "範例" +#: ext/autosummary/generate.py:877 +msgid "" +"\n" +"Generate ReStructuredText using autosummary directives.\n" +"\n" +"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" +"the reStructuredText files from the autosummary directives contained in the\n" +"given input files.\n" +"\n" +"The format of the autosummary directive is documented in the\n" +"``sphinx.ext.autosummary`` Python module and can be read using::\n" +"\n" +" pydoc sphinx.ext.autosummary\n" +msgstr "\n使用 autosummary 指令產生 ReStructuredText。\n\nsphinx-autogen 是 sphinx.ext.autosummary.generate 的一個前端。它會從給定的\n輸入檔案中所包含的 autosummary 指令,產生 reStructuredText 檔案。\n\nautosummary 指令的格式被記錄在 ``sphinx.ext.autosummary`` Python 模組中,\n它可以使用此方法來讀取::\n\npydoc sphinx.ext.autosummary\n" -#: ext/napoleon/docstring.py:956 -msgid "Notes" -msgstr "備註" +#: ext/autosummary/generate.py:899 +msgid "source files to generate rST files for" +msgstr "原始檔案以產生 rST 檔案給" -#: ext/napoleon/docstring.py:965 -msgid "Other Parameters" -msgstr "其他參數" +#: ext/autosummary/generate.py:907 +msgid "directory to place all output in" +msgstr "資料夾來放置所有輸出在" -#: ext/napoleon/docstring.py:1001 -msgid "Receives" -msgstr "接收" +#: ext/autosummary/generate.py:915 +#, python-format +msgid "default suffix for files (default: %(default)s)" +msgstr "檔案的預設後綴(預設: %(default)s )" -#: ext/napoleon/docstring.py:1005 -msgid "References" -msgstr "參照" +#: ext/autosummary/generate.py:923 +#, python-format +msgid "custom template directory (default: %(default)s)" +msgstr "自訂模板資料夾(預設: %(default)s )" -#: ext/napoleon/docstring.py:1037 -msgid "Warns" -msgstr "警告" +#: ext/autosummary/generate.py:931 +#, python-format +msgid "document imported members (default: %(default)s)" +msgstr "文件引入成員(預設: %(default)s )" -#: ext/napoleon/docstring.py:1041 -msgid "Yields" -msgstr "產出" +#: ext/autosummary/generate.py:940 +#, python-format +msgid "" +"document exactly the members in module __all__ attribute. (default: " +"%(default)s)" +msgstr "文件確實是在模組 __all__ 屬性中的成員。(預設值: %(default)s)" -#: ext/autosummary/__init__.py:284 +#: ext/autosummary/__init__.py:235 #, python-format msgid "autosummary references excluded document %r. Ignored." msgstr "autosummary 參照已排除文件 %r 。已略過。" -#: ext/autosummary/__init__.py:288 +#: ext/autosummary/__init__.py:239 #, python-format msgid "" "autosummary: stub file not found %r. Check your autosummary_generate " "setting." msgstr "autosummary: 未找到 stub 檔 %r 。請檢查您的 autosummary_generate 設定。" -#: ext/autosummary/__init__.py:309 +#: ext/autosummary/__init__.py:260 msgid "A captioned autosummary requires :toctree: option. ignored." msgstr "一個有標題的 autosummary 需要 :toctree: 選項。已略過。 " -#: ext/autosummary/__init__.py:384 +#: ext/autosummary/__init__.py:329 #, python-format msgid "" "autosummary: failed to import %s.\n" @@ -3674,548 +3728,585 @@ msgid "" "%s" msgstr "autosummary: import %s 失敗。\n可能的提示:\n%s" -#: ext/autosummary/__init__.py:404 -#, python-format -msgid "failed to parse name %s" -msgstr "剖析名稱 %s 失敗" - -#: ext/autosummary/__init__.py:412 +#: ext/autosummary/__init__.py:358 #, python-format msgid "failed to import object %s" msgstr "import 物件 %s 失敗" -#: ext/autosummary/__init__.py:730 +#: ext/autosummary/__init__.py:652 #, python-format msgid "" "Summarised items should not include the current module. Replace %r with %r." msgstr "" -#: ext/autosummary/__init__.py:927 +#: ext/autosummary/__init__.py:850 #, python-format msgid "autosummary_generate: file not found: %s" msgstr "autosummary_generate: 檔案未找到: %s" -#: ext/autosummary/__init__.py:937 +#: ext/autosummary/__init__.py:860 msgid "" "autosummary generates .rst files internally. But your source_suffix does not" " contain .rst. Skipped." msgstr "autosummary 會在內部產生 .rst 檔。但是您的 source_suffix 並未包含 .rst。已跳過。" -#: ext/autosummary/generate.py:232 ext/autosummary/generate.py:450 +#: ext/intersphinx/_load.py:61 #, python-format msgid "" -"autosummary: failed to determine %r to be documented, the following exception was raised:\n" -"%s" -msgstr "autosummary: 無法決定 %r 被記錄,以下例外被引發:\n%s" +"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " +"identifiers must be non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:588 +#: ext/intersphinx/_load.py:72 #, python-format -msgid "[autosummary] generating autosummary for: %s" -msgstr "[autosummary] 正在產生 autosummary 給: %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " +"or list." +msgstr "" -#: ext/autosummary/generate.py:592 +#: ext/intersphinx/_load.py:83 #, python-format -msgid "[autosummary] writing to %s" -msgstr "[autosummary] 正在寫入 %s" +msgid "" +"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," +" inventory locations) pair." +msgstr "" -#: ext/autosummary/generate.py:637 +#: ext/intersphinx/_load.py:94 #, python-format msgid "" -"[autosummary] failed to import %s.\n" -"Possible hints:\n" -"%s" -msgstr "[autosummary] import %s 失敗。\n可能的提示:\n%s" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique non-empty strings." +msgstr "" -#: ext/autosummary/generate.py:836 +#: ext/intersphinx/_load.py:103 +#, python-format msgid "" -"\n" -"Generate ReStructuredText using autosummary directives.\n" -"\n" -"sphinx-autogen is a frontend to sphinx.ext.autosummary.generate. It generates\n" -"the reStructuredText files from the autosummary directives contained in the\n" -"given input files.\n" -"\n" -"The format of the autosummary directive is documented in the\n" -"``sphinx.ext.autosummary`` Python module and can be read using::\n" -"\n" -" pydoc sphinx.ext.autosummary\n" -msgstr "\n使用 autosummary 指令產生 ReStructuredText。\n\nsphinx-autogen 是 sphinx.ext.autosummary.generate 的一個前端。它會從給定的\n輸入檔案中所包含的 autosummary 指令,產生 reStructuredText 檔案。\n\nautosummary 指令的格式被記錄在 ``sphinx.ext.autosummary`` Python 模組中,\n它可以使用此方法來讀取::\n\npydoc sphinx.ext.autosummary\n" +"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " +"must be unique (other instance in intersphinx_mapping[%r])." +msgstr "" + +#: ext/intersphinx/_load.py:122 +#, python-format +msgid "" +"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " +"Inventory locations must be non-empty strings or None." +msgstr "" + +#: ext/intersphinx/_load.py:132 +msgid "Invalid `intersphinx_mapping` configuration (1 error)." +msgstr "" + +#: ext/intersphinx/_load.py:135 +#, python-format +msgid "Invalid `intersphinx_mapping` configuration (%s errors)." +msgstr "" -#: ext/autosummary/generate.py:858 -msgid "source files to generate rST files for" -msgstr "原始檔案以產生 rST 檔案給" +#: ext/intersphinx/_load.py:158 +msgid "An invalid intersphinx_mapping entry was added after normalisation." +msgstr "" -#: ext/autosummary/generate.py:866 -msgid "directory to place all output in" -msgstr "資料夾來放置所有輸出在" +#: ext/intersphinx/_load.py:297 +#, python-format +msgid "loading intersphinx inventory '%s' from %s ..." +msgstr "" + +#: ext/intersphinx/_load.py:324 +msgid "" +"encountered some issues with some of the inventories, but they had working " +"alternatives:" +msgstr "從一些庫存中遇到一些問題,但他們已在進行替代方案:" -#: ext/autosummary/generate.py:874 +#: ext/intersphinx/_load.py:332 #, python-format -msgid "default suffix for files (default: %(default)s)" -msgstr "檔案的預設後綴(預設: %(default)s )" +msgid "" +"failed to reach any of the inventories with the following issues:\n" +"%s" +msgstr "" -#: ext/autosummary/generate.py:882 +#: ext/intersphinx/_load.py:411 #, python-format -msgid "custom template directory (default: %(default)s)" -msgstr "自訂模板資料夾(預設: %(default)s )" +msgid "intersphinx inventory has moved: %s -> %s" +msgstr "intersphinx 庫存已移動: %s -> %s" -#: ext/autosummary/generate.py:890 +#: ext/intersphinx/_resolve.py:53 #, python-format -msgid "document imported members (default: %(default)s)" -msgstr "文件引入成員(預設: %(default)s )" +msgid "(in %s %s)" +msgstr "" -#: ext/autosummary/generate.py:899 +#: ext/intersphinx/_resolve.py:55 #, python-format -msgid "" -"document exactly the members in module __all__ attribute. (default: " -"%(default)s)" -msgstr "文件確實是在模組 __all__ 屬性中的成員。(預設值: %(default)s)" +msgid "(in %s)" +msgstr "(於 %s)" -#: ext/apidoc/_cli.py:178 ext/autosummary/generate.py:909 -msgid "Remove existing files in the output directory that were not generated" +#: ext/intersphinx/_resolve.py:112 +#, python-format +msgid "inventory '%s': duplicate matches found for %s:%s" msgstr "" -#: ext/apidoc/_shared.py:29 ext/autosummary/generate.py:944 +#: ext/intersphinx/_resolve.py:122 #, python-format -msgid "Failed to remove %s: %s" +msgid "inventory '%s': multiple matches found for %s:%s" msgstr "" -#: ext/apidoc/_cli.py:28 -msgid "" -"\n" -"Look recursively in for Python modules and packages and create\n" -"one reST file with automodule directives per package in the .\n" -"\n" -"The s can be file and/or directory patterns that will be\n" -"excluded from generation.\n" -"\n" -"Note: By default this script will not overwrite already created files." -msgstr "\n在 中遞迴查找 Python 模組及套件,並在 中\n為每個套件建立一個帶有 automodule 指令的 reST 檔。\n\n 可以是檔案及/或資料夾型樣,它們將在生成時被\n移除。\n\n備註:在預設情況,此腳本不會重寫已經被建立的檔案。" +#: ext/intersphinx/_resolve.py:387 +#, python-format +msgid "inventory for external cross-reference not found: %r" +msgstr "找不到外部交互參照的庫存:%r" -#: ext/apidoc/_cli.py:45 -msgid "path to module to document" -msgstr "要生成文件的模組路徑" +#: ext/intersphinx/_resolve.py:396 +#, python-format +msgid "invalid external cross-reference suffix: %r" +msgstr "無效的外部交互參照後綴:%r" -#: ext/apidoc/_cli.py:50 -msgid "" -"fnmatch-style file and/or directory patterns to exclude from generation" -msgstr "fnmatch 風格的檔案及/或資料夾模式,將在生成時移除。" +#: ext/intersphinx/_resolve.py:407 +#, python-format +msgid "domain for external cross-reference not found: %r" +msgstr "找不到外部交互參照的領域:%r" -#: ext/apidoc/_cli.py:60 -msgid "directory to place all output" -msgstr "要放置所有輸出的資料夾" +#: ext/intersphinx/_resolve.py:561 +#, python-format +msgid "external %s:%s reference target not found: %s" +msgstr "未找到外部的 %s:%s 參照目標: %s" -#: ext/apidoc/_cli.py:75 -msgid "maximum depth of submodules to show in the TOC (default: 4)" -msgstr "能顯示 TOC 的子模組最大深度(預設值:4)" +#: ext/autodoc/_dynamic/_loader.py:144 +#: ext/autodoc/_legacy_class_based/_documenters.py:882 +#, python-format +msgid "error while formatting signature for %s: %s" +msgstr "正在為 %s 格式化簽名時發生錯誤: %s" -#: ext/apidoc/_cli.py:82 -msgid "overwrite existing files" -msgstr "重寫已存在的檔案" +#: ext/autodoc/_dynamic/_loader.py:193 +#, python-format +msgid "Ignoring invalid __all__ in module %s: %r" +msgstr "" -#: ext/apidoc/_cli.py:91 -msgid "" -"follow symbolic links. Powerful when combined with " -"collective.recipe.omelette." -msgstr "跟隨符號鏈接。與 collective.recipe.omelette 結合時很有用。" +#: ext/autodoc/_dynamic/_loader.py:332 ext/autodoc/_dynamic/_signatures.py:496 +#: ext/autodoc/_dynamic/_signatures.py:612 +#: ext/autodoc/_legacy_class_based/_documenters.py:1284 +#: ext/autodoc/_legacy_class_based/_documenters.py:1372 +#: ext/autodoc/_legacy_class_based/_documenters.py:2906 +#, python-format +msgid "Failed to get a function signature for %s: %s" +msgstr "無法取得一個函式簽名給 %s: %s" -#: ext/apidoc/_cli.py:99 -msgid "run the script without creating files" -msgstr "執行腳本而不建立檔案" +#: ext/autodoc/_dynamic/_type_comments.py:120 +#, python-format +msgid "Failed to update signature for %r: parameter not found: %s" +msgstr "無法為 %r 更新簽名:未找到參數: %s" -#: ext/apidoc/_cli.py:106 -msgid "put documentation for each module on its own page" -msgstr "為每個模組在它自己的頁面置放說明文件" +#: ext/autodoc/_dynamic/_type_comments.py:123 +#, python-format +msgid "Failed to parse type_comment for %r: %s" +msgstr "無法為 %r 剖析 type_comment: %s" -#: ext/apidoc/_cli.py:113 -msgid "include \"_private\" modules" -msgstr "包含 \"_private\" 模組" +#: ext/autodoc/_dynamic/_docstrings.py:268 +#: ext/autodoc/_legacy_class_based/_documenters.py:2499 +#, python-format +msgid "Invalid __slots__ found on %s. Ignored." +msgstr "在 %s 找到無效的 __slots__。已略過。" -#: ext/apidoc/_cli.py:120 -msgid "filename of table of contents (default: modules)" -msgstr "目錄的檔名(預設值:模組)" +#: ext/autodoc/_dynamic/_signatures.py:102 +#: ext/autodoc/_legacy_class_based/_documenters.py:358 +#, python-format +msgid "error while formatting arguments for %s: %s" +msgstr "在為 %s 格式化引數時有錯誤: %s" -#: ext/apidoc/_cli.py:127 -msgid "don't create a table of contents file" -msgstr "不要建立目錄檔案" +#: ext/autodoc/_dynamic/_signatures.py:494 +#: ext/autodoc/_legacy_class_based/_documenters.py:1607 +#, python-format +msgid "Failed to get a constructor signature for %s: %s" +msgstr "無法取得一個 constructor 簽名給 %s: %s" -#: ext/apidoc/_cli.py:135 -msgid "" -"don't create headings for the module/package packages (e.g. when the " -"docstrings already contain them)" -msgstr "不要為模組/套件建立標頭(例如:當說明字串已經包含它們時)" +#: ext/autodoc/_dynamic/_signatures.py:498 +#: ext/autodoc/_legacy_class_based/_documenters.py:2235 +#: ext/autodoc/_legacy_class_based/_documenters.py:2355 +#, python-format +msgid "Failed to get a method signature for %s: %s" +msgstr "無法取得一個 method 簽名給 %s: %s" -#: ext/apidoc/_cli.py:145 -msgid "put module documentation before submodule documentation" -msgstr "在子模組說明文件之前置放模組說明文件" +#: ext/autodoc/_dynamic/_signatures.py:500 +#, python-format +msgid "Failed to get a signature for %s: %s" +msgstr "" -#: ext/apidoc/_cli.py:152 -msgid "" -"interpret module paths according to PEP-0420 implicit namespaces " -"specification" -msgstr "根據 PEP-0420 隱式命名空間規範來解譯模組路徑" +#: ext/autodoc/_dynamic/_preserve_defaults.py:156 +#, python-format +msgid "Failed to parse a default argument value for %r: %s" +msgstr "無法為 %r 剖析一個預設引數: %s" -#: ext/apidoc/_cli.py:160 +#: ext/autodoc/_dynamic/_member_finder.py:420 +#, python-format msgid "" -"Comma-separated list of options to pass to automodule directive (or use " -"SPHINX_APIDOC_OPTIONS)." +"attribute %s is listed in :members: but is missing as it was not found in " +"object %r" msgstr "" -#: ext/apidoc/_cli.py:170 -msgid "file suffix (default: rst)" -msgstr "檔案後綴(預設值:rst)" +#: ext/autodoc/_dynamic/_member_finder.py:473 +#: ext/autodoc/_legacy_class_based/_documenters.py:677 +#, python-format +msgid "" +"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" +"%s" +msgstr "autodoc: 決定 %s.%s (%r) 被文件化失敗,引發以下的例外:\n%s" -#: ext/apidoc/_cli.py:186 -msgid "generate a full project with sphinx-quickstart" -msgstr "以 sphinx-quickstart 生成一個完全的專案" +#: ext/autodoc/_legacy_class_based/_documenters.py:964 +#, python-format +msgid "signature arguments or return annotation given for automodule %s" +msgstr "簽名引數或回傳註釋給予 automodule %s" -#: ext/apidoc/_cli.py:193 -msgid "append module_path to sys.path, used when --full is given" -msgstr "附加 module_path 到 sys.path,在給予 --full 時使用" +#: ext/autodoc/_legacy_class_based/_documenters.py:980 +#, python-format +msgid "" +"__all__ should be a list of strings, not %r (in module %s) -- ignoring " +"__all__" +msgstr "__all__ 應該是一個字串的列表,不是 %r (在 %s 模組中)-- 正在忽略 __all__" -#: ext/apidoc/_cli.py:200 -msgid "project name (default: root module name)" -msgstr "專案名稱(預設值:根模組名稱)" +#: ext/autodoc/_legacy_class_based/_documenters.py:1057 +#, python-format +msgid "" +"missing attribute mentioned in :members: option: module %s, attribute %s" +msgstr "缺少 :members: 選項中所述的屬性:模組 %s ,屬性 %s" -#: ext/apidoc/_cli.py:207 -msgid "project author(s), used when --full is given" -msgstr "專案作者(們),在給予 --full 時使用" +#: ext/autodoc/_legacy_class_based/_documenters.py:1764 +#, python-format +msgid "missing attribute %s in object %s" +msgstr "遺漏屬性 %s 在物件 %s" -#: ext/apidoc/_cli.py:214 -msgid "project version, used when --full is given" -msgstr "專案版本,在給予 --full 時使用" +#: ext/autodoc/_legacy_class_based/_documenters.py:1876 +#, python-format +msgid "alias of TypeVar(%s)" +msgstr "TypeVar(%s) 的別名" -#: ext/apidoc/_cli.py:222 -msgid "project release, used when --full is given, defaults to --doc-version" -msgstr "專案發布,在給予 --full 時使用,預設為 --doc-version" +#: builders/html/_build_info.py:32 +msgid "failed to read broken build info file (unknown version)" +msgstr "" -#: ext/apidoc/_cli.py:226 -msgid "extension options" -msgstr "擴充套件選項" +#: builders/html/_build_info.py:36 +msgid "failed to read broken build info file (missing config entry)" +msgstr "" -#: ext/apidoc/_cli.py:232 -msgid "enable arbitrary extensions, used when --full is given" +#: builders/html/_build_info.py:39 +msgid "failed to read broken build info file (missing tags entry)" msgstr "" -#: ext/apidoc/_cli.py:240 +#: builders/html/__init__.py:114 #, python-format -msgid "enable %s extension, used when --full is given" -msgstr "" +msgid "The HTML pages are in %(outdir)s." +msgstr "HTML 頁面在 %(outdir)s 。" -#: ext/apidoc/_cli.py:291 +#: builders/html/__init__.py:337 #, python-format -msgid "%s is not a directory." -msgstr "%s 不是資料夾" +msgid "Failed to read build info file: %r" +msgstr "讀取 build info 檔失敗: %r" -#: ext/apidoc/_extension.py:50 -msgid "Running apidoc" +#: builders/html/__init__.py:353 +msgid "build_info mismatch, copying .buildinfo to .buildinfo.bak" msgstr "" -#: ext/apidoc/_extension.py:102 -#, python-format -msgid "apidoc_modules item %i must be a dict" +#: builders/html/__init__.py:355 +msgid "building [html]: " msgstr "" -#: ext/apidoc/_extension.py:110 +#: builders/html/__init__.py:372 #, python-format -msgid "apidoc_modules item %i must have a 'path' key" +msgid "" +"template %s has been changed since the previous build, all docs will be " +"rebuilt" msgstr "" -#: ext/apidoc/_extension.py:115 -#, python-format -msgid "apidoc_modules item %i 'path' must be a string" -msgstr "" +#: builders/html/__init__.py:496 +msgid "index" +msgstr "索引" -#: ext/apidoc/_extension.py:121 +#: builders/html/__init__.py:549 #, python-format -msgid "apidoc_modules item %i 'path' is not an existing folder: %s" +msgid "Logo of %s" msgstr "" -#: ext/apidoc/_extension.py:133 -#, python-format -msgid "apidoc_modules item %i must have a 'destination' key" -msgstr "" +#: builders/html/__init__.py:578 +msgid "next" +msgstr "下一頁" -#: ext/apidoc/_extension.py:140 -#, python-format -msgid "apidoc_modules item %i 'destination' must be a string" -msgstr "" +#: builders/html/__init__.py:587 +msgid "previous" +msgstr "上一頁" -#: ext/apidoc/_extension.py:147 -#, python-format -msgid "apidoc_modules item %i 'destination' should be a relative path" -msgstr "" +#: builders/html/__init__.py:685 +msgid "generating indices" +msgstr "正在產生索引" + +#: builders/html/__init__.py:700 +msgid "writing additional pages" +msgstr "正在編寫附加頁面" -#: ext/apidoc/_extension.py:157 +#: builders/html/__init__.py:783 #, python-format -msgid "apidoc_modules item %i cannot create destination directory: %s" +msgid "cannot copy image file '%s': %s" msgstr "" -#: ext/apidoc/_extension.py:178 -#, python-format -msgid "apidoc_modules item %i '%s' must be an int" -msgstr "" +#: builders/html/__init__.py:795 +msgid "copying downloadable files... " +msgstr "正在複製可下載的檔案..." -#: ext/apidoc/_extension.py:192 +#: builders/html/__init__.py:807 #, python-format -msgid "apidoc_modules item %i '%s' must be a boolean" -msgstr "" +msgid "cannot copy downloadable file %r: %s" +msgstr "無法複製可下載的檔案 %r: %s" -#: ext/apidoc/_extension.py:210 +#: builders/html/__init__.py:853 #, python-format -msgid "apidoc_modules item %i has unexpected keys: %s" +msgid "Failed to copy a file in the theme's 'static' directory: %s: %r" msgstr "" -#: ext/apidoc/_extension.py:247 +#: builders/html/__init__.py:871 #, python-format -msgid "apidoc_modules item %i '%s' must be a sequence" -msgstr "" +msgid "Failed to copy a file in html_static_file: %s: %r" +msgstr "在 html_static_file 中複製一個檔案失敗: %s: %r " + +#: builders/html/__init__.py:906 +msgid "copying static files" +msgstr "正在複製靜態檔案" -#: ext/apidoc/_extension.py:256 +#: builders/html/__init__.py:923 #, python-format -msgid "apidoc_modules item %i '%s' must contain strings" -msgstr "" +msgid "cannot copy static file %r" +msgstr "無法複製靜態檔案 %r" -#: ext/apidoc/_generate.py:69 +#: builders/html/__init__.py:928 +msgid "copying extra files" +msgstr "正在複製額外檔案" + +#: builders/html/__init__.py:938 #, python-format -msgid "Would create file %s." -msgstr "將會建立檔案 %s 。" +msgid "cannot copy extra file %r" +msgstr "無法複製額外檔案 %r" -#: ext/intersphinx/_resolve.py:49 +#: builders/html/__init__.py:944 #, python-format -msgid "(in %s v%s)" -msgstr "(於 %s v%s)" +msgid "Failed to write build info file: %r" +msgstr "寫入 build info 檔失敗: %r" + +#: builders/html/__init__.py:994 +msgid "" +"search index couldn't be loaded, but not all documents will be built: the " +"index will be incomplete." +msgstr "搜尋索引無法被載入,但不是所有的文件都會被建置:索引將會是不完全的。" -#: ext/intersphinx/_resolve.py:51 +#: builders/html/__init__.py:1038 #, python-format -msgid "(in %s)" -msgstr "(於 %s)" +msgid "page %s matches two patterns in html_sidebars: %r and %r" +msgstr "頁面 %s 在 html_sidebars 中符合兩個型樣: %r 和 %r" -#: ext/intersphinx/_resolve.py:108 +#: builders/html/__init__.py:1204 #, python-format -msgid "inventory '%s': duplicate matches found for %s:%s" -msgstr "" +msgid "" +"a Unicode error occurred when rendering the page %s. Please make sure all " +"config values that contain non-ASCII content are Unicode strings." +msgstr "在呈現頁面 %s 時發生了一個 Unicode 錯誤。請確認所有包含 non-ASCII 內容的組態值都是 Unicode 字串。" -#: ext/intersphinx/_resolve.py:118 +#: builders/html/__init__.py:1217 #, python-format -msgid "inventory '%s': multiple matches found for %s:%s" +msgid "" +"The '%s' theme does not support this version of Sphinx, because it uses the " +"'style' field in HTML templates, which was was deprecated in Sphinx 5.1 and" +" removed in Sphinx 7.0. The theme must be updated to use the 'styles' field " +"instead. See https://www.sphinx-" +"doc.org/en/master/development/html_themes/templating.html#styles" msgstr "" -#: ext/intersphinx/_resolve.py:383 +#: builders/html/__init__.py:1225 #, python-format -msgid "inventory for external cross-reference not found: %r" -msgstr "找不到外部交互參照的庫存:%r" +msgid "" +"An error happened in rendering the page %s.\n" +"Reason: %r" +msgstr "在呈現頁面 %s 時發生了一個錯誤。\n原因: %r" -#: ext/intersphinx/_resolve.py:392 -#, python-format -msgid "invalid external cross-reference suffix: %r" -msgstr "無效的外部交互參照後綴:%r" +#: builders/html/__init__.py:1258 +msgid "dumping object inventory" +msgstr "正在傾印物件庫存" -#: ext/intersphinx/_resolve.py:403 +#: builders/html/__init__.py:1266 #, python-format -msgid "domain for external cross-reference not found: %r" -msgstr "找不到外部交互參照的領域:%r" +msgid "dumping search index in %s" +msgstr "正在傾印搜尋索引於 %s" -#: ext/intersphinx/_resolve.py:619 +#: builders/html/__init__.py:1313 #, python-format -msgid "external %s:%s reference target not found: %s" -msgstr "未找到外部的 %s:%s 參照目標: %s" +msgid "invalid js_file: %r, ignored" +msgstr "無效的 js_file: %r, 已略過" -#: ext/intersphinx/_load.py:60 -#, python-format -msgid "" -"Invalid intersphinx project identifier `%r` in intersphinx_mapping. Project " -"identifiers must be non-empty strings." -msgstr "" +#: builders/html/__init__.py:1347 +msgid "Many math_renderers are registered. But no math_renderer is selected." +msgstr "多個 math_renderer 已被註冊。但是沒有 math_renderer 被選擇。" -#: ext/intersphinx/_load.py:71 +#: builders/html/__init__.py:1351 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Expected a two-element tuple " -"or list." -msgstr "" +msgid "Unknown math_renderer %r is given." +msgstr "未知的 math_renderer %r 被給予。" -#: ext/intersphinx/_load.py:82 +#: builders/html/__init__.py:1365 #, python-format -msgid "" -"Invalid value `%r` in intersphinx_mapping[%r]. Values must be a (target URI," -" inventory locations) pair." -msgstr "" +msgid "html_extra_path entry %r is placed inside outdir" +msgstr "html_extra_path 項目 %r 被放入 outdir" -#: ext/intersphinx/_load.py:93 +#: builders/html/__init__.py:1370 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique non-empty strings." -msgstr "" +msgid "html_extra_path entry %r does not exist" +msgstr "html_extra_path 項目 %r 不存在" -#: ext/intersphinx/_load.py:102 +#: builders/html/__init__.py:1385 #, python-format -msgid "" -"Invalid target URI value `%r` in intersphinx_mapping[%r][0]. Target URIs " -"must be unique (other instance in intersphinx_mapping[%r])." -msgstr "" +msgid "html_static_path entry %r is placed inside outdir" +msgstr "html_static_path 項目 %r 被放入 outdir" -#: ext/intersphinx/_load.py:121 +#: builders/html/__init__.py:1390 #, python-format -msgid "" -"Invalid inventory location value `%r` in intersphinx_mapping[%r][1]. " -"Inventory locations must be non-empty strings or None." -msgstr "" - -#: ext/intersphinx/_load.py:131 -msgid "Invalid `intersphinx_mapping` configuration (1 error)." -msgstr "" +msgid "html_static_path entry %r does not exist" +msgstr "html_static_path 項目 %r 不存在" -#: ext/intersphinx/_load.py:134 +#: builders/html/__init__.py:1401 builders/latex/__init__.py:497 #, python-format -msgid "Invalid `intersphinx_mapping` configuration (%s errors)." -msgstr "" +msgid "logo file %r does not exist" +msgstr "標誌檔案 %r 不存在" -#: ext/intersphinx/_load.py:157 -msgid "An invalid intersphinx_mapping entry was added after normalisation." -msgstr "" +#: builders/html/__init__.py:1412 +#, python-format +msgid "favicon file %r does not exist" +msgstr "favicon 檔案 %r 不存在" -#: ext/intersphinx/_load.py:261 +#: builders/html/__init__.py:1425 #, python-format -msgid "loading intersphinx inventory '%s' from %s ..." +msgid "" +"Values in 'html_sidebars' must be a list of strings. At least one pattern " +"has a string value: %s. Change to `html_sidebars = %r`." msgstr "" -#: ext/intersphinx/_load.py:287 +#: builders/html/__init__.py:1438 msgid "" -"encountered some issues with some of the inventories, but they had working " -"alternatives:" -msgstr "從一些庫存中遇到一些問題,但他們已在進行替代方案:" - -#: ext/intersphinx/_load.py:297 -msgid "failed to reach any of the inventories with the following issues:" -msgstr "無法到達任何的庫存,遇到以下問題:" +"HTML 4 is no longer supported by Sphinx. (\"html4_writer=True\" detected in " +"configuration options)" +msgstr "HTML 4 已不再被 Sphinx 所支援。(在組態選項中偵測到 \"html4_writer=True\")" -#: ext/intersphinx/_load.py:361 +#: builders/html/__init__.py:1454 #, python-format -msgid "intersphinx inventory has moved: %s -> %s" -msgstr "intersphinx 庫存已移動: %s -> %s" +msgid "%s %s documentation" +msgstr "%s %s 說明文件" -#: ext/autodoc/__init__.py:150 +#: builders/latex/theming.py:87 #, python-format -msgid "invalid value for member-order option: %s" -msgstr "對於 member-order 選項無效的值: %s" +msgid "%r doesn't have \"theme\" setting" +msgstr "%r 沒有「主題」設定" -#: ext/autodoc/__init__.py:158 +#: builders/latex/theming.py:90 #, python-format -msgid "invalid value for class-doc-from option: %s" -msgstr "對於 class-doc-from 選項無效的值: %s" +msgid "%r doesn't have \"%s\" setting" +msgstr "%r 沒有 \"%s\" 設定" -#: ext/autodoc/__init__.py:460 -#, python-format -msgid "invalid signature for auto%s (%r)" -msgstr "無效的簽章給 auto%s (%r)" +#: builders/latex/transforms.py:120 +msgid "Failed to get a docname!" +msgstr "無法取得 docname!" -#: ext/autodoc/__init__.py:579 +#: builders/latex/transforms.py:121 #, python-format -msgid "error while formatting arguments for %s: %s" -msgstr "在為 %s 格式化引數時有錯誤: %s" +msgid "Failed to get a docname for source %r!" +msgstr "" -#: ext/autodoc/__init__.py:898 +#: builders/latex/transforms.py:487 #, python-format -msgid "" -"autodoc: failed to determine %s.%s (%r) to be documented, the following exception was raised:\n" -"%s" -msgstr "autodoc: 決定 %s.%s (%r) 被文件化失敗,引發以下的例外:\n%s" +msgid "No footnote was found for given reference node %r" +msgstr "給定的參考節點 %r 找不到註腳" -#: ext/autodoc/__init__.py:1021 +#: builders/latex/__init__.py:115 #, python-format +msgid "The LaTeX files are in %(outdir)s." +msgstr "LaTeX 檔案在 %(outdir)s 。" + +#: builders/latex/__init__.py:118 msgid "" -"don't know which module to import for autodocumenting %r (try placing a " -"\"module\" or \"currentmodule\" directive in the document, or giving an " -"explicit module name)" -msgstr "不清楚要 import 哪個模組來 autodocument %r (試試看在文件中加入 \"module\" 或 \"currentmodule\" 指令,或是給予一個明確的模組名稱)" +"\n" +"Run 'make' in that directory to run these through (pdf)latex\n" +"(use `make latexpdf' here to do that automatically)." +msgstr "\n在該目錄中執行 'make' 以透過 (pdf)latex 執行這些\n(在此使用 'make latexpdf' 以自動執行)" -#: ext/autodoc/__init__.py:1080 -#, python-format -msgid "A mocked object is detected: %r" -msgstr "一個 mocked 物件被偵測到: %r" +#: builders/latex/__init__.py:156 +msgid "no \"latex_documents\" config value found; no documents will be written" +msgstr "未找到 \"latex_documents\" 組態值;不會編寫任何文件" -#: ext/autodoc/__init__.py:1103 +#: builders/latex/__init__.py:167 #, python-format -msgid "error while formatting signature for %s: %s" -msgstr "正在為 %s 格式化簽名時發生錯誤: %s" +msgid "\"latex_documents\" config value references unknown document %s" +msgstr "\"latex_documents\" 組態值引用未知的文件 %s" -#: ext/autodoc/__init__.py:1177 -msgid "\"::\" in automodule name doesn't make sense" -msgstr "\"::\" 在 automodule 的名稱中並不合理" +#: builders/latex/__init__.py:421 +msgid "copying TeX support files" +msgstr "正在複製 TeX 支援檔案" -#: ext/autodoc/__init__.py:1185 -#, python-format -msgid "signature arguments or return annotation given for automodule %s" -msgstr "簽名引數或回傳註釋給予 automodule %s" +#: builders/latex/__init__.py:458 +msgid "copying additional files" +msgstr "正在複製附加檔案" -#: ext/autodoc/__init__.py:1201 +#: builders/latex/__init__.py:529 #, python-format -msgid "" -"__all__ should be a list of strings, not %r (in module %s) -- ignoring " -"__all__" -msgstr "__all__ 應該是一個字串的列表,不是 %r (在 %s 模組中)-- 正在忽略 __all__" +msgid "Unknown configure key: latex_elements[%r], ignored." +msgstr "未知的配置鍵: latex_elements[%r],已略過。" -#: ext/autodoc/__init__.py:1278 +#: builders/latex/__init__.py:537 #, python-format -msgid "" -"missing attribute mentioned in :members: option: module %s, attribute %s" -msgstr "缺少 :members: 選項中所述的屬性:模組 %s ,屬性 %s" +msgid "Unknown theme option: latex_theme_options[%r], ignored." +msgstr "未知的主題選項: latex_theme_options[%r],,已略過。" -#: ext/autodoc/__init__.py:1505 ext/autodoc/__init__.py:1593 -#: ext/autodoc/__init__.py:3127 +#: environment/collectors/toctree.py:259 #, python-format -msgid "Failed to get a function signature for %s: %s" -msgstr "無法取得一個函式簽名給 %s: %s" +msgid "%s is already assigned section numbers (nested numbered toctree?)" +msgstr "%s 已經被指定段落編號(巢狀編號的 toctree?)" -#: ext/autodoc/__init__.py:1828 +#: environment/collectors/asset.py:98 #, python-format -msgid "Failed to get a constructor signature for %s: %s" -msgstr "無法取得一個 constructor 簽名給 %s: %s" +msgid "image file not readable: %s" +msgstr "影像檔案無法讀取: %s" -#: ext/autodoc/__init__.py:1966 +#: environment/collectors/asset.py:126 #, python-format -msgid "Bases: %s" -msgstr "基礎類別:%s" +msgid "image file %s not readable: %s" +msgstr "影像檔案 %s 無法讀取: %s" -#: ext/autodoc/__init__.py:1985 +#: environment/collectors/asset.py:165 #, python-format -msgid "missing attribute %s in object %s" -msgstr "遺漏屬性 %s 在物件 %s" +msgid "download file not readable: %s" +msgstr "下載檔案無法讀取: %s" -#: ext/autodoc/__init__.py:2081 ext/autodoc/__init__.py:2110 -#: ext/autodoc/__init__.py:2204 +#: environment/adapters/toctree.py:335 #, python-format -msgid "alias of %s" -msgstr "%s 的別名" +msgid "circular toctree references detected, ignoring: %s <- %s" +msgstr "偵測到循環的 toctree 參照,忽略中: %s <- %s" -#: ext/autodoc/__init__.py:2097 +#: environment/adapters/toctree.py:360 #, python-format -msgid "alias of TypeVar(%s)" -msgstr "TypeVar(%s) 的別名" +msgid "" +"toctree contains reference to document %r that doesn't have a title: no link" +" will be generated" +msgstr "toctree 包含了到文件 %r 的參照,該文件沒有標題:不會產生任何鏈接" -#: ext/autodoc/__init__.py:2456 ext/autodoc/__init__.py:2576 +#: environment/adapters/toctree.py:375 #, python-format -msgid "Failed to get a method signature for %s: %s" -msgstr "無法取得一個 method 簽名給 %s: %s" +msgid "toctree contains reference to non-included document %r" +msgstr "toctree 包含了 non-included 文件 %r 的參照" -#: ext/autodoc/__init__.py:2720 +#: environment/adapters/toctree.py:378 #, python-format -msgid "Invalid __slots__ found on %s. Ignored." -msgstr "在 %s 找到無效的 __slots__。已略過。" +msgid "toctree contains reference to non-existing document %r" +msgstr "" -#: ext/autodoc/preserve_defaults.py:195 +#: environment/adapters/indexentries.py:122 #, python-format -msgid "Failed to parse a default argument value for %r: %s" -msgstr "無法為 %r 剖析一個預設引數: %s" +msgid "see %s" +msgstr "參考 %s" -#: ext/autodoc/type_comment.py:151 +#: environment/adapters/indexentries.py:132 #, python-format -msgid "Failed to update signature for %r: parameter not found: %s" -msgstr "無法為 %r 更新簽名:未找到參數: %s" +msgid "see also %s" +msgstr "請參閱 %s" -#: ext/autodoc/type_comment.py:154 +#: environment/adapters/indexentries.py:140 #, python-format -msgid "Failed to parse type_comment for %r: %s" -msgstr "無法為 %r 剖析 type_comment: %s" +msgid "unknown index entry type %r" +msgstr "未知的索引項目型別 %r" diff --git a/addons/source-python/packages/site-packages/sphinx/parsers.py b/addons/source-python/packages/site-packages/sphinx/parsers.py index 70ff3eaae..5731ccd6f 100644 --- a/addons/source-python/packages/site-packages/sphinx/parsers.py +++ b/addons/source-python/packages/site-packages/sphinx/parsers.py @@ -10,7 +10,8 @@ from docutils.statemachine import StringList from docutils.transforms.universal import SmartQuotes -from sphinx.util.rst import append_epilog, prepend_prolog +from sphinx.deprecation import _deprecation_warning +from sphinx.util.rst import _append_epilogue, _prepend_prologue if TYPE_CHECKING: from docutils import nodes @@ -23,30 +24,42 @@ class Parser(docutils.parsers.Parser): - """A base class of source parsers. + """A base class for source parsers. - The additional parsers should inherit this class - instead of ``docutils.parsers.Parser``. - Compared with ``docutils.parsers.Parser``, - this class improves accessibility to Sphinx APIs. - - The subclasses can access sphinx core runtime objects (app, config and env). + Additional parsers should inherit from this class instead of + ``docutils.parsers.Parser``. + This class provides access to core Sphinx objects; *config* and *env*. """ - #: The config object - config: Config - - #: The environment object - env: BuildEnvironment + _config: Config + _env: BuildEnvironment + + @property + def config(self) -> Config: + """The config object.""" + cls_module = self.__class__.__module__ + cls_name = self.__class__.__qualname__ + _deprecation_warning(cls_module, f'{cls_name}.config', remove=(10, 0)) + return self._config + + @property + def env(self) -> BuildEnvironment: + """The environment object.""" + cls_module = self.__class__.__module__ + cls_name = self.__class__.__qualname__ + _deprecation_warning(cls_module, f'{cls_name}.env', remove=(10, 0)) + return self._env def set_application(self, app: Sphinx) -> None: """set_application will be called from Sphinx to set app and other instance variables :param sphinx.application.Sphinx app: Sphinx application object """ - self._app = app - self.config = app.config - self.env = app.env + cls_module = self.__class__.__module__ + cls_name = self.__class__.__qualname__ + _deprecation_warning(cls_module, f'{cls_name}.set_application', remove=(10, 0)) + self._config = app.config + self._env = app.env class RSTParser(docutils.parsers.rst.Parser, Parser): @@ -57,7 +70,7 @@ def get_transforms(self) -> list[type[Transform]]: refs: sphinx.io.SphinxStandaloneReader """ - transforms = super().get_transforms() + transforms = super(RSTParser, RSTParser()).get_transforms() transforms.remove(SmartQuotes) return transforms @@ -87,9 +100,9 @@ def parse(self, inputstring: str | StringList, document: nodes.document) -> None self.finish_parse() def decorate(self, content: StringList) -> None: - """Preprocess reST content before parsing.""" - prepend_prolog(content, self.config.rst_prolog) - append_epilog(content, self.config.rst_epilog) + """Preprocess reStructuredText content before parsing.""" + _prepend_prologue(content, self._config.rst_prolog) + _append_epilogue(content, self._config.rst_epilog) def setup(app: Sphinx) -> ExtensionMetadata: diff --git a/addons/source-python/packages/site-packages/sphinx/pycode/ast.py b/addons/source-python/packages/site-packages/sphinx/pycode/ast.py index b1521595b..7f7850f36 100644 --- a/addons/source-python/packages/site-packages/sphinx/pycode/ast.py +++ b/addons/source-python/packages/site-packages/sphinx/pycode/ast.py @@ -134,7 +134,7 @@ def visit_Call(self, node: ast.Call) -> str: def visit_Constant(self, node: ast.Constant) -> str: if node.value is Ellipsis: return '...' - elif isinstance(node.value, int | float | complex): + elif isinstance(node.value, (int, float, complex)): if self.code: return ast.get_source_segment(self.code, node) or repr(node.value) else: @@ -202,5 +202,8 @@ def visit_Tuple(self, node: ast.Tuple) -> str: else: return '(' + ', '.join(self.visit(e) for e in node.elts) + ')' + def visit_Starred(self, node: ast.Starred) -> str: + return f'*{self.visit(node.value)}' + def generic_visit(self, node: ast.AST) -> NoReturn: raise NotImplementedError('Unable to parse %s object' % type(node).__name__) diff --git a/addons/source-python/packages/site-packages/sphinx/pycode/parser.py b/addons/source-python/packages/site-packages/sphinx/pycode/parser.py index 34d30200f..a325dd796 100644 --- a/addons/source-python/packages/site-packages/sphinx/pycode/parser.py +++ b/addons/source-python/packages/site-packages/sphinx/pycode/parser.py @@ -20,6 +20,9 @@ from inspect import Signature from typing import Any +AssignmentLike = ast.Assign | ast.AnnAssign | ast.TypeAlias +AssignmentLikeType = (ast.Assign, ast.AnnAssign, ast.TypeAlias) + comment_re = re.compile('^\\s*#: ?(.*)\r?\n?$') indent_re = re.compile('^\\s*$') emptyline_re = re.compile('^\\s*(#.*)?$') @@ -29,12 +32,14 @@ def filter_whitespace(code: str) -> str: return code.replace('\f', ' ') # replace FF (form feed) with whitespace -def get_assign_targets(node: ast.AST) -> list[ast.expr]: - """Get list of targets from Assign and AnnAssign node.""" +def get_assign_targets(node: AssignmentLike) -> list[ast.expr]: + """Get list of targets from AssignmentLike node.""" if isinstance(node, ast.Assign): return node.targets + elif isinstance(node, ast.AnnAssign): + return [node.target] else: - return [node.target] # type: ignore[attr-defined] + return [node.name] # ast.TypeAlias def get_lvar_names(node: ast.AST, self: ast.arg | None = None) -> list[str]: @@ -119,7 +124,7 @@ def __eq__(self, other: object) -> bool: return self.kind == other elif isinstance(other, str): return self.value == other - elif isinstance(other, list | tuple): + elif isinstance(other, (list, tuple)): return [self.kind, self.value] == list(other) elif other is None: return False @@ -247,9 +252,9 @@ def __init__(self, buffers: list[str], encoding: str) -> None: self.deforders: dict[str, int] = {} self.finals: list[str] = [] self.overloads: dict[str, list[Signature]] = {} - self.typing: str | None = None - self.typing_final: str | None = None - self.typing_overload: str | None = None + self.typing_mods: set[str] = set() + self.typing_final_names: set[str] = set() + self.typing_overload_names: set[str] = set() super().__init__() def get_qualname_for(self, name: str) -> list[str] | None: @@ -257,7 +262,7 @@ def get_qualname_for(self, name: str) -> list[str] | None: if self.current_function: if self.current_classes and self.context[-1] == '__init__': # store variable comments inside __init__ method of classes - return self.context[:-1] + [name] + return [*self.context[:-1], name] else: return None else: @@ -295,11 +300,8 @@ def add_variable_annotation(self, name: str, annotation: ast.AST) -> None: self.annotations[basename, name] = ast_unparse(annotation) def is_final(self, decorators: list[ast.expr]) -> bool: - final = [] - if self.typing: - final.append('%s.final' % self.typing) - if self.typing_final: - final.append(self.typing_final) + final = {f'{modname}.final' for modname in self.typing_mods} + final |= self.typing_final_names for decorator in decorators: try: @@ -311,11 +313,8 @@ def is_final(self, decorators: list[ast.expr]) -> bool: return False def is_overload(self, decorators: list[ast.expr]) -> bool: - overload = [] - if self.typing: - overload.append('%s.overload' % self.typing) - if self.typing_overload: - overload.append(self.typing_overload) + overload = {f'{modname}.overload' for modname in self.typing_mods} + overload |= self.typing_overload_names for decorator in decorators: try: @@ -338,34 +337,7 @@ def get_line(self, lineno: int) -> str: """Returns specified line.""" return self.buffers[lineno - 1] - def visit(self, node: ast.AST) -> None: - """Updates self.previous to the given node.""" - super().visit(node) - self.previous = node - - def visit_Import(self, node: ast.Import) -> None: - """Handles Import node and record the order of definitions.""" - for name in node.names: - self.add_entry(name.asname or name.name) - - if name.name == 'typing': - self.typing = name.asname or name.name - elif name.name == 'typing.final': - self.typing_final = name.asname or name.name - elif name.name == 'typing.overload': - self.typing_overload = name.asname or name.name - - def visit_ImportFrom(self, node: ast.ImportFrom) -> None: - """Handles Import node and record the order of definitions.""" - for name in node.names: - self.add_entry(name.asname or name.name) - - if node.module == 'typing' and name.name == 'final': - self.typing_final = name.asname or name.name - elif node.module == 'typing' and name.name == 'overload': - self.typing_overload = name.asname or name.name - - def visit_Assign(self, node: ast.Assign) -> None: + def _handle_assignment(self, node: ast.Assign | ast.AnnAssign) -> None: """Handles Assign node and pick up a variable comment.""" try: targets = get_assign_targets(node) @@ -385,11 +357,19 @@ def visit_Assign(self, node: ast.Assign) -> None: elif hasattr(node, 'type_comment') and node.type_comment: for varname in varnames: self.add_variable_annotation(varname, node.type_comment) # type: ignore[arg-type] + self._collect_doc_comment(node, varnames, current_line) + def _collect_doc_comment( + self, + node: AssignmentLike, + varnames: list[str], + current_line: str, + ) -> None: # check comments after assignment - parser = AfterCommentParser( - [current_line[node.col_offset :]] + self.buffers[node.lineno :] - ) + parser = AfterCommentParser([ + current_line[node.col_offset :], + *self.buffers[node.lineno :], + ]) parser.parse() if parser.comment and comment_re.match(parser.comment): for varname in varnames: @@ -420,14 +400,47 @@ def visit_Assign(self, node: ast.Assign) -> None: for varname in varnames: self.add_entry(varname) + def visit(self, node: ast.AST) -> None: + """Updates self.previous to the given node.""" + super().visit(node) + self.previous = node + + def visit_Import(self, node: ast.Import) -> None: + """Handles Import node and record the order of definitions.""" + for name in node.names: + self.add_entry(name.asname or name.name) + + if name.name in {'typing', 'typing_extensions'}: + self.typing_mods.add(name.asname or name.name) + elif name.name in {'typing.final', 'typing_extensions.final'}: + self.typing_final_names.add(name.asname or name.name) + elif name.name in {'typing.overload', 'typing_extensions.overload'}: + self.typing_overload_names.add(name.asname or name.name) + + def visit_ImportFrom(self, node: ast.ImportFrom) -> None: + """Handles Import node and record the order of definitions.""" + for name in node.names: + self.add_entry(name.asname or name.name) + + if node.module not in {'typing', 'typing_extensions'}: + continue + if name.name == 'final': + self.typing_final_names.add(name.asname or name.name) + elif name.name == 'overload': + self.typing_overload_names.add(name.asname or name.name) + + def visit_Assign(self, node: ast.Assign) -> None: + """Handles Assign node and pick up a variable comment.""" + self._handle_assignment(node) + def visit_AnnAssign(self, node: ast.AnnAssign) -> None: """Handles AnnAssign node and pick up a variable comment.""" - self.visit_Assign(node) # type: ignore[arg-type] + self._handle_assignment(node) def visit_Expr(self, node: ast.Expr) -> None: """Handles Expr node and pick up a comment if string.""" if ( - isinstance(self.previous, ast.Assign | ast.AnnAssign) + isinstance(self.previous, AssignmentLikeType) and isinstance(node.value, ast.Constant) and isinstance(node.value.value, str) ): @@ -488,6 +501,15 @@ def visit_AsyncFunctionDef(self, node: ast.AsyncFunctionDef) -> None: """Handles AsyncFunctionDef node and set context.""" self.visit_FunctionDef(node) # type: ignore[arg-type] + def visit_TypeAlias(self, node: ast.TypeAlias) -> None: + """Handles TypeAlias node and picks up a variable comment. + + .. note:: TypeAlias node refers to `type Foo = Bar` (PEP 695) assignment, + NOT `Foo: TypeAlias = Bar` (PEP 613). + """ + current_line = self.get_line(node.lineno) + self._collect_doc_comment(node, [node.name.id], current_line) + class DefinitionFinder(TokenProcessor): """Python source code parser to detect location of functions, diff --git a/addons/source-python/packages/site-packages/sphinx/registry.py b/addons/source-python/packages/site-packages/sphinx/registry.py index ce52a03b3..da729240b 100644 --- a/addons/source-python/packages/site-packages/sphinx/registry.py +++ b/addons/source-python/packages/site-packages/sphinx/registry.py @@ -12,7 +12,6 @@ from sphinx.domains.std import GenericObject, Target from sphinx.errors import ExtensionError, SphinxError, VersionRequirementError from sphinx.extension import Extension -from sphinx.io import create_publisher from sphinx.locale import __ from sphinx.parsers import Parser as SphinxParser from sphinx.roles import XRefRole @@ -23,10 +22,10 @@ if TYPE_CHECKING: import os from collections.abc import Callable, Iterator, Mapping, Sequence - from typing import Any, TypeAlias + from pathlib import Path + from typing import Any from docutils import nodes - from docutils.core import Publisher from docutils.nodes import Element, Node, TextElement from docutils.parsers import Parser from docutils.parsers.rst import Directive @@ -38,7 +37,7 @@ from sphinx.config import Config from sphinx.domains import Domain, Index from sphinx.environment import BuildEnvironment - from sphinx.ext.autodoc import Documenter + from sphinx.ext.autodoc._legacy_class_based._documenters import Documenter from sphinx.util.docfields import Field from sphinx.util.typing import ( ExtensionMetadata, @@ -51,15 +50,13 @@ # visit/depart function # the parameters should be (SphinxTranslator, Element) # or any subtype of either, but mypy rejects this. - _NodeHandler: TypeAlias = Callable[[Any, Any], None] - _NodeHandlerPair: TypeAlias = tuple[_NodeHandler, _NodeHandler | None] + type _NodeHandler = Callable[[Any, Any], None] + type _NodeHandlerPair = tuple[_NodeHandler, _NodeHandler | None] - _MathsRenderer: TypeAlias = Callable[[HTML5Translator, nodes.math], None] - _MathsBlockRenderer: TypeAlias = Callable[[HTML5Translator, nodes.math_block], None] - _MathsInlineRenderers: TypeAlias = tuple[_MathsRenderer, _MathsRenderer | None] - _MathsBlockRenderers: TypeAlias = tuple[ - _MathsBlockRenderer, _MathsBlockRenderer | None - ] + type _MathsRenderer = Callable[[HTML5Translator, nodes.math], None] + type _MathsBlockRenderer = Callable[[HTML5Translator, nodes.math_block], None] + type _MathsInlineRenderers = tuple[_MathsRenderer, _MathsRenderer | None] + type _MathsBlockRenderers = tuple[_MathsBlockRenderer, _MathsBlockRenderer | None] logger = logging.getLogger(__name__) @@ -129,6 +126,9 @@ def __init__(self) -> None: #: js_files; list of JS paths or URLs self.js_files: list[tuple[str | None, dict[str, Any]]] = [] + #: static directories registered by extensions + self.static_dirs: list[Path] = [] + #: LaTeX packages; list of package names and its options self.latex_packages: list[tuple[str, str | None]] = [] @@ -153,9 +153,6 @@ def __init__(self) -> None: #: additional transforms; list of transforms self.transforms: list[type[Transform]] = [] - # private cache of Docutils Publishers (file type -> publisher object) - self.publishers: dict[str, Publisher] = {} - @property def autodoc_attrgettrs(self) -> dict[type, Callable[[Any, str, Any], Any]]: return self.autodoc_attrgetters @@ -375,11 +372,14 @@ def get_source_parser(self, filetype: str) -> type[Parser]: def get_source_parsers(self) -> dict[str, type[Parser]]: return self.source_parsers - def create_source_parser(self, app: Sphinx, filename: str) -> Parser: + def create_source_parser( + self, filename: str, *, config: Config, env: BuildEnvironment + ) -> Parser: parser_class = self.get_source_parser(filename) parser = parser_class() if isinstance(parser, SphinxParser): - parser.set_application(app) + parser._config = config + parser._env = env return parser def add_translator( @@ -410,7 +410,9 @@ def add_translation_handlers( % (builder_name, handlers), ) from exc - def get_translator_class(self, builder: Builder) -> type[nodes.NodeVisitor]: + def get_translator_class( + self, builder: type[Builder] | Builder + ) -> type[nodes.NodeVisitor]: try: return self.translators[builder.name] except KeyError: @@ -420,7 +422,9 @@ def get_translator_class(self, builder: Builder) -> type[nodes.NodeVisitor]: msg = f'translator not found for {builder.name}' raise AttributeError(msg) from err - def create_translator(self, builder: Builder, *args: Any) -> nodes.NodeVisitor: + def create_translator( + self, builder: type[Builder] | Builder, *args: Any + ) -> nodes.NodeVisitor: translator_class = self.get_translator_class(builder) translator = translator_class(*args) @@ -466,6 +470,11 @@ def add_js_file(self, filename: str | None, **attributes: Any) -> None: logger.debug('[app] adding js_file: %r, %r', filename, attributes) self.js_files.append((filename, attributes)) + def add_static_dir(self, path: Path) -> None: + """Register a static directory for extensions.""" + logger.debug("[app] adding static_dir: '%s'", path) + self.static_dirs.append(path) + def has_latex_package(self, name: str) -> bool: packages = self.latex_packages + self.latex_packages_after_hyperref return bool([x for x in packages if x[0] == name]) @@ -589,15 +598,6 @@ def get_envversion(self, app: Sphinx) -> Mapping[str, int]: return _get_env_version(app.extensions) - def get_publisher(self, app: Sphinx, filetype: str) -> Publisher: - try: - return self.publishers[filetype] - except KeyError: - pass - publisher = create_publisher(app, filetype) - self.publishers[filetype] = publisher - return publisher - def merge_source_suffix(app: Sphinx, config: Config) -> None: """Merge any user-specified source_suffix with any added by extensions.""" diff --git a/addons/source-python/packages/site-packages/sphinx/roles.py b/addons/source-python/packages/site-packages/sphinx/roles.py index 98843de5a..fdb997314 100644 --- a/addons/source-python/packages/site-packages/sphinx/roles.py +++ b/addons/source-python/packages/site-packages/sphinx/roles.py @@ -6,14 +6,13 @@ from typing import TYPE_CHECKING import docutils.parsers.rst.directives -import docutils.parsers.rst.roles import docutils.parsers.rst.states from docutils import nodes, utils from sphinx import addnodes from sphinx.locale import _, __ from sphinx.util import ws_re -from sphinx.util.docutils import ReferenceRole, SphinxRole +from sphinx.util.docutils import ReferenceRole, SphinxRole, _normalize_options if TYPE_CHECKING: from collections.abc import Sequence @@ -103,7 +102,7 @@ def run(self) -> tuple[list[Node], list[system_message]]: self.refdomain, self.reftype = '', self.name self.classes = ['xref', self.reftype] else: - self.refdomain, self.reftype = self.name.split(':', 1) + self.refdomain, _, self.reftype = self.name.partition(':') self.classes = ['xref', self.refdomain, f'{self.refdomain}-{self.reftype}'] if self.disabled: @@ -115,7 +114,7 @@ def create_non_xref_node(self) -> tuple[list[Node], list[system_message]]: text = utils.unescape(self.text[1:]) if self.fix_parens: self.has_explicit_title = False # treat as implicit - text, target = self.update_title_and_target(text, '') + text, _target = self.update_title_and_target(text, '') node = self.innernodeclass(self.rawtext, text, classes=self.classes) return self.result_nodes(self.inliner.document, self.env, node, is_ref=False) @@ -130,7 +129,7 @@ def create_xref_node(self) -> tuple[list[Node], list[system_message]]: # create the reference node options = { - 'refdoc': self.env.docname, + 'refdoc': self.env.current_document.docname, 'refdomain': self.refdomain, 'reftype': self.reftype, 'refexplicit': self.has_explicit_title, @@ -234,9 +233,9 @@ def run(self) -> tuple[list[Node], list[system_message]]: return [index, target, reference], [] def build_uri(self) -> str: - ret = self.target.split('#', 1) - if len(ret) == 2: - return f'{CVE._BASE_URL}{ret[0]}#{ret[1]}' + ret = self.target.partition('#') + if ret[1]: + return f'{CVE._BASE_URL}{ret[0]}#{ret[2]}' return f'{CVE._BASE_URL}{ret[0]}' @@ -279,9 +278,9 @@ def run(self) -> tuple[list[Node], list[system_message]]: return [index, target, reference], [] def build_uri(self) -> str: - ret = self.target.split('#', 1) - if len(ret) == 2: - return f'{CWE._BASE_URL}{int(ret[0])}.html#{ret[1]}' + ret = self.target.partition('#') + if ret[1]: + return f'{CWE._BASE_URL}{int(ret[0])}.html#{ret[2]}' return f'{CWE._BASE_URL}{int(ret[0])}.html' @@ -323,9 +322,9 @@ def run(self) -> tuple[list[Node], list[system_message]]: def build_uri(self) -> str: base_url = self.inliner.document.settings.pep_base_url - ret = self.target.split('#', 1) - if len(ret) == 2: - return base_url + 'pep-%04d/#%s' % (int(ret[0]), ret[1]) + ret = self.target.partition('#') + if ret[1]: + return base_url + 'pep-%04d/#%s' % (int(ret[0]), ret[2]) else: return base_url + 'pep-%04d/' % int(ret[0]) @@ -361,9 +360,9 @@ def run(self) -> tuple[list[Node], list[system_message]]: def build_uri(self) -> str: base_url = self.inliner.document.settings.rfc_base_url - ret = self.target.split('#', 1) - if len(ret) == 2: - return base_url + self.inliner.rfc_url % int(ret[0]) + '#' + ret[1] + ret = self.target.partition('#') + if ret[1]: + return base_url + self.inliner.rfc_url % int(ret[0]) + '#' + ret[2] else: return base_url + self.inliner.rfc_url % int(ret[0]) @@ -584,10 +583,7 @@ def code_role( options: dict[str, Any] | None = None, content: Sequence[str] = (), ) -> tuple[list[Node], list[system_message]]: - if options is None: - options = {} - options = options.copy() - docutils.parsers.rst.roles.set_classes(options) + options = _normalize_options(options) language = options.get('language', '') classes = ['code'] if language: diff --git a/addons/source-python/packages/site-packages/sphinx/search/__init__.py b/addons/source-python/packages/site-packages/sphinx/search/__init__.py index cd0aa0bbd..956d9bf41 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/__init__.py +++ b/addons/source-python/packages/site-packages/sphinx/search/__init__.py @@ -20,22 +20,19 @@ from sphinx.util.index_entries import split_index_msg if TYPE_CHECKING: - from collections.abc import Callable, Iterable - from typing import Any, Protocol, TypeVar + from collections.abc import Callable, Iterable, Set + from typing import Any, Protocol from docutils.nodes import Node from sphinx.environment import BuildEnvironment - _T_co = TypeVar('_T_co', covariant=True) - _T_contra = TypeVar('_T_contra', contravariant=True) + class _ReadableStream[T](Protocol): + def read(self, n: int = ..., /) -> T: ... + def readline(self, n: int = ..., /) -> T: ... - class _ReadableStream(Protocol[_T_co]): - def read(self, n: int = ..., /) -> _T_co: ... - def readline(self, n: int = ..., /) -> _T_co: ... - - class _WritableStream(Protocol[_T_contra]): - def write(self, s: _T_contra, /) -> object: ... + class _WritableStream[T](Protocol): + def write(self, s: T, /) -> object: ... _NON_MINIFIED_JS_PATH = package_dir.joinpath('search', 'non-minified-js') @@ -74,28 +71,25 @@ class SearchLanguage: lang: str = '' language_name: str = '' - stopwords: set[str] = set() + stopwords: Set[str] = frozenset() js_splitter_code: str = '' js_stemmer_rawcode: str = '' js_stemmer_code = """ /** * Dummy stemmer for languages without stemming rules. */ -var Stemmer = function() { - this.stemWord = function(w) { +var Stemmer = function () { + this.stemWord = function (w) { return w; - } -} + }; +}; """ _word_re = re.compile(r'\w+') def __init__(self, options: dict[str, str]) -> None: - self.options = options - self.init(options) - - def init(self, options: dict[str, str]) -> None: """Initialize the class with the options the user has given.""" + self.options = options def split(self, input: str) -> list[str]: """This method splits a sentence into words. Default splitter splits input @@ -120,10 +114,7 @@ def word_filter(self, word: str) -> bool: """Return true if the target word should be registered in the search index. This method is called after stemming. """ - return len(word) == 0 or not ( - ((len(word) < 3) and (12353 < ord(word[0]) < 12436)) - or (ord(word[0]) < 256 and (word in self.stopwords)) - ) + return not word.isdigit() and word not in self.stopwords # SearchEnglish imported after SearchLanguage is defined due to circular import @@ -131,9 +122,11 @@ def word_filter(self, word: str) -> bool: def parse_stop_word(source: str) -> set[str]: - """Parse snowball style word list like this: + """Collect the stopwords from a snowball style word list: - * https://snowball.tartarus.org/algorithms/finnish/stop.txt + .. code:: text + + list of space separated stop words | optional comment """ result: set[str] = set() for line in source.splitlines(): @@ -304,7 +297,7 @@ def __init__( # fallback; try again with language-code if lang_class is None and '_' in lang: - lang_class = languages.get(lang.split('_')[0]) + lang_class = languages.get(lang.partition('_')[0]) if lang_class is None: self.lang: SearchLanguage = SearchEnglish(options) @@ -584,17 +577,17 @@ def get_js_stemmer_rawcode(self) -> str | None: def get_js_stemmer_code(self) -> str: """Returns JS code that will be inserted into language_data.js.""" - if self.lang.js_stemmer_rawcode: - base_js_path = _NON_MINIFIED_JS_PATH / 'base-stemmer.js' - language_js_path = _NON_MINIFIED_JS_PATH / self.lang.js_stemmer_rawcode - base_js = base_js_path.read_text(encoding='utf-8') - language_js = language_js_path.read_text(encoding='utf-8') - return ( - f'{base_js}\n{language_js}\nStemmer = {self.lang.language_name}Stemmer;' - ) - else: + if not self.lang.js_stemmer_rawcode: return self.lang.js_stemmer_code + base_js_path = _MINIFIED_JS_PATH / 'base-stemmer.js' + language_js_path = _MINIFIED_JS_PATH / self.lang.js_stemmer_rawcode + return '\n'.join(( + base_js_path.read_text(encoding='utf-8'), + language_js_path.read_text(encoding='utf-8'), + f'window.Stemmer = {self.lang.language_name}Stemmer;', + )) + def _feed_visit_nodes( node: nodes.Node, diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/__init__.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.py new file mode 100644 index 000000000..4991deb86 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.py @@ -0,0 +1,101 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/danish/stop.txt + +from __future__ import annotations + +DANISH_STOPWORDS = frozenset({ + 'ad', + 'af', + 'alle', + 'alt', + 'anden', + 'at', + 'blev', + 'blive', + 'bliver', + 'da', + 'de', + 'dem', + 'den', + 'denne', + 'der', + 'deres', + 'det', + 'dette', + 'dig', + 'din', + 'disse', + 'dog', + 'du', + 'efter', + 'eller', + 'en', + 'end', + 'er', + 'et', + 'for', + 'fra', + 'ham', + 'han', + 'hans', + 'har', + 'havde', + 'have', + 'hende', + 'hendes', + 'her', + 'hos', + 'hun', + 'hvad', + 'hvis', + 'hvor', + 'i', + 'ikke', + 'ind', + 'jeg', + 'jer', + 'jo', + 'kunne', + 'man', + 'mange', + 'med', + 'meget', + 'men', + 'mig', + 'min', + 'mine', + 'mit', + 'mod', + 'ned', + 'noget', + 'nogle', + 'nu', + 'når', + 'og', + 'også', + 'om', + 'op', + 'os', + 'over', + 'på', + 'selv', + 'sig', + 'sin', + 'sine', + 'sit', + 'skal', + 'skulle', + 'som', + 'sådan', + 'thi', + 'til', + 'ud', + 'under', + 'var', + 'vi', + 'vil', + 'ville', + 'vor', + 'være', + 'været', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.txt new file mode 100644 index 000000000..9761414a1 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/da.txt @@ -0,0 +1,102 @@ + + | A Danish stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + | This is a ranked list (commonest to rarest) of stopwords derived from + | a large text sample. + + +og | and +i | in +jeg | I +det | that (dem. pronoun)/it (pers. pronoun) +at | that (in front of a sentence)/to (with infinitive) +en | a/an +den | it (pers. pronoun)/that (dem. pronoun) +til | to/at/for/until/against/by/of/into, more +er | present tense of "to be" +som | who, as +på | on/upon/in/on/at/to/after/of/with/for, on +de | they +med | with/by/in, along +han | he +af | of/by/from/off/for/in/with/on, off +for | at/for/to/from/by/of/ago, in front/before, because +ikke | not +der | who/which, there/those +var | past tense of "to be" +mig | me/myself +sig | oneself/himself/herself/itself/themselves +men | but +et | a/an/one, one (number), someone/somebody/one +har | present tense of "to have" +om | round/about/for/in/a, about/around/down, if +vi | we +min | my +havde | past tense of "to have" +ham | him +hun | she +nu | now +over | over/above/across/by/beyond/past/on/about, over/past +da | then, when/as/since +fra | from/off/since, off, since +du | you +ud | out +sin | his/her/its/one's +dem | them +os | us/ourselves +op | up +man | you/one +hans | his +hvor | where +eller | or +hvad | what +skal | must/shall etc. +selv | myself/youself/herself/ourselves etc., even +her | here +alle | all/everyone/everybody etc. +vil | will (verb) +blev | past tense of "to stay/to remain/to get/to become" +kunne | could +ind | in +når | when +være | present tense of "to be" +dog | however/yet/after all +noget | something +ville | would +jo | you know/you see (adv), yes +deres | their/theirs +efter | after/behind/according to/for/by/from, later/afterwards +ned | down +skulle | should +denne | this +end | than +dette | this +mit | my/mine +også | also +under | under/beneath/below/during, below/underneath +have | have +dig | you +anden | other +hende | her +mine | my +alt | everything +meget | much/very, plenty of +sit | his, her, its, one's +sine | his, her, its, one's +vor | our +mod | against +disse | these +hvis | if +din | your/yours +nogle | some +hos | by/at +blive | be/become +mange | many +ad | by/through +bliver | present tense of "to be/to become" +hendes | her/hers +været | be +thi | for (conj) +jer | you +sådan | such, like this/like that diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.py new file mode 100644 index 000000000..d728493d3 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.py @@ -0,0 +1,238 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/german/stop.txt + +from __future__ import annotations + +GERMAN_STOPWORDS = frozenset({ + 'aber', + 'alle', + 'allem', + 'allen', + 'aller', + 'alles', + 'als', + 'also', + 'am', + 'an', + 'ander', + 'andere', + 'anderem', + 'anderen', + 'anderer', + 'anderes', + 'anderm', + 'andern', + 'anderr', + 'anders', + 'auch', + 'auf', + 'aus', + 'bei', + 'bin', + 'bis', + 'bist', + 'da', + 'damit', + 'dann', + 'das', + 'daß', + 'dasselbe', + 'dazu', + 'dein', + 'deine', + 'deinem', + 'deinen', + 'deiner', + 'deines', + 'dem', + 'demselben', + 'den', + 'denn', + 'denselben', + 'der', + 'derer', + 'derselbe', + 'derselben', + 'des', + 'desselben', + 'dessen', + 'dich', + 'die', + 'dies', + 'diese', + 'dieselbe', + 'dieselben', + 'diesem', + 'diesen', + 'dieser', + 'dieses', + 'dir', + 'doch', + 'dort', + 'du', + 'durch', + 'ein', + 'eine', + 'einem', + 'einen', + 'einer', + 'eines', + 'einig', + 'einige', + 'einigem', + 'einigen', + 'einiger', + 'einiges', + 'einmal', + 'er', + 'es', + 'etwas', + 'euch', + 'euer', + 'eure', + 'eurem', + 'euren', + 'eurer', + 'eures', + 'für', + 'gegen', + 'gewesen', + 'hab', + 'habe', + 'haben', + 'hat', + 'hatte', + 'hatten', + 'hier', + 'hin', + 'hinter', + 'ich', + 'ihm', + 'ihn', + 'ihnen', + 'ihr', + 'ihre', + 'ihrem', + 'ihren', + 'ihrer', + 'ihres', + 'im', + 'in', + 'indem', + 'ins', + 'ist', + 'jede', + 'jedem', + 'jeden', + 'jeder', + 'jedes', + 'jene', + 'jenem', + 'jenen', + 'jener', + 'jenes', + 'jetzt', + 'kann', + 'kein', + 'keine', + 'keinem', + 'keinen', + 'keiner', + 'keines', + 'können', + 'könnte', + 'machen', + 'man', + 'manche', + 'manchem', + 'manchen', + 'mancher', + 'manches', + 'mein', + 'meine', + 'meinem', + 'meinen', + 'meiner', + 'meines', + 'mich', + 'mir', + 'mit', + 'muss', + 'musste', + 'nach', + 'nicht', + 'nichts', + 'noch', + 'nun', + 'nur', + 'ob', + 'oder', + 'ohne', + 'sehr', + 'sein', + 'seine', + 'seinem', + 'seinen', + 'seiner', + 'seines', + 'selbst', + 'sich', + 'sie', + 'sind', + 'so', + 'solche', + 'solchem', + 'solchen', + 'solcher', + 'solches', + 'soll', + 'sollte', + 'sondern', + 'sonst', + 'um', + 'und', + 'uns', + 'unse', + 'unsem', + 'unsen', + 'unser', + 'unses', + 'unter', + 'viel', + 'vom', + 'von', + 'vor', + 'war', + 'waren', + 'warst', + 'was', + 'weg', + 'weil', + 'weiter', + 'welche', + 'welchem', + 'welchen', + 'welcher', + 'welches', + 'wenn', + 'werde', + 'werden', + 'wie', + 'wieder', + 'will', + 'wir', + 'wird', + 'wirst', + 'wo', + 'wollen', + 'wollte', + 'während', + 'würde', + 'würden', + 'zu', + 'zum', + 'zur', + 'zwar', + 'zwischen', + 'über', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.txt new file mode 100644 index 000000000..c8935ae61 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/de.txt @@ -0,0 +1,285 @@ + + | A German stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + | The number of forms in this list is reduced significantly by passing it + | through the German stemmer. + + +aber | but + +alle | all +allem +allen +aller +alles + +als | than, as +also | so +am | an + dem +an | at + +ander | other +andere +anderem +anderen +anderer +anderes +anderm +andern +anderr +anders + +auch | also +auf | on +aus | out of +bei | by +bin | am +bis | until +bist | art +da | there +damit | with it +dann | then + +der | the +den +des +dem +die +das + +daß | that + +derselbe | the same +derselben +denselben +desselben +demselben +dieselbe +dieselben +dasselbe + +dazu | to that + +dein | thy +deine +deinem +deinen +deiner +deines + +denn | because + +derer | of those +dessen | of him + +dich | thee +dir | to thee +du | thou + +dies | this +diese +diesem +diesen +dieser +dieses + + +doch | (several meanings) +dort | (over) there + + +durch | through + +ein | a +eine +einem +einen +einer +eines + +einig | some +einige +einigem +einigen +einiger +einiges + +einmal | once + +er | he +ihn | him +ihm | to him + +es | it +etwas | something + +euer | your +eure +eurem +euren +eurer +eures + +für | for +gegen | towards +gewesen | p.p. of sein +hab | have +habe | have +haben | have +hat | has +hatte | had +hatten | had +hier | here +hin | there +hinter | behind + +ich | I +mich | me +mir | to me + + +ihr | you, to her +ihre +ihrem +ihren +ihrer +ihres +euch | to you + +im | in + dem +in | in +indem | while +ins | in + das +ist | is + +jede | each, every +jedem +jeden +jeder +jedes + +jene | that +jenem +jenen +jener +jenes + +jetzt | now +kann | can + +kein | no +keine +keinem +keinen +keiner +keines + +können | can +könnte | could +machen | do +man | one + +manche | some, many a +manchem +manchen +mancher +manches + +mein | my +meine +meinem +meinen +meiner +meines + +mit | with +muss | must +musste | had to +nach | to(wards) +nicht | not +nichts | nothing +noch | still, yet +nun | now +nur | only +ob | whether +oder | or +ohne | without +sehr | very + +sein | his +seine +seinem +seinen +seiner +seines + +selbst | self +sich | herself + +sie | they, she +ihnen | to them + +sind | are +so | so + +solche | such +solchem +solchen +solcher +solches + +soll | shall +sollte | should +sondern | but +sonst | else +über | over +um | about, around +und | and + +uns | us +unse +unsem +unsen +unser +unses + +unter | under +viel | much +vom | von + dem +von | from +vor | before +während | while +war | was +waren | were +warst | wast +was | what +weg | away, off +weil | because +weiter | further + +welche | which +welchem +welchen +welcher +welches + +wenn | when +werde | will +werden | will +wie | how +wieder | again +will | want +wir | we +wird | will +wirst | willst +wo | where +wollen | want +wollte | wanted +würde | would +würden | would +zu | to +zum | zu + dem +zur | zu + der +zwar | indeed +zwischen | between diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.py new file mode 100644 index 000000000..06fa94cb2 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.py @@ -0,0 +1,181 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/english/stop.txt + +from __future__ import annotations + +ENGLISH_STOPWORDS = frozenset({ + 'a', + 'about', + 'above', + 'after', + 'again', + 'against', + 'all', + 'am', + 'an', + 'and', + 'any', + 'are', + "aren't", + 'as', + 'at', + 'be', + 'because', + 'been', + 'before', + 'being', + 'below', + 'between', + 'both', + 'but', + 'by', + "can't", + 'cannot', + 'could', + "couldn't", + 'did', + "didn't", + 'do', + 'does', + "doesn't", + 'doing', + "don't", + 'down', + 'during', + 'each', + 'few', + 'for', + 'from', + 'further', + 'had', + "hadn't", + 'has', + "hasn't", + 'have', + "haven't", + 'having', + 'he', + "he'd", + "he'll", + "he's", + 'her', + 'here', + "here's", + 'hers', + 'herself', + 'him', + 'himself', + 'his', + 'how', + "how's", + 'i', + "i'd", + "i'll", + "i'm", + "i've", + 'if', + 'in', + 'into', + 'is', + "isn't", + 'it', + "it's", + 'its', + 'itself', + "let's", + 'me', + 'more', + 'most', + "mustn't", + 'my', + 'myself', + 'no', + 'nor', + 'not', + 'of', + 'off', + 'on', + 'once', + 'only', + 'or', + 'other', + 'ought', + 'our', + 'ours', + 'ourselves', + 'out', + 'over', + 'own', + 'same', + "shan't", + 'she', + "she'd", + "she'll", + "she's", + 'should', + "shouldn't", + 'so', + 'some', + 'such', + 'than', + 'that', + "that's", + 'the', + 'their', + 'theirs', + 'them', + 'themselves', + 'then', + 'there', + "there's", + 'these', + 'they', + "they'd", + "they'll", + "they're", + "they've", + 'this', + 'those', + 'through', + 'to', + 'too', + 'under', + 'until', + 'up', + 'very', + 'was', + "wasn't", + 'we', + "we'd", + "we'll", + "we're", + "we've", + 'were', + "weren't", + 'what', + "what's", + 'when', + "when's", + 'where', + "where's", + 'which', + 'while', + 'who', + "who's", + 'whom', + 'why', + "why's", + 'with', + "won't", + 'would', + "wouldn't", + 'you', + "you'd", + "you'll", + "you're", + "you've", + 'your', + 'yours', + 'yourself', + 'yourselves', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.txt new file mode 100644 index 000000000..5442976d3 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/en.txt @@ -0,0 +1,311 @@ + + | An English stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + | Many of the forms below are quite rare (e.g. "yourselves") but included for + | completeness. + + | PRONOUNS FORMS + | 1st person sing + +i | subject, always in upper case of course + +me | object +my | possessive adjective + | the possessive pronoun `mine' is best suppressed, because of the + | sense of coal-mine etc. +myself | reflexive + | 1st person plural +we | subject + +| us | object + | care is required here because US = United States. It is usually + | safe to remove it if it is in lower case. +our | possessive adjective +ours | possessive pronoun +ourselves | reflexive + | second person (archaic `thou' forms not included) +you | subject and object +your | possessive adjective +yours | possessive pronoun +yourself | reflexive (singular) +yourselves | reflexive (plural) + | third person singular +he | subject +him | object +his | possessive adjective and pronoun +himself | reflexive + +she | subject +her | object and possessive adjective +hers | possessive pronoun +herself | reflexive + +it | subject and object +its | possessive adjective +itself | reflexive + | third person plural +they | subject +them | object +their | possessive adjective +theirs | possessive pronoun +themselves | reflexive + | other forms (demonstratives, interrogatives) +what +which +who +whom +this +that +these +those + + | VERB FORMS (using F.R. Palmer's nomenclature) + | BE +am | 1st person, present +is | -s form (3rd person, present) +are | present +was | 1st person, past +were | past +be | infinitive +been | past participle +being | -ing form + | HAVE +have | simple +has | -s form +had | past +having | -ing form + | DO +do | simple +does | -s form +did | past +doing | -ing form + + | The forms below are, I believe, best omitted, because of the significant + | homonym forms: + + | He made a WILL + | old tin CAN + | merry month of MAY + | a smell of MUST + | fight the good fight with all thy MIGHT + + | would, could, should, ought might however be included + + | | AUXILIARIES + | | WILL + |will + +would + + | | SHALL + |shall + +should + + | | CAN + |can + +could + + | | MAY + |may + |might + | | MUST + |must + | | OUGHT + +ought + + | COMPOUND FORMS, increasingly encountered nowadays in 'formal' writing + | pronoun + verb + +i'm +you're +he's +she's +it's +we're +they're +i've +you've +we've +they've +i'd +you'd +he'd +she'd +we'd +they'd +i'll +you'll +he'll +she'll +we'll +they'll + + | verb + negation + +isn't +aren't +wasn't +weren't +hasn't +haven't +hadn't +doesn't +don't +didn't + + | auxiliary + negation + +won't +wouldn't +shan't +shouldn't +can't +cannot +couldn't +mustn't + + | miscellaneous forms + +let's +that's +who's +what's +here's +there's +when's +where's +why's +how's + + | rarer forms + + | daren't needn't + + | doubtful forms + + | oughtn't mightn't + + | ARTICLES +a +an +the + + | THE REST (Overlap among prepositions, conjunctions, adverbs etc is so + | high, that classification is pointless.) +and +but +if +or +because +as +until +while + +of +at +by +for +with +about +against +between +into +through +during +before +after +above +below +to +from +up +down +in +out +on +off +over +under + +again +further +then +once + +here +there +when +where +why +how + +all +any +both +each +few +more +most +other +some +such + +no +nor +not +only +own +same +so +than +too +very + + | Just for the record, the following words are among the commonest in English + + | one + | every + | least + | less + | many + | now + | ever + | never + | say + | says + | said + | also + | get + | go + | goes + | just + | made + | make + | put + | see + | seen + | whether + | like + | well + | back + | even + | still + | way + | take + | since + | another + | however + | two + | three + | four + | five + | first + | second + | new + | old + | high + | long diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.py new file mode 100644 index 000000000..4ec63cf89 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.py @@ -0,0 +1,315 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/spanish/stop.txt + +from __future__ import annotations + +SPANISH_STOPWORDS = frozenset({ + 'a', + 'al', + 'algo', + 'algunas', + 'algunos', + 'ante', + 'antes', + 'como', + 'con', + 'contra', + 'cual', + 'cuando', + 'de', + 'del', + 'desde', + 'donde', + 'durante', + 'e', + 'el', + 'ella', + 'ellas', + 'ellos', + 'en', + 'entre', + 'era', + 'erais', + 'eran', + 'eras', + 'eres', + 'es', + 'esa', + 'esas', + 'ese', + 'eso', + 'esos', + 'esta', + 'estaba', + 'estabais', + 'estaban', + 'estabas', + 'estad', + 'estada', + 'estadas', + 'estado', + 'estados', + 'estamos', + 'estando', + 'estar', + 'estaremos', + 'estará', + 'estarán', + 'estarás', + 'estaré', + 'estaréis', + 'estaría', + 'estaríais', + 'estaríamos', + 'estarían', + 'estarías', + 'estas', + 'este', + 'estemos', + 'esto', + 'estos', + 'estoy', + 'estuve', + 'estuviera', + 'estuvierais', + 'estuvieran', + 'estuvieras', + 'estuvieron', + 'estuviese', + 'estuvieseis', + 'estuviesen', + 'estuvieses', + 'estuvimos', + 'estuviste', + 'estuvisteis', + 'estuviéramos', + 'estuviésemos', + 'estuvo', + 'está', + 'estábamos', + 'estáis', + 'están', + 'estás', + 'esté', + 'estéis', + 'estén', + 'estés', + 'fue', + 'fuera', + 'fuerais', + 'fueran', + 'fueras', + 'fueron', + 'fuese', + 'fueseis', + 'fuesen', + 'fueses', + 'fui', + 'fuimos', + 'fuiste', + 'fuisteis', + 'fuéramos', + 'fuésemos', + 'ha', + 'habida', + 'habidas', + 'habido', + 'habidos', + 'habiendo', + 'habremos', + 'habrá', + 'habrán', + 'habrás', + 'habré', + 'habréis', + 'habría', + 'habríais', + 'habríamos', + 'habrían', + 'habrías', + 'habéis', + 'había', + 'habíais', + 'habíamos', + 'habían', + 'habías', + 'han', + 'has', + 'hasta', + 'hay', + 'haya', + 'hayamos', + 'hayan', + 'hayas', + 'hayáis', + 'he', + 'hemos', + 'hube', + 'hubiera', + 'hubierais', + 'hubieran', + 'hubieras', + 'hubieron', + 'hubiese', + 'hubieseis', + 'hubiesen', + 'hubieses', + 'hubimos', + 'hubiste', + 'hubisteis', + 'hubiéramos', + 'hubiésemos', + 'hubo', + 'la', + 'las', + 'le', + 'les', + 'lo', + 'los', + 'me', + 'mi', + 'mis', + 'mucho', + 'muchos', + 'muy', + 'más', + 'mí', + 'mía', + 'mías', + 'mío', + 'míos', + 'nada', + 'ni', + 'no', + 'nos', + 'nosotras', + 'nosotros', + 'nuestra', + 'nuestras', + 'nuestro', + 'nuestros', + 'o', + 'os', + 'otra', + 'otras', + 'otro', + 'otros', + 'para', + 'pero', + 'poco', + 'por', + 'porque', + 'que', + 'quien', + 'quienes', + 'qué', + 'se', + 'sea', + 'seamos', + 'sean', + 'seas', + 'seremos', + 'será', + 'serán', + 'serás', + 'seré', + 'seréis', + 'sería', + 'seríais', + 'seríamos', + 'serían', + 'serías', + 'seáis', + 'sido', + 'siendo', + 'sin', + 'sobre', + 'sois', + 'somos', + 'son', + 'soy', + 'su', + 'sus', + 'suya', + 'suyas', + 'suyo', + 'suyos', + 'sí', + 'también', + 'tanto', + 'te', + 'tendremos', + 'tendrá', + 'tendrán', + 'tendrás', + 'tendré', + 'tendréis', + 'tendría', + 'tendríais', + 'tendríamos', + 'tendrían', + 'tendrías', + 'tened', + 'tenemos', + 'tenga', + 'tengamos', + 'tengan', + 'tengas', + 'tengo', + 'tengáis', + 'tenida', + 'tenidas', + 'tenido', + 'tenidos', + 'teniendo', + 'tenéis', + 'tenía', + 'teníais', + 'teníamos', + 'tenían', + 'tenías', + 'ti', + 'tiene', + 'tienen', + 'tienes', + 'todo', + 'todos', + 'tu', + 'tus', + 'tuve', + 'tuviera', + 'tuvierais', + 'tuvieran', + 'tuvieras', + 'tuvieron', + 'tuviese', + 'tuvieseis', + 'tuviesen', + 'tuvieses', + 'tuvimos', + 'tuviste', + 'tuvisteis', + 'tuviéramos', + 'tuviésemos', + 'tuvo', + 'tuya', + 'tuyas', + 'tuyo', + 'tuyos', + 'tú', + 'un', + 'una', + 'uno', + 'unos', + 'vosotras', + 'vosotros', + 'vuestra', + 'vuestras', + 'vuestro', + 'vuestros', + 'y', + 'ya', + 'yo', + 'él', + 'éramos', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.txt new file mode 100644 index 000000000..416c84d22 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/es.txt @@ -0,0 +1,347 @@ + + | A Spanish stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + + | The following is a ranked list (commonest to rarest) of stopwords + | deriving from a large sample of text. + + | Extra words have been added at the end. + +de | from, of +la | the, her +que | who, that +el | the +en | in +y | and +a | to +los | the, them +del | de + el +se | himself, from him etc +las | the, them +por | for, by, etc +un | a +para | for +con | with +no | no +una | a +su | his, her +al | a + el + | es from SER +lo | him +como | how +más | more +pero | pero +sus | su plural +le | to him, her +ya | already +o | or + | fue from SER +este | this + | ha from HABER +sí | himself etc +porque | because +esta | this + | son from SER +entre | between + | está from ESTAR +cuando | when +muy | very +sin | without +sobre | on + | ser from SER + | tiene from TENER +también | also +me | me +hasta | until +hay | there is/are +donde | where + | han from HABER +quien | whom, that + | están from ESTAR + | estado from ESTAR +desde | from +todo | all +nos | us +durante | during + | estados from ESTAR +todos | all +uno | a +les | to them +ni | nor +contra | against +otros | other + | fueron from SER +ese | that +eso | that + | había from HABER +ante | before +ellos | they +e | and (variant of y) +esto | this +mí | me +antes | before +algunos | some +qué | what? +unos | a +yo | I +otro | other +otras | other +otra | other +él | he +tanto | so much, many +esa | that +estos | these +mucho | much, many +quienes | who +nada | nothing +muchos | many +cual | who + | sea from SER +poco | few +ella | she +estar | to be + | haber from HABER +estas | these + | estaba from ESTAR + | estamos from ESTAR +algunas | some +algo | something +nosotros | we + + | other forms + +mi | me +mis | mi plural +tú | thou +te | thee +ti | thee +tu | thy +tus | tu plural +ellas | they +nosotras | we +vosotros | you +vosotras | you +os | you +mío | mine +mía | +míos | +mías | +tuyo | thine +tuya | +tuyos | +tuyas | +suyo | his, hers, theirs +suya | +suyos | +suyas | +nuestro | ours +nuestra | +nuestros | +nuestras | +vuestro | yours +vuestra | +vuestros | +vuestras | +esos | those +esas | those + + | forms of estar, to be (not including the infinitive): +estoy +estás +está +estamos +estáis +están +esté +estés +estemos +estéis +estén +estaré +estarás +estará +estaremos +estaréis +estarán +estaría +estarías +estaríamos +estaríais +estarían +estaba +estabas +estábamos +estabais +estaban +estuve +estuviste +estuvo +estuvimos +estuvisteis +estuvieron +estuviera +estuvieras +estuviéramos +estuvierais +estuvieran +estuviese +estuvieses +estuviésemos +estuvieseis +estuviesen +estando +estado +estada +estados +estadas +estad + + | forms of haber, to have (not including the infinitive): +he +has +ha +hemos +habéis +han +haya +hayas +hayamos +hayáis +hayan +habré +habrás +habrá +habremos +habréis +habrán +habría +habrías +habríamos +habríais +habrían +había +habías +habíamos +habíais +habían +hube +hubiste +hubo +hubimos +hubisteis +hubieron +hubiera +hubieras +hubiéramos +hubierais +hubieran +hubiese +hubieses +hubiésemos +hubieseis +hubiesen +habiendo +habido +habida +habidos +habidas + + | forms of ser, to be (not including the infinitive): +soy +eres +es +somos +sois +son +sea +seas +seamos +seáis +sean +seré +serás +será +seremos +seréis +serán +sería +serías +seríamos +seríais +serían +era +eras +éramos +erais +eran +fui +fuiste +fue +fuimos +fuisteis +fueron +fuera +fueras +fuéramos +fuerais +fueran +fuese +fueses +fuésemos +fueseis +fuesen +siendo +sido + | sed also means 'thirst' + + | forms of tener, to have (not including the infinitive): +tengo +tienes +tiene +tenemos +tenéis +tienen +tenga +tengas +tengamos +tengáis +tengan +tendré +tendrás +tendrá +tendremos +tendréis +tendrán +tendría +tendrías +tendríamos +tendríais +tendrían +tenía +tenías +teníamos +teníais +tenían +tuve +tuviste +tuvo +tuvimos +tuvisteis +tuvieron +tuviera +tuvieras +tuviéramos +tuvierais +tuvieran +tuviese +tuvieses +tuviésemos +tuvieseis +tuviesen +teniendo +tenido +tenida +tenidos +tenidas +tened diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.py new file mode 100644 index 000000000..af681337d --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.py @@ -0,0 +1,236 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/finnish/stop.txt + +from __future__ import annotations + +FINNISH_STOPWORDS = frozenset({ + 'ei', + 'eivät', + 'emme', + 'en', + 'et', + 'ette', + 'että', + 'he', + 'heidän', + 'heidät', + 'heihin', + 'heille', + 'heillä', + 'heiltä', + 'heissä', + 'heistä', + 'heitä', + 'hän', + 'häneen', + 'hänelle', + 'hänellä', + 'häneltä', + 'hänen', + 'hänessä', + 'hänestä', + 'hänet', + 'häntä', + 'itse', + 'ja', + 'johon', + 'joiden', + 'joihin', + 'joiksi', + 'joilla', + 'joille', + 'joilta', + 'joina', + 'joissa', + 'joista', + 'joita', + 'joka', + 'joksi', + 'jolla', + 'jolle', + 'jolta', + 'jona', + 'jonka', + 'jos', + 'jossa', + 'josta', + 'jota', + 'jotka', + 'kanssa', + 'keiden', + 'keihin', + 'keiksi', + 'keille', + 'keillä', + 'keiltä', + 'keinä', + 'keissä', + 'keistä', + 'keitä', + 'keneen', + 'keneksi', + 'kenelle', + 'kenellä', + 'keneltä', + 'kenen', + 'kenenä', + 'kenessä', + 'kenestä', + 'kenet', + 'ketkä', + 'ketä', + 'koska', + 'kuin', + 'kuka', + 'kun', + 'me', + 'meidän', + 'meidät', + 'meihin', + 'meille', + 'meillä', + 'meiltä', + 'meissä', + 'meistä', + 'meitä', + 'mihin', + 'miksi', + 'mikä', + 'mille', + 'millä', + 'miltä', + 'minkä', + 'minua', + 'minulla', + 'minulle', + 'minulta', + 'minun', + 'minussa', + 'minusta', + 'minut', + 'minuun', + 'minä', + 'missä', + 'mistä', + 'mitkä', + 'mitä', + 'mukaan', + 'mutta', + 'ne', + 'niiden', + 'niihin', + 'niiksi', + 'niille', + 'niillä', + 'niiltä', + 'niin', + 'niinä', + 'niissä', + 'niistä', + 'niitä', + 'noiden', + 'noihin', + 'noiksi', + 'noilla', + 'noille', + 'noilta', + 'noin', + 'noina', + 'noissa', + 'noista', + 'noita', + 'nuo', + 'nyt', + 'näiden', + 'näihin', + 'näiksi', + 'näille', + 'näillä', + 'näiltä', + 'näinä', + 'näissä', + 'näistä', + 'näitä', + 'nämä', + 'ole', + 'olemme', + 'olen', + 'olet', + 'olette', + 'oli', + 'olimme', + 'olin', + 'olisi', + 'olisimme', + 'olisin', + 'olisit', + 'olisitte', + 'olisivat', + 'olit', + 'olitte', + 'olivat', + 'olla', + 'olleet', + 'ollut', + 'on', + 'ovat', + 'poikki', + 'se', + 'sekä', + 'sen', + 'siihen', + 'siinä', + 'siitä', + 'siksi', + 'sille', + 'sillä', + 'siltä', + 'sinua', + 'sinulla', + 'sinulle', + 'sinulta', + 'sinun', + 'sinussa', + 'sinusta', + 'sinut', + 'sinuun', + 'sinä', + 'sitä', + 'tai', + 'te', + 'teidän', + 'teidät', + 'teihin', + 'teille', + 'teillä', + 'teiltä', + 'teissä', + 'teistä', + 'teitä', + 'tuo', + 'tuohon', + 'tuoksi', + 'tuolla', + 'tuolle', + 'tuolta', + 'tuon', + 'tuona', + 'tuossa', + 'tuosta', + 'tuota', + 'tähän', + 'täksi', + 'tälle', + 'tällä', + 'tältä', + 'tämä', + 'tämän', + 'tänä', + 'tässä', + 'tästä', + 'tätä', + 'vaan', + 'vai', + 'vaikka', + 'yli', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.txt new file mode 100644 index 000000000..b4347ffd7 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fi.txt @@ -0,0 +1,88 @@ + +| forms of BE + +olla +olen +olet +on +olemme +olette +ovat +ole | negative form + +oli +olisi +olisit +olisin +olisimme +olisitte +olisivat +olit +olin +olimme +olitte +olivat +ollut +olleet + +en | negation +et +ei +emme +ette +eivät + +|Nom Gen Acc Part Iness Elat Illat Adess Ablat Allat Ess Trans +minä minun minut minua minussa minusta minuun minulla minulta minulle | I +sinä sinun sinut sinua sinussa sinusta sinuun sinulla sinulta sinulle | you +hän hänen hänet häntä hänessä hänestä häneen hänellä häneltä hänelle | he she +me meidän meidät meitä meissä meistä meihin meillä meiltä meille | we +te teidän teidät teitä teissä teistä teihin teillä teiltä teille | you +he heidän heidät heitä heissä heistä heihin heillä heiltä heille | they + +tämä tämän tätä tässä tästä tähän tällä tältä tälle tänä täksi | this +tuo tuon tuota tuossa tuosta tuohon tuolla tuolta tuolle tuona tuoksi | that +se sen sitä siinä siitä siihen sillä siltä sille sinä siksi | it +nämä näiden näitä näissä näistä näihin näillä näiltä näille näinä näiksi | these +nuo noiden noita noissa noista noihin noilla noilta noille noina noiksi | those +ne niiden niitä niissä niistä niihin niillä niiltä niille niinä niiksi | they + +kuka kenen kenet ketä kenessä kenestä keneen kenellä keneltä kenelle kenenä keneksi| who +ketkä keiden ketkä keitä keissä keistä keihin keillä keiltä keille keinä keiksi | (pl) +mikä minkä minkä mitä missä mistä mihin millä miltä mille minä miksi | which what +mitkä | (pl) + +joka jonka jota jossa josta johon jolla jolta jolle jona joksi | who which +jotka joiden joita joissa joista joihin joilla joilta joille joina joiksi | (pl) + +| conjunctions + +että | that +ja | and +jos | if +koska | because +kuin | than +mutta | but +niin | so +sekä | and +sillä | for +tai | or +vaan | but +vai | or +vaikka | although + + +| prepositions + +kanssa | with +mukaan | according to +noin | about +poikki | across +yli | over, across + +| other + +kun | when +niin | so +nyt | now +itse | self diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.py new file mode 100644 index 000000000..1a1edc469 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.py @@ -0,0 +1,171 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/french/stop.txt + +from __future__ import annotations + +FRENCH_STOPWORDS = frozenset({ + 'ai', + 'aie', + 'aient', + 'aies', + 'ait', + 'as', + 'au', + 'aura', + 'aurai', + 'auraient', + 'aurais', + 'aurait', + 'auras', + 'aurez', + 'auriez', + 'aurions', + 'aurons', + 'auront', + 'aux', + 'avaient', + 'avais', + 'avait', + 'avec', + 'avez', + 'aviez', + 'avions', + 'avons', + 'ayant', + 'ayez', + 'ayons', + 'c', + 'ce', + 'ceci', + 'cela', + 'celà', + 'ces', + 'cet', + 'cette', + 'd', + 'dans', + 'de', + 'des', + 'du', + 'elle', + 'en', + 'es', + 'est', + 'et', + 'eu', + 'eue', + 'eues', + 'eurent', + 'eus', + 'eusse', + 'eussent', + 'eusses', + 'eussiez', + 'eussions', + 'eut', + 'eux', + 'eûmes', + 'eût', + 'eûtes', + 'furent', + 'fus', + 'fusse', + 'fussent', + 'fusses', + 'fussiez', + 'fussions', + 'fut', + 'fûmes', + 'fût', + 'fûtes', + 'ici', + 'il', + 'ils', + 'j', + 'je', + 'l', + 'la', + 'le', + 'les', + 'leur', + 'leurs', + 'lui', + 'm', + 'ma', + 'mais', + 'me', + 'mes', + 'moi', + 'mon', + 'même', + 'n', + 'ne', + 'nos', + 'notre', + 'nous', + 'on', + 'ont', + 'ou', + 'par', + 'pas', + 'pour', + 'qu', + 'que', + 'quel', + 'quelle', + 'quelles', + 'quels', + 'qui', + 's', + 'sa', + 'sans', + 'se', + 'sera', + 'serai', + 'seraient', + 'serais', + 'serait', + 'seras', + 'serez', + 'seriez', + 'serions', + 'serons', + 'seront', + 'ses', + 'soi', + 'soient', + 'sois', + 'soit', + 'sommes', + 'son', + 'sont', + 'soyez', + 'soyons', + 'suis', + 'sur', + 't', + 'ta', + 'te', + 'tes', + 'toi', + 'ton', + 'tu', + 'un', + 'une', + 'vos', + 'votre', + 'vous', + 'y', + 'à', + 'étaient', + 'étais', + 'était', + 'étant', + 'étiez', + 'étions', + 'été', + 'étée', + 'étées', + 'étés', + 'êtes', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.txt new file mode 100644 index 000000000..8591079bf --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/fr.txt @@ -0,0 +1,177 @@ + + | A French stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + +au | a + le +aux | a + les +avec | with +ce | this +ces | these +dans | with +de | of +des | de + les +du | de + le +elle | she +en | `of them' etc +et | and +eux | them +il | he +je | I +la | the +le | the +leur | their +lui | him +ma | my (fem) +mais | but +me | me +même | same; as in moi-même (myself) etc +mes | me (pl) +moi | me +mon | my (masc) +ne | not +nos | our (pl) +notre | our +nous | we +on | one +ou | where +par | by +pas | not +pour | for +qu | que before vowel +que | that +qui | who +sa | his, her (fem) +se | oneself +ses | his (pl) +son | his, her (masc) +sur | on +ta | thy (fem) +te | thee +tes | thy (pl) +toi | thee +ton | thy (masc) +tu | thou +un | a +une | a +vos | your (pl) +votre | your +vous | you + + | single letter forms + +c | c' +d | d' +j | j' +l | l' +à | to, at +m | m' +n | n' +s | s' +t | t' +y | there + + | forms of être (not including the infinitive): +été +étée +étées +étés +étant +suis +es +est +sommes +êtes +sont +serai +seras +sera +serons +serez +seront +serais +serait +serions +seriez +seraient +étais +était +étions +étiez +étaient +fus +fut +fûmes +fûtes +furent +sois +soit +soyons +soyez +soient +fusse +fusses +fût +fussions +fussiez +fussent + + | forms of avoir (not including the infinitive): +ayant +eu +eue +eues +eus +ai +as +avons +avez +ont +aurai +auras +aura +aurons +aurez +auront +aurais +aurait +aurions +auriez +auraient +avais +avait +avions +aviez +avaient +eut +eûmes +eûtes +eurent +aie +aies +ait +ayons +ayez +aient +eusse +eusses +eût +eussions +eussiez +eussent + + | Later additions (from Jean-Christophe Deschamps) +ceci | this +cela | that (added 11 Apr 2012. Omission reported by Adrien Grand) +celà | that (incorrect, though common) +cet | this +cette | this +ici | here +ils | they +les | the (pl) +leurs | their (pl) +quel | which +quels | which +quelle | which +quelles | which +sans | without +soi | oneself diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.py new file mode 100644 index 000000000..122fd8b7b --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.py @@ -0,0 +1,205 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/hungarian/stop.txt + +from __future__ import annotations + +HUNGARIAN_STOPWORDS = frozenset({ + 'a', + 'abban', + 'ahhoz', + 'ahogy', + 'ahol', + 'aki', + 'akik', + 'akkor', + 'alatt', + 'amely', + 'amelyek', + 'amelyekben', + 'amelyeket', + 'amelyet', + 'amelynek', + 'ami', + 'amikor', + 'amit', + 'amolyan', + 'amíg', + 'annak', + 'arra', + 'arról', + 'az', + 'azok', + 'azon', + 'azonban', + 'azt', + 'aztán', + 'azután', + 'azzal', + 'azért', + 'be', + 'belül', + 'benne', + 'bár', + 'cikk', + 'cikkek', + 'cikkeket', + 'csak', + 'de', + 'e', + 'ebben', + 'eddig', + 'egy', + 'egyes', + 'egyetlen', + 'egyik', + 'egyre', + 'egyéb', + 'egész', + 'ehhez', + 'ekkor', + 'el', + 'ellen', + 'elsõ', + 'elég', + 'elõ', + 'elõször', + 'elõtt', + 'emilyen', + 'ennek', + 'erre', + 'ez', + 'ezek', + 'ezen', + 'ezt', + 'ezzel', + 'ezért', + 'fel', + 'felé', + 'hanem', + 'hiszen', + 'hogy', + 'hogyan', + 'igen', + 'ill', + 'ill.', + 'illetve', + 'ilyen', + 'ilyenkor', + 'ismét', + 'ison', + 'itt', + 'jobban', + 'jó', + 'jól', + 'kell', + 'kellett', + 'keressünk', + 'keresztül', + 'ki', + 'kívül', + 'között', + 'közül', + 'legalább', + 'legyen', + 'lehet', + 'lehetett', + 'lenne', + 'lenni', + 'lesz', + 'lett', + 'maga', + 'magát', + 'majd', + 'meg', + 'mellett', + 'mely', + 'melyek', + 'mert', + 'mi', + 'mikor', + 'milyen', + 'minden', + 'mindenki', + 'mindent', + 'mindig', + 'mint', + 'mintha', + 'mit', + 'mivel', + 'miért', + 'most', + 'már', + 'más', + 'másik', + 'még', + 'míg', + 'nagy', + 'nagyobb', + 'nagyon', + 'ne', + 'nekem', + 'neki', + 'nem', + 'nincs', + 'néha', + 'néhány', + 'nélkül', + 'olyan', + 'ott', + 'pedig', + 'persze', + 'rá', + 's', + 'saját', + 'sem', + 'semmi', + 'sok', + 'sokat', + 'sokkal', + 'szemben', + 'szerint', + 'szinte', + 'számára', + 'talán', + 'tehát', + 'teljes', + 'tovább', + 'továbbá', + 'több', + 'ugyanis', + 'utolsó', + 'után', + 'utána', + 'vagy', + 'vagyis', + 'vagyok', + 'valaki', + 'valami', + 'valamint', + 'való', + 'van', + 'vannak', + 'vele', + 'vissza', + 'viszont', + 'volna', + 'volt', + 'voltak', + 'voltam', + 'voltunk', + 'által', + 'általában', + 'át', + 'én', + 'éppen', + 'és', + 'így', + 'õ', + 'õk', + 'õket', + 'össze', + 'úgy', + 'új', + 'újabb', + 'újra', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.txt new file mode 100644 index 000000000..cdae504fd --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/hu.txt @@ -0,0 +1,203 @@ + +| Hungarian stop word list +| prepared by Anna Tordai + +a +ahogy +ahol +aki +akik +akkor +alatt +által +általában +amely +amelyek +amelyekben +amelyeket +amelyet +amelynek +ami +amit +amolyan +amíg +amikor +át +abban +ahhoz +annak +arra +arról +az +azok +azon +azt +azzal +azért +aztán +azután +azonban +bár +be +belül +benne +cikk +cikkek +cikkeket +csak +de +e +eddig +egész +egy +egyes +egyetlen +egyéb +egyik +egyre +ekkor +el +elég +ellen +elõ +elõször +elõtt +elsõ +én +éppen +ebben +ehhez +emilyen +ennek +erre +ez +ezt +ezek +ezen +ezzel +ezért +és +fel +felé +hanem +hiszen +hogy +hogyan +igen +így +illetve +ill. +ill +ilyen +ilyenkor +ison +ismét +itt +jó +jól +jobban +kell +kellett +keresztül +keressünk +ki +kívül +között +közül +legalább +lehet +lehetett +legyen +lenne +lenni +lesz +lett +maga +magát +majd +majd +már +más +másik +meg +még +mellett +mert +mely +melyek +mi +mit +míg +miért +milyen +mikor +minden +mindent +mindenki +mindig +mint +mintha +mivel +most +nagy +nagyobb +nagyon +ne +néha +nekem +neki +nem +néhány +nélkül +nincs +olyan +ott +össze +õ +õk +õket +pedig +persze +rá +s +saját +sem +semmi +sok +sokat +sokkal +számára +szemben +szerint +szinte +talán +tehát +teljes +tovább +továbbá +több +úgy +ugyanis +új +újabb +újra +után +utána +utolsó +vagy +vagyis +valaki +valami +valamint +való +vagyok +van +vannak +volt +voltam +voltak +voltunk +vissza +vele +viszont +volna diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.py new file mode 100644 index 000000000..ac411f580 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.py @@ -0,0 +1,286 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/italian/stop.txt + +from __future__ import annotations + +ITALIAN_STOPWORDS = frozenset({ + 'a', + 'abbia', + 'abbiamo', + 'abbiano', + 'abbiate', + 'ad', + 'agl', + 'agli', + 'ai', + 'al', + 'all', + 'alla', + 'alle', + 'allo', + 'anche', + 'avemmo', + 'avendo', + 'avesse', + 'avessero', + 'avessi', + 'avessimo', + 'aveste', + 'avesti', + 'avete', + 'aveva', + 'avevamo', + 'avevano', + 'avevate', + 'avevi', + 'avevo', + 'avrai', + 'avranno', + 'avrebbe', + 'avrebbero', + 'avrei', + 'avremmo', + 'avremo', + 'avreste', + 'avresti', + 'avrete', + 'avrà', + 'avrò', + 'avuta', + 'avute', + 'avuti', + 'avuto', + 'c', + 'che', + 'chi', + 'ci', + 'coi', + 'col', + 'come', + 'con', + 'contro', + 'cui', + 'da', + 'dagl', + 'dagli', + 'dai', + 'dal', + 'dall', + 'dalla', + 'dalle', + 'dallo', + 'degl', + 'degli', + 'dei', + 'del', + 'dell', + 'della', + 'delle', + 'dello', + 'di', + 'dov', + 'dove', + 'e', + 'ebbe', + 'ebbero', + 'ebbi', + 'ed', + 'era', + 'erano', + 'eravamo', + 'eravate', + 'eri', + 'ero', + 'essendo', + 'faccia', + 'facciamo', + 'facciano', + 'facciate', + 'faccio', + 'facemmo', + 'facendo', + 'facesse', + 'facessero', + 'facessi', + 'facessimo', + 'faceste', + 'facesti', + 'faceva', + 'facevamo', + 'facevano', + 'facevate', + 'facevi', + 'facevo', + 'fai', + 'fanno', + 'farai', + 'faranno', + 'farebbe', + 'farebbero', + 'farei', + 'faremmo', + 'faremo', + 'fareste', + 'faresti', + 'farete', + 'farà', + 'farò', + 'fece', + 'fecero', + 'feci', + 'fosse', + 'fossero', + 'fossi', + 'fossimo', + 'foste', + 'fosti', + 'fu', + 'fui', + 'fummo', + 'furono', + 'gli', + 'ha', + 'hai', + 'hanno', + 'ho', + 'i', + 'il', + 'in', + 'io', + 'l', + 'la', + 'le', + 'lei', + 'li', + 'lo', + 'loro', + 'lui', + 'ma', + 'mi', + 'mia', + 'mie', + 'miei', + 'mio', + 'ne', + 'negl', + 'negli', + 'nei', + 'nel', + 'nell', + 'nella', + 'nelle', + 'nello', + 'noi', + 'non', + 'nostra', + 'nostre', + 'nostri', + 'nostro', + 'o', + 'per', + 'perché', + 'più', + 'quale', + 'quanta', + 'quante', + 'quanti', + 'quanto', + 'quella', + 'quelle', + 'quelli', + 'quello', + 'questa', + 'queste', + 'questi', + 'questo', + 'sarai', + 'saranno', + 'sarebbe', + 'sarebbero', + 'sarei', + 'saremmo', + 'saremo', + 'sareste', + 'saresti', + 'sarete', + 'sarà', + 'sarò', + 'se', + 'sei', + 'si', + 'sia', + 'siamo', + 'siano', + 'siate', + 'siete', + 'sono', + 'sta', + 'stai', + 'stando', + 'stanno', + 'starai', + 'staranno', + 'starebbe', + 'starebbero', + 'starei', + 'staremmo', + 'staremo', + 'stareste', + 'staresti', + 'starete', + 'starà', + 'starò', + 'stava', + 'stavamo', + 'stavano', + 'stavate', + 'stavi', + 'stavo', + 'stemmo', + 'stesse', + 'stessero', + 'stessi', + 'stessimo', + 'steste', + 'stesti', + 'stette', + 'stettero', + 'stetti', + 'stia', + 'stiamo', + 'stiano', + 'stiate', + 'sto', + 'su', + 'sua', + 'sue', + 'sugl', + 'sugli', + 'sui', + 'sul', + 'sull', + 'sulla', + 'sulle', + 'sullo', + 'suo', + 'suoi', + 'ti', + 'tra', + 'tu', + 'tua', + 'tue', + 'tuo', + 'tuoi', + 'tutti', + 'tutto', + 'un', + 'una', + 'uno', + 'vi', + 'voi', + 'vostra', + 'vostre', + 'vostri', + 'vostro', + 'è', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.txt new file mode 100644 index 000000000..a20bb9528 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/it.txt @@ -0,0 +1,295 @@ + + | An Italian stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + +ad | a (to) before vowel +al | a + il +allo | a + lo +ai | a + i +agli | a + gli +all | a + l' +agl | a + gl' +alla | a + la +alle | a + le +con | with +col | con + il +coi | con + i (forms collo, cogli etc are now very rare) +da | from +dal | da + il +dallo | da + lo +dai | da + i +dagli | da + gli +dall | da + l' +dagl | da + gll' +dalla | da + la +dalle | da + le +di | of +del | di + il +dello | di + lo +dei | di + i +degli | di + gli +dell | di + l' +degl | di + gl' +della | di + la +delle | di + le +in | in +nel | in + el +nello | in + lo +nei | in + i +negli | in + gli +nell | in + l' +negl | in + gl' +nella | in + la +nelle | in + le +su | on +sul | su + il +sullo | su + lo +sui | su + i +sugli | su + gli +sull | su + l' +sugl | su + gl' +sulla | su + la +sulle | su + le +per | through, by +tra | among +contro | against +io | I +tu | thou +lui | he +lei | she +noi | we +voi | you +loro | they +mio | my +mia | +miei | +mie | +tuo | +tua | +tuoi | thy +tue | +suo | +sua | +suoi | his, her +sue | +nostro | our +nostra | +nostri | +nostre | +vostro | your +vostra | +vostri | +vostre | +mi | me +ti | thee +ci | us, there +vi | you, there +lo | him, the +la | her, the +li | them +le | them, the +gli | to him, the +ne | from there etc +il | the +un | a +uno | a +una | a +ma | but +ed | and +se | if +perché | why, because +anche | also +come | how +dov | where (as dov') +dove | where +che | who, that +chi | who +cui | whom +non | not +più | more +quale | who, that +quanto | how much +quanti | +quanta | +quante | +quello | that +quelli | +quella | +quelle | +questo | this +questi | +questa | +queste | +si | yes +tutto | all +tutti | all + + | single letter forms: + +a | at +c | as c' for ce or ci +e | and +i | the +l | as l' +o | or + + | forms of avere, to have (not including the infinitive): + +ho +hai +ha +abbiamo +avete +hanno +abbia +abbiate +abbiano +avrò +avrai +avrà +avremo +avrete +avranno +avrei +avresti +avrebbe +avremmo +avreste +avrebbero +avevo +avevi +aveva +avevamo +avevate +avevano +ebbi +avesti +ebbe +avemmo +aveste +ebbero +avessi +avesse +avessimo +avessero +avendo +avuto +avuta +avuti +avute + + | forms of essere, to be (not including the infinitive): +sono +sei +è +siamo +siete +sia +siate +siano +sarò +sarai +sarà +saremo +sarete +saranno +sarei +saresti +sarebbe +saremmo +sareste +sarebbero +ero +eri +era +eravamo +eravate +erano +fui +fosti +fu +fummo +foste +furono +fossi +fosse +fossimo +fossero +essendo + + | forms of fare, to do (not including the infinitive, fa, fat-): +faccio +fai +facciamo +fanno +faccia +facciate +facciano +farò +farai +farà +faremo +farete +faranno +farei +faresti +farebbe +faremmo +fareste +farebbero +facevo +facevi +faceva +facevamo +facevate +facevano +feci +facesti +fece +facemmo +faceste +fecero +facessi +facesse +facessimo +facessero +facendo + + | forms of stare, to be (not including the infinitive): +sto +stai +sta +stiamo +stanno +stia +stiate +stiano +starò +starai +starà +staremo +starete +staranno +starei +staresti +starebbe +staremmo +stareste +starebbero +stavo +stavi +stava +stavamo +stavate +stavano +stetti +stesti +stette +stemmo +steste +stettero +stessi +stesse +stessimo +stessero +stando diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.py new file mode 100644 index 000000000..c4e21dde6 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.py @@ -0,0 +1,108 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/dutch/stop.txt + +from __future__ import annotations + +DUTCH_STOPWORDS = frozenset({ + 'aan', + 'al', + 'alles', + 'als', + 'altijd', + 'andere', + 'ben', + 'bij', + 'daar', + 'dan', + 'dat', + 'de', + 'der', + 'deze', + 'die', + 'dit', + 'doch', + 'doen', + 'door', + 'dus', + 'een', + 'eens', + 'en', + 'er', + 'ge', + 'geen', + 'geweest', + 'haar', + 'had', + 'heb', + 'hebben', + 'heeft', + 'hem', + 'het', + 'hier', + 'hij', + 'hoe', + 'hun', + 'iemand', + 'iets', + 'ik', + 'in', + 'is', + 'ja', + 'je', + 'kan', + 'kon', + 'kunnen', + 'maar', + 'me', + 'meer', + 'men', + 'met', + 'mij', + 'mijn', + 'moet', + 'na', + 'naar', + 'niet', + 'niets', + 'nog', + 'nu', + 'of', + 'om', + 'omdat', + 'onder', + 'ons', + 'ook', + 'op', + 'over', + 'reeds', + 'te', + 'tegen', + 'toch', + 'toen', + 'tot', + 'u', + 'uit', + 'uw', + 'van', + 'veel', + 'voor', + 'want', + 'waren', + 'was', + 'wat', + 'werd', + 'wezen', + 'wie', + 'wil', + 'worden', + 'wordt', + 'zal', + 'ze', + 'zelf', + 'zich', + 'zij', + 'zijn', + 'zo', + 'zonder', + 'zou', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.txt new file mode 100644 index 000000000..edf99730a --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/nl.txt @@ -0,0 +1,112 @@ + + + | A Dutch stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + | This is a ranked list (commonest to rarest) of stopwords derived from + | a large sample of Dutch text. + + | Dutch stop words frequently exhibit homonym clashes. These are indicated + | clearly below. + +de | the +en | and +van | of, from +ik | I, the ego +te | (1) chez, at etc, (2) to, (3) too +dat | that, which +die | that, those, who, which +in | in, inside +een | a, an, one +hij | he +het | the, it +niet | not, nothing, naught +zijn | (1) to be, being, (2) his, one's, its +is | is +was | (1) was, past tense of all persons sing. of 'zijn' (to be) (2) wax, (3) the washing, (4) rise of river +op | on, upon, at, in, up, used up +aan | on, upon, to (as dative) +met | with, by +als | like, such as, when +voor | (1) before, in front of, (2) furrow +had | had, past tense all persons sing. of 'hebben' (have) +er | there +maar | but, only +om | round, about, for etc +hem | him +dan | then +zou | should/would, past tense all persons sing. of 'zullen' +of | or, whether, if +wat | what, something, anything +mijn | possessive and noun 'mine' +men | people, 'one' +dit | this +zo | so, thus, in this way +door | through by +over | over, across +ze | she, her, they, them +zich | oneself +bij | (1) a bee, (2) by, near, at +ook | also, too +tot | till, until +je | you +mij | me +uit | out of, from +der | Old Dutch form of 'van der' still found in surnames +daar | (1) there, (2) because +haar | (1) her, their, them, (2) hair +naar | (1) unpleasant, unwell etc, (2) towards, (3) as +heb | present first person sing. of 'to have' +hoe | how, why +heeft | present third person sing. of 'to have' +hebben | 'to have' and various parts thereof +deze | this +u | you +want | (1) for, (2) mitten, (3) rigging +nog | yet, still +zal | 'shall', first and third person sing. of verb 'zullen' (will) +me | me +zij | she, they +nu | now +ge | 'thou', still used in Belgium and south Netherlands +geen | none +omdat | because +iets | something, somewhat +worden | to become, grow, get +toch | yet, still +al | all, every, each +waren | (1) 'were' (2) to wander, (3) wares, (3) +veel | much, many +meer | (1) more, (2) lake +doen | to do, to make +toen | then, when +moet | noun 'spot/mote' and present form of 'to must' +ben | (1) am, (2) 'are' in interrogative second person singular of 'to be' +zonder | without +kan | noun 'can' and present form of 'to be able' +hun | their, them +dus | so, consequently +alles | all, everything, anything +onder | under, beneath +ja | yes, of course +eens | once, one day +hier | here +wie | who +werd | imperfect third person sing. of 'become' +altijd | always +doch | yet, but etc +wordt | present third person sing. of 'become' +wezen | (1) to be, (2) 'been' as in 'been fishing', (3) orphans +kunnen | to be able +ons | us/our +zelf | self +tegen | against, towards, at +na | after, near +reeds | already +wil | (1) present tense of 'want', (2) 'will', noun, (3) fender +kon | could; past tense of 'to be able' +niets | nothing +uw | your +iemand | somebody +geweest | been; past participle of 'be' +andere | other diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.py new file mode 100644 index 000000000..4d35e2dde --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.py @@ -0,0 +1,179 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/norwegian/stop.txt + +from __future__ import annotations + +NORWEGIAN_STOPWORDS = frozenset({ + 'alle', + 'at', + 'av', + 'bare', + 'begge', + 'ble', + 'blei', + 'bli', + 'blir', + 'blitt', + 'både', + 'båe', + 'da', + 'de', + 'deg', + 'dei', + 'deim', + 'deira', + 'deires', + 'dem', + 'den', + 'denne', + 'der', + 'dere', + 'deres', + 'det', + 'dette', + 'di', + 'din', + 'disse', + 'ditt', + 'du', + 'dykk', + 'dykkar', + 'då', + 'eg', + 'ein', + 'eit', + 'eitt', + 'eller', + 'elles', + 'en', + 'enn', + 'er', + 'et', + 'ett', + 'etter', + 'for', + 'fordi', + 'fra', + 'før', + 'ha', + 'hadde', + 'han', + 'hans', + 'har', + 'hennar', + 'henne', + 'hennes', + 'her', + 'hjå', + 'ho', + 'hoe', + 'honom', + 'hoss', + 'hossen', + 'hun', + 'hva', + 'hvem', + 'hver', + 'hvilke', + 'hvilken', + 'hvis', + 'hvor', + 'hvordan', + 'hvorfor', + 'i', + 'ikke', + 'ikkje', + 'ingen', + 'ingi', + 'inkje', + 'inn', + 'inni', + 'ja', + 'jeg', + 'kan', + 'kom', + 'korleis', + 'korso', + 'kun', + 'kunne', + 'kva', + 'kvar', + 'kvarhelst', + 'kven', + 'kvi', + 'kvifor', + 'man', + 'mange', + 'me', + 'med', + 'medan', + 'meg', + 'meget', + 'mellom', + 'men', + 'mi', + 'min', + 'mine', + 'mitt', + 'mot', + 'mykje', + 'ned', + 'no', + 'noe', + 'noen', + 'noka', + 'noko', + 'nokon', + 'nokor', + 'nokre', + 'nå', + 'når', + 'og', + 'også', + 'om', + 'opp', + 'oss', + 'over', + 'på', + 'samme', + 'seg', + 'selv', + 'si', + 'sia', + 'sidan', + 'siden', + 'sin', + 'sine', + 'sitt', + 'sjøl', + 'skal', + 'skulle', + 'slik', + 'so', + 'som', + 'somme', + 'somt', + 'så', + 'sånn', + 'til', + 'um', + 'upp', + 'ut', + 'uten', + 'var', + 'vart', + 'varte', + 'ved', + 'vere', + 'verte', + 'vi', + 'vil', + 'ville', + 'vore', + 'vors', + 'vort', + 'vår', + 'være', + 'vært', + 'å', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.txt new file mode 100644 index 000000000..c1739309a --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/no.txt @@ -0,0 +1,185 @@ + + | A Norwegian stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + | This stop word list is for the dominant bokmål dialect. Words unique + | to nynorsk are marked *. + + | Revised by Jan Bruusgaard , Jan 2005 + +og | and +i | in +jeg | I +det | it/this/that +at | to (w. inf.) +en | a/an +et | a/an +den | it/this/that +til | to +er | is/am/are +som | who/that +på | on +de | they / you(formal) +med | with +han | he +av | of +ikke | not +ikkje | not * +der | there +så | so +var | was/were +meg | me +seg | you +men | but +ett | one +har | have +om | about +vi | we +min | my +mitt | my +ha | have +hadde | had +hun | she +nå | now +over | over +da | when/as +ved | by/know +fra | from +du | you +ut | out +sin | your +dem | them +oss | us +opp | up +man | you/one +kan | can +hans | his +hvor | where +eller | or +hva | what +skal | shall/must +selv | self (reflective) +sjøl | self (reflective) +her | here +alle | all +vil | will +bli | become +ble | became +blei | became * +blitt | have become +kunne | could +inn | in +når | when +være | be +kom | come +noen | some +noe | some +ville | would +dere | you +som | who/which/that +deres | their/theirs +kun | only/just +ja | yes +etter | after +ned | down +skulle | should +denne | this +for | for/because +deg | you +si | hers/his +sine | hers/his +sitt | hers/his +mot | against +å | to +meget | much +hvorfor | why +dette | this +disse | these/those +uten | without +hvordan | how +ingen | none +din | your +ditt | your +blir | become +samme | same +hvilken | which +hvilke | which (plural) +sånn | such a +inni | inside/within +mellom | between +vår | our +hver | each +hvem | who +vors | us/ours +hvis | whose +både | both +bare | only/just +enn | than +fordi | as/because +før | before +mange | many +også | also +slik | just +vært | been +være | to be +båe | both * +begge | both +siden | since +dykk | your * +dykkar | yours * +dei | they * +deira | them * +deires | theirs * +deim | them * +di | your (fem.) * +då | as/when * +eg | I * +ein | a/an * +eit | a/an * +eitt | a/an * +elles | or * +honom | he * +hjå | at * +ho | she * +hoe | she * +henne | her +hennar | her/hers +hennes | hers +hoss | how * +hossen | how * +ikkje | not * +ingi | noone * +inkje | noone * +korleis | how * +korso | how * +kva | what/which * +kvar | where * +kvarhelst | where * +kven | who/whom * +kvi | why * +kvifor | why * +me | we * +medan | while * +mi | my * +mine | my * +mykje | much * +no | now * +nokon | some (masc./neut.) * +noka | some (fem.) * +nokor | some * +noko | some * +nokre | some * +si | his/hers * +sia | since * +sidan | since * +so | so * +somt | some * +somme | some * +um | about* +upp | up * +vere | be * +vore | was * +verte | become * +vort | become * +varte | became * +vart | became * diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.py new file mode 100644 index 000000000..9adef0166 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.py @@ -0,0 +1,210 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/portuguese/stop.txt + +from __future__ import annotations + +PORTUGUESE_STOPWORDS = frozenset({ + 'a', + 'ao', + 'aos', + 'aquela', + 'aquelas', + 'aquele', + 'aqueles', + 'aquilo', + 'as', + 'até', + 'com', + 'como', + 'da', + 'das', + 'de', + 'dela', + 'delas', + 'dele', + 'deles', + 'depois', + 'do', + 'dos', + 'e', + 'ela', + 'elas', + 'ele', + 'eles', + 'em', + 'entre', + 'era', + 'eram', + 'essa', + 'essas', + 'esse', + 'esses', + 'esta', + 'estamos', + 'estas', + 'estava', + 'estavam', + 'este', + 'esteja', + 'estejam', + 'estejamos', + 'estes', + 'esteve', + 'estive', + 'estivemos', + 'estiver', + 'estivera', + 'estiveram', + 'estiverem', + 'estivermos', + 'estivesse', + 'estivessem', + 'estivéramos', + 'estivéssemos', + 'estou', + 'está', + 'estávamos', + 'estão', + 'eu', + 'foi', + 'fomos', + 'for', + 'fora', + 'foram', + 'forem', + 'formos', + 'fosse', + 'fossem', + 'fui', + 'fôramos', + 'fôssemos', + 'haja', + 'hajam', + 'hajamos', + 'havemos', + 'hei', + 'houve', + 'houvemos', + 'houver', + 'houvera', + 'houveram', + 'houverei', + 'houverem', + 'houveremos', + 'houveria', + 'houveriam', + 'houvermos', + 'houverá', + 'houverão', + 'houveríamos', + 'houvesse', + 'houvessem', + 'houvéramos', + 'houvéssemos', + 'há', + 'hão', + 'isso', + 'isto', + 'já', + 'lhe', + 'lhes', + 'mais', + 'mas', + 'me', + 'mesmo', + 'meu', + 'meus', + 'minha', + 'minhas', + 'muito', + 'na', + 'nas', + 'nem', + 'no', + 'nos', + 'nossa', + 'nossas', + 'nosso', + 'nossos', + 'num', + 'numa', + 'não', + 'nós', + 'o', + 'os', + 'ou', + 'para', + 'pela', + 'pelas', + 'pelo', + 'pelos', + 'por', + 'qual', + 'quando', + 'que', + 'quem', + 'se', + 'seja', + 'sejam', + 'sejamos', + 'sem', + 'serei', + 'seremos', + 'seria', + 'seriam', + 'será', + 'serão', + 'seríamos', + 'seu', + 'seus', + 'somos', + 'sou', + 'sua', + 'suas', + 'são', + 'só', + 'também', + 'te', + 'tem', + 'temos', + 'tenha', + 'tenham', + 'tenhamos', + 'tenho', + 'terei', + 'teremos', + 'teria', + 'teriam', + 'terá', + 'terão', + 'teríamos', + 'teu', + 'teus', + 'teve', + 'tinha', + 'tinham', + 'tive', + 'tivemos', + 'tiver', + 'tivera', + 'tiveram', + 'tiverem', + 'tivermos', + 'tivesse', + 'tivessem', + 'tivéramos', + 'tivéssemos', + 'tu', + 'tua', + 'tuas', + 'tém', + 'tínhamos', + 'um', + 'uma', + 'você', + 'vocês', + 'vos', + 'à', + 'às', + 'éramos', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.txt new file mode 100644 index 000000000..9c3c9ac76 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/pt.txt @@ -0,0 +1,245 @@ + + | A Portuguese stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + + | The following is a ranked list (commonest to rarest) of stopwords + | deriving from a large sample of text. + + | Extra words have been added at the end. + +de | of, from +a | the; to, at; her +o | the; him +que | who, that +e | and +do | de + o +da | de + a +em | in +um | a +para | for + | é from SER +com | with +não | not, no +uma | a +os | the; them +no | em + o +se | himself etc +na | em + a +por | for +mais | more +as | the; them +dos | de + os +como | as, like +mas | but + | foi from SER +ao | a + o +ele | he +das | de + as + | tem from TER +à | a + a +seu | his +sua | her +ou | or + | ser from SER +quando | when +muito | much + | há from HAV +nos | em + os; us +já | already, now + | está from EST +eu | I +também | also +só | only, just +pelo | per + o +pela | per + a +até | up to +isso | that +ela | he +entre | between + | era from SER +depois | after +sem | without +mesmo | same +aos | a + os + | ter from TER +seus | his +quem | whom +nas | em + as +me | me +esse | that +eles | they + | estão from EST +você | you + | tinha from TER + | foram from SER +essa | that +num | em + um +nem | nor +suas | her +meu | my +às | a + as +minha | my + | têm from TER +numa | em + uma +pelos | per + os +elas | they + | havia from HAV + | seja from SER +qual | which + | será from SER +nós | we + | tenho from TER +lhe | to him, her +deles | of them +essas | those +esses | those +pelas | per + as +este | this + | fosse from SER +dele | of him + + | other words. There are many contractions such as naquele = em+aquele, + | mo = me+o, but they are rare. + | Indefinite article plural forms are also rare. + +tu | thou +te | thee +vocês | you (plural) +vos | you +lhes | to them +meus | my +minhas +teu | thy +tua +teus +tuas +nosso | our +nossa +nossos +nossas + +dela | of her +delas | of them + +esta | this +estes | these +estas | these +aquele | that +aquela | that +aqueles | those +aquelas | those +isto | this +aquilo | that + + | forms of estar, to be (not including the infinitive): +estou +está +estamos +estão +estive +esteve +estivemos +estiveram +estava +estávamos +estavam +estivera +estivéramos +esteja +estejamos +estejam +estivesse +estivéssemos +estivessem +estiver +estivermos +estiverem + + | forms of haver, to have (not including the infinitive): +hei +há +havemos +hão +houve +houvemos +houveram +houvera +houvéramos +haja +hajamos +hajam +houvesse +houvéssemos +houvessem +houver +houvermos +houverem +houverei +houverá +houveremos +houverão +houveria +houveríamos +houveriam + + | forms of ser, to be (not including the infinitive): +sou +somos +são +era +éramos +eram +fui +foi +fomos +foram +fora +fôramos +seja +sejamos +sejam +fosse +fôssemos +fossem +for +formos +forem +serei +será +seremos +serão +seria +seríamos +seriam + + | forms of ter, to have (not including the infinitive): +tenho +tem +temos +tém +tinha +tínhamos +tinham +tive +teve +tivemos +tiveram +tivera +tivéramos +tenha +tenhamos +tenham +tivesse +tivéssemos +tivessem +tiver +tivermos +tiverem +terei +terá +teremos +terão +teria +teríamos +teriam diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.py new file mode 100644 index 000000000..2610b3b9b --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.py @@ -0,0 +1,166 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/russian/stop.txt + +from __future__ import annotations + +RUSSIAN_STOPWORDS = frozenset({ + 'а', + 'без', + 'более', + 'больше', + 'будет', + 'будто', + 'бы', + 'был', + 'была', + 'были', + 'было', + 'быть', + 'в', + 'вам', + 'вас', + 'вдруг', + 'ведь', + 'во', + 'вот', + 'впрочем', + 'все', + 'всегда', + 'всего', + 'всех', + 'всю', + 'вы', + 'где', + 'говорил', + 'да', + 'даже', + 'два', + 'для', + 'до', + 'другой', + 'его', + 'ее', + 'ей', + 'ему', + 'если', + 'есть', + 'еще', + 'ж', + 'же', + 'жизнь', + 'за', + 'зачем', + 'здесь', + 'и', + 'из', + 'или', + 'им', + 'иногда', + 'их', + 'к', + 'кажется', + 'как', + 'какая', + 'какой', + 'когда', + 'конечно', + 'кто', + 'куда', + 'ли', + 'лучше', + 'между', + 'меня', + 'мне', + 'много', + 'может', + 'можно', + 'мой', + 'моя', + 'мы', + 'на', + 'над', + 'надо', + 'наконец', + 'нас', + 'не', + 'него', + 'нее', + 'ней', + 'нельзя', + 'нет', + 'ни', + 'нибудь', + 'никогда', + 'ним', + 'них', + 'ничего', + 'но', + 'ну', + 'о', + 'об', + 'один', + 'он', + 'она', + 'они', + 'опять', + 'от', + 'перед', + 'по', + 'под', + 'после', + 'потом', + 'потому', + 'почти', + 'при', + 'про', + 'раз', + 'разве', + 'с', + 'сам', + 'свою', + 'себе', + 'себя', + 'сегодня', + 'сейчас', + 'сказал', + 'сказала', + 'сказать', + 'со', + 'совсем', + 'так', + 'такой', + 'там', + 'тебя', + 'тем', + 'теперь', + 'то', + 'тогда', + 'того', + 'тоже', + 'только', + 'том', + 'тот', + 'три', + 'тут', + 'ты', + 'у', + 'уж', + 'уже', + 'хорошо', + 'хоть', + 'чего', + 'человек', + 'чем', + 'через', + 'что', + 'чтоб', + 'чтобы', + 'чуть', + 'эти', + 'этого', + 'этой', + 'этом', + 'этот', + 'эту', + 'я', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.txt new file mode 100644 index 000000000..96abb7707 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/ru.txt @@ -0,0 +1,235 @@ + + + | a russian stop word list. comments begin with vertical bar. each stop + | word is at the start of a line. + + | this is a ranked list (commonest to rarest) of stopwords derived from + | a large text sample. + + | letter `ё' is translated to `е'. + +и | and +в | in/into +во | alternative form +не | not +что | what/that +он | he +на | on/onto +я | i +с | from +со | alternative form +как | how +а | milder form of `no' (but) +то | conjunction and form of `that' +все | all +она | she +так | so, thus +его | him +но | but +да | yes/and +ты | thou +к | towards, by +у | around, chez +же | intensifier particle +вы | you +за | beyond, behind +бы | conditional/subj. particle +по | up to, along +только | only +ее | her +мне | to me +было | it was +вот | here is/are, particle +от | away from +меня | me +еще | still, yet, more +нет | no, there isnt/arent +о | about +из | out of +ему | to him +теперь | now +когда | when +даже | even +ну | so, well +вдруг | suddenly +ли | interrogative particle +если | if +уже | already, but homonym of `narrower' +или | or +ни | neither +быть | to be +был | he was +него | prepositional form of его +до | up to +вас | you accusative +нибудь | indef. suffix preceded by hyphen +опять | again +уж | already, but homonym of `adder' +вам | to you +сказал | he said +ведь | particle `after all' +там | there +потом | then +себя | oneself +ничего | nothing +ей | to her +может | usually with `быть' as `maybe' +они | they +тут | here +где | where +есть | there is/are +надо | got to, must +ней | prepositional form of ей +для | for +мы | we +тебя | thee +их | them, their +чем | than +была | she was +сам | self +чтоб | in order to +без | without +будто | as if +человек | man, person, one +чего | genitive form of `what' +раз | once +тоже | also +себе | to oneself +под | beneath +жизнь | life +будет | will be +ж | short form of intensifer particle `же' +тогда | then +кто | who +этот | this +говорил | was saying +того | genitive form of `that' +потому | for that reason +этого | genitive form of `this' +какой | which +совсем | altogether +ним | prepositional form of `его', `они' +здесь | here +этом | prepositional form of `этот' +один | one +почти | almost +мой | my +тем | instrumental/dative plural of `тот', `то' +чтобы | full form of `in order that' +нее | her (acc.) +кажется | it seems +сейчас | now +были | they were +куда | where to +зачем | why +сказать | to say +всех | all (acc., gen. preposn. plural) +никогда | never +сегодня | today +можно | possible, one can +при | by +наконец | finally +два | two +об | alternative form of `о', about +другой | another +хоть | even +после | after +над | above +больше | more +тот | that one (masc.) +через | across, in +эти | these +нас | us +про | about +всего | in all, only, of all +них | prepositional form of `они' (they) +какая | which, feminine +много | lots +разве | interrogative particle +сказала | she said +три | three +эту | this, acc. fem. sing. +моя | my, feminine +впрочем | moreover, besides +хорошо | good +свою | ones own, acc. fem. sing. +этой | oblique form of `эта', fem. `this' +перед | in front of +иногда | sometimes +лучше | better +чуть | a little +том | preposn. form of `that one' +нельзя | one must not +такой | such a one +им | to them +более | more +всегда | always +конечно | of course +всю | acc. fem. sing of `all' +между | between + + + | b: some paradigms + | + | personal pronouns + | + | я меня мне мной [мною] + | ты тебя тебе тобой [тобою] + | он его ему им [него, нему, ним] + | она ее эи ею [нее, нэи, нею] + | оно его ему им [него, нему, ним] + | + | мы нас нам нами + | вы вас вам вами + | они их им ими [них, ним, ними] + | + | себя себе собой [собою] + | + | demonstrative pronouns: этот (this), тот (that) + | + | этот эта это эти + | этого эты это эти + | этого этой этого этих + | этому этой этому этим + | этим этой этим [этою] этими + | этом этой этом этих + | + | тот та то те + | того ту то те + | того той того тех + | тому той тому тем + | тем той тем [тою] теми + | том той том тех + | + | determinative pronouns + | + | (a) весь (all) + | + | весь вся все все + | всего всю все все + | всего всей всего всех + | всему всей всему всем + | всем всей всем [всею] всеми + | всем всей всем всех + | + | (b) сам (himself etc) + | + | сам сама само сами + | самого саму само самих + | самого самой самого самих + | самому самой самому самим + | самим самой самим [самою] самими + | самом самой самом самих + | + | stems of verbs `to be', `to have', `to do' and modal + | + | быть бы буд быв есть суть + | име + | дел + | мог мож мочь + | уме + | хоч хот + | долж + | можн + | нужн + | нельзя diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.py b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.py new file mode 100644 index 000000000..d9be39c35 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.py @@ -0,0 +1,121 @@ +# automatically generated by utils/generate-snowball.py +# from https://github.com/snowballstem/snowball-website/raw/efb4ae4d65769fb1652acbe608c0c817e746c730/algorithms/swedish/stop.txt + +from __future__ import annotations + +SWEDISH_STOPWORDS = frozenset({ + 'alla', + 'allt', + 'att', + 'av', + 'blev', + 'bli', + 'blir', + 'blivit', + 'de', + 'dem', + 'den', + 'denna', + 'deras', + 'dess', + 'dessa', + 'det', + 'detta', + 'dig', + 'din', + 'dina', + 'ditt', + 'du', + 'där', + 'då', + 'efter', + 'ej', + 'eller', + 'en', + 'er', + 'era', + 'ert', + 'ett', + 'från', + 'för', + 'ha', + 'hade', + 'han', + 'hans', + 'har', + 'henne', + 'hennes', + 'hon', + 'honom', + 'hur', + 'här', + 'i', + 'icke', + 'ingen', + 'inom', + 'inte', + 'jag', + 'ju', + 'kan', + 'kunde', + 'man', + 'med', + 'mellan', + 'men', + 'mig', + 'min', + 'mina', + 'mitt', + 'mot', + 'mycket', + 'ni', + 'nu', + 'när', + 'någon', + 'något', + 'några', + 'och', + 'om', + 'oss', + 'på', + 'samma', + 'sedan', + 'sig', + 'sin', + 'sina', + 'sitta', + 'själv', + 'skulle', + 'som', + 'så', + 'sådan', + 'sådana', + 'sådant', + 'till', + 'under', + 'upp', + 'ut', + 'utan', + 'vad', + 'var', + 'vara', + 'varför', + 'varit', + 'varje', + 'vars', + 'vart', + 'vem', + 'vi', + 'vid', + 'vilka', + 'vilkas', + 'vilken', + 'vilket', + 'vår', + 'våra', + 'vårt', + 'än', + 'är', + 'åt', + 'över', +}) diff --git a/addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.txt b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.txt new file mode 100644 index 000000000..2fb53892a --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/_stopwords/sv.txt @@ -0,0 +1,124 @@ + + | A Swedish stop word list. Comments begin with vertical bar. Each stop + | word is at the start of a line. + + | This is a ranked list (commonest to rarest) of stopwords derived from + | a large text sample. + + | Swedish stop words occasionally exhibit homonym clashes. For example + | så = so, but also seed. These are indicated clearly below. + +och | and +det | it, this/that +att | to (with infinitive) +i | in, at +en | a +jag | I +hon | she +som | who, that +han | he +på | on +den | it, this/that +med | with +var | where, each +sig | him(self) etc +för | for +så | so (also: seed) +till | to +är | is +men | but +ett | a +om | if; around, about +hade | had +de | they, these/those +av | of +icke | not, no +mig | me +du | you +henne | her +då | then, when +sin | his +nu | now +har | have +inte | inte någon = no one +hans | his +honom | him +skulle | 'sake' +hennes | her +där | there +min | my +man | one (pronoun) +ej | nor +vid | at, by, on (also: vast) +kunde | could +något | some etc +från | from, off +ut | out +när | when +efter | after, behind +upp | up +vi | we +dem | them +vara | be +vad | what +över | over +än | than +dig | you +kan | can +sina | his +här | here +ha | have +mot | towards +alla | all +under | under (also: wonder) +någon | some etc +eller | or (else) +allt | all +mycket | much +sedan | since +ju | why +denna | this/that +själv | myself, yourself etc +detta | this/that +åt | to +utan | without +varit | was +hur | how +ingen | no +mitt | my +ni | you +bli | to be, become +blev | from bli +oss | us +din | thy +dessa | these/those +några | some etc +deras | their +blir | from bli +mina | my +samma | (the) same +vilken | who, that +er | you, your +sådan | such a +vår | our +blivit | from bli +dess | its +inom | within +mellan | between +sådant | such a +varför | why +varje | each +vilka | who, that +ditt | thy +vem | who +vilket | who, that +sitta | his +sådana | such a +vart | each +dina | thy +vars | whose +vårt | our +våra | our +ert | your +era | your +vilkas | whose diff --git a/addons/source-python/packages/site-packages/sphinx/search/da.py b/addons/source-python/packages/site-packages/sphinx/search/da.py index a56114bb6..e632a97fb 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/da.py +++ b/addons/source-python/packages/site-packages/sphinx/search/da.py @@ -1,117 +1,21 @@ -"""Danish search language: includes the JS Danish stemmer.""" +"""Danish search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -danish_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/danish/stop.txt -og | and -i | in -jeg | I -det | that (dem. pronoun)/it (pers. pronoun) -at | that (in front of a sentence)/to (with infinitive) -en | a/an -den | it (pers. pronoun)/that (dem. pronoun) -til | to/at/for/until/against/by/of/into, more -er | present tense of "to be" -som | who, as -på | on/upon/in/on/at/to/after/of/with/for, on -de | they -med | with/by/in, along -han | he -af | of/by/from/off/for/in/with/on, off -for | at/for/to/from/by/of/ago, in front/before, because -ikke | not -der | who/which, there/those -var | past tense of "to be" -mig | me/myself -sig | oneself/himself/herself/itself/themselves -men | but -et | a/an/one, one (number), someone/somebody/one -har | present tense of "to have" -om | round/about/for/in/a, about/around/down, if -vi | we -min | my -havde | past tense of "to have" -ham | him -hun | she -nu | now -over | over/above/across/by/beyond/past/on/about, over/past -da | then, when/as/since -fra | from/off/since, off, since -du | you -ud | out -sin | his/her/its/one's -dem | them -os | us/ourselves -op | up -man | you/one -hans | his -hvor | where -eller | or -hvad | what -skal | must/shall etc. -selv | myself/yourself/herself/ourselves etc., even -her | here -alle | all/everyone/everybody etc. -vil | will (verb) -blev | past tense of "to stay/to remain/to get/to become" -kunne | could -ind | in -når | when -være | present tense of "to be" -dog | however/yet/after all -noget | something -ville | would -jo | you know/you see (adv), yes -deres | their/theirs -efter | after/behind/according to/for/by/from, later/afterwards -ned | down -skulle | should -denne | this -end | than -dette | this -mit | my/mine -også | also -under | under/beneath/below/during, below/underneath -have | have -dig | you -anden | other -hende | her -mine | my -alt | everything -meget | much/very, plenty of -sit | his, her, its, one's -sine | his, her, its, one's -vor | our -mod | against -disse | these -hvis | if -din | your/yours -nogle | some -hos | by/at -blive | be/become -mange | many -ad | by/through -bliver | present tense of "to be/to become" -hendes | her/hers -været | be -thi | for (conj) -jer | you -sådan | such, like this/like that -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.da import DANISH_STOPWORDS class SearchDanish(SearchLanguage): lang = 'da' language_name = 'Danish' js_stemmer_rawcode = 'danish-stemmer.js' - stopwords = danish_stopwords + stopwords = DANISH_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('danish') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/de.py b/addons/source-python/packages/site-packages/sphinx/search/de.py index 37aa9ec88..278d78fb4 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/de.py +++ b/addons/source-python/packages/site-packages/sphinx/search/de.py @@ -1,300 +1,21 @@ -"""German search language: includes the JS German stemmer.""" +"""German search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -german_stopwords = parse_stop_word(""" -|source: https://snowball.tartarus.org/algorithms/german/stop.txt -aber | but - -alle | all -allem -allen -aller -alles - -als | than, as -also | so -am | an + dem -an | at - -ander | other -andere -anderem -anderen -anderer -anderes -anderm -andern -anderr -anders - -auch | also -auf | on -aus | out of -bei | by -bin | am -bis | until -bist | art -da | there -damit | with it -dann | then - -der | the -den -des -dem -die -das - -daß | that - -derselbe | the same -derselben -denselben -desselben -demselben -dieselbe -dieselben -dasselbe - -dazu | to that - -dein | thy -deine -deinem -deinen -deiner -deines - -denn | because - -derer | of those -dessen | of him - -dich | thee -dir | to thee -du | thou - -dies | this -diese -diesem -diesen -dieser -dieses - - -doch | (several meanings) -dort | (over) there - - -durch | through - -ein | a -eine -einem -einen -einer -eines - -einig | some -einige -einigem -einigen -einiger -einiges - -einmal | once - -er | he -ihn | him -ihm | to him - -es | it -etwas | something - -euer | your -eure -eurem -euren -eurer -eures - -für | for -gegen | towards -gewesen | p.p. of sein -hab | have -habe | have -haben | have -hat | has -hatte | had -hatten | had -hier | here -hin | there -hinter | behind - -ich | I -mich | me -mir | to me - - -ihr | you, to her -ihre -ihrem -ihren -ihrer -ihres -euch | to you - -im | in + dem -in | in -indem | while -ins | in + das -ist | is - -jede | each, every -jedem -jeden -jeder -jedes - -jene | that -jenem -jenen -jener -jenes - -jetzt | now -kann | can - -kein | no -keine -keinem -keinen -keiner -keines - -können | can -könnte | could -machen | do -man | one - -manche | some, many a -manchem -manchen -mancher -manches - -mein | my -meine -meinem -meinen -meiner -meines - -mit | with -muss | must -musste | had to -nach | to(wards) -nicht | not -nichts | nothing -noch | still, yet -nun | now -nur | only -ob | whether -oder | or -ohne | without -sehr | very - -sein | his -seine -seinem -seinen -seiner -seines - -selbst | self -sich | herself - -sie | they, she -ihnen | to them - -sind | are -so | so - -solche | such -solchem -solchen -solcher -solches - -soll | shall -sollte | should -sondern | but -sonst | else -über | over -um | about, around -und | and - -uns | us -unse -unsem -unsen -unser -unses - -unter | under -viel | much -vom | von + dem -von | from -vor | before -während | while -war | was -waren | were -warst | wast -was | what -weg | away, off -weil | because -weiter | further - -welche | which -welchem -welchen -welcher -welches - -wenn | when -werde | will -werden | will -wie | how -wieder | again -will | want -wir | we -wird | will -wirst | willst -wo | where -wollen | want -wollte | wanted -würde | would -würden | would -zu | to -zum | zu + dem -zur | zu + der -zwar | indeed -zwischen | between -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.de import GERMAN_STOPWORDS class SearchGerman(SearchLanguage): lang = 'de' language_name = 'German' js_stemmer_rawcode = 'german-stemmer.js' - stopwords = german_stopwords + stopwords = GERMAN_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('german') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/en.py b/addons/source-python/packages/site-packages/sphinx/search/en.py index 5173dc03f..273a25a02 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/en.py +++ b/addons/source-python/packages/site-packages/sphinx/search/en.py @@ -1,218 +1,22 @@ -"""English search language: includes the JS porter stemmer.""" +"""English search language.""" from __future__ import annotations import snowballstemmer from sphinx.search import SearchLanguage - -english_stopwords = { - 'a', 'and', 'are', 'as', 'at', - 'be', 'but', 'by', - 'for', - 'if', 'in', 'into', 'is', 'it', - 'near', 'no', 'not', - 'of', 'on', 'or', - 'such', - 'that', 'the', 'their', 'then', 'there', 'these', 'they', 'this', 'to', - 'was', 'will', 'with', -} # fmt: skip - -js_porter_stemmer = """ -/** - * Porter Stemmer - */ -var Stemmer = function() { - - var step2list = { - ational: 'ate', - tional: 'tion', - enci: 'ence', - anci: 'ance', - izer: 'ize', - bli: 'ble', - alli: 'al', - entli: 'ent', - eli: 'e', - ousli: 'ous', - ization: 'ize', - ation: 'ate', - ator: 'ate', - alism: 'al', - iveness: 'ive', - fulness: 'ful', - ousness: 'ous', - aliti: 'al', - iviti: 'ive', - biliti: 'ble', - logi: 'log' - }; - - var step3list = { - icate: 'ic', - ative: '', - alize: 'al', - iciti: 'ic', - ical: 'ic', - ful: '', - ness: '' - }; - - var c = "[^aeiou]"; // consonant - var v = "[aeiouy]"; // vowel - var C = c + "[^aeiouy]*"; // consonant sequence - var V = v + "[aeiou]*"; // vowel sequence - - var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 - var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 - var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 - var s_v = "^(" + C + ")?" + v; // vowel in stem - - this.stemWord = function (w) { - var stem; - var suffix; - var firstch; - var origword = w; - - if (w.length < 3) - return w; - - var re; - var re2; - var re3; - var re4; - - firstch = w.substr(0,1); - if (firstch == "y") - w = firstch.toUpperCase() + w.substr(1); - - // Step 1a - re = /^(.+?)(ss|i)es$/; - re2 = /^(.+?)([^s])s$/; - - if (re.test(w)) - w = w.replace(re,"$1$2"); - else if (re2.test(w)) - w = w.replace(re2,"$1$2"); - - // Step 1b - re = /^(.+?)eed$/; - re2 = /^(.+?)(ed|ing)$/; - if (re.test(w)) { - var fp = re.exec(w); - re = new RegExp(mgr0); - if (re.test(fp[1])) { - re = /.$/; - w = w.replace(re,""); - } - } - else if (re2.test(w)) { - var fp = re2.exec(w); - stem = fp[1]; - re2 = new RegExp(s_v); - if (re2.test(stem)) { - w = stem; - re2 = /(at|bl|iz)$/; - re3 = new RegExp("([^aeiouylsz])\\\\1$"); - re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); - if (re2.test(w)) - w = w + "e"; - else if (re3.test(w)) { - re = /.$/; - w = w.replace(re,""); - } - else if (re4.test(w)) - w = w + "e"; - } - } - - // Step 1c - re = /^(.+?)y$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(s_v); - if (re.test(stem)) - w = stem + "i"; - } - - // Step 2 - re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|\ -ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - suffix = fp[2]; - re = new RegExp(mgr0); - if (re.test(stem)) - w = stem + step2list[suffix]; - } - - // Step 3 - re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - suffix = fp[2]; - re = new RegExp(mgr0); - if (re.test(stem)) - w = stem + step3list[suffix]; - } - - // Step 4 - re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|\ -iti|ous|ive|ize)$/; - re2 = /^(.+?)(s|t)(ion)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(mgr1); - if (re.test(stem)) - w = stem; - } - else if (re2.test(w)) { - var fp = re2.exec(w); - stem = fp[1] + fp[2]; - re2 = new RegExp(mgr1); - if (re2.test(stem)) - w = stem; - } - - // Step 5 - re = /^(.+?)e$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(mgr1); - re2 = new RegExp(meq1); - re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); - if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) - w = stem; - } - re = /ll$/; - re2 = new RegExp(mgr1); - if (re.test(w) && re2.test(w)) { - re = /.$/; - w = w.replace(re,""); - } - - // and turn initial Y back to y - if (firstch == "y") - w = firstch.toLowerCase() + w.substr(1); - return w; - } -} -""" +from sphinx.search._stopwords.en import ENGLISH_STOPWORDS class SearchEnglish(SearchLanguage): lang = 'en' language_name = 'English' - js_stemmer_code = js_porter_stemmer - stopwords = english_stopwords + js_stemmer_rawcode = 'english-stemmer.js' + stopwords = ENGLISH_STOPWORDS - def init(self, options: dict[str, str]) -> None: - self.stemmer = snowballstemmer.stemmer('porter') + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) + self.stemmer = snowballstemmer.stemmer('english') def stem(self, word: str) -> str: return self.stemmer.stemWord(word.lower()) diff --git a/addons/source-python/packages/site-packages/sphinx/search/es.py b/addons/source-python/packages/site-packages/sphinx/search/es.py index 5739c8817..c1b08ab1b 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/es.py +++ b/addons/source-python/packages/site-packages/sphinx/search/es.py @@ -1,360 +1,21 @@ -"""Spanish search language: includes the JS Spanish stemmer.""" +"""Spanish search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -spanish_stopwords = parse_stop_word(""" -|source: https://snowball.tartarus.org/algorithms/spanish/stop.txt -de | from, of -la | the, her -que | who, that -el | the -en | in -y | and -a | to -los | the, them -del | de + el -se | himself, from him etc -las | the, them -por | for, by, etc -un | a -para | for -con | with -no | no -una | a -su | his, her -al | a + el - | es from SER -lo | him -como | how -más | more -pero | pero -sus | su plural -le | to him, her -ya | already -o | or - | fue from SER -este | this - | ha from HABER -sí | himself etc -porque | because -esta | this - | son from SER -entre | between - | está from ESTAR -cuando | when -muy | very -sin | without -sobre | on - | ser from SER - | tiene from TENER -también | also -me | me -hasta | until -hay | there is/are -donde | where - | han from HABER -quien | whom, that - | están from ESTAR - | estado from ESTAR -desde | from -todo | all -nos | us -durante | during - | estados from ESTAR -todos | all -uno | a -les | to them -ni | nor -contra | against -otros | other - | fueron from SER -ese | that -eso | that - | había from HABER -ante | before -ellos | they -e | and (variant of y) -esto | this -mí | me -antes | before -algunos | some -qué | what? -unos | a -yo | I -otro | other -otras | other -otra | other -él | he -tanto | so much, many -esa | that -estos | these -mucho | much, many -quienes | who -nada | nothing -muchos | many -cual | who - | sea from SER -poco | few -ella | she -estar | to be - | haber from HABER -estas | these - | estaba from ESTAR - | estamos from ESTAR -algunas | some -algo | something -nosotros | we - - | other forms - -mi | me -mis | mi plural -tú | thou -te | thee -ti | thee -tu | thy -tus | tu plural -ellas | they -nosotras | we -vosotros | you -vosotras | you -os | you -mío | mine -mía | -míos | -mías | -tuyo | thine -tuya | -tuyos | -tuyas | -suyo | his, hers, theirs -suya | -suyos | -suyas | -nuestro | ours -nuestra | -nuestros | -nuestras | -vuestro | yours -vuestra | -vuestros | -vuestras | -esos | those -esas | those - - | forms of estar, to be (not including the infinitive): -estoy -estás -está -estamos -estáis -están -esté -estés -estemos -estéis -estén -estaré -estarás -estará -estaremos -estaréis -estarán -estaría -estarías -estaríamos -estaríais -estarían -estaba -estabas -estábamos -estabais -estaban -estuve -estuviste -estuvo -estuvimos -estuvisteis -estuvieron -estuviera -estuvieras -estuviéramos -estuvierais -estuvieran -estuviese -estuvieses -estuviésemos -estuvieseis -estuviesen -estando -estado -estada -estados -estadas -estad - - | forms of haber, to have (not including the infinitive): -he -has -ha -hemos -habéis -han -haya -hayas -hayamos -hayáis -hayan -habré -habrás -habrá -habremos -habréis -habrán -habría -habrías -habríamos -habríais -habrían -había -habías -habíamos -habíais -habían -hube -hubiste -hubo -hubimos -hubisteis -hubieron -hubiera -hubieras -hubiéramos -hubierais -hubieran -hubiese -hubieses -hubiésemos -hubieseis -hubiesen -habiendo -habido -habida -habidos -habidas - - | forms of ser, to be (not including the infinitive): -soy -eres -es -somos -sois -son -sea -seas -seamos -seáis -sean -seré -serás -será -seremos -seréis -serán -sería -serías -seríamos -seríais -serían -era -eras -éramos -erais -eran -fui -fuiste -fue -fuimos -fuisteis -fueron -fuera -fueras -fuéramos -fuerais -fueran -fuese -fueses -fuésemos -fueseis -fuesen -siendo -sido - | sed also means 'thirst' - - | forms of tener, to have (not including the infinitive): -tengo -tienes -tiene -tenemos -tenéis -tienen -tenga -tengas -tengamos -tengáis -tengan -tendré -tendrás -tendrá -tendremos -tendréis -tendrán -tendría -tendrías -tendríamos -tendríais -tendrían -tenía -tenías -teníamos -teníais -tenían -tuve -tuviste -tuvo -tuvimos -tuvisteis -tuvieron -tuviera -tuvieras -tuviéramos -tuvierais -tuvieran -tuviese -tuvieses -tuviésemos -tuvieseis -tuviesen -teniendo -tenido -tenida -tenidos -tenidas -tened -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.es import SPANISH_STOPWORDS class SearchSpanish(SearchLanguage): lang = 'es' language_name = 'Spanish' js_stemmer_rawcode = 'spanish-stemmer.js' - stopwords = spanish_stopwords + stopwords = SPANISH_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('spanish') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/fi.py b/addons/source-python/packages/site-packages/sphinx/search/fi.py index 24ef75023..01c7e0ba1 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/fi.py +++ b/addons/source-python/packages/site-packages/sphinx/search/fi.py @@ -1,110 +1,21 @@ -"""Finnish search language: includes the JS Finnish stemmer.""" +"""Finnish search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -finnish_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/finnish/stop.txt -| forms of BE - -olla -olen -olet -on -olemme -olette -ovat -ole | negative form - -oli -olisi -olisit -olisin -olisimme -olisitte -olisivat -olit -olin -olimme -olitte -olivat -ollut -olleet - -en | negation -et -ei -emme -ette -eivät - -|Nom Gen Acc Part Iness Elat Illat Adess Ablat Allat Ess Trans -minä minun minut minua minussa minusta minuun minulla minulta minulle | I -sinä sinun sinut sinua sinussa sinusta sinuun sinulla sinulta sinulle | you -hän hänen hänet häntä hänessä hänestä häneen hänellä häneltä hänelle | he she -me meidän meidät meitä meissä meistä meihin meillä meiltä meille | we -te teidän teidät teitä teissä teistä teihin teillä teiltä teille | you -he heidän heidät heitä heissä heistä heihin heillä heiltä heille | they - -tämä tämän tätä tässä tästä tähän tällä tältä tälle tänä täksi | this -tuo tuon tuota tuossa tuosta tuohon tuolla tuolta tuolle tuona tuoksi | that -se sen sitä siinä siitä siihen sillä siltä sille sinä siksi | it -nämä näiden näitä näissä näistä näihin näillä näiltä näille näinä näiksi | these -nuo noiden noita noissa noista noihin noilla noilta noille noina noiksi | those -ne niiden niitä niissä niistä niihin niillä niiltä niille niinä niiksi | they - -kuka kenen kenet ketä kenessä kenestä keneen kenellä keneltä kenelle kenenä keneksi| who -ketkä keiden ketkä keitä keissä keistä keihin keillä keiltä keille keinä keiksi | (pl) -mikä minkä minkä mitä missä mistä mihin millä miltä mille minä miksi | which what -mitkä | (pl) - -joka jonka jota jossa josta johon jolla jolta jolle jona joksi | who which -jotka joiden joita joissa joista joihin joilla joilta joille joina joiksi | (pl) - -| conjunctions - -että | that -ja | and -jos | if -koska | because -kuin | than -mutta | but -niin | so -sekä | and -sillä | for -tai | or -vaan | but -vai | or -vaikka | although - - -| prepositions - -kanssa | with -mukaan | according to -noin | about -poikki | across -yli | over, across - -| other - -kun | when -niin | so -nyt | now -itse | self -""") # NoQA: E501 +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.fi import FINNISH_STOPWORDS class SearchFinnish(SearchLanguage): lang = 'fi' language_name = 'Finnish' js_stemmer_rawcode = 'finnish-stemmer.js' - stopwords = finnish_stopwords + stopwords = FINNISH_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('finnish') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/fr.py b/addons/source-python/packages/site-packages/sphinx/search/fr.py index 7662737d6..e79976dfe 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/fr.py +++ b/addons/source-python/packages/site-packages/sphinx/search/fr.py @@ -1,196 +1,21 @@ -"""French search language: includes the JS French stemmer.""" +"""French search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -french_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/french/stop.txt -au | a + le -aux | a + les -avec | with -ce | this -ces | these -dans | with -de | of -des | de + les -du | de + le -elle | she -en | `of them' etc -et | and -eux | them -il | he -je | I -la | the -le | the -leur | their -lui | him -ma | my (fem) -mais | but -me | me -même | same; as in moi-même (myself) etc -mes | me (pl) -moi | me -mon | my (masc) -ne | not -nos | our (pl) -notre | our -nous | we -on | one -ou | where -par | by -pas | not -pour | for -qu | que before vowel -que | that -qui | who -sa | his, her (fem) -se | oneself -ses | his (pl) -son | his, her (masc) -sur | on -ta | thy (fem) -te | thee -tes | thy (pl) -toi | thee -ton | thy (masc) -tu | thou -un | a -une | a -vos | your (pl) -votre | your -vous | you - - | single letter forms - -c | c' -d | d' -j | j' -l | l' -à | to, at -m | m' -n | n' -s | s' -t | t' -y | there - - | forms of être (not including the infinitive): -été -étée -étées -étés -étant -suis -es -est -sommes -êtes -sont -serai -seras -sera -serons -serez -seront -serais -serait -serions -seriez -seraient -étais -était -étions -étiez -étaient -fus -fut -fûmes -fûtes -furent -sois -soit -soyons -soyez -soient -fusse -fusses -fût -fussions -fussiez -fussent - - | forms of avoir (not including the infinitive): -ayant -eu -eue -eues -eus -ai -as -avons -avez -ont -aurai -auras -aura -aurons -aurez -auront -aurais -aurait -aurions -auriez -auraient -avais -avait -avions -aviez -avaient -eut -eûmes -eûtes -eurent -aie -aies -ait -ayons -ayez -aient -eusse -eusses -eût -eussions -eussiez -eussent - - | Later additions (from Jean-Christophe Deschamps) -ceci | this -cela | that (added 11 Apr 2012. Omission reported by Adrien Grand) -celà | that (incorrect, though common) -cet | this -cette | this -ici | here -ils | they -les | the (pl) -leurs | their (pl) -quel | which -quels | which -quelle | which -quelles | which -sans | without -soi | oneself -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.fr import FRENCH_STOPWORDS class SearchFrench(SearchLanguage): lang = 'fr' language_name = 'French' js_stemmer_rawcode = 'french-stemmer.js' - stopwords = french_stopwords + stopwords = FRENCH_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('french') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/hu.py b/addons/source-python/packages/site-packages/sphinx/search/hu.py index 5c35b16fc..254ad488d 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/hu.py +++ b/addons/source-python/packages/site-packages/sphinx/search/hu.py @@ -1,223 +1,21 @@ -"""Hungarian search language: includes the JS Hungarian stemmer.""" +"""Hungarian search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -hungarian_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/hungarian/stop.txt -| prepared by Anna Tordai -a -ahogy -ahol -aki -akik -akkor -alatt -által -általában -amely -amelyek -amelyekben -amelyeket -amelyet -amelynek -ami -amit -amolyan -amíg -amikor -át -abban -ahhoz -annak -arra -arról -az -azok -azon -azt -azzal -azért -aztán -azután -azonban -bár -be -belül -benne -cikk -cikkek -cikkeket -csak -de -e -eddig -egész -egy -egyes -egyetlen -egyéb -egyik -egyre -ekkor -el -elég -ellen -elő -először -előtt -első -én -éppen -ebben -ehhez -emilyen -ennek -erre -ez -ezt -ezek -ezen -ezzel -ezért -és -fel -felé -hanem -hiszen -hogy -hogyan -igen -így -illetve -ill. -ill -ilyen -ilyenkor -ison -ismét -itt -jó -jól -jobban -kell -kellett -keresztül -keressünk -ki -kívül -között -közül -legalább -lehet -lehetett -legyen -lenne -lenni -lesz -lett -maga -magát -majd -majd -már -más -másik -meg -még -mellett -mert -mely -melyek -mi -mit -míg -miért -milyen -mikor -minden -mindent -mindenki -mindig -mint -mintha -mivel -most -nagy -nagyobb -nagyon -ne -néha -nekem -neki -nem -néhány -nélkül -nincs -olyan -ott -össze -ő -ők -őket -pedig -persze -rá -s -saját -sem -semmi -sok -sokat -sokkal -számára -szemben -szerint -szinte -talán -tehát -teljes -tovább -továbbá -több -úgy -ugyanis -új -újabb -újra -után -utána -utolsó -vagy -vagyis -valaki -valami -valamint -való -vagyok -van -vannak -volt -voltam -voltak -voltunk -vissza -vele -viszont -volna -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.hu import HUNGARIAN_STOPWORDS class SearchHungarian(SearchLanguage): lang = 'hu' language_name = 'Hungarian' js_stemmer_rawcode = 'hungarian-stemmer.js' - stopwords = hungarian_stopwords + stopwords = HUNGARIAN_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('hungarian') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/it.py b/addons/source-python/packages/site-packages/sphinx/search/it.py index 60a5cf577..d8a583f9d 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/it.py +++ b/addons/source-python/packages/site-packages/sphinx/search/it.py @@ -1,313 +1,21 @@ -"""Italian search language: includes the JS Italian stemmer.""" +"""Italian search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -italian_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/italian/stop.txt -ad | a (to) before vowel -al | a + il -allo | a + lo -ai | a + i -agli | a + gli -all | a + l' -agl | a + gl' -alla | a + la -alle | a + le -con | with -col | con + il -coi | con + i (forms collo, cogli etc are now very rare) -da | from -dal | da + il -dallo | da + lo -dai | da + i -dagli | da + gli -dall | da + l' -dagl | da + gll' -dalla | da + la -dalle | da + le -di | of -del | di + il -dello | di + lo -dei | di + i -degli | di + gli -dell | di + l' -degl | di + gl' -della | di + la -delle | di + le -in | in -nel | in + el -nello | in + lo -nei | in + i -negli | in + gli -nell | in + l' -negl | in + gl' -nella | in + la -nelle | in + le -su | on -sul | su + il -sullo | su + lo -sui | su + i -sugli | su + gli -sull | su + l' -sugl | su + gl' -sulla | su + la -sulle | su + le -per | through, by -tra | among -contro | against -io | I -tu | thou -lui | he -lei | she -noi | we -voi | you -loro | they -mio | my -mia | -miei | -mie | -tuo | -tua | -tuoi | thy -tue | -suo | -sua | -suoi | his, her -sue | -nostro | our -nostra | -nostri | -nostre | -vostro | your -vostra | -vostri | -vostre | -mi | me -ti | thee -ci | us, there -vi | you, there -lo | him, the -la | her, the -li | them -le | them, the -gli | to him, the -ne | from there etc -il | the -un | a -uno | a -una | a -ma | but -ed | and -se | if -perché | why, because -anche | also -come | how -dov | where (as dov') -dove | where -che | who, that -chi | who -cui | whom -non | not -più | more -quale | who, that -quanto | how much -quanti | -quanta | -quante | -quello | that -quelli | -quella | -quelle | -questo | this -questi | -questa | -queste | -si | yes -tutto | all -tutti | all - - | single letter forms: - -a | at -c | as c' for ce or ci -e | and -i | the -l | as l' -o | or - - | forms of avere, to have (not including the infinitive): - -ho -hai -ha -abbiamo -avete -hanno -abbia -abbiate -abbiano -avrò -avrai -avrà -avremo -avrete -avranno -avrei -avresti -avrebbe -avremmo -avreste -avrebbero -avevo -avevi -aveva -avevamo -avevate -avevano -ebbi -avesti -ebbe -avemmo -aveste -ebbero -avessi -avesse -avessimo -avessero -avendo -avuto -avuta -avuti -avute - - | forms of essere, to be (not including the infinitive): -sono -sei -è -siamo -siete -sia -siate -siano -sarò -sarai -sarà -saremo -sarete -saranno -sarei -saresti -sarebbe -saremmo -sareste -sarebbero -ero -eri -era -eravamo -eravate -erano -fui -fosti -fu -fummo -foste -furono -fossi -fosse -fossimo -fossero -essendo - - | forms of fare, to do (not including the infinitive, fa, fat-): -faccio -fai -facciamo -fanno -faccia -facciate -facciano -farò -farai -farà -faremo -farete -faranno -farei -faresti -farebbe -faremmo -fareste -farebbero -facevo -facevi -faceva -facevamo -facevate -facevano -feci -facesti -fece -facemmo -faceste -fecero -facessi -facesse -facessimo -facessero -facendo - - | forms of stare, to be (not including the infinitive): -sto -stai -sta -stiamo -stanno -stia -stiate -stiano -starò -starai -starà -staremo -starete -staranno -starei -staresti -starebbe -staremmo -stareste -starebbero -stavo -stavi -stava -stavamo -stavate -stavano -stetti -stesti -stette -stemmo -steste -stettero -stessi -stesse -stessimo -stessero -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.it import ITALIAN_STOPWORDS class SearchItalian(SearchLanguage): lang = 'it' language_name = 'Italian' js_stemmer_rawcode = 'italian-stemmer.js' - stopwords = italian_stopwords + stopwords = ITALIAN_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('italian') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/ja.py b/addons/source-python/packages/site-packages/sphinx/search/ja.py index f855fe4a6..7045a3144 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/ja.py +++ b/addons/source-python/packages/site-packages/sphinx/search/ja.py @@ -523,7 +523,8 @@ class SearchJapanese(SearchLanguage): lang = 'ja' language_name = 'Japanese' - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) dotted_path = options.get('type') if dotted_path is None: self.splitter = DefaultSplitter(options) diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/README.rst b/addons/source-python/packages/site-packages/sphinx/search/minified-js/README.rst new file mode 100644 index 000000000..e14b36aef --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/README.rst @@ -0,0 +1,7 @@ +Regenerate minified files with:: + + npm install -g uglify-js + for f in $(ls sphinx/search/non-minified-js/); \ + do echo $f && \ + npx uglifyjs sphinx/search/non-minified-js/$f --compress --mangle --output sphinx/search/minified-js/$f; \ + done diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/arabic-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/arabic-stemmer.js new file mode 100644 index 000000000..c8e178a75 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/arabic-stemmer.js @@ -0,0 +1 @@ +var ArabicStemmer=function(){var o=new BaseStemmer,l=[["ـ",-1,1],["ً",-1,1],["ٌ",-1,1],["ٍ",-1,1],["َ",-1,1],["ُ",-1,1],["ِ",-1,1],["ّ",-1,1],["ْ",-1,1],["٠",-1,2],["١",-1,3],["٢",-1,4],["٣",-1,5],["٤",-1,6],["٥",-1,7],["٦",-1,8],["٧",-1,9],["٨",-1,10],["٩",-1,11],["ﺀ",-1,12],["ﺁ",-1,16],["ﺂ",-1,16],["ﺃ",-1,13],["ﺄ",-1,13],["ﺅ",-1,17],["ﺆ",-1,17],["ﺇ",-1,14],["ﺈ",-1,14],["ﺉ",-1,15],["ﺊ",-1,15],["ﺋ",-1,15],["ﺌ",-1,15],["ﺍ",-1,18],["ﺎ",-1,18],["ﺏ",-1,19],["ﺐ",-1,19],["ﺑ",-1,19],["ﺒ",-1,19],["ﺓ",-1,20],["ﺔ",-1,20],["ﺕ",-1,21],["ﺖ",-1,21],["ﺗ",-1,21],["ﺘ",-1,21],["ﺙ",-1,22],["ﺚ",-1,22],["ﺛ",-1,22],["ﺜ",-1,22],["ﺝ",-1,23],["ﺞ",-1,23],["ﺟ",-1,23],["ﺠ",-1,23],["ﺡ",-1,24],["ﺢ",-1,24],["ﺣ",-1,24],["ﺤ",-1,24],["ﺥ",-1,25],["ﺦ",-1,25],["ﺧ",-1,25],["ﺨ",-1,25],["ﺩ",-1,26],["ﺪ",-1,26],["ﺫ",-1,27],["ﺬ",-1,27],["ﺭ",-1,28],["ﺮ",-1,28],["ﺯ",-1,29],["ﺰ",-1,29],["ﺱ",-1,30],["ﺲ",-1,30],["ﺳ",-1,30],["ﺴ",-1,30],["ﺵ",-1,31],["ﺶ",-1,31],["ﺷ",-1,31],["ﺸ",-1,31],["ﺹ",-1,32],["ﺺ",-1,32],["ﺻ",-1,32],["ﺼ",-1,32],["ﺽ",-1,33],["ﺾ",-1,33],["ﺿ",-1,33],["ﻀ",-1,33],["ﻁ",-1,34],["ﻂ",-1,34],["ﻃ",-1,34],["ﻄ",-1,34],["ﻅ",-1,35],["ﻆ",-1,35],["ﻇ",-1,35],["ﻈ",-1,35],["ﻉ",-1,36],["ﻊ",-1,36],["ﻋ",-1,36],["ﻌ",-1,36],["ﻍ",-1,37],["ﻎ",-1,37],["ﻏ",-1,37],["ﻐ",-1,37],["ﻑ",-1,38],["ﻒ",-1,38],["ﻓ",-1,38],["ﻔ",-1,38],["ﻕ",-1,39],["ﻖ",-1,39],["ﻗ",-1,39],["ﻘ",-1,39],["ﻙ",-1,40],["ﻚ",-1,40],["ﻛ",-1,40],["ﻜ",-1,40],["ﻝ",-1,41],["ﻞ",-1,41],["ﻟ",-1,41],["ﻠ",-1,41],["ﻡ",-1,42],["ﻢ",-1,42],["ﻣ",-1,42],["ﻤ",-1,42],["ﻥ",-1,43],["ﻦ",-1,43],["ﻧ",-1,43],["ﻨ",-1,43],["ﻩ",-1,44],["ﻪ",-1,44],["ﻫ",-1,44],["ﻬ",-1,44],["ﻭ",-1,45],["ﻮ",-1,45],["ﻯ",-1,46],["ﻰ",-1,46],["ﻱ",-1,47],["ﻲ",-1,47],["ﻳ",-1,47],["ﻴ",-1,47],["ﻵ",-1,51],["ﻶ",-1,51],["ﻷ",-1,49],["ﻸ",-1,49],["ﻹ",-1,50],["ﻺ",-1,50],["ﻻ",-1,48],["ﻼ",-1,48]],b=[["آ",-1,1],["أ",-1,1],["ؤ",-1,1],["إ",-1,1],["ئ",-1,1]],m=[["آ",-1,1],["أ",-1,1],["ؤ",-1,2],["إ",-1,1],["ئ",-1,3]],_=[["ال",-1,2],["بال",-1,1],["كال",-1,1],["لل",-1,2]],k=[["أآ",-1,2],["أأ",-1,1],["أؤ",-1,1],["أإ",-1,4],["أا",-1,3]],g=[["ف",-1,1],["و",-1,1]],d=[["ال",-1,2],["بال",-1,1],["كال",-1,1],["لل",-1,2]],h=[["ب",-1,1],["با",0,-1],["بب",0,2],["كك",-1,3]],v=[["سأ",-1,4],["ست",-1,2],["سن",-1,3],["سي",-1,1]],w=[["تست",-1,1],["نست",-1,1],["يست",-1,1]],C=[["كما",-1,3],["هما",-1,3],["نا",-1,2],["ها",-1,2],["ك",-1,1],["كم",-1,2],["هم",-1,2],["هن",-1,2],["ه",-1,1],["ي",-1,1]],S=[["ن",-1,1]],r=[["ا",-1,1],["و",-1,1],["ي",-1,1]],e=[["ات",-1,1]],i=[["ت",-1,1]],q=[["ة",-1,1]],A=[["ي",-1,1]],B=[["كما",-1,3],["هما",-1,3],["نا",-1,2],["ها",-1,2],["ك",-1,1],["كم",-1,2],["هم",-1,2],["كن",-1,2],["هن",-1,2],["ه",-1,1],["كمو",-1,3],["ني",-1,2]],c=[["ا",-1,1],["تا",0,2],["تما",0,4],["نا",0,2],["ت",-1,1],["ن",-1,1],["ان",5,3],["تن",5,2],["ون",5,3],["ين",5,3],["ي",-1,1]],W=[["وا",-1,1],["تم",-1,1]],j=[["و",-1,1],["تمو",0,2]],p=[["ى",-1,1]],x=!1,y=!1,z=!1;function D(){return o.ket=o.cursor,0!=o.find_among_b(r)&&(o.bra=o.cursor,!(o.current.length<=4||!o.slice_del()))}function E(){return o.ket=o.cursor,0!=o.find_among_b(e)&&(o.bra=o.cursor,!(o.current.length<5||!o.slice_del()))}function F(){return o.ket=o.cursor,0!=o.find_among_b(i)&&(o.bra=o.cursor,!(o.current.length<4||!o.slice_del()))}function G(){var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(c))){switch(o.bra=o.cursor,r){case 1:if(o.current.length<4)return;if(o.slice_del())break;return;case 2:if(o.current.length<5)return;if(o.slice_del())break;return;case 3:if(o.current.length<=5)return;if(o.slice_del())break;return;case 4:if(o.current.length<6)return;if(o.slice_del())break;return}return 1}}this.stem=function(){x=!(y=z=!0);var r=o.cursor,r=((()=>{var r;if(o.bra=o.cursor,0!=(r=o.find_among(_)))switch(o.ket=o.cursor,r){case 1:if(o.current.length<=4)return;x=!(y=!(z=!0));break;case 2:if(o.current.length<=3)return;x=!(y=!(z=!0))}})(),o.cursor=r,(()=>{for(var r,e=o.cursor;;){var i=o.cursor;r:{var c=o.cursor;if(o.bra=o.cursor,0!=(r=o.find_among(l)))switch(o.ket=o.cursor,r){case 1:if(o.slice_del())break;return;case 2:if(o.slice_from("0"))break;return;case 3:if(o.slice_from("1"))break;return;case 4:if(o.slice_from("2"))break;return;case 5:if(o.slice_from("3"))break;return;case 6:if(o.slice_from("4"))break;return;case 7:if(o.slice_from("5"))break;return;case 8:if(o.slice_from("6"))break;return;case 9:if(o.slice_from("7"))break;return;case 10:if(o.slice_from("8"))break;return;case 11:if(o.slice_from("9"))break;return;case 12:if(o.slice_from("ء"))break;return;case 13:if(o.slice_from("أ"))break;return;case 14:if(o.slice_from("إ"))break;return;case 15:if(o.slice_from("ئ"))break;return;case 16:if(o.slice_from("آ"))break;return;case 17:if(o.slice_from("ؤ"))break;return;case 18:if(o.slice_from("ا"))break;return;case 19:if(o.slice_from("ب"))break;return;case 20:if(o.slice_from("ة"))break;return;case 21:if(o.slice_from("ت"))break;return;case 22:if(o.slice_from("ث"))break;return;case 23:if(o.slice_from("ج"))break;return;case 24:if(o.slice_from("ح"))break;return;case 25:if(o.slice_from("خ"))break;return;case 26:if(o.slice_from("د"))break;return;case 27:if(o.slice_from("ذ"))break;return;case 28:if(o.slice_from("ر"))break;return;case 29:if(o.slice_from("ز"))break;return;case 30:if(o.slice_from("س"))break;return;case 31:if(o.slice_from("ش"))break;return;case 32:if(o.slice_from("ص"))break;return;case 33:if(o.slice_from("ض"))break;return;case 34:if(o.slice_from("ط"))break;return;case 35:if(o.slice_from("ظ"))break;return;case 36:if(o.slice_from("ع"))break;return;case 37:if(o.slice_from("غ"))break;return;case 38:if(o.slice_from("ف"))break;return;case 39:if(o.slice_from("ق"))break;return;case 40:if(o.slice_from("ك"))break;return;case 41:if(o.slice_from("ل"))break;return;case 42:if(o.slice_from("م"))break;return;case 43:if(o.slice_from("ن"))break;return;case 44:if(o.slice_from("ه"))break;return;case 45:if(o.slice_from("و"))break;return;case 46:if(o.slice_from("ى"))break;return;case 47:if(o.slice_from("ي"))break;return;case 48:if(o.slice_from("لا"))break;return;case 49:if(o.slice_from("لأ"))break;return;case 50:if(o.slice_from("لإ"))break;return;case 51:if(o.slice_from("لآ"))break;return}else{if(o.cursor=c,o.cursor>=o.limit)break r;o.cursor++}continue}o.cursor=i;break}o.cursor=e})(),o.limit_backward=o.cursor,o.cursor=o.limit,o.limit-o.cursor);r:e:{var e=o.limit-o.cursor;i:if(y){c:{var i=o.limit-o.cursor;s:{for(var c=1;;){var s=o.limit-o.cursor;if(!(()=>{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(B))){switch(o.bra=o.cursor,r){case 1:if(o.current.length<4)return;if(o.slice_del())break;return;case 2:if(o.current.length<5)return;if(o.slice_del())break;return;case 3:if(o.current.length<6)return;if(o.slice_del())break;return}return 1}})()){o.cursor=o.limit-s;break}c--}if(!(0{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(j))){switch(o.bra=o.cursor,r){case 1:if(o.current.length<4)return;if(o.slice_del())break;return;case 2:if(o.current.length<6)return;if(o.slice_del())break;return}return 1}})())){if(o.cursor=o.limit-t,o.cursor<=o.limit_backward)break s;o.cursor--}break c}}if(o.cursor=o.limit-i,(o.ket=o.cursor,0==o.find_among_b(W)||(o.bra=o.cursor,o.current.length<5)||!o.slice_del())&&(o.cursor=o.limit-i,!G()))break i}break e}if(o.cursor=o.limit-e,z){var u=o.limit-o.cursor;i:c:{var a=o.limit-o.cursor;if(o.ket=o.cursor,0==o.find_among_b(q)||(o.bra=o.cursor,o.current.length<4)||!o.slice_del()){o.cursor=o.limit-a;s:if(!x&&(()=>{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(C))){switch(o.bra=o.cursor,r){case 1:if(o.current.length<4)return;if(o.slice_del())break;return;case 2:if(o.current.length<5)return;if(o.slice_del())break;return;case 3:if(o.current.length<6)return;if(o.slice_del())break;return}return 1}})()){var n=o.limit-o.cursor;if(!D()&&(o.cursor=o.limit-n,!E())&&(o.cursor=o.limit-n,!F())){if(o.cursor=o.limit-n,o.cursor<=o.limit_backward)break s;o.cursor--}break c}if(o.cursor=o.limit-a,o.ket=o.cursor,!(0==o.find_among_b(S)||(o.bra=o.cursor,o.current.length<=5))&&o.slice_del()){n=o.limit-o.cursor;if(D()||(o.cursor=o.limit-n,E())||(o.cursor=o.limit-n,F()))break c}if(o.cursor=o.limit-a,(x||!D())&&(o.cursor=o.limit-a,!E())){o.cursor=o.limit-u;break i}}}if(o.ket=o.cursor,!(0==o.find_among_b(A)||(o.bra=o.cursor,o.current.length<3))&&o.slice_del())break e}if(o.cursor=o.limit-e,o.ket=o.cursor,0==o.find_among_b(p)||(o.bra=o.cursor,!o.slice_from("ي")))break r}o.cursor=o.limit-r,o.cursor=o.limit_backward;r=o.cursor;r:{var f=o.cursor,f=((()=>{var r;if(o.bra=o.cursor,0!=(r=o.find_among(k))){switch(o.ket=o.cursor,r){case 1:if(o.current.length<=3)return;if(o.slice_from("أ"))break;return;case 2:if(o.current.length<=3)return;if(o.slice_from("آ"))break;return;case 3:if(o.current.length<=3)return;if(o.slice_from("ا"))break;return;case 4:if(o.current.length<=3)return;if(o.slice_from("إ"))break;return}return 1}})()||(o.cursor=f),o.cursor),f=((()=>{var r;return o.bra=o.cursor,0==o.find_among(g)||(o.ket=o.cursor,o.current.length<=3)||(r=o.cursor,o.eq_s("ا"))?void 0:(o.cursor=r,!!o.slice_del())})()||(o.cursor=f),o.cursor);if(!(()=>{var r;if(o.bra=o.cursor,0!=(r=o.find_among(d))){switch(o.ket=o.cursor,r){case 1:if(o.current.length<=5)return;if(o.slice_del())break;return;case 2:if(o.current.length<=4)return;if(o.slice_del())break;return}return 1}})()&&(o.cursor=f,!z||!(()=>{var r;if(o.bra=o.cursor,0!=(r=o.find_among(h))){switch(o.ket=o.cursor,r){case 1:if(o.current.length<=3)return;if(o.slice_del())break;return;case 2:if(o.current.length<=3)return;if(o.slice_from("ب"))break;return;case 3:if(o.current.length<=3)return;if(o.slice_from("ك"))break;return}return 1}})())){if(o.cursor=f,!y)break r;f=o.cursor;if((()=>{var r;if(o.bra=o.cursor,0!=(r=o.find_among(v))){switch(o.ket=o.cursor,r){case 1:if(o.current.length<=4)return;if(o.slice_from("ي"))break;return;case 2:if(o.current.length<=4)return;if(o.slice_from("ت"))break;return;case 3:if(o.current.length<=4)return;if(o.slice_from("ن"))break;return;case 4:if(o.current.length<=4)return;if(o.slice_from("أ"))break;return}return 1}})()||(o.cursor=f),o.bra=o.cursor,0==o.find_among(w)||(o.ket=o.cursor,o.current.length<=4)||(z=!(y=!0),!o.slice_from("است")))break r}}return o.cursor=r,(()=>{var r,e=o.cursor;if(o.limit_backward=o.cursor,o.cursor=o.limit,o.ket=o.cursor,0!=o.find_among_b(b)){if(o.bra=o.cursor,!o.slice_from("ء"))return;o.cursor=o.limit_backward}for(o.cursor=e,e=o.cursor;;){var i=o.cursor;r:{var c=o.cursor;if(o.bra=o.cursor,0!=(r=o.find_among(m)))switch(o.ket=o.cursor,r){case 1:if(o.slice_from("ا"))break;return;case 2:if(o.slice_from("و"))break;return;case 3:if(o.slice_from("ي"))break;return}else{if(o.cursor=c,o.cursor>=o.limit)break r;o.cursor++}continue}o.cursor=i;break}o.cursor=e})(),!0},this.stemWord=function(r){return o.setCurrent(r),this.stem(),o.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/armenian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/armenian-stemmer.js new file mode 100644 index 000000000..6b5c33afb --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/armenian-stemmer.js @@ -0,0 +1 @@ +var ArmenianStemmer=function(){var o=new BaseStemmer,u=[["րորդ",-1,1],["երորդ",0,1],["ալի",-1,1],["ակի",-1,1],["որակ",-1,1],["եղ",-1,1],["ական",-1,1],["արան",-1,1],["են",-1,1],["եկեն",8,1],["երեն",8,1],["որէն",-1,1],["ին",-1,1],["գին",12,1],["ովին",12,1],["լայն",-1,1],["վուն",-1,1],["պես",-1,1],["իվ",-1,1],["ատ",-1,1],["ավետ",-1,1],["կոտ",-1,1],["բար",-1,1]],c=[["ա",-1,1],["ացա",0,1],["եցա",0,1],["վե",-1,1],["ացրի",-1,1],["ացի",-1,1],["եցի",-1,1],["վեցի",6,1],["ալ",-1,1],["ըալ",8,1],["անալ",8,1],["ենալ",8,1],["ացնալ",8,1],["ել",-1,1],["ըել",13,1],["նել",13,1],["ցնել",15,1],["եցնել",16,1],["չել",13,1],["վել",13,1],["ացվել",19,1],["եցվել",19,1],["տել",13,1],["ատել",22,1],["ոտել",22,1],["կոտել",24,1],["ված",-1,1],["ում",-1,1],["վում",27,1],["ան",-1,1],["ցան",29,1],["ացան",30,1],["ացրին",-1,1],["ացին",-1,1],["եցին",-1,1],["վեցին",34,1],["ալիս",-1,1],["ելիս",-1,1],["ավ",-1,1],["ացավ",38,1],["եցավ",38,1],["ալով",-1,1],["ելով",-1,1],["ար",-1,1],["ացար",43,1],["եցար",43,1],["ացրիր",-1,1],["ացիր",-1,1],["եցիր",-1,1],["վեցիր",48,1],["աց",-1,1],["եց",-1,1],["ացրեց",51,1],["ալուց",-1,1],["ելուց",-1,1],["ալու",-1,1],["ելու",-1,1],["աք",-1,1],["ցաք",57,1],["ացաք",58,1],["ացրիք",-1,1],["ացիք",-1,1],["եցիք",-1,1],["վեցիք",62,1],["անք",-1,1],["ցանք",64,1],["ացանք",65,1],["ացրինք",-1,1],["ացինք",-1,1],["եցինք",-1,1],["վեցինք",69,1]],s=[["որդ",-1,1],["ույթ",-1,1],["ուհի",-1,1],["ցի",-1,1],["իլ",-1,1],["ակ",-1,1],["յակ",5,1],["անակ",5,1],["իկ",-1,1],["ուկ",-1,1],["ան",-1,1],["պան",10,1],["ստան",10,1],["արան",10,1],["եղէն",-1,1],["յուն",-1,1],["ություն",15,1],["ածո",-1,1],["իչ",-1,1],["ուս",-1,1],["ուստ",-1,1],["գար",-1,1],["վոր",-1,1],["ավոր",22,1],["ոց",-1,1],["անօց",-1,1],["ու",-1,1],["ք",-1,1],["չեք",27,1],["իք",27,1],["ալիք",29,1],["անիք",29,1],["վածք",27,1],["ույք",27,1],["ենք",27,1],["ոնք",27,1],["ունք",27,1],["մունք",36,1],["իչք",27,1],["արք",27,1]],r=[["սա",-1,1],["վա",-1,1],["ամբ",-1,1],["դ",-1,1],["անդ",3,1],["ությանդ",4,1],["վանդ",4,1],["ոջդ",3,1],["երդ",3,1],["ներդ",8,1],["ուդ",3,1],["ը",-1,1],["անը",11,1],["ությանը",12,1],["վանը",12,1],["ոջը",11,1],["երը",11,1],["ները",16,1],["ի",-1,1],["վի",18,1],["երի",18,1],["ների",20,1],["անում",-1,1],["երում",-1,1],["ներում",23,1],["ն",-1,1],["ան",25,1],["ության",26,1],["վան",26,1],["ին",25,1],["երին",29,1],["ներին",30,1],["ությանն",25,1],["երն",25,1],["ներն",33,1],["ուն",25,1],["ոջ",-1,1],["ությանս",-1,1],["վանս",-1,1],["ոջս",-1,1],["ով",-1,1],["անով",40,1],["վով",40,1],["երով",40,1],["ներով",43,1],["եր",-1,1],["ներ",45,1],["ց",-1,1],["ից",47,1],["վանից",48,1],["ոջից",48,1],["վից",48,1],["երից",48,1],["ներից",52,1],["ցից",48,1],["ոց",47,1],["ուց",47,1]],t=[209,4,128,0,18],n=0,e=0;function m(){o.ket=o.cursor,0!=o.find_among_b(r)&&(o.bra=o.cursor,n<=o.cursor)&&o.slice_del()}this.stem=function(){var r,i;return e=o.limit,n=o.limit,r=o.cursor,o.go_out_grouping(t,1377,1413)&&(o.cursor++,e=o.cursor,o.go_in_grouping(t,1377,1413))&&(o.cursor++,o.go_out_grouping(t,1377,1413))&&(o.cursor++,o.go_in_grouping(t,1377,1413))&&(o.cursor++,n=o.cursor),o.cursor=r,o.limit_backward=o.cursor,o.cursor=o.limit,!(o.cursor=this.limit)return false;var s=this.current.charCodeAt(this.cursor);if(s>i||s>>3]&1<<(s&7))==0)return false;this.cursor++;return true};this.in_grouping_b=function(r,t,i){if(this.cursor<=this.limit_backward)return false;var s=this.current.charCodeAt(this.cursor-1);if(s>i||s>>3]&1<<(s&7))==0)return false;this.cursor--;return true};this.out_grouping=function(r,t,i){if(this.cursor>=this.limit)return false;var s=this.current.charCodeAt(this.cursor);if(s>i||s>>3]&1<<(s&7))==0){this.cursor++;return true}return false};this.out_grouping_b=function(r,t,i){if(this.cursor<=this.limit_backward)return false;var s=this.current.charCodeAt(this.cursor-1);if(s>i||s>>3]&1<<(s&7))==0){this.cursor--;return true}return false};this.eq_s=function(r){if(this.limit-this.cursor>>1);var a=0;var f=h0)break;if(i==t)break;if(n)break;n=true}}do{var l=r[t];if(h>=l[0].length){this.cursor=s+l[0].length;if(l.length<4)return l[2];var v=l[3](this);this.cursor=s+l[0].length;if(v)return l[2]}t=l[1]}while(t>=0);return 0};this.find_among_b=function(r){var t=0;var i=r.length;var s=this.cursor;var e=this.limit_backward;var h=0;var u=0;var n=false;while(true){var c=t+(i-t>>1);var a=0;var f=h=0;o--){if(s-f==e){a=-1;break}a=this.current.charCodeAt(s-1-f)-l[0].charCodeAt(o);if(a!=0)break;f++}if(a<0){i=c;u=f}else{t=c;h=f}if(i-t<=1){if(t>0)break;if(i==t)break;if(n)break;n=true}}do{var l=r[t];if(h>=l[0].length){this.cursor=s-l[0].length;if(l.length<4)return l[2];var v=l[3](this);this.cursor=s-l[0].length;if(v)return l[2]}t=l[1]}while(t>=0);return 0};this.replace_s=function(r,t,i){var s=i.length-(t-r);this.current=this.current.slice(0,r)+i+this.current.slice(t);this.limit+=s;if(this.cursor>=t)this.cursor+=s;else if(this.cursor>r)this.cursor=r;return s};this.slice_check=function(){if(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>this.current.length){return false}return true};this.slice_from=function(r){var t=false;if(this.slice_check()){this.replace_s(this.bra,this.ket,r);t=true}return t};this.slice_del=function(){return this.slice_from("")};this.insert=function(r,t,i){var s=this.replace_s(r,t,i);if(r<=this.bra)this.bra+=s;if(r<=this.ket)this.ket+=s};this.slice_to=function(){var r="";if(this.slice_check()){r=this.current.slice(this.bra,this.ket)}return r};this.assign_to=function(){return this.current.slice(0,this.limit)}}; \ No newline at end of file +BaseStemmer=function(){this.current="",this.cursor=0,this.limit=0,this.limit_backward=0,this.bra=0,this.ket=0,this.setCurrent=function(t){this.current=t,this.cursor=0,this.limit=this.current.length,this.limit_backward=0,this.bra=this.cursor,this.ket=this.limit},this.getCurrent=function(){return this.current},this.copy_from=function(t){this.current=t.current,this.cursor=t.cursor,this.limit=t.limit,this.limit_backward=t.limit_backward,this.bra=t.bra,this.ket=t.ket},this.in_grouping=function(t,r,i){return!(this.cursor>=this.limit||i<(i=this.current.charCodeAt(this.cursor))||i>>3]&1<<(7&i))||(this.cursor++,0))},this.go_in_grouping=function(t,r,i){for(;this.cursor>>3]&1<<(7&s)))return!0;this.cursor++}return!1},this.in_grouping_b=function(t,r,i){return!(this.cursor<=this.limit_backward||i<(i=this.current.charCodeAt(this.cursor-1))||i>>3]&1<<(7&i))||(this.cursor--,0))},this.go_in_grouping_b=function(t,r,i){for(;this.cursor>this.limit_backward;){var s=this.current.charCodeAt(this.cursor-1);if(i>>3]&1<<(7&s)))return!0;this.cursor--}return!1},this.out_grouping=function(t,r,i){return!(this.cursor>=this.limit)&&(i<(i=this.current.charCodeAt(this.cursor))||i>>3]&1<<(7&i)))&&(this.cursor++,!0)},this.go_out_grouping=function(t,r,i){for(;this.cursor>>3]&1<<(7&s)))return!0;this.cursor++}return!1},this.out_grouping_b=function(t,r,i){return!(this.cursor<=this.limit_backward)&&(i<(i=this.current.charCodeAt(this.cursor-1))||i>>3]&1<<(7&i)))&&(this.cursor--,!0)},this.go_out_grouping_b=function(t,r,i){for(;this.cursor>this.limit_backward;){var s=this.current.charCodeAt(this.cursor-1);if(s<=i&&r<=s&&0!=(t[(s-=r)>>>3]&1<<(7&s)))return!0;this.cursor--}return!1},this.eq_s=function(t){return!(this.limit-this.cursor>>1),o=0,a=e=(l=t[r])[0].length){if(this.cursor=s+l[0].length,l.length<4)return l[2];var g=l[3](this);if(this.cursor=s+l[0].length,g)return l[2]}}while(0<=(r=l[1]));return 0},this.find_among_b=function(t){for(var r=0,i=t.length,s=this.cursor,h=this.limit_backward,e=0,n=0,c=!1;;){for(var u,o=r+(i-r>>1),a=0,l=e=(u=t[r])[0].length){if(this.cursor=s-u[0].length,u.length<4)return u[2];var g=u[3](this);if(this.cursor=s-u[0].length,g)return u[2]}}while(0<=(r=u[1]));return 0},this.replace_s=function(t,r,i){var s=i.length-(r-t);return this.current=this.current.slice(0,t)+i+this.current.slice(r),this.limit+=s,this.cursor>=r?this.cursor+=s:this.cursor>t&&(this.cursor=t),s},this.slice_check=function(){return!(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>this.current.length)},this.slice_from=function(t){var r=!1;return this.slice_check()&&(this.replace_s(this.bra,this.ket,t),r=!0),r},this.slice_del=function(){return this.slice_from("")},this.insert=function(t,r,i){r=this.replace_s(t,r,i);t<=this.bra&&(this.bra+=r),t<=this.ket&&(this.ket+=r)},this.slice_to=function(){var t="";return t=this.slice_check()?this.current.slice(this.bra,this.ket):t},this.assign_to=function(){return this.current.slice(0,this.limit)}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/basque-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/basque-stemmer.js new file mode 100644 index 000000000..3e1c4337a --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/basque-stemmer.js @@ -0,0 +1 @@ +var BasqueStemmer=function(){var o=new BaseStemmer,u=[["idea",-1,1],["bidea",0,1],["kidea",0,1],["pidea",0,1],["kundea",-1,1],["galea",-1,1],["tailea",-1,1],["tzailea",-1,1],["gunea",-1,1],["kunea",-1,1],["tzaga",-1,1],["gaia",-1,1],["aldia",-1,1],["taldia",12,1],["karia",-1,1],["garria",-1,2],["karria",-1,1],["ka",-1,1],["tzaka",17,1],["la",-1,1],["mena",-1,1],["pena",-1,1],["kina",-1,1],["ezina",-1,1],["tezina",23,1],["kuna",-1,1],["tuna",-1,1],["kizuna",-1,1],["era",-1,1],["bera",28,1],["arabera",29,-1],["kera",28,1],["pera",28,1],["orra",-1,1],["korra",33,1],["dura",-1,1],["gura",-1,1],["kura",-1,1],["tura",-1,1],["eta",-1,1],["keta",39,1],["gailua",-1,1],["eza",-1,1],["erreza",42,1],["tza",-1,2],["gaitza",44,1],["kaitza",44,1],["kuntza",44,1],["ide",-1,1],["bide",48,1],["kide",48,1],["pide",48,1],["kunde",-1,1],["tzake",-1,1],["tzeke",-1,1],["le",-1,1],["gale",55,1],["taile",55,1],["tzaile",55,1],["gune",-1,1],["kune",-1,1],["tze",-1,1],["atze",61,1],["gai",-1,1],["aldi",-1,1],["taldi",64,1],["ki",-1,1],["ari",-1,1],["kari",67,1],["lari",67,1],["tari",67,1],["etari",70,1],["garri",-1,2],["karri",-1,1],["arazi",-1,1],["tarazi",74,1],["an",-1,1],["ean",76,1],["rean",77,1],["kan",76,1],["etan",76,1],["atseden",-1,-1],["men",-1,1],["pen",-1,1],["kin",-1,1],["rekin",84,1],["ezin",-1,1],["tezin",86,1],["tun",-1,1],["kizun",-1,1],["go",-1,1],["ago",90,1],["tio",-1,1],["dako",-1,1],["or",-1,1],["kor",94,1],["tzat",-1,1],["du",-1,1],["gailu",-1,1],["tu",-1,1],["atu",99,1],["aldatu",100,1],["tatu",100,1],["baditu",99,-1],["ez",-1,1],["errez",104,1],["tzez",104,1],["gaitz",-1,1],["kaitz",-1,1]],r=[["ada",-1,1],["kada",0,1],["anda",-1,1],["denda",-1,1],["gabea",-1,1],["kabea",-1,1],["aldea",-1,1],["kaldea",6,1],["taldea",6,1],["ordea",-1,1],["zalea",-1,1],["tzalea",10,1],["gilea",-1,1],["emea",-1,1],["kumea",-1,1],["nea",-1,1],["enea",15,1],["zionea",15,1],["unea",15,1],["gunea",18,1],["pea",-1,1],["aurrea",-1,1],["tea",-1,1],["kotea",22,1],["artea",22,1],["ostea",22,1],["etxea",-1,1],["ga",-1,1],["anga",27,1],["gaia",-1,1],["aldia",-1,1],["taldia",30,1],["handia",-1,1],["mendia",-1,1],["geia",-1,1],["egia",-1,1],["degia",35,1],["tegia",35,1],["nahia",-1,1],["ohia",-1,1],["kia",-1,1],["tokia",40,1],["oia",-1,1],["koia",42,1],["aria",-1,1],["karia",44,1],["laria",44,1],["taria",44,1],["eria",-1,1],["keria",48,1],["teria",48,1],["garria",-1,2],["larria",-1,1],["kirria",-1,1],["duria",-1,1],["asia",-1,1],["tia",-1,1],["ezia",-1,1],["bizia",-1,1],["ontzia",-1,1],["ka",-1,1],["joka",60,3],["aurka",60,-1],["ska",60,1],["xka",60,1],["zka",60,1],["gibela",-1,1],["gela",-1,1],["kaila",-1,1],["skila",-1,1],["tila",-1,1],["ola",-1,1],["na",-1,1],["kana",72,1],["ena",72,1],["garrena",74,1],["gerrena",74,1],["urrena",74,1],["zaina",72,1],["tzaina",78,1],["kina",72,1],["mina",72,1],["garna",72,1],["una",72,1],["duna",83,1],["asuna",83,1],["tasuna",85,1],["ondoa",-1,1],["kondoa",87,1],["ngoa",-1,1],["zioa",-1,1],["koa",-1,1],["takoa",91,1],["zkoa",91,1],["noa",-1,1],["zinoa",94,1],["aroa",-1,1],["taroa",96,1],["zaroa",96,1],["eroa",-1,1],["oroa",-1,1],["osoa",-1,1],["toa",-1,1],["ttoa",102,1],["ztoa",102,1],["txoa",-1,1],["tzoa",-1,1],["ñoa",-1,1],["ra",-1,1],["ara",108,1],["dara",109,1],["liara",109,1],["tiara",109,1],["tara",109,1],["etara",113,1],["tzara",109,1],["bera",108,1],["kera",108,1],["pera",108,1],["ora",108,2],["tzarra",108,1],["korra",108,1],["tra",108,1],["sa",-1,1],["osa",123,1],["ta",-1,1],["eta",125,1],["keta",126,1],["sta",125,1],["dua",-1,1],["mendua",129,1],["ordua",129,1],["lekua",-1,1],["burua",-1,1],["durua",-1,1],["tsua",-1,1],["tua",-1,1],["mentua",136,1],["estua",136,1],["txua",-1,1],["zua",-1,1],["tzua",140,1],["za",-1,1],["eza",142,1],["eroza",142,1],["tza",142,2],["koitza",145,1],["antza",145,1],["gintza",145,1],["kintza",145,1],["kuntza",145,1],["gabe",-1,1],["kabe",-1,1],["kide",-1,1],["alde",-1,1],["kalde",154,1],["talde",154,1],["orde",-1,1],["ge",-1,1],["zale",-1,1],["tzale",159,1],["gile",-1,1],["eme",-1,1],["kume",-1,1],["ne",-1,1],["zione",164,1],["une",164,1],["gune",166,1],["pe",-1,1],["aurre",-1,1],["te",-1,1],["kote",170,1],["arte",170,1],["oste",170,1],["etxe",-1,1],["gai",-1,1],["di",-1,1],["aldi",176,1],["taldi",177,1],["geldi",176,-1],["handi",176,1],["mendi",176,1],["gei",-1,1],["egi",-1,1],["degi",183,1],["tegi",183,1],["nahi",-1,1],["ohi",-1,1],["ki",-1,1],["toki",188,1],["oi",-1,1],["goi",190,1],["koi",190,1],["ari",-1,1],["kari",193,1],["lari",193,1],["tari",193,1],["garri",-1,2],["larri",-1,1],["kirri",-1,1],["duri",-1,1],["asi",-1,1],["ti",-1,1],["ontzi",-1,1],["ñi",-1,1],["ak",-1,1],["ek",-1,1],["tarik",-1,1],["gibel",-1,1],["ail",-1,1],["kail",209,1],["kan",-1,1],["tan",-1,1],["etan",212,1],["en",-1,4],["ren",214,2],["garren",215,1],["gerren",215,1],["urren",215,1],["ten",214,4],["tzen",214,4],["zain",-1,1],["tzain",221,1],["kin",-1,1],["min",-1,1],["dun",-1,1],["asun",-1,1],["tasun",226,1],["aizun",-1,1],["ondo",-1,1],["kondo",229,1],["go",-1,1],["ngo",231,1],["zio",-1,1],["ko",-1,1],["trako",234,5],["tako",234,1],["etako",236,1],["eko",234,1],["tariko",234,1],["sko",234,1],["tuko",234,1],["minutuko",241,6],["zko",234,1],["no",-1,1],["zino",244,1],["ro",-1,1],["aro",246,1],["igaro",247,-1],["taro",247,1],["zaro",247,1],["ero",246,1],["giro",246,1],["oro",246,1],["oso",-1,1],["to",-1,1],["tto",255,1],["zto",255,1],["txo",-1,1],["tzo",-1,1],["gintzo",259,1],["ño",-1,1],["zp",-1,1],["ar",-1,1],["dar",263,1],["behar",263,1],["zehar",263,-1],["liar",263,1],["tiar",263,1],["tar",263,1],["tzar",263,1],["or",-1,2],["kor",271,1],["os",-1,1],["ket",-1,1],["du",-1,1],["mendu",275,1],["ordu",275,1],["leku",-1,1],["buru",-1,2],["duru",-1,1],["tsu",-1,1],["tu",-1,1],["tatu",282,4],["mentu",282,1],["estu",282,1],["txu",-1,1],["zu",-1,1],["tzu",287,1],["gintzu",288,1],["z",-1,1],["ez",290,1],["eroz",290,1],["tz",290,1],["koitz",293,1]],n=[["zlea",-1,2],["keria",-1,1],["la",-1,1],["era",-1,1],["dade",-1,1],["tade",-1,1],["date",-1,1],["tate",-1,1],["gi",-1,1],["ki",-1,1],["ik",-1,1],["lanik",10,1],["rik",10,1],["larik",12,1],["ztik",10,1],["go",-1,1],["ro",-1,1],["ero",16,1],["to",-1,1]],k=[17,65,16],g=0,s=0,z=0;function l(){return z<=o.cursor}function d(){return g<=o.cursor}function c(){var a;if(o.ket=o.cursor,0!=(a=o.find_among_b(r))){switch(o.bra=o.cursor,a){case 1:if(!l())return;if(o.slice_del())break;return;case 2:if(!d())return;if(o.slice_del())break;return;case 3:if(o.slice_from("jok"))break;return;case 4:if(!(s<=o.cursor))return;if(o.slice_del())break;return;case 5:if(o.slice_from("tra"))break;return;case 6:if(o.slice_from("minutu"))break;return}return 1}}this.stem=function(){z=o.limit,s=o.limit,g=o.limit;var a=o.cursor;a:{r:{var r=o.cursor;i:if(o.in_grouping(k,97,117)){var i=o.cursor;if(!o.out_grouping(k,97,117)||!o.go_out_grouping(k,97,117)){if(o.cursor=i,!o.in_grouping(k,97,117))break i;if(!o.go_in_grouping(k,97,117))break i}o.cursor++;break r}if(o.cursor=r,!o.out_grouping(k,97,117))break a;i=o.cursor;if(o.out_grouping(k,97,117)&&o.go_out_grouping(k,97,117));else{if(o.cursor=i,!o.in_grouping(k,97,117))break a;if(o.cursor>=o.limit)break a}o.cursor++}z=o.cursor}for(o.cursor=a,a=o.cursor,o.go_out_grouping(k,97,117)&&(o.cursor++,o.go_in_grouping(k,97,117))&&(o.cursor++,s=o.cursor,o.go_out_grouping(k,97,117))&&(o.cursor++,o.go_in_grouping(k,97,117))&&(o.cursor++,g=o.cursor),o.cursor=a,o.limit_backward=o.cursor,o.cursor=o.limit;;){var e=o.limit-o.cursor;if(!(()=>{var a;if(o.ket=o.cursor,0!=(a=o.find_among_b(u))){switch(o.bra=o.cursor,a){case 1:if(!l())return;if(o.slice_del())break;return;case 2:if(!d())return;if(o.slice_del())break;return}return 1}})()){o.cursor=o.limit-e;break}}for(;;){var t=o.limit-o.cursor;if(!c()){o.cursor=o.limit-t;break}}a=o.limit-o.cursor;return(()=>{var a;if(o.ket=o.cursor,0!=(a=o.find_among_b(n)))switch(o.bra=o.cursor,a){case 1:if(!l())return;if(o.slice_del())break;return;case 2:if(o.slice_from("z"))break}})(),o.cursor=o.limit-a,o.cursor=o.limit_backward,!0},this.stemWord=function(a){return o.setCurrent(a),this.stem(),o.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/catalan-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/catalan-stemmer.js new file mode 100644 index 000000000..75788216a --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/catalan-stemmer.js @@ -0,0 +1 @@ +var CatalanStemmer=function(){var e=new BaseStemmer,r=[["",-1,7],["·",0,6],["à",0,1],["á",0,1],["è",0,2],["é",0,2],["ì",0,3],["í",0,3],["ï",0,3],["ò",0,4],["ó",0,4],["ú",0,5],["ü",0,5]],a=[["la",-1,1],["-la",0,1],["sela",0,1],["le",-1,1],["me",-1,1],["-me",4,1],["se",-1,1],["-te",-1,1],["hi",-1,1],["'hi",8,1],["li",-1,1],["-li",10,1],["'l",-1,1],["'m",-1,1],["-m",-1,1],["'n",-1,1],["-n",-1,1],["ho",-1,1],["'ho",17,1],["lo",-1,1],["selo",19,1],["'s",-1,1],["las",-1,1],["selas",22,1],["les",-1,1],["-les",24,1],["'ls",-1,1],["-ls",-1,1],["'ns",-1,1],["-ns",-1,1],["ens",-1,1],["los",-1,1],["selos",31,1],["nos",-1,1],["-nos",33,1],["vos",-1,1],["us",-1,1],["-us",36,1],["'t",-1,1]],t=[["ica",-1,4],["lógica",0,3],["enca",-1,1],["ada",-1,2],["ancia",-1,1],["encia",-1,1],["ència",-1,1],["ícia",-1,1],["logia",-1,3],["inia",-1,1],["íinia",9,1],["eria",-1,1],["ària",-1,1],["atòria",-1,1],["alla",-1,1],["ella",-1,1],["ívola",-1,1],["ima",-1,1],["íssima",17,1],["quíssima",18,5],["ana",-1,1],["ina",-1,1],["era",-1,1],["sfera",22,1],["ora",-1,1],["dora",24,1],["adora",25,1],["adura",-1,1],["esa",-1,1],["osa",-1,1],["assa",-1,1],["essa",-1,1],["issa",-1,1],["eta",-1,1],["ita",-1,1],["ota",-1,1],["ista",-1,1],["ialista",36,1],["ionista",36,1],["iva",-1,1],["ativa",39,1],["nça",-1,1],["logía",-1,3],["ic",-1,4],["ístic",43,1],["enc",-1,1],["esc",-1,1],["ud",-1,1],["atge",-1,1],["ble",-1,1],["able",49,1],["ible",49,1],["isme",-1,1],["ialisme",52,1],["ionisme",52,1],["ivisme",52,1],["aire",-1,1],["icte",-1,1],["iste",-1,1],["ici",-1,1],["íci",-1,1],["logi",-1,3],["ari",-1,1],["tori",-1,1],["al",-1,1],["il",-1,1],["all",-1,1],["ell",-1,1],["ívol",-1,1],["isam",-1,1],["issem",-1,1],["ìssem",-1,1],["íssem",-1,1],["íssim",-1,1],["quíssim",73,5],["amen",-1,1],["ìssin",-1,1],["ar",-1,1],["ificar",77,1],["egar",77,1],["ejar",77,1],["itar",77,1],["itzar",77,1],["fer",-1,1],["or",-1,1],["dor",84,1],["dur",-1,1],["doras",-1,1],["ics",-1,4],["lógics",88,3],["uds",-1,1],["nces",-1,1],["ades",-1,2],["ancies",-1,1],["encies",-1,1],["ències",-1,1],["ícies",-1,1],["logies",-1,3],["inies",-1,1],["ínies",-1,1],["eries",-1,1],["àries",-1,1],["atòries",-1,1],["bles",-1,1],["ables",103,1],["ibles",103,1],["imes",-1,1],["íssimes",106,1],["quíssimes",107,5],["formes",-1,1],["ismes",-1,1],["ialismes",110,1],["ines",-1,1],["eres",-1,1],["ores",-1,1],["dores",114,1],["idores",115,1],["dures",-1,1],["eses",-1,1],["oses",-1,1],["asses",-1,1],["ictes",-1,1],["ites",-1,1],["otes",-1,1],["istes",-1,1],["ialistes",124,1],["ionistes",124,1],["iques",-1,4],["lógiques",127,3],["ives",-1,1],["atives",129,1],["logíes",-1,3],["allengües",-1,1],["icis",-1,1],["ícis",-1,1],["logis",-1,3],["aris",-1,1],["toris",-1,1],["ls",-1,1],["als",138,1],["ells",138,1],["ims",-1,1],["íssims",141,1],["quíssims",142,5],["ions",-1,1],["cions",144,1],["acions",145,2],["esos",-1,1],["osos",-1,1],["assos",-1,1],["issos",-1,1],["ers",-1,1],["ors",-1,1],["dors",152,1],["adors",153,1],["idors",153,1],["ats",-1,1],["itats",156,1],["bilitats",157,1],["ivitats",157,1],["ativitats",159,1],["ïtats",156,1],["ets",-1,1],["ants",-1,1],["ents",-1,1],["ments",164,1],["aments",165,1],["ots",-1,1],["uts",-1,1],["ius",-1,1],["trius",169,1],["atius",169,1],["ès",-1,1],["és",-1,1],["ís",-1,1],["dís",174,1],["ós",-1,1],["itat",-1,1],["bilitat",177,1],["ivitat",177,1],["ativitat",179,1],["ïtat",-1,1],["et",-1,1],["ant",-1,1],["ent",-1,1],["ient",184,1],["ment",184,1],["ament",186,1],["isament",187,1],["ot",-1,1],["isseu",-1,1],["ìsseu",-1,1],["ísseu",-1,1],["triu",-1,1],["íssiu",-1,1],["atiu",-1,1],["ó",-1,1],["ió",196,1],["ció",197,1],["ació",198,1]],n=[["aba",-1,1],["esca",-1,1],["isca",-1,1],["ïsca",-1,1],["ada",-1,1],["ida",-1,1],["uda",-1,1],["ïda",-1,1],["ia",-1,1],["aria",8,1],["iria",8,1],["ara",-1,1],["iera",-1,1],["ira",-1,1],["adora",-1,1],["ïra",-1,1],["ava",-1,1],["ixa",-1,1],["itza",-1,1],["ía",-1,1],["aría",19,1],["ería",19,1],["iría",19,1],["ïa",-1,1],["isc",-1,1],["ïsc",-1,1],["ad",-1,1],["ed",-1,1],["id",-1,1],["ie",-1,1],["re",-1,1],["dre",30,1],["ase",-1,1],["iese",-1,1],["aste",-1,1],["iste",-1,1],["ii",-1,1],["ini",-1,1],["esqui",-1,1],["eixi",-1,1],["itzi",-1,1],["am",-1,1],["em",-1,1],["arem",42,1],["irem",42,1],["àrem",42,1],["írem",42,1],["àssem",42,1],["éssem",42,1],["iguem",42,1],["ïguem",42,1],["avem",42,1],["àvem",42,1],["ávem",42,1],["irìem",42,1],["íem",42,1],["aríem",55,1],["iríem",55,1],["assim",-1,1],["essim",-1,1],["issim",-1,1],["àssim",-1,1],["èssim",-1,1],["éssim",-1,1],["íssim",-1,1],["ïm",-1,1],["an",-1,1],["aban",66,1],["arian",66,1],["aran",66,1],["ieran",66,1],["iran",66,1],["ían",66,1],["arían",72,1],["erían",72,1],["irían",72,1],["en",-1,1],["ien",76,1],["arien",77,1],["irien",77,1],["aren",76,1],["eren",76,1],["iren",76,1],["àren",76,1],["ïren",76,1],["asen",76,1],["iesen",76,1],["assen",76,1],["essen",76,1],["issen",76,1],["éssen",76,1],["ïssen",76,1],["esquen",76,1],["isquen",76,1],["ïsquen",76,1],["aven",76,1],["ixen",76,1],["eixen",96,1],["ïxen",76,1],["ïen",76,1],["in",-1,1],["inin",100,1],["sin",100,1],["isin",102,1],["assin",102,1],["essin",102,1],["issin",102,1],["ïssin",102,1],["esquin",100,1],["eixin",100,1],["aron",-1,1],["ieron",-1,1],["arán",-1,1],["erán",-1,1],["irán",-1,1],["iïn",-1,1],["ado",-1,1],["ido",-1,1],["ando",-1,2],["iendo",-1,1],["io",-1,1],["ixo",-1,1],["eixo",121,1],["ïxo",-1,1],["itzo",-1,1],["ar",-1,1],["tzar",125,1],["er",-1,1],["eixer",127,1],["ir",-1,1],["ador",-1,1],["as",-1,1],["abas",131,1],["adas",131,1],["idas",131,1],["aras",131,1],["ieras",131,1],["ías",131,1],["arías",137,1],["erías",137,1],["irías",137,1],["ids",-1,1],["es",-1,1],["ades",142,1],["ides",142,1],["udes",142,1],["ïdes",142,1],["atges",142,1],["ies",142,1],["aries",148,1],["iries",148,1],["ares",142,1],["ires",142,1],["adores",142,1],["ïres",142,1],["ases",142,1],["ieses",142,1],["asses",142,1],["esses",142,1],["isses",142,1],["ïsses",142,1],["ques",142,1],["esques",161,1],["ïsques",161,1],["aves",142,1],["ixes",142,1],["eixes",165,1],["ïxes",142,1],["ïes",142,1],["abais",-1,1],["arais",-1,1],["ierais",-1,1],["íais",-1,1],["aríais",172,1],["eríais",172,1],["iríais",172,1],["aseis",-1,1],["ieseis",-1,1],["asteis",-1,1],["isteis",-1,1],["inis",-1,1],["sis",-1,1],["isis",181,1],["assis",181,1],["essis",181,1],["issis",181,1],["ïssis",181,1],["esquis",-1,1],["eixis",-1,1],["itzis",-1,1],["áis",-1,1],["aréis",-1,1],["eréis",-1,1],["iréis",-1,1],["ams",-1,1],["ados",-1,1],["idos",-1,1],["amos",-1,1],["ábamos",197,1],["áramos",197,1],["iéramos",197,1],["íamos",197,1],["aríamos",201,1],["eríamos",201,1],["iríamos",201,1],["aremos",-1,1],["eremos",-1,1],["iremos",-1,1],["ásemos",-1,1],["iésemos",-1,1],["imos",-1,1],["adors",-1,1],["ass",-1,1],["erass",212,1],["ess",-1,1],["ats",-1,1],["its",-1,1],["ents",-1,1],["às",-1,1],["aràs",218,1],["iràs",218,1],["arás",-1,1],["erás",-1,1],["irás",-1,1],["és",-1,1],["arés",224,1],["ís",-1,1],["iïs",-1,1],["at",-1,1],["it",-1,1],["ant",-1,1],["ent",-1,1],["int",-1,1],["ut",-1,1],["ït",-1,1],["au",-1,1],["erau",235,1],["ieu",-1,1],["ineu",-1,1],["areu",-1,1],["ireu",-1,1],["àreu",-1,1],["íreu",-1,1],["asseu",-1,1],["esseu",-1,1],["eresseu",244,1],["àsseu",-1,1],["ésseu",-1,1],["igueu",-1,1],["ïgueu",-1,1],["àveu",-1,1],["áveu",-1,1],["itzeu",-1,1],["ìeu",-1,1],["irìeu",253,1],["íeu",-1,1],["aríeu",255,1],["iríeu",255,1],["assiu",-1,1],["issiu",-1,1],["àssiu",-1,1],["èssiu",-1,1],["éssiu",-1,1],["íssiu",-1,1],["ïu",-1,1],["ix",-1,1],["eix",265,1],["ïx",-1,1],["itz",-1,1],["ià",-1,1],["arà",-1,1],["irà",-1,1],["itzà",-1,1],["ará",-1,1],["erá",-1,1],["irá",-1,1],["irè",-1,1],["aré",-1,1],["eré",-1,1],["iré",-1,1],["í",-1,1],["iï",-1,1],["ió",-1,1]],o=[["a",-1,1],["e",-1,1],["i",-1,1],["ïn",-1,1],["o",-1,1],["ir",-1,1],["s",-1,1],["is",6,1],["os",6,1],["ïs",6,1],["it",-1,1],["eu",-1,1],["iu",-1,1],["iqu",-1,2],["itz",-1,1],["à",-1,1],["á",-1,1],["é",-1,1],["ì",-1,1],["í",-1,1],["ï",-1,1],["ó",-1,1]],u=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,129,81,6,10],c=0,m=0;function l(){return m<=e.cursor}function d(){return c<=e.cursor}this.stem=function(){m=e.limit,c=e.limit,s=e.cursor,e.go_out_grouping(u,97,252)&&(e.cursor++,e.go_in_grouping(u,97,252))&&(e.cursor++,m=e.cursor,e.go_out_grouping(u,97,252))&&(e.cursor++,e.go_in_grouping(u,97,252))&&(e.cursor++,c=e.cursor),e.cursor=s,e.limit_backward=e.cursor,e.cursor=e.limit;var s=e.limit-e.cursor,s=(e.ket=e.cursor,0!=e.find_among_b(a)&&(e.bra=e.cursor,l())&&e.slice_del(),e.cursor=e.limit-s,e.limit-e.cursor),i=e.limit-e.cursor,i=((()=>{var s;if(e.ket=e.cursor,0!=(s=e.find_among_b(t))){switch(e.bra=e.cursor,s){case 1:if(!l())return;if(e.slice_del())break;return;case 2:if(!d())return;if(e.slice_del())break;return;case 3:if(!d())return;if(e.slice_from("log"))break;return;case 4:if(!d())return;if(e.slice_from("ic"))break;return;case 5:if(!l())return;if(e.slice_from("c"))break;return}return 1}})()||(e.cursor=e.limit-i,(()=>{var s;if(e.ket=e.cursor,0!=(s=e.find_among_b(n))){switch(e.bra=e.cursor,s){case 1:if(!l())return;if(e.slice_del())break;return;case 2:if(!d())return;if(e.slice_del())break;return}}})()),e.cursor=e.limit-s,e.limit-e.cursor),s=((()=>{var s;if(e.ket=e.cursor,0!=(s=e.find_among_b(o)))switch(e.bra=e.cursor,s){case 1:if(!l())return;if(e.slice_del())break;return;case 2:if(!l())return;if(e.slice_from("ic"))break}})(),e.cursor=e.limit-i,e.cursor=e.limit_backward,e.cursor);return(()=>{for(var s;;){var i=e.cursor;s:{switch(e.bra=e.cursor,s=e.find_among(r),e.ket=e.cursor,s){case 1:if(e.slice_from("a"))break;return;case 2:if(e.slice_from("e"))break;return;case 3:if(e.slice_from("i"))break;return;case 4:if(e.slice_from("o"))break;return;case 5:if(e.slice_from("u"))break;return;case 6:if(e.slice_from("."))break;return;case 7:if(e.cursor>=e.limit)break s;e.cursor++}continue}e.cursor=i;break}})(),e.cursor=s,!0},this.stemWord=function(s){return e.setCurrent(s),this.stem(),e.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/danish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/danish-stemmer.js index f3fc60003..7a577f3eb 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/danish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/danish-stemmer.js @@ -1 +1 @@ -DanishStemmer=function(){var r=new BaseStemmer;var e=[["hed",-1,1],["ethed",0,1],["ered",-1,1],["e",-1,1],["erede",3,1],["ende",3,1],["erende",5,1],["ene",3,1],["erne",3,1],["ere",3,1],["en",-1,1],["heden",10,1],["eren",10,1],["er",-1,1],["heder",13,1],["erer",13,1],["s",-1,2],["heds",16,1],["es",16,1],["endes",18,1],["erendes",19,1],["enes",18,1],["ernes",18,1],["eres",18,1],["ens",16,1],["hedens",24,1],["erens",24,1],["ers",16,1],["ets",16,1],["erets",28,1],["et",-1,1],["eret",30,1]];var i=[["gd",-1,-1],["dt",-1,-1],["gt",-1,-1],["kt",-1,-1]];var s=[["ig",-1,1],["lig",0,1],["elig",1,1],["els",-1,1],["løst",-1,2]];var t=[119,223,119,1];var a=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128];var u=[239,254,42,3,0,0,0,0,0,0,0,0,0,0,0,0,16];var c=0;var l=0;var n="";function o(){l=r.limit;var e=r.cursor;{var i=r.cursor+3;if(i>r.limit){return false}r.cursor=i}c=r.cursor;r.cursor=e;r:while(true){var s=r.cursor;e:{if(!r.in_grouping(a,97,248)){break e}r.cursor=s;break r}r.cursor=s;if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(a,97,248)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}l=r.cursor;r:{if(!(ls.limit||(s.cursor=i,l=s.cursor,s.cursor=e,s.go_out_grouping(o,97,248)&&(s.cursor++,s.go_in_grouping(o,97,248))&&(s.cursor++,m=s.cursor,l<=m||(m=l))),s.cursor=r,s.limit_backward=s.cursor,s.cursor=s.limit,s.limit-s.cursor),e=((()=>{var r;if(!(s.cursor{var r,i=s.limit-s.cursor;if(s.ket=s.cursor,(!s.eq_s_b("st")||(s.bra=s.cursor,!s.eq_s_b("ig"))||s.slice_del())&&(s.cursor=s.limit-i,!(s.cursor=r.limit){break r}r.cursor++;break}continue}r.cursor=s;break}r.cursor=u;var a=r.cursor;r:{r.bra=r.cursor;if(!r.eq_s("y")){r.cursor=a;break r}r.ket=r.cursor;if(!r.slice_from("Y")){return false}}while(true){var t=r.cursor;r:{e:while(true){var o=r.cursor;i:{if(!r.in_grouping(c,97,232)){break i}r.bra=r.cursor;u:{var f=r.cursor;s:{if(!r.eq_s("i")){break s}r.ket=r.cursor;if(!r.in_grouping(c,97,232)){break s}if(!r.slice_from("I")){return false}break u}r.cursor=f;if(!r.eq_s("y")){break i}r.ket=r.cursor;if(!r.slice_from("Y")){return false}}r.cursor=o;break e}r.cursor=o;if(r.cursor>=r.limit){break r}r.cursor++}continue}r.cursor=t;break}return true}function _(){n=r.limit;l=r.limit;r:while(true){e:{if(!r.in_grouping(c,97,232)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(c,97,232)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}n=r.cursor;r:{if(!(n<3)){break r}n=3}r:while(true){e:{if(!r.in_grouping(c,97,232)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(c,97,232)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}l=r.cursor;return true}function m(){var e;while(true){var u=r.cursor;r:{r.bra=r.cursor;e=r.find_among(i);if(e==0){break r}r.ket=r.cursor;switch(e){case 1:if(!r.slice_from("y")){return false}break;case 2:if(!r.slice_from("i")){return false}break;case 3:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=u;break}return true}function v(){if(!(n<=r.cursor)){return false}return true}function g(){if(!(l<=r.cursor)){return false}return true}function d(){var e=r.limit-r.cursor;if(r.find_among_b(u)==0){return false}r.cursor=r.limit-e;r.ket=r.cursor;if(r.cursor<=r.limit_backward){return false}r.cursor--;r.bra=r.cursor;if(!r.slice_del()){return false}return true}function h(){b=false;r.ket=r.cursor;if(!r.eq_s_b("e")){return false}r.bra=r.cursor;if(!v()){return false}var e=r.limit-r.cursor;if(!r.out_grouping_b(c,97,232)){return false}r.cursor=r.limit-e;if(!r.slice_del()){return false}b=true;if(!d()){return false}return true}function w(){if(!v()){return false}var e=r.limit-r.cursor;if(!r.out_grouping_b(c,97,232)){return false}r.cursor=r.limit-e;{var i=r.limit-r.cursor;r:{if(!r.eq_s_b("gem")){break r}return false}r.cursor=r.limit-i}if(!r.slice_del()){return false}if(!d()){return false}return true}function p(){var e;var i=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(s);if(e==0){break r}r.bra=r.cursor;switch(e){case 1:if(!v()){break r}if(!r.slice_from("heid")){return false}break;case 2:if(!w()){break r}break;case 3:if(!v()){break r}if(!r.out_grouping_b(f,97,232)){break r}if(!r.slice_del()){return false}break}}r.cursor=r.limit-i;var u=r.limit-r.cursor;h();r.cursor=r.limit-u;var l=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("heid")){break r}r.bra=r.cursor;if(!g()){break r}{var n=r.limit-r.cursor;e:{if(!r.eq_s_b("c")){break e}break r}r.cursor=r.limit-n}if(!r.slice_del()){return false}r.ket=r.cursor;if(!r.eq_s_b("en")){break r}r.bra=r.cursor;if(!w()){break r}}r.cursor=r.limit-l;var k=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(a);if(e==0){break r}r.bra=r.cursor;switch(e){case 1:if(!g()){break r}if(!r.slice_del()){return false}e:{var _=r.limit-r.cursor;i:{r.ket=r.cursor;if(!r.eq_s_b("ig")){break i}r.bra=r.cursor;if(!g()){break i}{var m=r.limit-r.cursor;u:{if(!r.eq_s_b("e")){break u}break i}r.cursor=r.limit-m}if(!r.slice_del()){return false}break e}r.cursor=r.limit-_;if(!d()){break r}}break;case 2:if(!g()){break r}{var p=r.limit-r.cursor;e:{if(!r.eq_s_b("e")){break e}break r}r.cursor=r.limit-p}if(!r.slice_del()){return false}break;case 3:if(!g()){break r}if(!r.slice_del()){return false}if(!h()){break r}break;case 4:if(!g()){break r}if(!r.slice_del()){return false}break;case 5:if(!g()){break r}if(!b){break r}if(!r.slice_del()){return false}break}}r.cursor=r.limit-k;var q=r.limit-r.cursor;r:{if(!r.out_grouping_b(o,73,232)){break r}var y=r.limit-r.cursor;if(r.find_among_b(t)==0){break r}if(!r.out_grouping_b(c,97,232)){break r}r.cursor=r.limit-y;r.ket=r.cursor;if(r.cursor<=r.limit_backward){break r}r.cursor--;r.bra=r.cursor;if(!r.slice_del()){return false}}r.cursor=r.limit-q;return true}this.stem=function(){var e=r.cursor;k();r.cursor=e;var i=r.cursor;_();r.cursor=i;r.limit_backward=r.cursor;r.cursor=r.limit;p();r.cursor=r.limit_backward;var u=r.cursor;m();r.cursor=u;return true};this["stemWord"]=function(e){r.setCurrent(e);this.stem();return r.getCurrent()}}; \ No newline at end of file +var DutchStemmer=function(){var o=new BaseStemmer,a=[["a",-1,1],["e",-1,2],["o",-1,1],["u",-1,1],["à",-1,1],["á",-1,1],["â",-1,1],["ä",-1,1],["è",-1,2],["é",-1,2],["ê",-1,2],["eë",-1,3],["ië",-1,4],["ò",-1,1],["ó",-1,1],["ô",-1,1],["ö",-1,1],["ù",-1,1],["ú",-1,1],["û",-1,1],["ü",-1,1]],t=[["nde",-1,8],["en",-1,7],["s",-1,2],["'s",2,1],["es",2,4],["ies",4,3],["aus",2,6],["és",2,5]],e=[["de",-1,5],["ge",-1,2],["ische",-1,4],["je",-1,1],["lijke",-1,3],["le",-1,9],["ene",-1,10],["re",-1,8],["se",-1,7],["te",-1,6],["ieve",-1,11]],s=[["heid",-1,3],["fie",-1,7],["gie",-1,8],["atie",-1,1],["isme",-1,5],["ing",-1,5],["arij",-1,6],["erij",-1,5],["sel",-1,3],["rder",-1,4],["ster",-1,3],["iteit",-1,2],["dst",-1,10],["tst",-1,9]],c=[["end",-1,9],["atief",-1,2],["erig",-1,9],["achtig",-1,3],["ioneel",-1,1],["baar",-1,3],["laar",-1,5],["naar",-1,4],["raar",-1,6],["eriger",-1,9],["achtiger",-1,3],["lijker",-1,8],["tant",-1,7],["erigst",-1,9],["achtigst",-1,3],["lijkst",-1,8]],u=[["ig",-1,1],["iger",-1,1],["igst",-1,1]],f=[["ft",-1,2],["kt",-1,1],["pt",-1,3]],n=[["bb",-1,1],["cc",-1,2],["dd",-1,3],["ff",-1,4],["gg",-1,5],["hh",-1,6],["jj",-1,7],["kk",-1,8],["ll",-1,9],["mm",-1,10],["nn",-1,11],["pp",-1,12],["qq",-1,13],["rr",-1,14],["ss",-1,15],["tt",-1,16],["v",-1,4],["vv",16,17],["ww",-1,18],["xx",-1,19],["z",-1,15],["zz",20,20]],l=[["d",-1,1],["t",-1,2]],_=[["",-1,-1],["eft",0,1],["vaa",0,1],["val",0,1],["vali",3,-1],["vare",0,1]],m=[["ë",-1,1],["ï",-1,2]],b=[["ë",-1,1],["ï",-1,2]],k=[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120],d=[1,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,11,120,46,15],g=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,139,127,46,15],v=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,128,139,127,46,15],q=[17,65,208,1,0,0,0,0,0,0,0,0,0,0,0,128,139,127,46,15],w=!1,h=!1,p=0,j=0,z="";function x(){return j<=o.cursor}function C(){return p<=o.cursor}function S(){var r=o.limit-o.cursor,i=o.limit-o.cursor;return(o.in_grouping_b(v,97,252)||(o.cursor=o.limit-i,o.eq_s_b("ij")))&&(o.cursor=o.limit-r,1)}function B(){var r=o.limit-o.cursor,i=o.limit-o.cursor;return!o.eq_s_b("ij")&&(o.cursor=o.limit-i,o.out_grouping_b(v,97,252))&&(o.cursor=o.limit-r,1)}function D(){var r,i=o.limit-o.cursor;r:if(o.out_grouping_b(q,97,252)&&(o.ket=o.cursor,0!=(r=o.find_among_b(a))))switch(o.bra=o.cursor,r){case 1:var e=o.limit-o.cursor,s=o.limit-o.cursor;if(o.out_grouping_b(g,97,252)||(o.cursor=o.limit-s,!(o.cursor>o.limit_backward))){if(o.cursor=o.limit-e,""==(z=o.slice_to()))return;s=o.cursor;o.insert(o.cursor,o.cursor,z),o.cursor=s}break;case 2:var c=o.limit-o.cursor,e=o.limit-o.cursor;if(o.out_grouping_b(g,97,252)||(o.cursor=o.limit-e,!(o.cursor>o.limit_backward))){var u=o.limit-o.cursor;i:{var t=o.limit-o.cursor;if(!o.in_grouping_b(d,97,252)){if(o.cursor=o.limit-t,!o.in_grouping_b(k,101,235))break i;if(o.cursor>o.limit_backward)break i}break r}o.cursor=o.limit-u;t=o.limit-o.cursor;if(o.cursor<=o.limit_backward||(o.cursor--,!o.in_grouping_b(d,97,252))||!o.out_grouping_b(g,97,252)){if(o.cursor=o.limit-t,o.cursor=o.limit-c,""==(z=o.slice_to()))return;t=o.cursor;o.insert(o.cursor,o.cursor,z),o.cursor=t}}break;case 3:if(o.slice_from("eëe"))break;return;case 4:if(o.slice_from("iee"))break;return}o.cursor=o.limit-i}function W(){var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(e))){switch(o.bra=o.cursor,r){case 1:r:{var i=o.limit-o.cursor;if(o.eq_s_b("'t")){if(o.bra=o.cursor,o.slice_del())break r;return}if(o.cursor=o.limit-i,o.eq_s_b("et")&&(o.bra=o.cursor,x())&&B()){if(o.slice_del())break r;return}if(o.cursor=o.limit-i,o.eq_s_b("rnt")){if(o.bra=o.cursor,o.slice_from("rn"))break r;return}if(o.cursor=o.limit-i,o.eq_s_b("t")&&(o.bra=o.cursor,x())&&(()=>{var r,i=o.limit-o.cursor;return!(o.cursor<=o.limit_backward)&&(o.cursor--,r=o.limit-o.cursor,o.in_grouping_b(v,97,252)||(o.cursor=o.limit-r,o.eq_s_b("ij")))?(o.cursor=o.limit-i,1):void 0})()){if(o.slice_del())break r;return}if(o.cursor=o.limit-i,o.eq_s_b("ink")){if(o.bra=o.cursor,o.slice_from("ing"))break r;return}if(o.cursor=o.limit-i,o.eq_s_b("mp")){if(o.bra=o.cursor,o.slice_from("m"))break r;return}if(o.cursor=o.limit-i,o.eq_s_b("'")&&(o.bra=o.cursor,x())){if(o.slice_del())break r;return}if(o.cursor=o.limit-i,o.bra=o.cursor,!x())return;if(!B())return;if(!o.slice_del())return}break;case 2:if(!x())return;if(o.slice_from("g"))break;return;case 3:if(!x())return;if(o.slice_from("lijk"))break;return;case 4:if(!x())return;if(o.slice_from("isch"))break;return;case 5:if(!x())return;if(!B())return;if(o.slice_del())break;return;case 6:if(!x())return;if(o.slice_from("t"))break;return;case 7:if(!x())return;if(o.slice_from("s"))break;return;case 8:if(!x())return;if(o.slice_from("r"))break;return;case 9:if(!x())return;if(!o.slice_del())return;o.insert(o.cursor,o.cursor,"l"),D();break;case 10:if(!x())return;if(!B())return;if(!o.slice_del())return;o.insert(o.cursor,o.cursor,"en"),D();break;case 11:if(!x())return;if(!B())return;if(o.slice_from("ief"))break;return}return 1}}function y(){var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(l))&&(o.bra=o.cursor,x())&&B()){switch(r){case 1:var i=o.limit-o.cursor;if(o.eq_s_b("n")&&x())return;o.cursor=o.limit-i;r:{var e=o.limit-o.cursor;if(o.eq_s_b("in")&&!(o.cursor>o.limit_backward)){if(o.slice_from("n"))break r;return}if(o.cursor=o.limit-e,!o.slice_del())return}break;case 2:i=o.limit-o.cursor;if(o.eq_s_b("h")&&x())return;o.cursor=o.limit-i;i=o.limit-o.cursor;if(o.eq_s_b("en")&&!(o.cursor>o.limit_backward))return;if(o.cursor=o.limit-i,o.slice_del())break;return}return 1}}function A(){j=o.limit,p=o.limit;for(var r=o.cursor;o.out_grouping(v,97,252););for(var i=1;;){var e=o.cursor,s=o.cursor;if(!o.eq_s("ij")&&(o.cursor=s,!o.in_grouping(v,97,252))){o.cursor=e;break}i--}if(!(0{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(t))){switch(o.bra=o.cursor,r){case 1:if(o.slice_del())break;return;case 2:if(!x())return;var i=o.limit-o.cursor;if(o.eq_s_b("t")&&x())return;if(o.cursor=o.limit-i,!B())return;if(o.slice_del())break;return;case 3:if(!x())return;if(o.slice_from("ie"))break;return;case 4:r:{var e=o.limit-o.cursor,s=o.limit-o.cursor;if(o.eq_s_b("ar")&&x()&&B()){if(o.cursor=o.limit-s,!o.slice_del())return;D()}else{o.cursor=o.limit-e;s=o.limit-o.cursor;if(o.eq_s_b("er")&&x()&&B()){if(o.cursor=o.limit-s,o.slice_del())break r;return}if(o.cursor=o.limit-e,!x())return;if(!B())return;if(!o.slice_from("e"))return}}break;case 5:if(!x())return;if(o.slice_from("é"))break;return;case 6:if(!x())return;if(!S())return;if(o.slice_from("au"))break;return;case 7:r:{var c=o.limit-o.cursor;if(o.eq_s_b("hed")&&x()){if(o.bra=o.cursor,o.slice_from("heid"))break r;return}if(o.cursor=o.limit-c,o.eq_s_b("nd")){if(o.slice_del())break r;return}if(o.cursor=o.limit-c,o.eq_s_b("d")&&x()&&B()){if(o.bra=o.cursor,o.slice_del())break r;return}o.cursor=o.limit-c;var u=o.limit-o.cursor;if((o.eq_s_b("i")||(o.cursor=o.limit-u,o.eq_s_b("j")))&&S()){if(o.slice_del())break r;return}if(o.cursor=o.limit-c,!x())return;if(!B())return;if(!o.slice_del())return;D()}break;case 8:if(o.slice_from("nd"))break;return}return 1}})()&&(h=!0),o.cursor=o.limit-r,o.limit-o.cursor),r=(W()&&(h=!0),o.cursor=o.limit-r,o.limit-o.cursor),r=((()=>{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(s))){switch(o.bra=o.cursor,r){case 1:if(!x())return;if(o.slice_from("eer"))break;return;case 2:if(!x())return;if(!o.slice_del())return;D();break;case 3:if(!x())return;if(o.slice_del())break;return;case 4:if(o.slice_from("r"))break;return;case 5:r:{var i=o.limit-o.cursor;if(o.eq_s_b("ild")){if(o.slice_from("er"))break r;return}if(o.cursor=o.limit-i,!x())return;if(!o.slice_del())return;D()}break;case 6:if(!x())return;if(!B())return;if(o.slice_from("aar"))break;return;case 7:if(!C())return;if(!o.slice_del())return;o.insert(o.cursor,o.cursor,"f"),D();break;case 8:if(!C())return;if(!o.slice_del())return;o.insert(o.cursor,o.cursor,"g"),D();break;case 9:if(!x())return;if(!B())return;if(o.slice_from("t"))break;return;case 10:if(!x())return;if(!B())return;if(o.slice_from("d"))break;return}return 1}})()&&(h=!0),o.cursor=o.limit-r,o.limit-o.cursor),r=((()=>{r:{var r=o.limit-o.cursor;i:if(o.ket=o.cursor,0!=(i=o.find_among_b(c))){switch(o.bra=o.cursor,i){case 1:if(!x())break i;if(o.slice_from("ie"))break;return;case 2:if(!x())break i;if(o.slice_from("eer"))break;return;case 3:if(!x())break i;if(o.slice_del())break;return;case 4:if(!x())break i;if(!S())break i;if(o.slice_from("n"))break;return;case 5:if(!x())break i;if(!S())break i;if(o.slice_from("l"))break;return;case 6:if(!x())break i;if(!S())break i;if(o.slice_from("r"))break;return;case 7:if(!x())break i;if(o.slice_from("teer"))break;return;case 8:if(!x())break i;if(o.slice_from("lijk"))break;return;case 9:if(!x())break i;if(!B())break i;if(!o.slice_del())return;D()}break r}if(o.cursor=o.limit-r,o.ket=o.cursor,0==o.find_among_b(u))return;if(o.bra=o.cursor,!x())return;var i=o.limit-o.cursor;if(o.eq_s_b("inn")&&!(o.cursor>o.limit_backward))return;if(o.cursor=o.limit-i,!B())return;if(!o.slice_del())return;D()}return 1})()&&(h=!0),o.cursor=o.limit-r,o.cursor=o.limit_backward,w=!1,o.cursor),i=o.cursor,i=((()=>{if(o.bra=o.cursor,o.eq_s("ge")){o.ket=o.cursor;var r=o.cursor,i=o.cursor+3;if(!(i>o.limit)){o.cursor=i,o.cursor=r;for(var i=o.cursor;;){var e=o.cursor,s=o.cursor;if(o.eq_s("ij")||(o.cursor=s,o.in_grouping(v,97,252)))break;if(o.cursor=e,o.cursor>=o.limit)return;o.cursor++}for(;;){var c=o.cursor,u=o.cursor;if(!o.eq_s("ij")&&(o.cursor=u,!o.in_grouping(v,97,252))){o.cursor=c;break}}if(o.cursor{if(!(o.cursor>=o.limit)){for(o.cursor++;;){if(o.bra=o.cursor,o.eq_s("ge")){o.ket=o.cursor;break}if(o.cursor>=o.limit)return;o.cursor++}var r=o.cursor,i=o.cursor+3;if(!(i>o.limit)){o.cursor=i,o.cursor=r;for(var i=o.cursor;;){var e=o.cursor,s=o.cursor;if(o.eq_s("ij")||(o.cursor=s,o.in_grouping(v,97,252)))break;if(o.cursor=e,o.cursor>=o.limit)return;o.cursor++}for(;;){var c=o.cursor,u=o.cursor;if(!o.eq_s("ij")&&(o.cursor=u,!o.in_grouping(v,97,252))){o.cursor=c;break}}if(o.cursor{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(f))){switch(o.bra=o.cursor,r){case 1:if(o.slice_from("k"))break;return;case 2:if(o.slice_from("f"))break;return;case 3:if(o.slice_from("p"))break;return}return 1}})()&&(h=!0),o.cursor=o.limit-r,o.limit-o.cursor);return h&&(()=>{var r;if(o.ket=o.cursor,0!=(r=o.find_among_b(n))){switch(o.bra=o.cursor,r){case 1:if(o.slice_from("b"))break;return;case 2:if(o.slice_from("c"))break;return;case 3:if(o.slice_from("d"))break;return;case 4:if(o.slice_from("f"))break;return;case 5:if(o.slice_from("g"))break;return;case 6:if(o.slice_from("h"))break;return;case 7:if(o.slice_from("j"))break;return;case 8:if(o.slice_from("k"))break;return;case 9:if(o.slice_from("l"))break;return;case 10:if(o.slice_from("m"))break;return;case 11:var i=o.limit-o.cursor;if(o.eq_s_b("i")&&!(o.cursor>o.limit_backward))return;if(o.cursor=o.limit-i,o.slice_from("n"))break;return;case 12:if(o.slice_from("p"))break;return;case 13:if(o.slice_from("q"))break;return;case 14:if(o.slice_from("r"))break;return;case 15:if(o.slice_from("s"))break;return;case 16:if(o.slice_from("t"))break;return;case 17:if(o.slice_from("v"))break;return;case 18:if(o.slice_from("w"))break;return;case 19:if(o.slice_from("x"))break;return;case 20:if(o.slice_from("z"))break;return}}})(),o.cursor=o.limit-i,o.cursor=o.limit_backward,!0},this.stemWord=function(r){return o.setCurrent(r),this.stem(),o.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/dutch_porter-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/dutch_porter-stemmer.js new file mode 100644 index 000000000..32f195914 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/dutch_porter-stemmer.js @@ -0,0 +1 @@ +var DutchPorterStemmer=function(){var t=new BaseStemmer,a=[["",-1,6],["á",0,1],["ä",0,1],["é",0,2],["ë",0,2],["í",0,3],["ï",0,3],["ó",0,4],["ö",0,4],["ú",0,5],["ü",0,5]],s=[["",-1,3],["I",0,2],["Y",0,1]],i=[["dd",-1,-1],["kk",-1,-1],["tt",-1,-1]],c=[["ene",-1,2],["se",-1,3],["en",-1,2],["heden",2,1],["s",-1,3]],n=[["end",-1,1],["ig",-1,2],["ing",-1,1],["lijk",-1,3],["baar",-1,4],["bar",-1,5]],_=[["aa",-1,-1],["ee",-1,-1],["oo",-1,-1],["uu",-1,-1]],l=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],f=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],b=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],u=0,o=0,m=0,k=!1;function g(){return m<=t.cursor}function d(){return o<=t.cursor}function v(){var r=t.limit-t.cursor;return 0!=t.find_among_b(i)&&(t.cursor=t.limit-r,t.ket=t.cursor,!(t.cursor<=t.limit_backward||(t.cursor--,t.bra=t.cursor,!t.slice_del())))}function h(){var r;if((k=!1,t.ket=t.cursor,t.eq_s_b("e"))&&(t.bra=t.cursor,g()))return r=t.limit-t.cursor,t.out_grouping_b(l,97,232)?(t.cursor=t.limit-r,t.slice_del()&&(k=!0,!!v())):void 0}function p(){if(g()){var r=t.limit-t.cursor;if(t.out_grouping_b(l,97,232))return t.cursor=t.limit-r,r=t.limit-t.cursor,t.eq_s_b("gem")?void 0:(t.cursor=t.limit-r,t.slice_del()&&!!v())}}this.stem=function(){var r,i=t.cursor,i=((()=>{for(var r,i=t.cursor;;){var e=t.cursor;r:{switch(t.bra=t.cursor,r=t.find_among(a),t.ket=t.cursor,r){case 1:if(t.slice_from("a"))break;return;case 2:if(t.slice_from("e"))break;return;case 3:if(t.slice_from("i"))break;return;case 4:if(t.slice_from("o"))break;return;case 5:if(t.slice_from("u"))break;return;case 6:if(t.cursor>=t.limit)break r;t.cursor++}continue}t.cursor=e;break}if(t.cursor=i,i=t.cursor,t.bra=t.cursor,t.eq_s("y")){if(t.ket=t.cursor,!t.slice_from("Y"))return}else t.cursor=i;for(;;){var s=t.cursor;if(!t.go_out_grouping(l,97,232)){t.cursor=s;break}t.cursor++;var u=t.cursor;r:{t.bra=t.cursor;var o=t.cursor;if(t.eq_s("i")){t.ket=t.cursor;var c=t.cursor;if(t.in_grouping(l,97,232)&&!t.slice_from("I"))return;t.cursor=c}else{if(t.cursor=o,!t.eq_s("y")){t.cursor=u;break r}if(t.ket=t.cursor,!t.slice_from("Y"))return}}}})(),t.cursor=i,t.cursor),e=(m=t.limit,o=t.limit,r=t.cursor,(e=t.cursor+3)>t.limit||(t.cursor=e,u=t.cursor,t.cursor=r,t.go_out_grouping(l,97,232)&&(t.cursor++,t.go_in_grouping(l,97,232))&&(t.cursor++,m=t.cursor,u<=m||(m=u),t.go_out_grouping(l,97,232))&&(t.cursor++,t.go_in_grouping(l,97,232))&&(t.cursor++,o=t.cursor)),t.cursor=i,t.limit_backward=t.cursor,t.cursor=t.limit,(()=>{var r,i=t.limit-t.cursor;r:if(t.ket=t.cursor,0!=(r=t.find_among_b(c)))switch(t.bra=t.cursor,r){case 1:if(!g())break r;if(t.slice_from("heid"))break;return;case 2:p();break;case 3:if(!g())break r;if(!t.out_grouping_b(b,97,232))break r;if(t.slice_del())break;return}if(t.cursor=t.limit-i,i=t.limit-t.cursor,h(),t.cursor=t.limit-i,i=t.limit-t.cursor,t.ket=t.cursor,t.eq_s_b("heid")&&(t.bra=t.cursor,d())){var e=t.limit-t.cursor;if(!t.eq_s_b("c")){if(t.cursor=t.limit-e,!t.slice_del())return;t.ket=t.cursor,t.eq_s_b("en")&&(t.bra=t.cursor,p())}}t.cursor=t.limit-i,e=t.limit-t.cursor;r:if(t.ket=t.cursor,0!=(r=t.find_among_b(n)))switch(t.bra=t.cursor,r){case 1:if(d()){if(!t.slice_del())return;i:{var s=t.limit-t.cursor;if(t.ket=t.cursor,t.eq_s_b("ig")&&(t.bra=t.cursor,d())){var u=t.limit-t.cursor;if(!t.eq_s_b("e")){if(t.cursor=t.limit-u,t.slice_del())break i;return}}if(t.cursor=t.limit-s,!v())break r}}break;case 2:if(!d())break r;var o=t.limit-t.cursor;if(t.eq_s_b("e"))break r;if(t.cursor=t.limit-o,t.slice_del())break;return;case 3:if(d()){if(!t.slice_del())return;h()}break;case 4:if(!d())break r;if(t.slice_del())break;return;case 5:if(!d())break r;if(!k)break r;if(t.slice_del())break;return}if(t.cursor=t.limit-e,i=t.limit-t.cursor,t.out_grouping_b(f,73,232)){e=t.limit-t.cursor;if(0!=t.find_among_b(_)&&t.out_grouping_b(l,97,232)&&(t.cursor=t.limit-e,t.ket=t.cursor,!(t.cursor<=t.limit_backward||(t.cursor--,t.bra=t.cursor,t.slice_del()))))return}t.cursor=t.limit-i})(),t.cursor=t.limit_backward,t.cursor);return(()=>{for(var r;;){var i=t.cursor;r:{switch(t.bra=t.cursor,r=t.find_among(s),t.ket=t.cursor,r){case 1:if(t.slice_from("y"))break;return;case 2:if(t.slice_from("i"))break;return;case 3:if(t.cursor>=t.limit)break r;t.cursor++}continue}t.cursor=i;break}})(),t.cursor=e,!0},this.stemWord=function(r){return t.setCurrent(r),this.stem(),t.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/english-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/english-stemmer.js new file mode 100644 index 000000000..e005f991e --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/english-stemmer.js @@ -0,0 +1 @@ +var EnglishStemmer=function(){var a=new BaseStemmer,c=[["arsen",-1,-1],["commun",-1,-1],["emerg",-1,-1],["gener",-1,-1],["later",-1,-1],["organ",-1,-1],["past",-1,-1],["univers",-1,-1]],o=[["'",-1,1],["'s'",0,1],["'s",-1,1]],u=[["ied",-1,2],["s",-1,3],["ies",1,2],["sses",1,1],["ss",1,-1],["us",1,-1]],t=[["succ",-1,1],["proc",-1,1],["exc",-1,1]],l=[["even",-1,2],["cann",-1,2],["inn",-1,2],["earr",-1,2],["herr",-1,2],["out",-1,2],["y",-1,1]],n=[["",-1,-1],["ed",0,2],["eed",1,1],["ing",0,3],["edly",0,2],["eedly",4,1],["ingly",0,2]],f=[["",-1,3],["bb",0,2],["dd",0,2],["ff",0,2],["gg",0,2],["bl",0,1],["mm",0,2],["nn",0,2],["pp",0,2],["rr",0,2],["at",0,1],["tt",0,2],["iz",0,1]],_=[["anci",-1,3],["enci",-1,2],["ogi",-1,14],["li",-1,16],["bli",3,12],["abli",4,4],["alli",3,8],["fulli",3,9],["lessli",3,15],["ousli",3,10],["entli",3,5],["aliti",-1,8],["biliti",-1,12],["iviti",-1,11],["tional",-1,1],["ational",14,7],["alism",-1,8],["ation",-1,7],["ization",17,6],["izer",-1,6],["ator",-1,7],["iveness",-1,11],["fulness",-1,9],["ousness",-1,10],["ogist",-1,13]],m=[["icate",-1,4],["ative",-1,6],["alize",-1,3],["iciti",-1,4],["ical",-1,4],["tional",-1,1],["ational",5,2],["ful",-1,5],["ness",-1,5]],b=[["ic",-1,1],["ance",-1,1],["ence",-1,1],["able",-1,1],["ible",-1,1],["ate",-1,1],["ive",-1,1],["ize",-1,1],["iti",-1,1],["al",-1,1],["ism",-1,1],["ion",-1,2],["er",-1,1],["ous",-1,1],["ant",-1,1],["ent",-1,1],["ment",15,1],["ement",16,1]],k=[["e",-1,1],["l",-1,2]],g=[["andes",-1,-1],["atlas",-1,-1],["bias",-1,-1],["cosmos",-1,-1],["early",-1,5],["gently",-1,3],["howe",-1,-1],["idly",-1,2],["news",-1,-1],["only",-1,6],["singly",-1,7],["skies",-1,1],["sky",-1,-1],["ugly",-1,4]],d=[17,64],v=[17,65,16,1],i=[1,17,65,208,1],w=[55,141,2],p=!1,y=0,h=0;function q(){var r=a.limit-a.cursor;return!!(a.out_grouping_b(i,89,121)&&a.in_grouping_b(v,97,121)&&a.out_grouping_b(v,97,121)||(a.cursor=a.limit-r,a.out_grouping_b(v,97,121)&&a.in_grouping_b(v,97,121)&&!(a.cursor>a.limit_backward))||(a.cursor=a.limit-r,a.eq_s_b("past")))}function z(){return h<=a.cursor}function Y(){return y<=a.cursor}this.stem=function(){var r=a.cursor;if(!(()=>{var r;if(a.bra=a.cursor,0!=(r=a.find_among(g))&&(a.ket=a.cursor,!(a.cursora.limit)a.cursor=i;else{a.cursor=e,a.cursor=r,(()=>{p=!1;var r=a.cursor;if(a.bra=a.cursor,!a.eq_s("'")||(a.ket=a.cursor,a.slice_del())){a.cursor=r;r=a.cursor;if(a.bra=a.cursor,a.eq_s("y")){if(a.ket=a.cursor,!a.slice_from("Y"))return;p=!0}a.cursor=r;for(r=a.cursor;;){var i=a.cursor;r:{for(;;){var e=a.cursor;if(a.in_grouping(v,97,121)&&(a.bra=a.cursor,a.eq_s("y"))){a.ket=a.cursor,a.cursor=e;break}if(a.cursor=e,a.cursor>=a.limit)break r;a.cursor++}if(!a.slice_from("Y"))return;p=!0;continue}a.cursor=i;break}a.cursor=r}})(),h=a.limit,y=a.limit;i=a.cursor;r:{var s=a.cursor;if(0==a.find_among(c)){if(a.cursor=s,!a.go_out_grouping(v,97,121))break r;if(a.cursor++,!a.go_in_grouping(v,97,121))break r;a.cursor++}h=a.cursor,a.go_out_grouping(v,97,121)&&(a.cursor++,a.go_in_grouping(v,97,121))&&(a.cursor++,y=a.cursor)}a.cursor=i,a.limit_backward=a.cursor,a.cursor=a.limit;var e=a.limit-a.cursor,r=((()=>{var r=a.limit-a.cursor;if(a.ket=a.cursor,0==a.find_among_b(o))a.cursor=a.limit-r;else if(a.bra=a.cursor,!a.slice_del())return;if(a.ket=a.cursor,0!=(r=a.find_among_b(u)))switch(a.bra=a.cursor,r){case 1:if(a.slice_from("ss"))break;return;case 2:r:{var i=a.limit-a.cursor,e=a.cursor-2;if(!(e{a.ket=a.cursor,o=a.find_among_b(n),a.bra=a.cursor;r:{var r=a.limit-a.cursor;i:{switch(o){case 1:var i=a.limit-a.cursor;e:{var e=a.limit-a.cursor;if(0==a.find_among_b(t)||a.cursor>a.limit_backward){if(a.cursor=a.limit-e,!z())break e;if(!a.slice_from("ee"))return}}a.cursor=a.limit-i;break;case 2:break i;case 3:if(0==(o=a.find_among_b(l)))break i;switch(o){case 1:var s=a.limit-a.cursor;if(!a.out_grouping_b(v,97,121))break i;if(a.cursor>a.limit_backward)break i;if(a.cursor=a.limit-s,a.bra=a.cursor,a.slice_from("ie"))break;return;case 2:if(a.cursor>a.limit_backward)break i}}break r}a.cursor=a.limit-r;var c=a.limit-a.cursor;if(!a.go_out_grouping_b(v,97,121))return;if(a.cursor--,a.cursor=a.limit-c,!a.slice_del())return;a.ket=a.cursor,a.bra=a.cursor;var o,c=a.limit-a.cursor;switch(o=a.find_among_b(f)){case 1:return a.slice_from("e");case 2:var u=a.limit-a.cursor;if(a.in_grouping_b(d,97,111)&&!(a.cursor>a.limit_backward))return;a.cursor=a.limit-u;break;case 3:return a.cursor!=h||(u=a.limit-a.cursor,q()&&(a.cursor=a.limit-u,a.slice_from("e")))}if(a.cursor=a.limit-c,a.ket=a.cursor,a.cursor<=a.limit_backward)return;if(a.cursor--,a.bra=a.cursor,!a.slice_del())return}})(),a.cursor=a.limit-r,a.limit-a.cursor),r=(a.ket=a.cursor,e=a.limit-a.cursor,(a.eq_s_b("y")||(a.cursor=a.limit-e,a.eq_s_b("Y")))&&(a.bra=a.cursor,a.out_grouping_b(v,97,121))&&a.cursor>a.limit_backward&&a.slice_from("i"),a.cursor=a.limit-i,a.limit-a.cursor),e=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(_))&&(a.bra=a.cursor,z()))switch(r){case 1:if(a.slice_from("tion"))break;return;case 2:if(a.slice_from("ence"))break;return;case 3:if(a.slice_from("ance"))break;return;case 4:if(a.slice_from("able"))break;return;case 5:if(a.slice_from("ent"))break;return;case 6:if(a.slice_from("ize"))break;return;case 7:if(a.slice_from("ate"))break;return;case 8:if(a.slice_from("al"))break;return;case 9:if(a.slice_from("ful"))break;return;case 10:if(a.slice_from("ous"))break;return;case 11:if(a.slice_from("ive"))break;return;case 12:if(a.slice_from("ble"))break;return;case 13:if(a.slice_from("og"))break;return;case 14:if(!a.eq_s_b("l"))return;if(a.slice_from("og"))break;return;case 15:if(a.slice_from("less"))break;return;case 16:if(!a.in_grouping_b(w,99,116))return;if(a.slice_del())break}})(),a.cursor=a.limit-r,a.limit-a.cursor),i=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(m))&&(a.bra=a.cursor,z()))switch(r){case 1:if(a.slice_from("tion"))break;return;case 2:if(a.slice_from("ate"))break;return;case 3:if(a.slice_from("al"))break;return;case 4:if(a.slice_from("ic"))break;return;case 5:if(a.slice_del())break;return;case 6:if(!Y())return;if(a.slice_del())break}})(),a.cursor=a.limit-e,a.limit-a.cursor),r=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(b))&&(a.bra=a.cursor,Y()))switch(r){case 1:if(a.slice_del())break;return;case 2:var i=a.limit-a.cursor;if(!a.eq_s_b("s")&&(a.cursor=a.limit-i,!a.eq_s_b("t")))return;if(a.slice_del())break}})(),a.cursor=a.limit-i,a.limit-a.cursor),e=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(k)))switch(a.bra=a.cursor,r){case 1:if(!Y()){if(!z())return;var i=a.limit-a.cursor;if(q())return;a.cursor=a.limit-i}if(a.slice_del())break;return;case 2:if(!Y())return;if(!a.eq_s_b("l"))return;if(a.slice_del())break}})(),a.cursor=a.limit-r,a.cursor=a.limit_backward,a.cursor);(()=>{if(p)for(;;){var r=a.cursor;r:{for(;;){var i=a.cursor;if(a.bra=a.cursor,a.eq_s("Y")){a.ket=a.cursor,a.cursor=i;break}if(a.cursor=i,a.cursor>=a.limit)break r;a.cursor++}if(a.slice_from("y"))continue;return}a.cursor=r;break}})(),a.cursor=e}}return!0},this.stemWord=function(r){return a.setCurrent(r),this.stem(),a.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/esperanto-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/esperanto-stemmer.js new file mode 100644 index 000000000..44353e6a1 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/esperanto-stemmer.js @@ -0,0 +1 @@ +var EsperantoStemmer=function(){var o=new BaseStemmer,s=[["",-1,14],["-",0,13],["cx",0,1],["gx",0,2],["hx",0,3],["jx",0,4],["q",0,12],["sx",0,5],["ux",0,6],["w",0,12],["x",0,12],["y",0,12],["á",0,7],["é",0,8],["í",0,9],["ó",0,10],["ú",0,11]],i=[["as",-1,-1],["i",-1,-1],["is",1,-1],["os",-1,-1],["u",-1,-1],["us",4,-1]],u=[["ci",-1,-1],["gi",-1,-1],["hi",-1,-1],["li",-1,-1],["ili",3,-1],["ŝli",3,-1],["mi",-1,-1],["ni",-1,-1],["oni",7,-1],["ri",-1,-1],["si",-1,-1],["vi",-1,-1],["ivi",11,-1],["ĝi",-1,-1],["ŝi",-1,-1],["iŝi",14,-1],["malŝi",14,-1]],e=[["amb",-1,-1],["bald",-1,-1],["malbald",1,-1],["morg",-1,-1],["postmorg",3,-1],["adi",-1,-1],["hodi",-1,-1],["ank",-1,-1],["ĉirk",-1,-1],["tutĉirk",8,-1],["presk",-1,-1],["almen",-1,-1],["apen",-1,-1],["hier",-1,-1],["antaŭhier",13,-1],["malgr",-1,-1],["ankor",-1,-1],["kontr",-1,-1],["anstat",-1,-1],["kvaz",-1,-1]],c=[["aliu",-1,-1],["unu",-1,-1]],a=[["aha",-1,-1],["haha",0,-1],["haleluja",-1,-1],["hola",-1,-1],["hosana",-1,-1],["maltra",-1,-1],["hura",-1,-1],["ĥaĥa",-1,-1],["ekde",-1,-1],["elde",-1,-1],["disde",-1,-1],["ehe",-1,-1],["maltre",-1,-1],["dirlididi",-1,-1],["malpli",-1,-1],["malĉi",-1,-1],["malkaj",-1,-1],["amen",-1,-1],["tamen",17,-1],["oho",-1,-1],["maltro",-1,-1],["minus",-1,-1],["uhu",-1,-1],["muu",-1,-1]],t=[["tri",-1,-1],["du",-1,-1],["unu",-1,-1]],m=[["dek",-1,-1],["cent",-1,-1]],l=[["k",-1,-1],["kelk",0,-1],["nen",-1,-1],["t",-1,-1],["mult",3,-1],["samt",3,-1],["ĉ",-1,-1]],n=[["a",-1,-1],["e",-1,-1],["i",-1,-1],["j",-1,-1,r],["aj",3,-1],["oj",3,-1],["n",-1,-1,r],["an",6,-1],["en",6,-1],["jn",6,-1,r],["ajn",9,-1],["ojn",9,-1],["on",6,-1],["o",-1,-1],["as",-1,-1],["is",-1,-1],["os",-1,-1],["us",-1,-1],["u",-1,-1]],_=[17,65,16],b=[1,64,16],f=[255,3],k=!1;function r(){var r=o.limit-o.cursor;return!(!o.eq_s_b("-")&&(o.cursor=o.limit-r,!o.in_grouping_b(f,48,57)))}this.stem=function(){var r=o.cursor;if(!(()=>{var r;for(k=!1;;){var i=o.cursor;r:{switch(o.bra=o.cursor,r=o.find_among(s),o.ket=o.cursor,r){case 1:if(o.slice_from("ĉ"))break;return;case 2:if(o.slice_from("ĝ"))break;return;case 3:if(o.slice_from("ĥ"))break;return;case 4:if(o.slice_from("ĵ"))break;return;case 5:if(o.slice_from("ŝ"))break;return;case 6:if(o.slice_from("ŭ"))break;return;case 7:if(!o.slice_from("a"))return;k=!0;break;case 8:if(!o.slice_from("e"))return;k=!0;break;case 9:if(!o.slice_from("i"))return;k=!0;break;case 10:if(!o.slice_from("o"))return;k=!0;break;case 11:if(!o.slice_from("u"))return;k=!0;break;case 12:k=!0;break;case 13:k=!1;break;case 14:if(o.cursor>=o.limit)break r;o.cursor++}continue}o.cursor=i;break}return!k})())return!1;o.cursor=r;r=o.cursor,o.bra=o.cursor,o.eq_s("'")&&(o.ket=o.cursor,!o.eq_s("st")||0==o.find_among(i)||o.cursor{o.ket=o.cursor;var r=o.limit-o.cursor;return o.eq_s_b("n")||(o.cursor=o.limit-r),o.bra=o.cursor,0==o.find_among_b(u)||(r=o.limit-o.cursor,o.cursor>o.limit_backward&&(o.cursor=o.limit-r,!o.eq_s_b("-")))?void 0:!!o.slice_del()})())return!1;o.cursor=o.limit-r;r=o.limit-o.cursor,(()=>{if(o.ket=o.cursor,o.eq_s_b("'")){o.bra=o.cursor;r:{var r=o.limit-o.cursor;if(o.eq_s_b("l")&&!(o.cursor>o.limit_backward)){if(o.slice_from("a"))break r;return}if(o.cursor=o.limit-r,o.eq_s_b("un")&&!(o.cursor>o.limit_backward)){if(o.slice_from("u"))break r;return}if(o.cursor=o.limit-r,0!=o.find_among_b(e)){var i=o.limit-o.cursor;if(!(o.cursor>o.limit_backward)||(o.cursor=o.limit-i,o.eq_s_b("-"))){if(o.slice_from("aŭ"))break r;return}}if(o.cursor=o.limit-r,!o.slice_from("o"))return}}})(),o.cursor=o.limit-r,r=o.limit-o.cursor;if((()=>{o.ket=o.cursor,o.bra=o.cursor;var r=o.limit-o.cursor,i=o.limit-o.cursor,s=o.limit-o.cursor;if(o.eq_s_b("n")||(o.cursor=o.limit-s),o.bra=o.cursor,!o.eq_s_b("e")){o.cursor=o.limit-i;var s=o.limit-o.cursor,i=(o.eq_s_b("n")||(o.cursor=o.limit-s),o.limit-o.cursor);if(o.eq_s_b("j")||(o.cursor=o.limit-i),o.bra=o.cursor,!o.in_grouping_b(b,97,117))return}return!o.eq_s_b("i")||(s=o.limit-o.cursor,0==o.find_among_b(l)&&(o.cursor=o.limit-s),i=o.limit-o.cursor,o.cursor>o.limit_backward&&(o.cursor=o.limit-i,!o.eq_s_b("-")))?void 0:(o.cursor=o.limit-r,!!o.slice_del())})())return!1;o.cursor=o.limit-r;r=o.limit-o.cursor;if((()=>{var r;return 0==o.find_among_b(a)||(r=o.limit-o.cursor,o.cursor>o.limit_backward&&(o.cursor=o.limit-r,!o.eq_s_b("-")))?void 0:1})())return!1;o.cursor=o.limit-r;r=o.limit-o.cursor;if(0!=o.find_among_b(t)&&0!=o.find_among_b(m))return!1;o.cursor=o.limit-r;r=o.limit-o.cursor;if((()=>{o.ket=o.cursor;var r=o.limit-o.cursor,r=(o.eq_s_b("n")||(o.cursor=o.limit-r),o.limit-o.cursor);return o.eq_s_b("j")||(o.cursor=o.limit-r),o.bra=o.cursor,0==o.find_among_b(c)||(r=o.limit-o.cursor,o.cursor>o.limit_backward&&(o.cursor=o.limit-r,!o.eq_s_b("-")))?void 0:!!o.slice_del()})())return!1;o.cursor=o.limit-r;r=o.limit-o.cursor;return!!(()=>{r:{var r=o.limit-o.cursor;i:{for(var i=2;0{var r;return o.ket=o.cursor,0!=o.find_among_b(n)&&(r=o.limit-o.cursor,o.eq_s_b("-")||(o.cursor=o.limit-r),o.bra=o.cursor,o.slice_del())?1:void 0})())&&(o.cursor=o.limit_backward,!0)},this.stemWord=function(r){return o.setCurrent(r),this.stem(),o.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/estonian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/estonian-stemmer.js new file mode 100644 index 000000000..d27e90fcd --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/estonian-stemmer.js @@ -0,0 +1 @@ +var EstonianStemmer=function(){var t=new BaseStemmer,a=[["gi",-1,1],["ki",-1,2]],r=[["da",-1,3],["mata",-1,1],["b",-1,3],["ksid",-1,1],["nuksid",3,1],["me",-1,3],["sime",5,1],["ksime",6,1],["nuksime",7,1],["akse",-1,2],["dakse",9,1],["takse",9,1],["site",-1,1],["ksite",12,1],["nuksite",13,1],["n",-1,3],["sin",15,1],["ksin",16,1],["nuksin",17,1],["daks",-1,1],["taks",-1,1]],i=[["aa",-1,-1],["ee",-1,-1],["ii",-1,-1],["oo",-1,-1],["uu",-1,-1],["ää",-1,-1],["õõ",-1,-1],["öö",-1,-1],["üü",-1,-1]],s=[["i",-1,1]],o=[["lane",-1,1],["line",-1,3],["mine",-1,2],["lasse",-1,1],["lisse",-1,3],["misse",-1,2],["lasi",-1,1],["lisi",-1,3],["misi",-1,2],["last",-1,1],["list",-1,3],["mist",-1,2]],k=[["ga",-1,1],["ta",-1,1],["le",-1,1],["sse",-1,1],["l",-1,1],["s",-1,1],["ks",5,1],["t",-1,2],["lt",7,1],["st",7,1]],m=[["",-1,2],["las",0,1],["lis",0,1],["mis",0,1],["t",0,-1]],l=[["d",-1,4],["sid",0,2],["de",-1,4],["ikkude",2,1],["ike",-1,1],["ikke",-1,1],["te",-1,3]],c=[["va",-1,-1],["du",-1,-1],["nu",-1,-1],["tu",-1,-1]],n=[["kk",-1,1],["pp",-1,2],["tt",-1,3]],u=[["ma",-1,2],["mai",-1,1],["m",-1,1]],d=[["joob",-1,1],["jood",-1,1],["joodakse",1,1],["jooma",-1,1],["joomata",3,1],["joome",-1,1],["joon",-1,1],["joote",-1,1],["joovad",-1,1],["juua",-1,1],["juuakse",9,1],["jäi",-1,12],["jäid",11,12],["jäime",11,12],["jäin",11,12],["jäite",11,12],["jääb",-1,12],["jääd",-1,12],["jääda",17,12],["jäädakse",18,12],["jäädi",17,12],["jääks",-1,12],["jääksid",21,12],["jääksime",21,12],["jääksin",21,12],["jääksite",21,12],["jääma",-1,12],["jäämata",26,12],["jääme",-1,12],["jään",-1,12],["jääte",-1,12],["jäävad",-1,12],["jõi",-1,1],["jõid",32,1],["jõime",32,1],["jõin",32,1],["jõite",32,1],["keeb",-1,4],["keed",-1,4],["keedakse",38,4],["keeks",-1,4],["keeksid",40,4],["keeksime",40,4],["keeksin",40,4],["keeksite",40,4],["keema",-1,4],["keemata",45,4],["keeme",-1,4],["keen",-1,4],["kees",-1,4],["keeta",-1,4],["keete",-1,4],["keevad",-1,4],["käia",-1,8],["käiakse",53,8],["käib",-1,8],["käid",-1,8],["käidi",56,8],["käiks",-1,8],["käiksid",58,8],["käiksime",58,8],["käiksin",58,8],["käiksite",58,8],["käima",-1,8],["käimata",63,8],["käime",-1,8],["käin",-1,8],["käis",-1,8],["käite",-1,8],["käivad",-1,8],["laob",-1,16],["laod",-1,16],["laoks",-1,16],["laoksid",72,16],["laoksime",72,16],["laoksin",72,16],["laoksite",72,16],["laome",-1,16],["laon",-1,16],["laote",-1,16],["laovad",-1,16],["loeb",-1,14],["loed",-1,14],["loeks",-1,14],["loeksid",83,14],["loeksime",83,14],["loeksin",83,14],["loeksite",83,14],["loeme",-1,14],["loen",-1,14],["loete",-1,14],["loevad",-1,14],["loob",-1,7],["lood",-1,7],["loodi",93,7],["looks",-1,7],["looksid",95,7],["looksime",95,7],["looksin",95,7],["looksite",95,7],["looma",-1,7],["loomata",100,7],["loome",-1,7],["loon",-1,7],["loote",-1,7],["loovad",-1,7],["luua",-1,7],["luuakse",106,7],["lõi",-1,6],["lõid",108,6],["lõime",108,6],["lõin",108,6],["lõite",108,6],["lööb",-1,5],["lööd",-1,5],["löödakse",114,5],["löödi",114,5],["lööks",-1,5],["lööksid",117,5],["lööksime",117,5],["lööksin",117,5],["lööksite",117,5],["lööma",-1,5],["löömata",122,5],["lööme",-1,5],["löön",-1,5],["lööte",-1,5],["löövad",-1,5],["lüüa",-1,5],["lüüakse",128,5],["müüa",-1,13],["müüakse",130,13],["müüb",-1,13],["müüd",-1,13],["müüdi",133,13],["müüks",-1,13],["müüksid",135,13],["müüksime",135,13],["müüksin",135,13],["müüksite",135,13],["müüma",-1,13],["müümata",140,13],["müüme",-1,13],["müün",-1,13],["müüs",-1,13],["müüte",-1,13],["müüvad",-1,13],["näeb",-1,18],["näed",-1,18],["näeks",-1,18],["näeksid",149,18],["näeksime",149,18],["näeksin",149,18],["näeksite",149,18],["näeme",-1,18],["näen",-1,18],["näete",-1,18],["näevad",-1,18],["nägema",-1,18],["nägemata",158,18],["näha",-1,18],["nähakse",160,18],["nähti",-1,18],["põeb",-1,15],["põed",-1,15],["põeks",-1,15],["põeksid",165,15],["põeksime",165,15],["põeksin",165,15],["põeksite",165,15],["põeme",-1,15],["põen",-1,15],["põete",-1,15],["põevad",-1,15],["saab",-1,2],["saad",-1,2],["saada",175,2],["saadakse",176,2],["saadi",175,2],["saaks",-1,2],["saaksid",179,2],["saaksime",179,2],["saaksin",179,2],["saaksite",179,2],["saama",-1,2],["saamata",184,2],["saame",-1,2],["saan",-1,2],["saate",-1,2],["saavad",-1,2],["sai",-1,2],["said",190,2],["saime",190,2],["sain",190,2],["saite",190,2],["sõi",-1,9],["sõid",195,9],["sõime",195,9],["sõin",195,9],["sõite",195,9],["sööb",-1,9],["sööd",-1,9],["söödakse",201,9],["söödi",201,9],["sööks",-1,9],["sööksid",204,9],["sööksime",204,9],["sööksin",204,9],["sööksite",204,9],["sööma",-1,9],["söömata",209,9],["sööme",-1,9],["söön",-1,9],["sööte",-1,9],["söövad",-1,9],["süüa",-1,9],["süüakse",215,9],["teeb",-1,17],["teed",-1,17],["teeks",-1,17],["teeksid",219,17],["teeksime",219,17],["teeksin",219,17],["teeksite",219,17],["teeme",-1,17],["teen",-1,17],["teete",-1,17],["teevad",-1,17],["tegema",-1,17],["tegemata",228,17],["teha",-1,17],["tehakse",230,17],["tehti",-1,17],["toob",-1,10],["tood",-1,10],["toodi",234,10],["tooks",-1,10],["tooksid",236,10],["tooksime",236,10],["tooksin",236,10],["tooksite",236,10],["tooma",-1,10],["toomata",241,10],["toome",-1,10],["toon",-1,10],["toote",-1,10],["toovad",-1,10],["tuua",-1,10],["tuuakse",247,10],["tõi",-1,10],["tõid",249,10],["tõime",249,10],["tõin",249,10],["tõite",249,10],["viia",-1,3],["viiakse",254,3],["viib",-1,3],["viid",-1,3],["viidi",257,3],["viiks",-1,3],["viiksid",259,3],["viiksime",259,3],["viiksin",259,3],["viiksite",259,3],["viima",-1,3],["viimata",264,3],["viime",-1,3],["viin",-1,3],["viisime",-1,3],["viisin",-1,3],["viisite",-1,3],["viite",-1,3],["viivad",-1,3],["võib",-1,11],["võid",-1,11],["võida",274,11],["võidakse",275,11],["võidi",274,11],["võiks",-1,11],["võiksid",278,11],["võiksime",278,11],["võiksin",278,11],["võiksite",278,11],["võima",-1,11],["võimata",283,11],["võime",-1,11],["võin",-1,11],["võis",-1,11],["võite",-1,11],["võivad",-1,11]],b=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,48,8],_=[17,65,16],f=[117,66,6,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,0,16],v=[21,123,243,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,48,8],w=0;function g(){return 0!=t.find_among_b(i)}function j(){var i=t.limit-t.cursor,i=((()=>{var i;if(!(t.cursor{var i;if(!(t.cursor{var i;if(!(t.cursor{var i;if(!(t.cursor{var i;if(t.bra=t.cursor,0!=(i=t.find_among(d))&&(t.ket=t.cursor,!(t.cursor{var i;if(!(t.cursor{var i;if(!(t.cursor{var i;if(t.in_grouping_b(b,97,252)&&!(w>t.cursor)&&(t.ket=t.cursor,0!=(i=t.find_among_b(n))))switch(t.bra=t.cursor,i){case 1:if(t.slice_from("k"))break;return;case 2:if(t.slice_from("p"))break;return;case 3:if(t.slice_from("t"))break}})(),t.cursor=t.limit-e,t.cursor=t.limit_backward,!0},this.stemWord=function(i){return t.setCurrent(i),this.stem(),t.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/finnish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/finnish-stemmer.js index f6301fdfa..160fb267a 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/finnish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/finnish-stemmer.js @@ -1 +1 @@ -FinnishStemmer=function(){var r=new BaseStemmer;var i=[["pa",-1,1],["sti",-1,2],["kaan",-1,1],["han",-1,1],["kin",-1,1],["hän",-1,1],["kään",-1,1],["ko",-1,1],["pä",-1,1],["kö",-1,1]];var e=[["lla",-1,-1],["na",-1,-1],["ssa",-1,-1],["ta",-1,-1],["lta",3,-1],["sta",3,-1]];var a=[["llä",-1,-1],["nä",-1,-1],["ssä",-1,-1],["tä",-1,-1],["ltä",3,-1],["stä",3,-1]];var s=[["lle",-1,-1],["ine",-1,-1]];var t=[["nsa",-1,3],["mme",-1,3],["nne",-1,3],["ni",-1,2],["si",-1,1],["an",-1,4],["en",-1,6],["än",-1,5],["nsä",-1,3]];var u=[["aa",-1,-1],["ee",-1,-1],["ii",-1,-1],["oo",-1,-1],["uu",-1,-1],["ää",-1,-1],["öö",-1,-1]];var l=[["a",-1,8],["lla",0,-1],["na",0,-1],["ssa",0,-1],["ta",0,-1],["lta",4,-1],["sta",4,-1],["tta",4,2],["lle",-1,-1],["ine",-1,-1],["ksi",-1,-1],["n",-1,7],["han",11,1],["den",11,-1,S],["seen",11,-1,C],["hen",11,2],["tten",11,-1,S],["hin",11,3],["siin",11,-1,S],["hon",11,4],["hän",11,5],["hön",11,6],["ä",-1,8],["llä",22,-1],["nä",22,-1],["ssä",22,-1],["tä",22,-1],["ltä",26,-1],["stä",26,-1],["ttä",26,2]];var c=[["eja",-1,-1],["mma",-1,1],["imma",1,-1],["mpa",-1,1],["impa",3,-1],["mmi",-1,1],["immi",5,-1],["mpi",-1,1],["impi",7,-1],["ejä",-1,-1],["mmä",-1,1],["immä",10,-1],["mpä",-1,1],["impä",12,-1]];var n=[["i",-1,-1],["j",-1,-1]];var f=[["mma",-1,1],["imma",0,-1]];var o=[17,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8];var b=[119,223,119,1];var _=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32];var m=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32];var k=[17,97,24,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32];var d=false;var v="";var w=0;var g=0;function p(){g=r.limit;w=r.limit;r:while(true){var i=r.cursor;i:{if(!r.in_grouping(_,97,246)){break i}r.cursor=i;break r}r.cursor=i;if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){i:{if(!r.out_grouping(_,97,246)){break i}break r}if(r.cursor>=r.limit){return false}r.cursor++}g=r.cursor;r:while(true){var e=r.cursor;i:{if(!r.in_grouping(_,97,246)){break i}r.cursor=e;break r}r.cursor=e;if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){i:{if(!r.out_grouping(_,97,246)){break i}break r}if(r.cursor>=r.limit){return false}r.cursor++}w=r.cursor;return true}function h(){if(!(w<=r.cursor)){return false}return true}function q(){var e;if(r.cursor{var r;if(!(c.cursor{var r;if(!(c.cursor{var r;if(!(c.cursor{var r;if(!(c.cursor{if(!(c.cursor=r.limit){break r}r.cursor++}continue}r.cursor=e;break}return true}function v(){m=r.limit;k=r.limit;b=r.limit;var i=r.cursor;r:{e:{var s=r.cursor;i:{if(!r.in_grouping(o,97,251)){break i}if(!r.in_grouping(o,97,251)){break i}if(r.cursor>=r.limit){break i}r.cursor++;break e}r.cursor=s;i:{if(r.find_among(e)==0){break i}break e}r.cursor=s;if(r.cursor>=r.limit){break r}r.cursor++;i:while(true){s:{if(!r.in_grouping(o,97,251)){break s}break i}if(r.cursor>=r.limit){break r}r.cursor++}}m=r.cursor}r.cursor=i;var a=r.cursor;r:{e:while(true){i:{if(!r.in_grouping(o,97,251)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(o,97,251)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}k=r.cursor;e:while(true){i:{if(!r.in_grouping(o,97,251)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(o,97,251)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}b=r.cursor}r.cursor=a;return true}function d(){var e;while(true){var s=r.cursor;r:{r.bra=r.cursor;e=r.find_among(i);if(e==0){break r}r.ket=r.cursor;switch(e){case 1:if(!r.slice_from("i")){return false}break;case 2:if(!r.slice_from("u")){return false}break;case 3:if(!r.slice_from("y")){return false}break;case 4:if(!r.slice_from("ë")){return false}break;case 5:if(!r.slice_from("ï")){return false}break;case 6:if(!r.slice_del()){return false}break;case 7:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=s;break}return true}function g(){if(!(m<=r.cursor)){return false}return true}function w(){if(!(k<=r.cursor)){return false}return true}function q(){if(!(b<=r.cursor)){return false}return true}function h(){var e;r.ket=r.cursor;e=r.find_among_b(u);if(e==0){return false}r.bra=r.cursor;switch(e){case 1:if(!q()){return false}if(!r.slice_del()){return false}break;case 2:if(!q()){return false}if(!r.slice_del()){return false}var i=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("ic")){r.cursor=r.limit-i;break r}r.bra=r.cursor;e:{var t=r.limit-r.cursor;i:{if(!q()){break i}if(!r.slice_del()){return false}break e}r.cursor=r.limit-t;if(!r.slice_from("iqU")){return false}}}break;case 3:if(!q()){return false}if(!r.slice_from("log")){return false}break;case 4:if(!q()){return false}if(!r.slice_from("u")){return false}break;case 5:if(!q()){return false}if(!r.slice_from("ent")){return false}break;case 6:if(!g()){return false}if(!r.slice_del()){return false}var c=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(s);if(e==0){r.cursor=r.limit-c;break r}r.bra=r.cursor;switch(e){case 1:if(!q()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-c;break r}r.bra=r.cursor;if(!q()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}break;case 2:e:{var f=r.limit-r.cursor;i:{if(!q()){break i}if(!r.slice_del()){return false}break e}r.cursor=r.limit-f;if(!w()){r.cursor=r.limit-c;break r}if(!r.slice_from("eux")){return false}}break;case 3:if(!q()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}break;case 4:if(!g()){r.cursor=r.limit-c;break r}if(!r.slice_from("i")){return false}break}}break;case 7:if(!q()){return false}if(!r.slice_del()){return false}var l=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(a);if(e==0){r.cursor=r.limit-l;break r}r.bra=r.cursor;switch(e){case 1:e:{var n=r.limit-r.cursor;i:{if(!q()){break i}if(!r.slice_del()){return false}break e}r.cursor=r.limit-n;if(!r.slice_from("abl")){return false}}break;case 2:e:{var b=r.limit-r.cursor;i:{if(!q()){break i}if(!r.slice_del()){return false}break e}r.cursor=r.limit-b;if(!r.slice_from("iqU")){return false}}break;case 3:if(!q()){r.cursor=r.limit-l;break r}if(!r.slice_del()){return false}break}}break;case 8:if(!q()){return false}if(!r.slice_del()){return false}var k=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-k;break r}r.bra=r.cursor;if(!q()){r.cursor=r.limit-k;break r}if(!r.slice_del()){return false}r.ket=r.cursor;if(!r.eq_s_b("ic")){r.cursor=r.limit-k;break r}r.bra=r.cursor;e:{var m=r.limit-r.cursor;i:{if(!q()){break i}if(!r.slice_del()){return false}break e}r.cursor=r.limit-m;if(!r.slice_from("iqU")){return false}}}break;case 9:if(!r.slice_from("eau")){return false}break;case 10:if(!w()){return false}if(!r.slice_from("al")){return false}break;case 11:r:{var _=r.limit-r.cursor;e:{if(!q()){break e}if(!r.slice_del()){return false}break r}r.cursor=r.limit-_;if(!w()){return false}if(!r.slice_from("eux")){return false}}break;case 12:if(!w()){return false}if(!r.out_grouping_b(o,97,251)){return false}if(!r.slice_del()){return false}break;case 13:if(!g()){return false}if(!r.slice_from("ant")){return false}return false;case 14:if(!g()){return false}if(!r.slice_from("ent")){return false}return false;case 15:var v=r.limit-r.cursor;if(!r.in_grouping_b(o,97,251)){return false}if(!g()){return false}r.cursor=r.limit-v;if(!r.slice_del()){return false}return false}return true}function p(){if(r.cursor0){return false}}r.ket=r.cursor;r:{var i=r.limit-r.cursor;e:{if(!r.eq_s_b("é")){break e}break r}r.cursor=r.limit-i;if(!r.eq_s_b("è")){return false}}r.bra=r.cursor;if(!r.slice_from("e")){return false}return true}this.stem=function(){var e=r.cursor;_();r.cursor=e;v();r.limit_backward=r.cursor;r.cursor=r.limit;var i=r.limit-r.cursor;r:{e:{var s=r.limit-r.cursor;i:{var a=r.limit-r.cursor;s:{var u=r.limit-r.cursor;a:{if(!h()){break a}break s}r.cursor=r.limit-u;a:{if(!p()){break a}break s}r.cursor=r.limit-u;if(!z()){break i}}r.cursor=r.limit-a;var t=r.limit-r.cursor;s:{r.ket=r.cursor;a:{var c=r.limit-r.cursor;u:{if(!r.eq_s_b("Y")){break u}r.bra=r.cursor;if(!r.slice_from("i")){return false}break a}r.cursor=r.limit-c;if(!r.eq_s_b("ç")){r.cursor=r.limit-t;break s}r.bra=r.cursor;if(!r.slice_from("c")){return false}}}break e}r.cursor=r.limit-s;if(!I()){break r}}}r.cursor=r.limit-i;var f=r.limit-r.cursor;U();r.cursor=r.limit-f;var l=r.limit-r.cursor;H();r.cursor=r.limit-l;r.cursor=r.limit_backward;var o=r.cursor;d();r.cursor=o;return true};this["stemWord"]=function(e){r.setCurrent(e);this.stem();return r.getCurrent()}}; \ No newline at end of file +var FrenchStemmer=function(){var n=new BaseStemmer,f=[["col",-1,-1],["ni",-1,1],["par",-1,-1],["tap",-1,-1]],_=[["",-1,7],["H",0,6],["He",1,4],["Hi",1,5],["I",0,1],["U",0,2],["Y",0,3]],m=[["iqU",-1,3],["abl",-1,3],["Ièr",-1,4],["ièr",-1,4],["eus",-1,2],["iv",-1,1]],b=[["ic",-1,2],["abil",-1,1],["iv",-1,3]],k=[["iqUe",-1,1],["atrice",-1,2],["ance",-1,1],["ence",-1,5],["logie",-1,3],["able",-1,1],["isme",-1,1],["euse",-1,12],["iste",-1,1],["ive",-1,8],["if",-1,8],["usion",-1,4],["ation",-1,2],["ution",-1,4],["ateur",-1,2],["iqUes",-1,1],["atrices",-1,2],["ances",-1,1],["ences",-1,5],["logies",-1,3],["ables",-1,1],["ismes",-1,1],["euses",-1,12],["istes",-1,1],["ives",-1,8],["ifs",-1,8],["usions",-1,4],["ations",-1,2],["utions",-1,4],["ateurs",-1,2],["ments",-1,16],["ements",30,6],["issements",31,13],["ités",-1,7],["ment",-1,16],["ement",34,6],["issement",35,13],["amment",34,14],["emment",34,15],["aux",-1,10],["eaux",39,9],["eux",-1,1],["oux",-1,11],["ité",-1,7]],d=[["ira",-1,1],["ie",-1,1],["isse",-1,1],["issante",-1,1],["i",-1,1],["irai",4,1],["ir",-1,1],["iras",-1,1],["ies",-1,1],["îmes",-1,1],["isses",-1,1],["issantes",-1,1],["îtes",-1,1],["is",-1,1],["irais",13,1],["issais",13,1],["irions",-1,1],["issions",-1,1],["irons",-1,1],["issons",-1,1],["issants",-1,1],["it",-1,1],["irait",21,1],["issait",21,1],["issant",-1,1],["iraIent",-1,1],["issaIent",-1,1],["irent",-1,1],["issent",-1,1],["iront",-1,1],["ît",-1,1],["iriez",-1,1],["issiez",-1,1],["irez",-1,1],["issez",-1,1]],g=[["al",-1,1],["épl",-1,-1],["auv",-1,-1]],v=[["a",-1,3],["era",0,2],["aise",-1,4],["asse",-1,3],["ante",-1,3],["ée",-1,2],["ai",-1,3],["erai",6,2],["er",-1,2],["as",-1,3],["eras",9,2],["âmes",-1,3],["aises",-1,4],["asses",-1,3],["antes",-1,3],["âtes",-1,3],["ées",-1,2],["ais",-1,4],["eais",17,2],["erais",17,2],["ions",-1,1],["erions",20,2],["assions",20,3],["erons",-1,2],["ants",-1,3],["és",-1,2],["ait",-1,3],["erait",26,2],["ant",-1,3],["aIent",-1,3],["eraIent",29,2],["èrent",-1,2],["assent",-1,3],["eront",-1,2],["ât",-1,3],["ez",-1,2],["iez",35,2],["eriez",36,2],["assiez",36,3],["erez",35,2],["é",-1,2]],q=[["e",-1,3],["Ière",0,2],["ière",0,2],["ion",-1,1],["Ier",-1,2],["ier",-1,2]],w=[["ell",-1,-1],["eill",-1,-1],["enn",-1,-1],["onn",-1,-1],["ett",-1,-1]],p=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,128,130,103,8,5],h=[65,85],z=[131,14,3],I=[1,65,20,0,0,0,0,0,0,0,0,0,0,0,0,0,128],U=0,H=0,x=0;function Y(){return x<=n.cursor}function y(){return H<=n.cursor}function C(){return U<=n.cursor}this.stem=function(){var r=n.cursor,i=(n.bra=n.cursor,i=n.cursor,(n.in_grouping(z,99,116)||(n.cursor=i,n.eq_s("qu")))&&n.eq_s("'")&&(n.ket=n.cursor,n.cursor{for(;;){var r=n.cursor;r:{for(;;){var i=n.cursor;i:{e:{var e=n.cursor;s:if(n.in_grouping(p,97,251)){n.bra=n.cursor;c:{var s=n.cursor;if(n.eq_s("u")&&(n.ket=n.cursor,n.in_grouping(p,97,251))){if(n.slice_from("U"))break c;return}if(n.cursor=s,n.eq_s("i")&&(n.ket=n.cursor,n.in_grouping(p,97,251))){if(n.slice_from("I"))break c;return}if(n.cursor=s,!n.eq_s("y"))break s;if(n.ket=n.cursor,!n.slice_from("Y"))return}break e}if(n.cursor=e,n.bra=n.cursor,n.eq_s("ë")){if(n.ket=n.cursor,n.slice_from("He"))break e;return}if(n.cursor=e,n.bra=n.cursor,n.eq_s("ï")){if(n.ket=n.cursor,n.slice_from("Hi"))break e;return}if(n.cursor=e,n.bra=n.cursor,n.eq_s("y")&&(n.ket=n.cursor,n.in_grouping(p,97,251))){if(n.slice_from("Y"))break e;return}if(n.cursor=e,!n.eq_s("q"))break i;if(n.bra=n.cursor,!n.eq_s("u"))break i;if(n.ket=n.cursor,!n.slice_from("U"))return}n.cursor=i;break}if(n.cursor=i,n.cursor>=n.limit)break r;n.cursor++}continue}n.cursor=r;break}})(),n.cursor=i,x=n.limit,H=n.limit,U=n.limit;var e,r=n.cursor;r:{i:{var s=n.cursor;if(!n.in_grouping(p,97,251)||!n.in_grouping(p,97,251)||n.cursor>=n.limit){n.cursor=s;e:if(0!=(e=n.find_among(f))){switch(e){case 1:if(n.in_grouping(p,97,251))break;break e}break i}if(n.cursor=s,n.cursor>=n.limit)break r;if(n.cursor++,!n.go_out_grouping(p,97,251))break r}n.cursor++}x=n.cursor}n.cursor=r,r=n.cursor,n.go_out_grouping(p,97,251)&&(n.cursor++,n.go_in_grouping(p,97,251))&&(n.cursor++,H=n.cursor,n.go_out_grouping(p,97,251))&&(n.cursor++,n.go_in_grouping(p,97,251))&&(n.cursor++,U=n.cursor),n.cursor=r,n.limit_backward=n.cursor,n.cursor=n.limit;i=n.limit-n.cursor;r:{var c=n.limit-n.cursor,u=n.limit-n.cursor,t=n.limit-n.cursor;if((()=>{var r;if(n.ket=n.cursor,0!=(r=n.find_among_b(k))){switch(n.bra=n.cursor,r){case 1:if(!C())return;if(n.slice_del())break;return;case 2:if(!C())return;if(!n.slice_del())return;var i=n.limit-n.cursor;if(n.ket=n.cursor,n.eq_s_b("ic")){n.bra=n.cursor;i:{var e=n.limit-n.cursor;if(C()){if(n.slice_del())break i;return}if(n.cursor=n.limit-e,!n.slice_from("iqU"))return}}else n.cursor=n.limit-i;break;case 3:if(!C())return;if(n.slice_from("log"))break;return;case 4:if(!C())return;if(n.slice_from("u"))break;return;case 5:if(!C())return;if(n.slice_from("ent"))break;return;case 6:if(!Y())return;if(!n.slice_del())return;var s=n.limit-n.cursor;i:if(n.ket=n.cursor,0==(r=n.find_among_b(m)))n.cursor=n.limit-s;else switch(n.bra=n.cursor,r){case 1:if(!C()){n.cursor=n.limit-s;break i}if(!n.slice_del())return;if(n.ket=n.cursor,!n.eq_s_b("at")){n.cursor=n.limit-s;break i}if(n.bra=n.cursor,!C()){n.cursor=n.limit-s;break i}if(n.slice_del())break;return;case 2:e:{var c=n.limit-n.cursor;if(C()){if(n.slice_del())break e;return}if(n.cursor=n.limit-c,!y()){n.cursor=n.limit-s;break i}if(!n.slice_from("eux"))return}break;case 3:if(!C()){n.cursor=n.limit-s;break i}if(n.slice_del())break;return;case 4:if(!Y()){n.cursor=n.limit-s;break i}if(n.slice_from("i"))break;return}break;case 7:if(!C())return;if(!n.slice_del())return;var u=n.limit-n.cursor;i:if(n.ket=n.cursor,0==(r=n.find_among_b(b)))n.cursor=n.limit-u;else switch(n.bra=n.cursor,r){case 1:e:{var t=n.limit-n.cursor;if(C()){if(n.slice_del())break e;return}if(n.cursor=n.limit-t,!n.slice_from("abl"))return}break;case 2:e:{var o=n.limit-n.cursor;if(C()){if(n.slice_del())break e;return}if(n.cursor=n.limit-o,!n.slice_from("iqU"))return}break;case 3:if(!C()){n.cursor=n.limit-u;break i}if(n.slice_del())break;return}break;case 8:if(!C())return;if(!n.slice_del())return;i=n.limit-n.cursor;if(n.ket=n.cursor,n.eq_s_b("at"))if(n.bra=n.cursor,C()){if(!n.slice_del())return;if(n.ket=n.cursor,n.eq_s_b("ic")){n.bra=n.cursor;i:{var a=n.limit-n.cursor;if(C()){if(n.slice_del())break i;return}if(n.cursor=n.limit-a,!n.slice_from("iqU"))return}}else n.cursor=n.limit-i}else n.cursor=n.limit-i;else n.cursor=n.limit-i;break;case 9:if(n.slice_from("eau"))break;return;case 10:if(!y())return;if(n.slice_from("al"))break;return;case 11:if(!n.in_grouping_b(h,98,112))return;if(n.slice_from("ou"))break;return;case 12:i:{var l=n.limit-n.cursor;if(C()){if(n.slice_del())break i;return}if(n.cursor=n.limit-l,!y())return;if(!n.slice_from("eux"))return}break;case 13:if(!y())return;if(!n.out_grouping_b(p,97,251))return;if(n.slice_del())break;return;case 14:return Y()?void n.slice_from("ant"):void 0;case 15:return Y()?void n.slice_from("ent"):void 0;case 16:i=n.limit-n.cursor;return n.in_grouping_b(p,97,251)?Y()&&(n.cursor=n.limit-i,void n.slice_del()):void 0}return 1}})()||(n.cursor=n.limit-t,(()=>{if(!(n.cursor{var r;if(!(n.cursorn.limit_backward)break i}return}if(n.cursor=n.limit-e,n.slice_del())break;return}return 1}n.limit_backward=i}})())){n.cursor=n.limit-u;var o=n.limit-n.cursor;i:{n.ket=n.cursor;e:{var a=n.limit-n.cursor;if(n.eq_s_b("Y")){if(n.bra=n.cursor,n.slice_from("i"))break e;return!1}if(n.cursor=n.limit-a,!n.eq_s_b("ç")){n.cursor=n.limit-o;break i}if(n.bra=n.cursor,!n.slice_from("c"))return!1}}}else if(n.cursor=n.limit-c,!(()=>{var r=n.limit-n.cursor;if(n.ket=n.cursor,n.eq_s_b("s")){n.bra=n.cursor;var i=n.limit-n.cursor,e=n.limit-n.cursor;if(n.eq_s_b("Hi")||(n.cursor=n.limit-e,n.out_grouping_b(I,97,232))){if(n.cursor=n.limit-i,!n.slice_del())return}else n.cursor=n.limit-r}else n.cursor=n.limit-r;if(!(n.cursor{for(var r;;){var i=n.cursor;r:{switch(n.bra=n.cursor,r=n.find_among(_),n.ket=n.cursor,r){case 1:if(n.slice_from("i"))break;return;case 2:if(n.slice_from("u"))break;return;case 3:if(n.slice_from("y"))break;return;case 4:if(n.slice_from("ë"))break;return;case 5:if(n.slice_from("ï"))break;return;case 6:if(n.slice_del())break;return;case 7:if(n.cursor>=n.limit)break r;n.cursor++}continue}n.cursor=i;break}})(),n.cursor=r,!0},this.stemWord=function(r){return n.setCurrent(r),this.stem(),n.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/german-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/german-stemmer.js index e2a335d15..da15f9e8f 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/german-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/german-stemmer.js @@ -1 +1 @@ -GermanStemmer=function(){var r=new BaseStemmer;var e=[["",-1,5],["U",0,2],["Y",0,1],["ä",0,3],["ö",0,4],["ü",0,2]];var i=[["e",-1,2],["em",-1,1],["en",-1,2],["ern",-1,1],["er",-1,1],["s",-1,3],["es",5,2]];var s=[["en",-1,1],["er",-1,1],["st",-1,2],["est",2,1]];var u=[["ig",-1,1],["lich",-1,1]];var a=[["end",-1,1],["ig",-1,2],["ung",-1,1],["lich",-1,3],["isch",-1,2],["ik",-1,2],["heit",-1,3],["keit",-1,4]];var c=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32,8];var t=[117,30,5];var o=[117,30,4];var f=0;var l=0;var n=0;function b(){var e=r.cursor;while(true){var i=r.cursor;r:{e:{var s=r.cursor;i:{r.bra=r.cursor;if(!r.eq_s("ß")){break i}r.ket=r.cursor;if(!r.slice_from("ss")){return false}break e}r.cursor=s;if(r.cursor>=r.limit){break r}r.cursor++}continue}r.cursor=i;break}r.cursor=e;while(true){var u=r.cursor;r:{e:while(true){var a=r.cursor;i:{if(!r.in_grouping(c,97,252)){break i}r.bra=r.cursor;s:{var t=r.cursor;u:{if(!r.eq_s("u")){break u}r.ket=r.cursor;if(!r.in_grouping(c,97,252)){break u}if(!r.slice_from("U")){return false}break s}r.cursor=t;if(!r.eq_s("y")){break i}r.ket=r.cursor;if(!r.in_grouping(c,97,252)){break i}if(!r.slice_from("Y")){return false}}r.cursor=a;break e}r.cursor=a;if(r.cursor>=r.limit){break r}r.cursor++}continue}r.cursor=u;break}return true}function k(){n=r.limit;l=r.limit;var e=r.cursor;{var i=r.cursor+3;if(i>r.limit){return false}r.cursor=i}f=r.cursor;r.cursor=e;r:while(true){e:{if(!r.in_grouping(c,97,252)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(c,97,252)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}n=r.cursor;r:{if(!(n=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(c,97,252)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}l=r.cursor;return true}function m(){var i;while(true){var s=r.cursor;r:{r.bra=r.cursor;i=r.find_among(e);if(i==0){break r}r.ket=r.cursor;switch(i){case 1:if(!r.slice_from("y")){return false}break;case 2:if(!r.slice_from("u")){return false}break;case 3:if(!r.slice_from("a")){return false}break;case 4:if(!r.slice_from("o")){return false}break;case 5:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=s;break}return true}function _(){if(!(n<=r.cursor)){return false}return true}function v(){if(!(l<=r.cursor)){return false}return true}function g(){var e;var c=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(i);if(e==0){break r}r.bra=r.cursor;if(!_()){break r}switch(e){case 1:if(!r.slice_del()){return false}break;case 2:if(!r.slice_del()){return false}var f=r.limit-r.cursor;e:{r.ket=r.cursor;if(!r.eq_s_b("s")){r.cursor=r.limit-f;break e}r.bra=r.cursor;if(!r.eq_s_b("nis")){r.cursor=r.limit-f;break e}if(!r.slice_del()){return false}}break;case 3:if(!r.in_grouping_b(t,98,116)){break r}if(!r.slice_del()){return false}break}}r.cursor=r.limit-c;var l=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(s);if(e==0){break r}r.bra=r.cursor;if(!_()){break r}switch(e){case 1:if(!r.slice_del()){return false}break;case 2:if(!r.in_grouping_b(o,98,116)){break r}{var n=r.cursor-3;if(n{for(var r,i=n.cursor;;){var e=n.cursor;r:{for(;;){var s=n.cursor;i:if(n.in_grouping(t,97,252)){n.bra=n.cursor;e:{var c=n.cursor;if(n.eq_s("u")&&(n.ket=n.cursor,n.in_grouping(t,97,252))){if(n.slice_from("U"))break e;return}if(n.cursor=c,!n.eq_s("y"))break i;if(n.ket=n.cursor,!n.in_grouping(t,97,252))break i;if(!n.slice_from("Y"))return}n.cursor=s;break}if(n.cursor=s,n.cursor>=n.limit)break r;n.cursor++}continue}n.cursor=e;break}for(n.cursor=i;;){var u=n.cursor;r:{switch(n.bra=n.cursor,r=n.find_among(o),n.ket=n.cursor,r){case 1:if(n.slice_from("ss"))break;return;case 2:if(n.slice_from("ä"))break;return;case 3:if(n.slice_from("ö"))break;return;case 4:if(n.slice_from("ü"))break;return;case 5:if(n.cursor>=n.limit)break r;n.cursor++}continue}n.cursor=u;break}})(),n.cursor=i,n.cursor),e=(a=n.limit,u=n.limit,r=n.cursor,(e=n.cursor+3)>n.limit||(n.cursor=e,c=n.cursor,n.cursor=r,n.go_out_grouping(t,97,252)&&(n.cursor++,n.go_in_grouping(t,97,252))&&(n.cursor++,a=n.cursor,c<=a||(a=c),n.go_out_grouping(t,97,252))&&(n.cursor++,n.go_in_grouping(t,97,252))&&(n.cursor++,u=n.cursor)),n.cursor=i,n.limit_backward=n.cursor,n.cursor=n.limit,(()=>{var r,i=n.limit-n.cursor;r:if(n.ket=n.cursor,0!=(r=n.find_among_b(l))&&(n.bra=n.cursor,v()))switch(r){case 1:var e=n.limit-n.cursor;if(n.eq_s_b("syst"))break r;if(n.cursor=n.limit-e,n.slice_del())break;return;case 2:if(n.slice_del())break;return;case 3:if(!n.slice_del())return;e=n.limit-n.cursor;if(n.ket=n.cursor,n.eq_s_b("s"))if(n.bra=n.cursor,n.eq_s_b("nis")){if(!n.slice_del())return}else n.cursor=n.limit-e;else n.cursor=n.limit-e;break;case 4:if(!n.in_grouping_b(g,98,116))break r;if(n.slice_del())break;return;case 5:if(n.slice_from("l"))break;return}n.cursor=n.limit-i,i=n.limit-n.cursor;r:if(n.ket=n.cursor,0!=(r=n.find_among_b(_))&&(n.bra=n.cursor,v()))switch(r){case 1:if(n.slice_del())break;return;case 2:if(!n.in_grouping_b(d,98,116))break r;var s=n.cursor-3;if(s{for(var r;;){var i=n.cursor;r:{switch(n.bra=n.cursor,r=n.find_among(s),n.ket=n.cursor,r){case 1:if(n.slice_from("y"))break;return;case 2:if(n.slice_from("u"))break;return;case 3:if(n.slice_from("a"))break;return;case 4:if(n.slice_from("o"))break;return;case 5:if(n.cursor>=n.limit)break r;n.cursor++}continue}n.cursor=i;break}})(),n.cursor=e,!0},this.stemWord=function(r){return n.setCurrent(r),this.stem(),n.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/greek-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/greek-stemmer.js new file mode 100644 index 000000000..d02a30bf1 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/greek-stemmer.js @@ -0,0 +1 @@ +var GreekStemmer=function(){var s=new BaseStemmer,e=[["",-1,25],["Ά",0,1],["Έ",0,5],["Ή",0,7],["Ί",0,9],["Ό",0,15],["Ύ",0,20],["Ώ",0,24],["ΐ",0,7],["Α",0,1],["Β",0,2],["Γ",0,3],["Δ",0,4],["Ε",0,5],["Ζ",0,6],["Η",0,7],["Θ",0,8],["Ι",0,9],["Κ",0,10],["Λ",0,11],["Μ",0,12],["Ν",0,13],["Ξ",0,14],["Ο",0,15],["Π",0,16],["Ρ",0,17],["Σ",0,18],["Τ",0,19],["Υ",0,20],["Φ",0,21],["Χ",0,22],["Ψ",0,23],["Ω",0,24],["Ϊ",0,9],["Ϋ",0,20],["ά",0,1],["έ",0,5],["ή",0,7],["ί",0,9],["ΰ",0,20],["ς",0,18],["ϊ",0,7],["ϋ",0,20],["ό",0,15],["ύ",0,20],["ώ",0,24]],o=[["σκαγια",-1,2],["φαγια",-1,1],["ολογια",-1,3],["σογια",-1,4],["τατογια",-1,5],["κρεατα",-1,6],["περατα",-1,7],["τερατα",-1,8],["γεγονοτα",-1,11],["καθεστωτα",-1,10],["φωτα",-1,9],["περατη",-1,7],["σκαγιων",-1,2],["φαγιων",-1,1],["ολογιων",-1,3],["σογιων",-1,4],["τατογιων",-1,5],["κρεατων",-1,6],["περατων",-1,7],["τερατων",-1,8],["γεγονοτων",-1,11],["καθεστωτων",-1,10],["φωτων",-1,9],["κρεασ",-1,6],["περασ",-1,7],["τερασ",-1,8],["γεγονοσ",-1,11],["κρεατοσ",-1,6],["περατοσ",-1,7],["τερατοσ",-1,8],["γεγονοτοσ",-1,11],["καθεστωτοσ",-1,10],["φωτοσ",-1,9],["καθεστωσ",-1,10],["φωσ",-1,9],["σκαγιου",-1,2],["φαγιου",-1,1],["ολογιου",-1,3],["σογιου",-1,4],["τατογιου",-1,5]],u=[["πα",-1,1],["ξαναπα",0,1],["επα",0,1],["περιπα",0,1],["αναμπα",0,1],["εμπα",0,1],["β",-1,2],["δανε",-1,1],["βαθυρι",-1,2],["βαρκ",-1,2],["μαρκ",-1,2],["λ",-1,2],["μ",-1,2],["κορν",-1,2],["αθρο",-1,1],["συναθρο",14,1],["π",-1,2],["ιμπ",16,2],["ρ",-1,2],["μαρ",18,2],["αμπαρ",18,2],["γκρ",18,2],["βολβορ",18,2],["γλυκορ",18,2],["πιπερορ",18,2],["πρ",18,2],["μπρ",25,2],["αρρ",18,2],["γλυκυρ",18,2],["πολυρ",18,2],["λου",-1,2]],a=[["ιζα",-1,1],["ιζε",-1,1],["ιζαμε",-1,1],["ιζουμε",-1,1],["ιζανε",-1,1],["ιζουνε",-1,1],["ιζατε",-1,1],["ιζετε",-1,1],["ιζει",-1,1],["ιζαν",-1,1],["ιζουν",-1,1],["ιζεσ",-1,1],["ιζεισ",-1,1],["ιζω",-1,1]],t=[["βι",-1,1],["λι",-1,1],["αλ",-1,1],["εν",-1,1],["σ",-1,1],["χ",-1,1],["υψ",-1,1],["ζω",-1,1]],_=[["ωθηκα",-1,1],["ωθηκε",-1,1],["ωθηκαμε",-1,1],["ωθηκανε",-1,1],["ωθηκατε",-1,1],["ωθηκαν",-1,1],["ωθηκεσ",-1,1]],l=[["ξαναπα",-1,1],["επα",-1,1],["περιπα",-1,1],["αναμπα",-1,1],["εμπα",-1,1],["χαρτοπα",-1,1],["εξαρχα",-1,1],["γε",-1,2],["γκε",-1,2],["κλε",-1,1],["εκλε",9,1],["απεκλε",10,1],["αποκλε",9,1],["εσωκλε",9,1],["δανε",-1,1],["πε",-1,1],["επε",15,1],["μετεπε",16,1],["εσε",-1,1],["γκ",-1,2],["μ",-1,2],["πουκαμ",20,2],["κομ",20,2],["αν",-1,2],["ολο",-1,2],["αθρο",-1,1],["συναθρο",25,1],["π",-1,2],["λαρ",-1,2],["δημοκρατ",-1,2],["αφ",-1,2],["γιγαντοαφ",30,2]],m=[["ισα",-1,1],["ισαμε",-1,1],["ισανε",-1,1],["ισε",-1,1],["ισατε",-1,1],["ισαν",-1,1],["ισεσ",-1,1]],f=[["ξαναπα",-1,1],["επα",-1,1],["περιπα",-1,1],["αναμπα",-1,1],["εμπα",-1,1],["χαρτοπα",-1,1],["εξαρχα",-1,1],["κλε",-1,1],["εκλε",7,1],["απεκλε",8,1],["αποκλε",7,1],["εσωκλε",7,1],["δανε",-1,1],["πε",-1,1],["επε",13,1],["μετεπε",14,1],["εσε",-1,1],["αθρο",-1,1],["συναθρο",17,1]],b=[["ισουμε",-1,1],["ισουνε",-1,1],["ισετε",-1,1],["ισει",-1,1],["ισουν",-1,1],["ισεισ",-1,1],["ισω",-1,1]],n=[["ατα",-1,2],["φα",-1,2],["ηφα",1,2],["μεγ",-1,2],["λυγ",-1,2],["ηδ",-1,2],["κλε",-1,1],["εσωκλε",6,1],["πλε",-1,1],["δανε",-1,1],["σε",-1,1],["ασε",10,1],["καθ",-1,2],["εχθ",-1,2],["κακ",-1,2],["μακ",-1,2],["σκ",-1,2],["φιλ",-1,2],["κυλ",-1,2],["μ",-1,2],["γεμ",19,2],["αχν",-1,2],["συναθρο",-1,1],["π",-1,2],["απ",23,2],["εμπ",23,2],["ευπ",23,2],["αρ",-1,2],["αορ",-1,2],["γυρ",-1,2],["χρ",-1,2],["χωρ",-1,2],["κτ",-1,2],["ακτ",32,2],["χτ",-1,2],["αχτ",34,2],["ταχ",-1,2],["σχ",-1,2],["ασχ",37,2],["υψ",-1,2]],k=[["ιστα",-1,1],["ιστε",-1,1],["ιστη",-1,1],["ιστοι",-1,1],["ιστων",-1,1],["ιστο",-1,1],["ιστεσ",-1,1],["ιστησ",-1,1],["ιστοσ",-1,1],["ιστουσ",-1,1],["ιστου",-1,1]],d=[["εγκλε",-1,1],["αποκλε",-1,1],["δανε",-1,2],["αντιδανε",2,2],["σε",-1,1],["μετασε",4,1],["μικροσε",4,1]],g=[["ατομικ",-1,2],["εθνικ",-1,4],["τοπικ",-1,7],["εκλεκτικ",-1,5],["σκεπτικ",-1,6],["γνωστικ",-1,3],["αγνωστικ",5,1],["αλεξανδριν",-1,8],["θεατριν",-1,10],["βυζαντιν",-1,9]],w=[["ισμοι",-1,1],["ισμων",-1,1],["ισμο",-1,1],["ισμοσ",-1,1],["ισμουσ",-1,1],["ισμου",-1,1]],v=[["σ",-1,1],["χ",-1,1]],h=[["ουδακια",-1,1],["αρακια",-1,1],["ουδακι",-1,1],["αρακι",-1,1]],q=[["β",-1,2],["βαμβ",0,1],["σλοβ",0,1],["τσεχοσλοβ",2,1],["καρδ",-1,2],["ζ",-1,2],["τζ",5,1],["κ",-1,1],["καπακ",7,1],["σοκ",7,1],["σκ",7,1],["βαλ",-1,2],["μαλ",-1,1],["γλ",-1,2],["τριπολ",-1,2],["πλ",-1,1],["λουλ",-1,1],["φυλ",-1,1],["καιμ",-1,1],["κλιμ",-1,1],["φαρμ",-1,1],["γιαν",-1,2],["σπαν",-1,1],["ηγουμεν",-1,2],["κον",-1,1],["μακρυν",-1,2],["π",-1,2],["κατραπ",26,1],["ρ",-1,1],["βρ",28,1],["λαβρ",29,1],["αμβρ",29,1],["μερ",28,1],["πατερ",28,2],["ανθρ",28,1],["κορ",28,1],["σ",-1,1],["ναγκασ",36,1],["τοσ",36,2],["μουστ",-1,1],["ρυ",-1,1],["φ",-1,1],["σφ",41,1],["αλισφ",42,1],["νυφ",41,2],["χ",-1,1]],p=[["ακια",-1,1],["αρακια",0,1],["ιτσα",-1,1],["ακι",-1,1],["αρακι",3,1],["ιτσων",-1,1],["ιτσασ",-1,1],["ιτσεσ",-1,1]],C=[["ψαλ",-1,1],["αιφν",-1,1],["ολο",-1,1],["ιρ",-1,1]],S=[["ε",-1,1],["παιχν",-1,1]],B=[["ιδια",-1,1],["ιδιων",-1,1],["ιδιο",-1,1]],G=[["ιβ",-1,1],["δ",-1,1],["φραγκ",-1,1],["λυκ",-1,1],["οβελ",-1,1],["μην",-1,1],["ρ",-1,1]],W=[["ισκε",-1,1],["ισκο",-1,1],["ισκοσ",-1,1],["ισκου",-1,1]],j=[["αδων",-1,1],["αδεσ",-1,1]],x=[["γιαγι",-1,-1],["θει",-1,-1],["οκ",-1,-1],["μαμ",-1,-1],["μαν",-1,-1],["μπαμπ",-1,-1],["πεθερ",-1,-1],["πατερ",-1,-1],["κυρ",-1,-1],["νταντ",-1,-1]],y=[["εδων",-1,1],["εδεσ",-1,1]],z=[["μιλ",-1,1],["δαπ",-1,1],["γηπ",-1,1],["ιπ",-1,1],["εμπ",-1,1],["οπ",-1,1],["κρασπ",-1,1],["υπ",-1,1]],A=[["ουδων",-1,1],["ουδεσ",-1,1]],D=[["τραγ",-1,1],["φε",-1,1],["καλιακ",-1,1],["αρκ",-1,1],["σκ",-1,1],["πεταλ",-1,1],["βελ",-1,1],["λουλ",-1,1],["φλ",-1,1],["χν",-1,1],["πλεξ",-1,1],["σπ",-1,1],["φρ",-1,1],["σ",-1,1],["λιχ",-1,1]],E=[["εων",-1,1],["εωσ",-1,1]],F=[["δ",-1,1],["ιδ",0,1],["θ",-1,1],["γαλ",-1,1],["ελ",-1,1],["ν",-1,1],["π",-1,1],["παρ",-1,1]],K=[["ια",-1,1],["ιων",-1,1],["ιου",-1,1]],L=[["ικα",-1,1],["ικων",-1,1],["ικο",-1,1],["ικου",-1,1]],M=[["αδ",-1,1],["συναδ",0,1],["καταδ",0,1],["αντιδ",-1,1],["ενδ",-1,1],["φυλοδ",-1,1],["υποδ",-1,1],["πρωτοδ",-1,1],["εξωδ",-1,1],["ηθ",-1,1],["ανηθ",9,1],["ξικ",-1,1],["αλ",-1,1],["αμμοχαλ",12,1],["συνομηλ",-1,1],["μπολ",-1,1],["μουλ",-1,1],["τσαμ",-1,1],["βρωμ",-1,1],["αμαν",-1,1],["μπαν",-1,1],["καλλιν",-1,1],["ποστελν",-1,1],["φιλον",-1,1],["καλπ",-1,1],["γερ",-1,1],["χασ",-1,1],["μποσ",-1,1],["πλιατσ",-1,1],["πετσ",-1,1],["πιτσ",-1,1],["φυσ",-1,1],["μπαγιατ",-1,1],["νιτ",-1,1],["πικαντ",-1,1],["σερτ",-1,1]],N=[["αγαμε",-1,1],["ηκαμε",-1,1],["ηθηκαμε",1,1],["ησαμε",-1,1],["ουσαμε",-1,1]],O=[["βουβ",-1,1],["ξεθ",-1,1],["πεθ",-1,1],["αποθ",-1,1],["αποκ",-1,1],["ουλ",-1,1],["αναπ",-1,1],["πικρ",-1,1],["ποτ",-1,1],["αποστ",-1,1],["χ",-1,1],["σιχ",10,1]],P=[["τρ",-1,1],["τσ",-1,1]],Q=[["αγανε",-1,1],["ηκανε",-1,1],["ηθηκανε",1,1],["ησανε",-1,1],["ουσανε",-1,1],["οντανε",-1,1],["ιοντανε",5,1],["ουντανε",-1,1],["ιουντανε",7,1],["οτανε",-1,1],["ιοτανε",9,1]],R=[["ταβ",-1,1],["νταβ",0,1],["ψηλοταβ",0,1],["λιβ",-1,1],["κλιβ",3,1],["ξηροκλιβ",4,1],["γ",-1,1],["αγ",6,1],["τραγ",7,1],["τσαγ",7,1],["αθιγγ",6,1],["τσιγγ",6,1],["ατσιγγ",11,1],["στεγ",6,1],["απηγ",6,1],["σιγ",6,1],["ανοργ",6,1],["ενοργ",6,1],["καλπουζ",-1,1],["θ",-1,1],["μωαμεθ",19,1],["πιθ",19,1],["απιθ",21,1],["δεκ",-1,1],["πελεκ",-1,1],["ικ",-1,1],["ανικ",25,1],["βουλκ",-1,1],["βασκ",-1,1],["βραχυκ",-1,1],["γαλ",-1,1],["καταγαλ",30,1],["ολογαλ",30,1],["βαθυγαλ",30,1],["μελ",-1,1],["καστελ",-1,1],["πορτολ",-1,1],["πλ",-1,1],["διπλ",37,1],["λαοπλ",37,1],["ψυχοπλ",37,1],["ουλ",-1,1],["μ",-1,1],["ολιγοδαμ",42,1],["μουσουλμ",42,1],["δραδουμ",42,1],["βραχμ",42,1],["ν",-1,1],["αμερικαν",47,1],["π",-1,1],["αδαπ",49,1],["χαμηλοδαπ",49,1],["πολυδαπ",49,1],["κοπ",49,1],["υποκοπ",53,1],["τσοπ",49,1],["σπ",49,1],["ερ",-1,1],["γερ",57,1],["βετερ",57,1],["λουθηρ",-1,1],["κορμορ",-1,1],["περιτρ",-1,1],["ουρ",-1,1],["σ",-1,1],["βασ",64,1],["πολισ",64,1],["σαρακατσ",64,1],["θυσ",64,1],["διατ",-1,1],["πλατ",-1,1],["τσαρλατ",-1,1],["τετ",-1,1],["πουριτ",-1,1],["σουλτ",-1,1],["μαιντ",-1,1],["ζωντ",-1,1],["καστ",-1,1],["φ",-1,1],["διαφ",78,1],["στεφ",78,1],["φωτοστεφ",80,1],["περηφ",78,1],["υπερηφ",82,1],["κοιλαρφ",78,1],["πενταρφ",78,1],["ορφ",78,1],["χ",-1,1],["αμηχ",87,1],["βιομηχ",87,1],["μεγλοβιομηχ",89,1],["καπνοβιομηχ",89,1],["μικροβιομηχ",89,1],["πολυμηχ",87,1],["λιχ",87,1]],T=[["ησετε",-1,1]],U=[["ενδ",-1,1],["συνδ",-1,1],["οδ",-1,1],["διαθ",-1,1],["καθ",-1,1],["ραθ",-1,1],["ταθ",-1,1],["τιθ",-1,1],["εκθ",-1,1],["ενθ",-1,1],["συνθ",-1,1],["ροθ",-1,1],["υπερθ",-1,1],["σθ",-1,1],["ευθ",-1,1],["αρκ",-1,1],["ωφελ",-1,1],["βολ",-1,1],["αιν",-1,1],["πον",-1,1],["ρον",-1,1],["συν",-1,1],["βαρ",-1,1],["βρ",-1,1],["αιρ",-1,1],["φορ",-1,1],["ευρ",-1,1],["πυρ",-1,1],["χωρ",-1,1],["νετ",-1,1],["σχ",-1,1]],V=[["παγ",-1,1],["δ",-1,1],["αδ",1,1],["θ",-1,1],["αθ",3,1],["τοκ",-1,1],["σκ",-1,1],["παρακαλ",-1,1],["σκελ",-1,1],["απλ",-1,1],["εμ",-1,1],["αν",-1,1],["βεν",-1,1],["βαρον",-1,1],["κοπ",-1,1],["σερπ",-1,1],["αβαρ",-1,1],["εναρ",-1,1],["αβρ",-1,1],["μπορ",-1,1],["θαρρ",-1,1],["ντρ",-1,1],["υ",-1,1],["νιφ",-1,1],["συρφ",-1,1]],X=[["οντασ",-1,1],["ωντασ",-1,1]],Y=[["ομαστε",-1,1],["ιομαστε",0,1]],Z=[["π",-1,1],["απ",0,1],["ακαταπ",1,1],["συμπ",0,1],["ασυμπ",3,1],["αμεταμφ",-1,1]],$=[["ζ",-1,1],["αλ",-1,1],["παρακαλ",1,1],["εκτελ",-1,1],["μ",-1,1],["ξ",-1,1],["προ",-1,1],["αρ",-1,1],["νισ",-1,1]],r1=[["ηθηκα",-1,1],["ηθηκε",-1,1],["ηθηκεσ",-1,1]],i1=[["πιθ",-1,1],["οθ",-1,1],["ναρθ",-1,1],["σκουλ",-1,1],["σκωλ",-1,1],["σφ",-1,1]],c1=[["θ",-1,1],["διαθ",0,1],["παρακαταθ",0,1],["συνθ",0,1],["προσθ",0,1]],s1=[["ηκα",-1,1],["ηκε",-1,1],["ηκεσ",-1,1]],e1=[["φαγ",-1,1],["ληγ",-1,1],["φρυδ",-1,1],["μαντιλ",-1,1],["μαλλ",-1,1],["ομ",-1,1],["βλεπ",-1,1],["ποδαρ",-1,1],["κυματ",-1,1],["πρωτ",-1,1],["λαχ",-1,1],["πανταχ",-1,1]],o1=[["τσα",-1,1],["χαδ",-1,1],["μεδ",-1,1],["λαμπιδ",-1,1],["δε",-1,1],["πλε",-1,1],["μεσαζ",-1,1],["δεσποζ",-1,1],["αιθ",-1,1],["φαρμακ",-1,1],["αγκ",-1,1],["ανηκ",-1,1],["λ",-1,1],["μ",-1,1],["αμ",13,1],["βρομ",13,1],["υποτειν",-1,1],["εκλιπ",-1,1],["ρ",-1,1],["ενδιαφερ",18,1],["αναρρ",18,1],["πατ",-1,1],["καθαρευ",-1,1],["δευτερευ",-1,1],["λεχ",-1,1]],u1=[["ουσα",-1,1],["ουσε",-1,1],["ουσεσ",-1,1]],a1=[["πελ",-1,1],["λλ",-1,1],["σμην",-1,1],["ρπ",-1,1],["πρ",-1,1],["φρ",-1,1],["χορτ",-1,1],["οφ",-1,1],["ψοφ",7,-1],["σφ",-1,1],["λοχ",-1,1],["ναυλοχ",10,-1]],t1=[["αμαλλι",-1,1],["λ",-1,1],["αμαλ",1,1],["μ",-1,1],["ουλαμ",3,1],["εν",-1,1],["δερβεν",5,1],["π",-1,1],["αειπ",7,1],["αρτιπ",7,1],["συμπ",7,1],["νεοπ",7,1],["κροκαλοπ",7,1],["ολοπ",7,1],["προσωποπ",7,1],["σιδηροπ",7,1],["δροσοπ",7,1],["ασπ",7,1],["ανυπ",7,1],["ρ",-1,1],["ασπαρ",19,1],["χαρ",19,1],["αχαρ",21,1],["απερ",19,1],["τρ",19,1],["ουρ",19,1],["τ",-1,1],["διατ",26,1],["επιτ",26,1],["συντ",26,1],["ομοτ",26,1],["νομοτ",30,1],["αποτ",26,1],["υποτ",26,1],["αβαστ",26,1],["αιμοστ",26,1],["προστ",26,1],["ανυστ",26,1],["ναυ",-1,1],["αφ",-1,1],["ξεφ",-1,1],["αδηφ",-1,1],["παμφ",-1,1],["πολυφ",-1,1]],_1=[["αγα",-1,1],["αγε",-1,1],["αγεσ",-1,1]],l1=[["ησα",-1,1],["ησε",-1,1],["ησου",-1,1]],m1=[["ν",-1,1],["δωδεκαν",0,1],["επταν",0,1],["μεγαλον",0,1],["ερημον",0,1],["χερσον",0,1]],f1=[["ηστε",-1,1]],b1=[["σβ",-1,1],["ασβ",0,1],["απλ",-1,1],["αειμν",-1,1],["χρ",-1,1],["αχρ",4,1],["κοινοχρ",4,1],["δυσχρ",4,1],["ευχρ",4,1],["παλιμψ",-1,1]],n1=[["ουνε",-1,1],["ηθουνε",0,1],["ησουνε",0,1]],k1=[["σπι",-1,1],["ν",-1,1],["εξων",1,1],["ρ",-1,1],["στραβομουτσ",-1,1],["κακομουτσ",-1,1]],d1=[["ουμε",-1,1],["ηθουμε",0,1],["ησουμε",0,1]],g1=[["αζ",-1,1],["ωριοπλ",-1,1],["ασουσ",-1,1],["παρασουσ",2,1],["αλλοσουσ",-1,1],["φ",-1,1],["χ",-1,1]],w1=[["ματα",-1,1],["ματων",-1,1],["ματοσ",-1,1]],v1=[["α",-1,1],["ιουμα",0,1],["ομουνα",0,1],["ιομουνα",2,1],["οσουνα",0,1],["ιοσουνα",4,1],["ε",-1,1],["αγατε",6,1],["ηκατε",6,1],["ηθηκατε",8,1],["ησατε",6,1],["ουσατε",6,1],["ειτε",6,1],["ηθειτε",12,1],["ιεμαστε",6,1],["ουμαστε",6,1],["ιουμαστε",15,1],["ιεσαστε",6,1],["οσαστε",6,1],["ιοσαστε",18,1],["η",-1,1],["ι",-1,1],["αμαι",21,1],["ιεμαι",21,1],["ομαι",21,1],["ουμαι",21,1],["ασαι",21,1],["εσαι",21,1],["ιεσαι",27,1],["αται",21,1],["εται",21,1],["ιεται",30,1],["ονται",21,1],["ουνται",21,1],["ιουνται",33,1],["ει",21,1],["αει",35,1],["ηθει",35,1],["ησει",35,1],["οι",21,1],["αν",-1,1],["αγαν",40,1],["ηκαν",40,1],["ηθηκαν",42,1],["ησαν",40,1],["ουσαν",40,1],["οντουσαν",45,1],["ιοντουσαν",46,1],["ονταν",40,1],["ιονταν",48,1],["ουνταν",40,1],["ιουνταν",50,1],["οταν",40,1],["ιοταν",52,1],["ομασταν",40,1],["ιομασταν",54,1],["οσασταν",40,1],["ιοσασταν",56,1],["ουν",-1,1],["ηθουν",58,1],["ομουν",58,1],["ιομουν",60,1],["ησουν",58,1],["οσουν",58,1],["ιοσουν",63,1],["ων",-1,1],["ηδων",65,1],["ο",-1,1],["ασ",-1,1],["εσ",-1,1],["ηδεσ",69,1],["ησεσ",69,1],["ησ",-1,1],["εισ",-1,1],["ηθεισ",73,1],["οσ",-1,1],["υσ",-1,1],["ουσ",76,1],["υ",-1,1],["ου",78,1],["ω",-1,1],["αω",80,1],["ηθω",80,1],["ησω",80,1]],h1=[["οτερ",-1,1],["εστερ",-1,1],["υτερ",-1,1],["ωτερ",-1,1],["οτατ",-1,1],["εστατ",-1,1],["υτατ",-1,1],["ωτατ",-1,1]],H=[81,65,16,1],I=[81,65,0,1],J=!1;this.stem=function(){s.limit_backward=s.cursor,s.cursor=s.limit;var r=s.limit-s.cursor;if((()=>{for(var r;;){var i=s.limit-s.cursor;r:{switch(s.ket=s.cursor,r=s.find_among_b(e),s.bra=s.cursor,r){case 1:if(s.slice_from("α"))break;return;case 2:if(s.slice_from("β"))break;return;case 3:if(s.slice_from("γ"))break;return;case 4:if(s.slice_from("δ"))break;return;case 5:if(s.slice_from("ε"))break;return;case 6:if(s.slice_from("ζ"))break;return;case 7:if(s.slice_from("η"))break;return;case 8:if(s.slice_from("θ"))break;return;case 9:if(s.slice_from("ι"))break;return;case 10:if(s.slice_from("κ"))break;return;case 11:if(s.slice_from("λ"))break;return;case 12:if(s.slice_from("μ"))break;return;case 13:if(s.slice_from("ν"))break;return;case 14:if(s.slice_from("ξ"))break;return;case 15:if(s.slice_from("ο"))break;return;case 16:if(s.slice_from("π"))break;return;case 17:if(s.slice_from("ρ"))break;return;case 18:if(s.slice_from("σ"))break;return;case 19:if(s.slice_from("τ"))break;return;case 20:if(s.slice_from("υ"))break;return;case 21:if(s.slice_from("φ"))break;return;case 22:if(s.slice_from("χ"))break;return;case 23:if(s.slice_from("ψ"))break;return;case 24:if(s.slice_from("ω"))break;return;case 25:if(s.cursor<=s.limit_backward)break r;s.cursor--}continue}s.cursor=s.limit-i;break}})(),s.cursor=s.limit-r,!(3<=s.current.length))return!1;J=!0;var r=s.limit-s.cursor,r=((()=>{var r;if(s.ket=s.cursor,0!=(r=s.find_among_b(o))){switch(s.bra=s.cursor,r){case 1:if(s.slice_from("φα"))break;return;case 2:if(s.slice_from("σκα"))break;return;case 3:if(s.slice_from("ολο"))break;return;case 4:if(s.slice_from("σο"))break;return;case 5:if(s.slice_from("τατο"))break;return;case 6:if(s.slice_from("κρε"))break;return;case 7:if(s.slice_from("περ"))break;return;case 8:if(s.slice_from("τερ"))break;return;case 9:if(s.slice_from("φω"))break;return;case 10:if(s.slice_from("καθεστ"))break;return;case 11:if(s.slice_from("γεγον"))break;return}J=!1}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r;if(s.ket=s.cursor,0!=s.find_among_b(a)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0!=(r=s.find_among_b(u)))&&!(s.cursor>s.limit_backward))switch(r){case 1:if(s.slice_from("ι"))break;return;case 2:if(s.slice_from("ιζ"))break}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(_)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(t)||s.cursor>s.limit_backward||s.slice_from("ων")),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r;r:{var i=s.limit-s.cursor;if(s.ket=s.cursor,s.eq_s_b("ισα")&&(s.bra=s.cursor,!(s.cursor>s.limit_backward))){if(s.slice_from("ισ"))break r;return}s.cursor=s.limit-i,s.ket=s.cursor}if(0!=s.find_among_b(m)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0!=(r=s.find_among_b(l)))&&!(s.cursor>s.limit_backward))switch(r){case 1:if(s.slice_from("ι"))break;return;case 2:if(s.slice_from("ισ"))break}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(b)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(f)||s.cursor>s.limit_backward||s.slice_from("ι")),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r;if(s.ket=s.cursor,0!=s.find_among_b(k)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0!=(r=s.find_among_b(n)))&&!(s.cursor>s.limit_backward))switch(r){case 1:if(s.slice_from("ι"))break;return;case 2:if(s.slice_from("ιστ"))break}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r;if(s.ket=s.cursor,0!=s.find_among_b(w)&&(s.bra=s.cursor,s.slice_del())){J=!1;var i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,0==(r=s.find_among_b(d))||s.cursor>s.limit_backward){if(s.cursor=s.limit-i,s.ket=s.cursor,0==(r=s.find_among_b(g)))return;switch(s.bra=s.cursor,r){case 1:if(s.slice_from("αγνωστ"))break;return;case 2:if(s.slice_from("ατομ"))break;return;case 3:if(s.slice_from("γνωστ"))break;return;case 4:if(s.slice_from("εθν"))break;return;case 5:if(s.slice_from("εκλεκτ"))break;return;case 6:if(s.slice_from("σκεπτ"))break;return;case 7:if(s.slice_from("τοπ"))break;return;case 8:if(s.slice_from("αλεξανδρ"))break;return;case 9:if(s.slice_from("βυζαντ"))break;return;case 10:if(s.slice_from("θεατρ"))break}}else switch(r){case 1:if(s.slice_from("ισμ"))break;return;case 2:if(s.slice_from("ι"))break}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(h)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(v)||s.cursor>s.limit_backward||s.slice_from("αρακ")),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r;if(s.ket=s.cursor,0!=s.find_among_b(p)&&(s.bra=s.cursor,s.slice_del())){J=!1;var i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,0==(r=s.find_among_b(q))||s.cursor>s.limit_backward){if(s.cursor=s.limit-i,s.ket=s.cursor,s.bra=s.cursor,!s.eq_s_b("κορ"))return;if(!s.slice_from("ιτσ"));}else switch(r){case 1:if(s.slice_from("ακ"))break;return;case 2:if(s.slice_from("ιτσ"))break}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{if(s.ket=s.cursor,0!=s.find_among_b(B)&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var r=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(C)&&!(s.cursor>s.limit_backward)){if(s.slice_from("ιδ"))break r;return}if(s.cursor=s.limit-r,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(S))return;if(!s.slice_from("ιδ"))return}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(W)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(G)||s.cursor>s.limit_backward||s.slice_from("ισκ")),s.cursor=s.limit-r,s.limit-s.cursor),i=(s.ket=s.cursor,0!=s.find_among_b(j)&&(s.bra=s.cursor,s.slice_del())&&(i=s.limit-s.cursor,0==s.find_among_b(x))&&(s.cursor=s.limit-i,i=s.cursor,s.insert(s.cursor,s.cursor,"αδ"),s.cursor=i),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(y)&&(s.bra=s.cursor,s.slice_del())&&(s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(z))&&s.slice_from("εδ"),s.cursor=s.limit-i,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(A)&&(s.bra=s.cursor,s.slice_del())&&(s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(D))&&s.slice_from("ουδ"),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(E)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(F)||s.cursor>s.limit_backward||s.slice_from("ε")),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(K)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,s.in_grouping_b(H,945,969))&&s.slice_from("ι"),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{if(s.ket=s.cursor,0!=s.find_among_b(L)&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var r=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,s.in_grouping_b(H,945,969)){if(s.slice_from("ικ"))break r;return}s.cursor=s.limit-r,s.ket=s.cursor}s.bra=s.cursor,0==s.find_among_b(M)||s.cursor>s.limit_backward||s.slice_from("ικ")}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r=s.limit-s.cursor;if(s.ket=s.cursor,!s.eq_s_b("αγαμε")||(s.bra=s.cursor,s.cursor>s.limit_backward||s.slice_from("αγαμ"))){s.cursor=s.limit-r;r=s.limit-s.cursor;if(s.ket=s.cursor,0!=s.find_among_b(N)){if(s.bra=s.cursor,!s.slice_del())return;J=!1}s.cursor=s.limit-r,s.ket=s.cursor,s.eq_s_b("αμε")&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(O)||s.cursor>s.limit_backward||s.slice_from("αμ"))}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r=s.limit-s.cursor;if(s.ket=s.cursor,0!=s.find_among_b(Q)){if(s.bra=s.cursor,!s.slice_del())return;if(J=!1,s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(P)&&!(s.cursor>s.limit_backward||s.slice_from("αγαν")))return}if(s.cursor=s.limit-r,s.ket=s.cursor,s.eq_s_b("ανε")&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,s.in_grouping_b(I,945,969)){if(s.slice_from("αν"))break r;return}s.cursor=s.limit-i,s.ket=s.cursor}s.bra=s.cursor,0==s.find_among_b(R)||s.cursor>s.limit_backward||s.slice_from("αν")}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r=s.limit-s.cursor;if(s.ket=s.cursor,0!=s.find_among_b(T)){if(s.bra=s.cursor,!s.slice_del())return;J=!1}if(s.cursor=s.limit-r,s.ket=s.cursor,s.eq_s_b("ετε")&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,s.in_grouping_b(I,945,969)){if(s.slice_from("ετ"))break r;return}if(s.cursor=s.limit-i,s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(U)){if(s.slice_from("ετ"))break r;return}s.cursor=s.limit-i,s.ket=s.cursor}s.bra=s.cursor,0==s.find_among_b(V)||s.cursor>s.limit_backward||s.slice_from("ετ")}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{if(s.ket=s.cursor,0!=s.find_among_b(X)&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var r=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,s.eq_s_b("αρχ")&&!(s.cursor>s.limit_backward)){if(s.slice_from("οντ"))break r;return}if(s.cursor=s.limit-r,s.ket=s.cursor,s.bra=s.cursor,!s.eq_s_b("κρε"))return;if(!s.slice_from("ωντ"))return}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(Y)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,!s.eq_s_b("ον")||s.cursor>s.limit_backward||s.slice_from("ομαστ")),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r=s.limit-s.cursor;if(s.ket=s.cursor,s.eq_s_b("ιεστε")){if(s.bra=s.cursor,!s.slice_del())return;if(J=!1,s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(Z)&&!(s.cursor>s.limit_backward||s.slice_from("ιεστ")))return}s.cursor=s.limit-r,s.ket=s.cursor,s.eq_s_b("εστε")&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b($)||s.cursor>s.limit_backward||s.slice_from("ιεστ"))})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r=s.limit-s.cursor;if(s.ket=s.cursor,0!=s.find_among_b(r1)){if(s.bra=s.cursor,!s.slice_del())return;J=!1}if(s.cursor=s.limit-r,s.ket=s.cursor,0!=s.find_among_b(s1)&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(i1)){if(s.slice_from("ηκ"))break r;return}if(s.cursor=s.limit-i,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(c1))return;if(s.cursor>s.limit_backward)return;if(!s.slice_from("ηκ"))return}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{if(s.ket=s.cursor,0!=s.find_among_b(u1)&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var r=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,0!=s.find_among_b(e1)){if(s.slice_from("ουσ"))break r;return}if(s.cursor=s.limit-r,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(o1))return;if(s.cursor>s.limit_backward)return;if(!s.slice_from("ουσ"))return}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(l1)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(m1)||s.cursor>s.limit_backward||s.slice_from("ησ")),s.cursor=s.limit-r,s.limit-s.cursor),r=((()=>{var r;if(s.ket=s.cursor,0!=s.find_among_b(_1)&&(s.bra=s.cursor,s.slice_del())){J=!1;r:{var i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,s.eq_s_b("κολλ")){if(s.slice_from("αγ"))break r;return}s.cursor=s.limit-i;i=s.limit-s.cursor;if(s.ket=s.cursor,s.bra=s.cursor,0!=(r=s.find_among_b(a1)))switch(r){case 1:if(s.slice_from("αγ"))break;return}else{if(s.cursor=s.limit-i,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(t1))return;if(s.cursor>s.limit_backward)return;if(!s.slice_from("αγ"))return}}}})(),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(f1)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(b1)||s.cursor>s.limit_backward||s.slice_from("ηστ")),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(n1)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(k1)||s.cursor>s.limit_backward||s.slice_from("ουν")),s.cursor=s.limit-r,s.limit-s.cursor),r=(s.ket=s.cursor,0!=s.find_among_b(d1)&&(s.bra=s.cursor,s.slice_del())&&(J=!1,s.ket=s.cursor,s.bra=s.cursor,0==s.find_among_b(g1)||s.cursor>s.limit_backward||s.slice_from("ουμ")),s.cursor=s.limit-r,s.limit-s.cursor),c=(c=s.limit-s.cursor,s.ket=s.cursor,0!=s.find_among_b(w1)&&(s.bra=s.cursor,!s.slice_from("μα"))||(s.cursor=s.limit-c,J&&(s.ket=s.cursor,0!=s.find_among_b(v1))&&(s.bra=s.cursor,s.slice_del())),s.cursor=s.limit-r,s.limit-s.cursor);return s.ket=s.cursor,0!=s.find_among_b(h1)&&(s.bra=s.cursor,s.slice_del()),s.cursor=s.limit-c,s.cursor=s.limit_backward,!0},this.stemWord=function(r){return s.setCurrent(r),this.stem(),s.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/hindi-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/hindi-stemmer.js new file mode 100644 index 000000000..850b0430c --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/hindi-stemmer.js @@ -0,0 +1 @@ +var HindiStemmer=function(){var t=new BaseStemmer,r=[["आँ",-1,-1],["ाँ",-1,-1],["इयाँ",1,-1],["आइयाँ",2,-1],["ाइयाँ",2,-1],["ियाँ",1,-1],["आं",-1,-1],["उआं",6,-1],["ुआं",6,-1],["ईं",-1,-1],["आईं",9,-1],["ाईं",9,-1],["एं",-1,-1],["आएं",12,-1],["उएं",12,-1],["ाएं",12,-1],["ताएं",15,-1,e],["अताएं",16,-1],["नाएं",15,-1,e],["अनाएं",18,-1],["ुएं",12,-1],["ओं",-1,-1],["आओं",21,-1],["उओं",21,-1],["ाओं",21,-1],["ताओं",24,-1,e],["अताओं",25,-1],["नाओं",24,-1,e],["अनाओं",27,-1],["ुओं",21,-1],["ां",-1,-1],["इयां",30,-1],["आइयां",31,-1],["ाइयां",31,-1],["ियां",30,-1],["ीं",-1,-1],["तीं",35,-1,e],["अतीं",36,-1],["आतीं",36,-1],["ातीं",36,-1],["ें",-1,-1],["ों",-1,-1],["इयों",41,-1],["आइयों",42,-1],["ाइयों",42,-1],["ियों",41,-1],["अ",-1,-1],["आ",-1,-1],["इ",-1,-1],["ई",-1,-1],["आई",49,-1],["ाई",49,-1],["उ",-1,-1],["ऊ",-1,-1],["ए",-1,-1],["आए",54,-1],["इए",54,-1],["आइए",56,-1],["ाइए",56,-1],["ाए",54,-1],["िए",54,-1],["ओ",-1,-1],["आओ",61,-1],["ाओ",61,-1],["कर",-1,-1,e],["अकर",64,-1],["आकर",64,-1],["ाकर",64,-1],["ा",-1,-1],["ऊंगा",68,-1],["आऊंगा",69,-1],["ाऊंगा",69,-1],["ूंगा",68,-1],["एगा",68,-1],["आएगा",73,-1],["ाएगा",73,-1],["ेगा",68,-1],["ता",68,-1,e],["अता",77,-1],["आता",77,-1],["ाता",77,-1],["ना",68,-1,e],["अना",81,-1],["आना",81,-1],["ाना",81,-1],["आया",68,-1],["ाया",68,-1],["ि",-1,-1],["ी",-1,-1],["ऊंगी",88,-1],["आऊंगी",89,-1],["ाऊंगी",89,-1],["एंगी",88,-1],["आएंगी",92,-1],["ाएंगी",92,-1],["ूंगी",88,-1],["ेंगी",88,-1],["एगी",88,-1],["आएगी",97,-1],["ाएगी",97,-1],["ओगी",88,-1],["आओगी",100,-1],["ाओगी",100,-1],["ेगी",88,-1],["ोगी",88,-1],["ती",88,-1,e],["अती",105,-1],["आती",105,-1],["ाती",105,-1],["नी",88,-1,e],["अनी",109,-1],["ु",-1,-1],["ू",-1,-1],["े",-1,-1],["एंगे",113,-1],["आएंगे",114,-1],["ाएंगे",114,-1],["ेंगे",113,-1],["ओगे",113,-1],["आओगे",118,-1],["ाओगे",118,-1],["ोगे",113,-1],["ते",113,-1,e],["अते",122,-1],["आते",122,-1],["ाते",122,-1],["ने",113,-1,e],["अने",126,-1],["आने",126,-1],["ाने",126,-1],["ो",-1,-1],["्",-1,-1]],i=[255,255,255,255,159,0,0,0,248,7];function e(){return!!t.in_grouping_b(i,2325,2399)}this.stem=function(){return!(t.cursor>=t.limit||(t.cursor++,t.limit_backward=t.cursor,t.cursor=t.limit,t.ket=t.cursor,0==t.find_among_b(r))||(t.bra=t.cursor,!t.slice_del())||(t.cursor=t.limit_backward,0))},this.stemWord=function(r){return t.setCurrent(r),this.stem(),t.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/hungarian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/hungarian-stemmer.js index e1fca971f..a7f3926ca 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/hungarian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/hungarian-stemmer.js @@ -1 +1 @@ -HungarianStemmer=function(){var r=new BaseStemmer;var e=[["cs",-1,-1],["dzs",-1,-1],["gy",-1,-1],["ly",-1,-1],["ny",-1,-1],["sz",-1,-1],["ty",-1,-1],["zs",-1,-1]];var i=[["á",-1,1],["é",-1,2]];var a=[["bb",-1,-1],["cc",-1,-1],["dd",-1,-1],["ff",-1,-1],["gg",-1,-1],["jj",-1,-1],["kk",-1,-1],["ll",-1,-1],["mm",-1,-1],["nn",-1,-1],["pp",-1,-1],["rr",-1,-1],["ccs",-1,-1],["ss",-1,-1],["zzs",-1,-1],["tt",-1,-1],["vv",-1,-1],["ggy",-1,-1],["lly",-1,-1],["nny",-1,-1],["tty",-1,-1],["ssz",-1,-1],["zz",-1,-1]];var t=[["al",-1,1],["el",-1,1]];var s=[["ba",-1,-1],["ra",-1,-1],["be",-1,-1],["re",-1,-1],["ig",-1,-1],["nak",-1,-1],["nek",-1,-1],["val",-1,-1],["vel",-1,-1],["ul",-1,-1],["nál",-1,-1],["nél",-1,-1],["ból",-1,-1],["ról",-1,-1],["tól",-1,-1],["ül",-1,-1],["ből",-1,-1],["ről",-1,-1],["től",-1,-1],["n",-1,-1],["an",19,-1],["ban",20,-1],["en",19,-1],["ben",22,-1],["képpen",22,-1],["on",19,-1],["ön",19,-1],["képp",-1,-1],["kor",-1,-1],["t",-1,-1],["at",29,-1],["et",29,-1],["ként",29,-1],["anként",32,-1],["enként",32,-1],["onként",32,-1],["ot",29,-1],["ért",29,-1],["öt",29,-1],["hez",-1,-1],["hoz",-1,-1],["höz",-1,-1],["vá",-1,-1],["vé",-1,-1]];var u=[["án",-1,2],["én",-1,1],["ánként",-1,2]];var n=[["stul",-1,1],["astul",0,1],["ástul",0,2],["stül",-1,1],["estül",3,1],["éstül",3,3]];var f=[["á",-1,1],["é",-1,1]];var c=[["k",-1,3],["ak",0,3],["ek",0,3],["ok",0,3],["ák",0,1],["ék",0,2],["ök",0,3]];var l=[["éi",-1,1],["áéi",0,3],["ééi",0,2],["é",-1,1],["ké",3,1],["aké",4,1],["eké",4,1],["oké",4,1],["áké",4,3],["éké",4,2],["öké",4,1],["éé",3,2]];var o=[["a",-1,1],["ja",0,1],["d",-1,1],["ad",2,1],["ed",2,1],["od",2,1],["ád",2,2],["éd",2,3],["öd",2,1],["e",-1,1],["je",9,1],["nk",-1,1],["unk",11,1],["ánk",11,2],["énk",11,3],["ünk",11,1],["uk",-1,1],["juk",16,1],["ájuk",17,2],["ük",-1,1],["jük",19,1],["éjük",20,3],["m",-1,1],["am",22,1],["em",22,1],["om",22,1],["ám",22,2],["ém",22,3],["o",-1,1],["á",-1,2],["é",-1,3]];var k=[["id",-1,1],["aid",0,1],["jaid",1,1],["eid",0,1],["jeid",3,1],["áid",0,2],["éid",0,3],["i",-1,1],["ai",7,1],["jai",8,1],["ei",7,1],["jei",10,1],["ái",7,2],["éi",7,3],["itek",-1,1],["eitek",14,1],["jeitek",15,1],["éitek",14,3],["ik",-1,1],["aik",18,1],["jaik",19,1],["eik",18,1],["jeik",21,1],["áik",18,2],["éik",18,3],["ink",-1,1],["aink",25,1],["jaink",26,1],["eink",25,1],["jeink",28,1],["áink",25,2],["éink",25,3],["aitok",-1,1],["jaitok",32,1],["áitok",-1,2],["im",-1,1],["aim",35,1],["jaim",36,1],["eim",35,1],["jeim",38,1],["áim",35,2],["éim",35,3]];var m=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,36,10,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1];var b=0;function _(){b=r.limit;r:{var i=r.cursor;e:{if(!r.in_grouping(m,97,369)){break e}i:while(true){var a=r.cursor;a:{if(!r.out_grouping(m,97,369)){break a}r.cursor=a;break i}r.cursor=a;if(r.cursor>=r.limit){break e}r.cursor++}i:{var t=r.cursor;a:{if(r.find_among(e)==0){break a}break i}r.cursor=t;if(r.cursor>=r.limit){break e}r.cursor++}b=r.cursor;break r}r.cursor=i;if(!r.out_grouping(m,97,369)){return false}e:while(true){i:{if(!r.in_grouping(m,97,369)){break i}break e}if(r.cursor>=r.limit){return false}r.cursor++}b=r.cursor}return true}function d(){if(!(b<=r.cursor)){return false}return true}function v(){var e;r.ket=r.cursor;e=r.find_among_b(i);if(e==0){return false}r.bra=r.cursor;if(!d()){return false}switch(e){case 1:if(!r.slice_from("a")){return false}break;case 2:if(!r.slice_from("e")){return false}break}return true}function g(){var e=r.limit-r.cursor;if(r.find_among_b(a)==0){return false}r.cursor=r.limit-e;return true}function j(){if(r.cursor<=r.limit_backward){return false}r.cursor--;r.ket=r.cursor;{var e=r.cursor-1;if(e{_=e.limit;var r=e.cursor;if(e.in_grouping(f,97,369)){var i=e.cursor;e.go_in_grouping(f,97,369)&&(e.cursor++,_=e.cursor),e.cursor=i}else{if(e.cursor=r,!e.go_out_grouping(f,97,369))return;e.cursor++,_=e.cursor}})(),e.cursor=r,e.limit_backward=e.cursor,e.cursor=e.limit,e.limit-e.cursor),r=(e.ket=e.cursor,0!=e.find_among_b(c)&&(e.bra=e.cursor,b())&&d()&&e.slice_del()&&g(),e.cursor=e.limit-r,e.limit-e.cursor),r=(j(),e.cursor=e.limit-r,e.limit-e.cursor),r=((()=>{var r;if(e.ket=e.cursor,0!=(r=e.find_among_b(t))&&(e.bra=e.cursor,b()))switch(r){case 1:if(e.slice_from("e"))break;return;case 2:if(e.slice_from("a"))break}})(),e.cursor=e.limit-r,e.limit-e.cursor),r=((()=>{var r;if(e.ket=e.cursor,0!=(r=e.find_among_b(o))&&(e.bra=e.cursor,b()))switch(r){case 1:if(e.slice_del())break;return;case 2:if(e.slice_from("a"))break;return;case 3:if(e.slice_from("e"))break}})(),e.cursor=e.limit-r,e.limit-e.cursor),r=(e.ket=e.cursor,0!=e.find_among_b(n)&&(e.bra=e.cursor,b())&&d()&&e.slice_del()&&g(),e.cursor=e.limit-r,e.limit-e.cursor),r=((()=>{var r;if(e.ket=e.cursor,0!=(r=e.find_among_b(k))&&(e.bra=e.cursor,b()))switch(r){case 1:if(e.slice_del())break;return;case 2:if(e.slice_from("e"))break;return;case 3:if(e.slice_from("a"))break}})(),e.cursor=e.limit-r,e.limit-e.cursor),r=((()=>{var r;if(e.ket=e.cursor,0!=(r=e.find_among_b(l))&&(e.bra=e.cursor,b()))switch(r){case 1:if(e.slice_del())break;return;case 2:if(e.slice_from("a"))break;return;case 3:if(e.slice_from("e"))break}})(),e.cursor=e.limit-r,e.limit-e.cursor),r=((()=>{var r;if(e.ket=e.cursor,0!=(r=e.find_among_b(m))&&(e.bra=e.cursor,b()))switch(r){case 1:if(e.slice_del())break;return;case 2:if(e.slice_from("a"))break;return;case 3:if(e.slice_from("e"))break}})(),e.cursor=e.limit-r,e.limit-e.cursor);return(()=>{var r;if(e.ket=e.cursor,0!=(r=e.find_among_b(u))&&(e.bra=e.cursor,b()))switch(r){case 1:if(e.slice_from("a"))break;return;case 2:if(e.slice_from("e"))break;return;case 3:if(e.slice_del())break}})(),e.cursor=e.limit-r,e.cursor=e.limit_backward,!0},this.stemWord=function(r){return e.setCurrent(r),this.stem(),e.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/indonesian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/indonesian-stemmer.js new file mode 100644 index 000000000..89339d978 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/indonesian-stemmer.js @@ -0,0 +1 @@ +var IndonesianStemmer=function(){var s=new BaseStemmer,c=[["kah",-1,1],["lah",-1,1],["pun",-1,1]],o=[["nya",-1,1],["ku",-1,1],["mu",-1,1]],r=[["i",-1,1,function(){if(2{var r;if(s.bra=s.cursor,0!=(r=s.find_among(n))){switch(s.ket=s.cursor,r){case 1:if(!s.slice_del())return;a=1,--l;break;case 2:if(!s.slice_del())return;a=3,--l;break;case 3:if(a=1,!s.slice_from("s"))return;--l;break;case 4:if(a=3,!s.slice_from("s"))return;--l;break;case 5:a=1,--l;r:{var e=s.cursor,i=s.cursor;if(s.in_grouping(t,97,117)){if(s.cursor=i,s.slice_from("p"))break r;return}if(s.cursor=e,!s.slice_del())return}break;case 6:a=3,--l;r:{var u=s.cursor,c=s.cursor;if(s.in_grouping(t,97,117)){if(s.cursor=c,s.slice_from("p"))break r;return}if(s.cursor=u,!s.slice_del())return}}return 1}})()?(u=s.cursor,i=s.cursor,l<=2||(s.limit_backward=s.cursor,s.cursor=s.limit,f()&&(s.cursor=s.limit_backward,s.cursor=i,l<=2||m())),s.cursor=u,s.cursor=e):(s.cursor=r,i=s.cursor,m(),s.cursor=i,u=s.cursor,l<=2||(s.limit_backward=s.cursor,s.cursor=s.limit,f()&&(s.cursor=s.limit_backward)),s.cursor=u),0))},this.stemWord=function(r){return s.setCurrent(r),this.stem(),s.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/irish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/irish-stemmer.js new file mode 100644 index 000000000..c90c92292 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/irish-stemmer.js @@ -0,0 +1 @@ +var IrishStemmer=function(){var i=new BaseStemmer,e=[["b'",-1,1],["bh",-1,4],["bhf",1,2],["bp",-1,8],["ch",-1,5],["d'",-1,1],["d'fh",5,2],["dh",-1,6],["dt",-1,9],["fh",-1,2],["gc",-1,5],["gh",-1,7],["h-",-1,1],["m'",-1,1],["mb",-1,4],["mh",-1,10],["n-",-1,1],["nd",-1,6],["ng",-1,7],["ph",-1,8],["sh",-1,3],["t-",-1,1],["th",-1,9],["ts",-1,3]],a=[["íochta",-1,1],["aíochta",0,1],["ire",-1,2],["aire",2,2],["abh",-1,1],["eabh",4,1],["ibh",-1,1],["aibh",6,1],["amh",-1,1],["eamh",8,1],["imh",-1,1],["aimh",10,1],["íocht",-1,1],["aíocht",12,1],["irí",-1,2],["airí",14,2]],c=[["óideacha",-1,6],["patacha",-1,5],["achta",-1,1],["arcachta",2,2],["eachta",2,1],["grafaíochta",-1,4],["paite",-1,5],["ach",-1,1],["each",7,1],["óideach",8,6],["gineach",8,3],["patach",7,5],["grafaíoch",-1,4],["pataigh",-1,5],["óidigh",-1,6],["achtúil",-1,1],["eachtúil",15,1],["gineas",-1,3],["ginis",-1,3],["acht",-1,1],["arcacht",19,2],["eacht",19,1],["grafaíocht",-1,4],["arcachtaí",-1,2],["grafaíochtaí",-1,4]],t=[["imid",-1,1],["aimid",0,1],["ímid",-1,1],["aímid",2,1],["adh",-1,2],["eadh",4,2],["faidh",-1,1],["fidh",-1,1],["áil",-1,2],["ain",-1,2],["tear",-1,2],["tar",-1,2]],s=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,2],o=0,u=0,f=0;function n(){return u<=i.cursor}function h(){return o<=i.cursor}function m(){var r;if(i.ket=i.cursor,0!=(r=i.find_among_b(t)))switch(i.bra=i.cursor,r){case 1:if(!(f<=i.cursor))return;if(i.slice_del())break;return;case 2:if(!n())return;if(i.slice_del())break;return}}this.stem=function(){var r=i.cursor,r=((()=>{var r;if(i.bra=i.cursor,0!=(r=i.find_among(e)))switch(i.ket=i.cursor,r){case 1:if(i.slice_del())break;return;case 2:if(i.slice_from("f"))break;return;case 3:if(i.slice_from("s"))break;return;case 4:if(i.slice_from("b"))break;return;case 5:if(i.slice_from("c"))break;return;case 6:if(i.slice_from("d"))break;return;case 7:if(i.slice_from("g"))break;return;case 8:if(i.slice_from("p"))break;return;case 9:if(i.slice_from("t"))break;return;case 10:if(i.slice_from("m"))break}})(),i.cursor=r,f=i.limit,u=i.limit,o=i.limit,r=i.cursor,i.go_out_grouping(s,97,250)&&(i.cursor++,f=i.cursor,i.go_in_grouping(s,97,250))&&(i.cursor++,u=i.cursor,i.go_out_grouping(s,97,250))&&(i.cursor++,i.go_in_grouping(s,97,250))&&(i.cursor++,o=i.cursor),i.cursor=r,i.limit_backward=i.cursor,i.cursor=i.limit,i.limit-i.cursor),r=((()=>{var r;if(i.ket=i.cursor,0!=(r=i.find_among_b(a)))switch(i.bra=i.cursor,r){case 1:if(!n())return;if(i.slice_del())break;return;case 2:if(!h())return;if(i.slice_del())break}})(),i.cursor=i.limit-r,i.limit-i.cursor),r=((()=>{var r;if(i.ket=i.cursor,0!=(r=i.find_among_b(c)))switch(i.bra=i.cursor,r){case 1:if(!h())return;if(i.slice_del())break;return;case 2:if(i.slice_from("arc"))break;return;case 3:if(i.slice_from("gin"))break;return;case 4:if(i.slice_from("graf"))break;return;case 5:if(i.slice_from("paite"))break;return;case 6:if(i.slice_from("óid"))break}})(),i.cursor=i.limit-r,i.limit-i.cursor);return m(),i.cursor=i.limit-r,i.cursor=i.limit_backward,!0},this.stemWord=function(r){return i.setCurrent(r),this.stem(),i.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/italian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/italian-stemmer.js index a3a5c4265..ac46b1d41 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/italian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/italian-stemmer.js @@ -1 +1 @@ -ItalianStemmer=function(){var r=new BaseStemmer;var e=[["",-1,7],["qu",0,6],["á",0,1],["é",0,2],["í",0,3],["ó",0,4],["ú",0,5]];var i=[["",-1,3],["I",0,1],["U",0,2]];var a=[["la",-1,-1],["cela",0,-1],["gliela",0,-1],["mela",0,-1],["tela",0,-1],["vela",0,-1],["le",-1,-1],["cele",6,-1],["gliele",6,-1],["mele",6,-1],["tele",6,-1],["vele",6,-1],["ne",-1,-1],["cene",12,-1],["gliene",12,-1],["mene",12,-1],["sene",12,-1],["tene",12,-1],["vene",12,-1],["ci",-1,-1],["li",-1,-1],["celi",20,-1],["glieli",20,-1],["meli",20,-1],["teli",20,-1],["veli",20,-1],["gli",20,-1],["mi",-1,-1],["si",-1,-1],["ti",-1,-1],["vi",-1,-1],["lo",-1,-1],["celo",31,-1],["glielo",31,-1],["melo",31,-1],["telo",31,-1],["velo",31,-1]];var s=[["ando",-1,1],["endo",-1,1],["ar",-1,2],["er",-1,2],["ir",-1,2]];var o=[["ic",-1,-1],["abil",-1,-1],["os",-1,-1],["iv",-1,1]];var u=[["ic",-1,1],["abil",-1,1],["iv",-1,1]];var t=[["ica",-1,1],["logia",-1,3],["osa",-1,1],["ista",-1,1],["iva",-1,9],["anza",-1,1],["enza",-1,5],["ice",-1,1],["atrice",7,1],["iche",-1,1],["logie",-1,3],["abile",-1,1],["ibile",-1,1],["usione",-1,4],["azione",-1,2],["uzione",-1,4],["atore",-1,2],["ose",-1,1],["ante",-1,1],["mente",-1,1],["amente",19,7],["iste",-1,1],["ive",-1,9],["anze",-1,1],["enze",-1,5],["ici",-1,1],["atrici",25,1],["ichi",-1,1],["abili",-1,1],["ibili",-1,1],["ismi",-1,1],["usioni",-1,4],["azioni",-1,2],["uzioni",-1,4],["atori",-1,2],["osi",-1,1],["anti",-1,1],["amenti",-1,6],["imenti",-1,6],["isti",-1,1],["ivi",-1,9],["ico",-1,1],["ismo",-1,1],["oso",-1,1],["amento",-1,6],["imento",-1,6],["ivo",-1,9],["ità",-1,8],["istà",-1,1],["istè",-1,1],["istì",-1,1]];var c=[["isca",-1,1],["enda",-1,1],["ata",-1,1],["ita",-1,1],["uta",-1,1],["ava",-1,1],["eva",-1,1],["iva",-1,1],["erebbe",-1,1],["irebbe",-1,1],["isce",-1,1],["ende",-1,1],["are",-1,1],["ere",-1,1],["ire",-1,1],["asse",-1,1],["ate",-1,1],["avate",16,1],["evate",16,1],["ivate",16,1],["ete",-1,1],["erete",20,1],["irete",20,1],["ite",-1,1],["ereste",-1,1],["ireste",-1,1],["ute",-1,1],["erai",-1,1],["irai",-1,1],["isci",-1,1],["endi",-1,1],["erei",-1,1],["irei",-1,1],["assi",-1,1],["ati",-1,1],["iti",-1,1],["eresti",-1,1],["iresti",-1,1],["uti",-1,1],["avi",-1,1],["evi",-1,1],["ivi",-1,1],["isco",-1,1],["ando",-1,1],["endo",-1,1],["Yamo",-1,1],["iamo",-1,1],["avamo",-1,1],["evamo",-1,1],["ivamo",-1,1],["eremo",-1,1],["iremo",-1,1],["assimo",-1,1],["ammo",-1,1],["emmo",-1,1],["eremmo",54,1],["iremmo",54,1],["immo",-1,1],["ano",-1,1],["iscano",58,1],["avano",58,1],["evano",58,1],["ivano",58,1],["eranno",-1,1],["iranno",-1,1],["ono",-1,1],["iscono",65,1],["arono",65,1],["erono",65,1],["irono",65,1],["erebbero",-1,1],["irebbero",-1,1],["assero",-1,1],["essero",-1,1],["issero",-1,1],["ato",-1,1],["ito",-1,1],["uto",-1,1],["avo",-1,1],["evo",-1,1],["ivo",-1,1],["ar",-1,1],["ir",-1,1],["erà",-1,1],["irà",-1,1],["erò",-1,1],["irò",-1,1]];var l=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2,1];var n=[17,65,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2];var f=[17];var b=0;var m=0;var k=0;function _(){var i;var a=r.cursor;while(true){var s=r.cursor;r:{r.bra=r.cursor;i=r.find_among(e);if(i==0){break r}r.ket=r.cursor;switch(i){case 1:if(!r.slice_from("à")){return false}break;case 2:if(!r.slice_from("è")){return false}break;case 3:if(!r.slice_from("ì")){return false}break;case 4:if(!r.slice_from("ò")){return false}break;case 5:if(!r.slice_from("ù")){return false}break;case 6:if(!r.slice_from("qU")){return false}break;case 7:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=s;break}r.cursor=a;while(true){var o=r.cursor;r:{e:while(true){var u=r.cursor;i:{if(!r.in_grouping(l,97,249)){break i}r.bra=r.cursor;a:{var t=r.cursor;s:{if(!r.eq_s("u")){break s}r.ket=r.cursor;if(!r.in_grouping(l,97,249)){break s}if(!r.slice_from("U")){return false}break a}r.cursor=t;if(!r.eq_s("i")){break i}r.ket=r.cursor;if(!r.in_grouping(l,97,249)){break i}if(!r.slice_from("I")){return false}}r.cursor=u;break e}r.cursor=u;if(r.cursor>=r.limit){break r}r.cursor++}continue}r.cursor=o;break}return true}function v(){k=r.limit;m=r.limit;b=r.limit;var e=r.cursor;r:{e:{var i=r.cursor;i:{if(!r.in_grouping(l,97,249)){break i}a:{var a=r.cursor;s:{if(!r.out_grouping(l,97,249)){break s}o:while(true){u:{if(!r.in_grouping(l,97,249)){break u}break o}if(r.cursor>=r.limit){break s}r.cursor++}break a}r.cursor=a;if(!r.in_grouping(l,97,249)){break i}s:while(true){o:{if(!r.out_grouping(l,97,249)){break o}break s}if(r.cursor>=r.limit){break i}r.cursor++}}break e}r.cursor=i;if(!r.out_grouping(l,97,249)){break r}i:{var s=r.cursor;a:{if(!r.out_grouping(l,97,249)){break a}s:while(true){o:{if(!r.in_grouping(l,97,249)){break o}break s}if(r.cursor>=r.limit){break a}r.cursor++}break i}r.cursor=s;if(!r.in_grouping(l,97,249)){break r}if(r.cursor>=r.limit){break r}r.cursor++}}k=r.cursor}r.cursor=e;var o=r.cursor;r:{e:while(true){i:{if(!r.in_grouping(l,97,249)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(l,97,249)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}m=r.cursor;e:while(true){i:{if(!r.in_grouping(l,97,249)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(l,97,249)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}b=r.cursor}r.cursor=o;return true}function g(){var e;while(true){var a=r.cursor;r:{r.bra=r.cursor;e=r.find_among(i);if(e==0){break r}r.ket=r.cursor;switch(e){case 1:if(!r.slice_from("i")){return false}break;case 2:if(!r.slice_from("u")){return false}break;case 3:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=a;break}return true}function d(){if(!(k<=r.cursor)){return false}return true}function w(){if(!(m<=r.cursor)){return false}return true}function h(){if(!(b<=r.cursor)){return false}return true}function p(){var e;r.ket=r.cursor;if(r.find_among_b(a)==0){return false}r.bra=r.cursor;e=r.find_among_b(s);if(e==0){return false}if(!d()){return false}switch(e){case 1:if(!r.slice_del()){return false}break;case 2:if(!r.slice_from("e")){return false}break}return true}function q(){var e;r.ket=r.cursor;e=r.find_among_b(t);if(e==0){return false}r.bra=r.cursor;switch(e){case 1:if(!h()){return false}if(!r.slice_del()){return false}break;case 2:if(!h()){return false}if(!r.slice_del()){return false}var i=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("ic")){r.cursor=r.limit-i;break r}r.bra=r.cursor;if(!h()){r.cursor=r.limit-i;break r}if(!r.slice_del()){return false}}break;case 3:if(!h()){return false}if(!r.slice_from("log")){return false}break;case 4:if(!h()){return false}if(!r.slice_from("u")){return false}break;case 5:if(!h()){return false}if(!r.slice_from("ente")){return false}break;case 6:if(!d()){return false}if(!r.slice_del()){return false}break;case 7:if(!w()){return false}if(!r.slice_del()){return false}var a=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(o);if(e==0){r.cursor=r.limit-a;break r}r.bra=r.cursor;if(!h()){r.cursor=r.limit-a;break r}if(!r.slice_del()){return false}switch(e){case 1:r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-a;break r}r.bra=r.cursor;if(!h()){r.cursor=r.limit-a;break r}if(!r.slice_del()){return false}break}}break;case 8:if(!h()){return false}if(!r.slice_del()){return false}var s=r.limit-r.cursor;r:{r.ket=r.cursor;if(r.find_among_b(u)==0){r.cursor=r.limit-s;break r}r.bra=r.cursor;if(!h()){r.cursor=r.limit-s;break r}if(!r.slice_del()){return false}}break;case 9:if(!h()){return false}if(!r.slice_del()){return false}var c=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-c;break r}r.bra=r.cursor;if(!h()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}r.ket=r.cursor;if(!r.eq_s_b("ic")){r.cursor=r.limit-c;break r}r.bra=r.cursor;if(!h()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}}break}return true}function z(){if(r.cursor{for(var r,i=u.cursor;;){var e=u.cursor;r:{switch(u.bra=u.cursor,r=u.find_among(a),u.ket=u.cursor,r){case 1:if(u.slice_from("à"))break;return;case 2:if(u.slice_from("è"))break;return;case 3:if(u.slice_from("ì"))break;return;case 4:if(u.slice_from("ò"))break;return;case 5:if(u.slice_from("ù"))break;return;case 6:if(u.slice_from("qU"))break;return;case 7:if(u.cursor>=u.limit)break r;u.cursor++}continue}u.cursor=e;break}for(u.cursor=i;;){var o=u.cursor;r:{for(;;){var s=u.cursor;i:if(u.in_grouping(m,97,249)){u.bra=u.cursor;e:{var c=u.cursor;if(u.eq_s("u")&&(u.ket=u.cursor,u.in_grouping(m,97,249))){if(u.slice_from("U"))break e;return}if(u.cursor=c,!u.eq_s("i"))break i;if(u.ket=u.cursor,!u.in_grouping(m,97,249))break i;if(!u.slice_from("I"))return}u.cursor=s;break}if(u.cursor=s,u.cursor>=u.limit)break r;u.cursor++}continue}u.cursor=o;break}})(),u.cursor=r,v=u.limit,k=u.limit,g=u.limit,u.cursor);r:{i:{var i=u.cursor;e:if(u.in_grouping(m,97,249)){var e=u.cursor;if(!u.out_grouping(m,97,249)||!u.go_out_grouping(m,97,249)){if(u.cursor=e,!u.in_grouping(m,97,249))break e;if(!u.go_in_grouping(m,97,249))break e}u.cursor++;break i}if(u.cursor=i,!u.eq_s("divan")){if(u.cursor=i,!u.out_grouping(m,97,249))break r;e=u.cursor;if(!u.out_grouping(m,97,249)||!u.go_out_grouping(m,97,249)){if(u.cursor=e,!u.in_grouping(m,97,249))break r;if(u.cursor>=u.limit)break r}u.cursor++}}v=u.cursor}u.cursor=r,r=u.cursor,u.go_out_grouping(m,97,249)&&(u.cursor++,u.go_in_grouping(m,97,249))&&(u.cursor++,k=u.cursor,u.go_out_grouping(m,97,249))&&(u.cursor++,u.go_in_grouping(m,97,249))&&(u.cursor++,g=u.cursor),u.cursor=r,u.limit_backward=u.cursor,u.cursor=u.limit;var r=u.limit-u.cursor,r=((()=>{var r;if(u.ket=u.cursor,0!=u.find_among_b(c)&&(u.bra=u.cursor,0!=(r=u.find_among_b(t)))&&d())switch(r){case 1:if(u.slice_del())break;return;case 2:if(u.slice_from("e"))break}})(),u.cursor=u.limit-r,u.limit-u.cursor),o=u.limit-u.cursor,o=(w()||(u.cursor=u.limit-o,(()=>{if(!(u.cursor{var r=u.limit-u.cursor;if(u.ket=u.cursor,u.in_grouping_b(_,97,242))if(u.bra=u.cursor,d()){if(!u.slice_del())return;if(u.ket=u.cursor,u.eq_s_b("i"))if(u.bra=u.cursor,d()){if(!u.slice_del())return}else u.cursor=u.limit-r;else u.cursor=u.limit-r}else u.cursor=u.limit-r;else u.cursor=u.limit-r;if(r=u.limit-u.cursor,u.ket=u.cursor,u.eq_s_b("h"))if(u.bra=u.cursor,u.in_grouping_b(b,99,103))if(d()){if(!u.slice_del());}else u.cursor=u.limit-r;else u.cursor=u.limit-r;else u.cursor=u.limit-r})(),u.cursor=u.limit-o,u.cursor=u.limit_backward,u.cursor);return(()=>{for(var r;;){var i=u.cursor;r:{switch(u.bra=u.cursor,r=u.find_among(s),u.ket=u.cursor,r){case 1:if(u.slice_from("i"))break;return;case 2:if(u.slice_from("u"))break;return;case 3:if(u.cursor>=u.limit)break r;u.cursor++}continue}u.cursor=i;break}})(),u.cursor=r,!0},this.stemWord=function(r){return u.setCurrent(r),this.stem(),u.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/lithuanian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/lithuanian-stemmer.js new file mode 100644 index 000000000..6d48ddac9 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/lithuanian-stemmer.js @@ -0,0 +1 @@ +var LithuanianStemmer=function(){var e=new BaseStemmer,t=[["a",-1,-1],["ia",0,-1],["eria",1,-1],["osna",0,-1],["iosna",3,-1],["uosna",3,-1],["iuosna",5,-1],["ysna",0,-1],["ėsna",0,-1],["e",-1,-1],["ie",9,-1],["enie",10,-1],["erie",10,-1],["oje",9,-1],["ioje",13,-1],["uje",9,-1],["iuje",15,-1],["yje",9,-1],["enyje",17,-1],["eryje",17,-1],["ėje",9,-1],["ame",9,-1],["iame",21,-1],["sime",9,-1],["ome",9,-1],["ėme",9,-1],["tumėme",25,-1],["ose",9,-1],["iose",27,-1],["uose",27,-1],["iuose",29,-1],["yse",9,-1],["enyse",31,-1],["eryse",31,-1],["ėse",9,-1],["ate",9,-1],["iate",35,-1],["ite",9,-1],["kite",37,-1],["site",37,-1],["ote",9,-1],["tute",9,-1],["ėte",9,-1],["tumėte",42,-1],["i",-1,-1],["ai",44,-1],["iai",45,-1],["eriai",46,-1],["ei",44,-1],["tumei",48,-1],["ki",44,-1],["imi",44,-1],["erimi",51,-1],["umi",44,-1],["iumi",53,-1],["si",44,-1],["asi",55,-1],["iasi",56,-1],["esi",55,-1],["iesi",58,-1],["siesi",59,-1],["isi",55,-1],["aisi",61,-1],["eisi",61,-1],["tumeisi",63,-1],["uisi",61,-1],["osi",55,-1],["ėjosi",66,-1],["uosi",66,-1],["iuosi",68,-1],["siuosi",69,-1],["usi",55,-1],["ausi",71,-1],["čiausi",72,-1],["ąsi",55,-1],["ėsi",55,-1],["ųsi",55,-1],["tųsi",76,-1],["ti",44,-1],["enti",78,-1],["inti",78,-1],["oti",78,-1],["ioti",81,-1],["uoti",81,-1],["iuoti",83,-1],["auti",78,-1],["iauti",85,-1],["yti",78,-1],["ėti",78,-1],["telėti",88,-1],["inėti",88,-1],["terėti",88,-1],["ui",44,-1],["iui",92,-1],["eniui",93,-1],["oj",-1,-1],["ėj",-1,-1],["k",-1,-1],["am",-1,-1],["iam",98,-1],["iem",-1,-1],["im",-1,-1],["sim",101,-1],["om",-1,-1],["tum",-1,-1],["ėm",-1,-1],["tumėm",105,-1],["an",-1,-1],["on",-1,-1],["ion",108,-1],["un",-1,-1],["iun",110,-1],["ėn",-1,-1],["o",-1,-1],["io",113,-1],["enio",114,-1],["ėjo",113,-1],["uo",113,-1],["s",-1,-1],["as",118,-1],["ias",119,-1],["es",118,-1],["ies",121,-1],["is",118,-1],["ais",123,-1],["iais",124,-1],["tumeis",123,-1],["imis",123,-1],["enimis",127,-1],["omis",123,-1],["iomis",129,-1],["umis",123,-1],["ėmis",123,-1],["enis",123,-1],["asis",123,-1],["ysis",123,-1],["ams",118,-1],["iams",136,-1],["iems",118,-1],["ims",118,-1],["enims",139,-1],["erims",139,-1],["oms",118,-1],["ioms",142,-1],["ums",118,-1],["ėms",118,-1],["ens",118,-1],["os",118,-1],["ios",147,-1],["uos",147,-1],["iuos",149,-1],["ers",118,-1],["us",118,-1],["aus",152,-1],["iaus",153,-1],["ius",152,-1],["ys",118,-1],["enys",156,-1],["erys",156,-1],["ąs",118,-1],["iąs",159,-1],["ės",118,-1],["amės",161,-1],["iamės",162,-1],["imės",161,-1],["kimės",164,-1],["simės",164,-1],["omės",161,-1],["ėmės",161,-1],["tumėmės",168,-1],["atės",161,-1],["iatės",170,-1],["sitės",161,-1],["otės",161,-1],["ėtės",161,-1],["tumėtės",174,-1],["įs",118,-1],["ūs",118,-1],["tųs",118,-1],["at",-1,-1],["iat",179,-1],["it",-1,-1],["sit",181,-1],["ot",-1,-1],["ėt",-1,-1],["tumėt",184,-1],["u",-1,-1],["au",186,-1],["iau",187,-1],["čiau",188,-1],["iu",186,-1],["eniu",190,-1],["siu",190,-1],["y",-1,-1],["ą",-1,-1],["ią",194,-1],["ė",-1,-1],["ę",-1,-1],["į",-1,-1],["enį",198,-1],["erį",198,-1],["ų",-1,-1],["ių",201,-1],["erų",201,-1]],a=[["ing",-1,-1],["aj",-1,-1],["iaj",1,-1],["iej",-1,-1],["oj",-1,-1],["ioj",4,-1],["uoj",4,-1],["iuoj",6,-1],["auj",-1,-1],["ąj",-1,-1],["iąj",9,-1],["ėj",-1,-1],["ųj",-1,-1],["iųj",12,-1],["ok",-1,-1],["iok",14,-1],["iuk",-1,-1],["uliuk",16,-1],["učiuk",16,-1],["išk",-1,-1],["iul",-1,-1],["yl",-1,-1],["ėl",-1,-1],["am",-1,-1],["dam",23,-1],["jam",23,-1],["zgan",-1,-1],["ain",-1,-1],["esn",-1,-1],["op",-1,-1],["iop",29,-1],["ias",-1,-1],["ies",-1,-1],["ais",-1,-1],["iais",33,-1],["os",-1,-1],["ios",35,-1],["uos",35,-1],["iuos",37,-1],["aus",-1,-1],["iaus",39,-1],["ąs",-1,-1],["iąs",41,-1],["ęs",-1,-1],["utėait",-1,-1],["ant",-1,-1],["iant",45,-1],["siant",46,-1],["int",-1,-1],["ot",-1,-1],["uot",49,-1],["iuot",50,-1],["yt",-1,-1],["ėt",-1,-1],["ykšt",-1,-1],["iau",-1,-1],["dav",-1,-1],["sv",-1,-1],["šv",-1,-1],["ykšč",-1,-1],["ę",-1,-1],["ėję",60,-1]],u=[["ojime",-1,7],["ėjime",-1,3],["avime",-1,6],["okate",-1,8],["aite",-1,1],["uote",-1,2],["asius",-1,5],["okatės",-1,8],["aitės",-1,1],["uotės",-1,2],["esiu",-1,4]],s=[["č",-1,1],["dž",-1,2]],o=[["gd",-1,1]],m=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,64,1,0,64,0,0,0,0,0,0,0,4,4],c=0;function n(){var i;if(e.ket=e.cursor,0!=(i=e.find_among_b(s)))switch(e.bra=e.cursor,i){case 1:if(e.slice_from("t"))break;return;case 2:if(e.slice_from("d"))break;return}}this.stem=function(){c=e.limit;var i=e.cursor,s=e.cursor,r=e.cursor,r=(e.eq_s("a")?(e.cursor=r,e.current.length<=6||e.cursor>=e.limit?e.cursor=s:e.cursor++):e.cursor=s,e.go_out_grouping(m,97,371)&&(e.cursor++,e.go_in_grouping(m,97,371))&&(e.cursor++,c=e.cursor),e.cursor=i,e.limit_backward=e.cursor,e.cursor=e.limit,e.limit-e.cursor),s=((()=>{var i;if(e.ket=e.cursor,0!=(i=e.find_among_b(u)))switch(e.bra=e.cursor,i){case 1:if(e.slice_from("aitė"))break;return;case 2:if(e.slice_from("uotė"))break;return;case 3:if(e.slice_from("ėjimas"))break;return;case 4:if(e.slice_from("esys"))break;return;case 5:if(e.slice_from("asys"))break;return;case 6:if(e.slice_from("avimas"))break;return;case 7:if(e.slice_from("ojimas"))break;return;case 8:if(e.slice_from("okatė"))break}})(),e.cursor=e.limit-r,e.limit-e.cursor),r=(e.cursor{for(;;){var i=e.limit-e.cursor;if(!(e.cursor{var r;if(s.ket=s.cursor,0!=(r=s.find_among_b(t)))switch(s.bra=s.cursor,r){case 1:if(s.slice_del())break;return;case 2:var i=s.limit-s.cursor;if(s.eq_s_b("ए")||(s.cursor=s.limit-i,s.eq_s_b("े"))||(s.cursor=s.limit-i,s.slice_del()))break}})(),s.cursor=s.limit-r;;){var i=s.limit-s.cursor,e=s.limit-s.cursor;if((()=>{var r;if(s.ket=s.cursor,0!=(r=s.find_among_b(c)))switch(s.bra=s.cursor,r){case 1:var i=s.limit-s.cursor;if(!s.eq_s_b("यौ")&&(s.cursor=s.limit-i,!s.eq_s_b("छौ")&&(s.cursor=s.limit-i,!s.eq_s_b("नौ"))&&(s.cursor=s.limit-i,!s.eq_s_b("थे"))))return;if(s.slice_del())break;return;case 2:if(!s.eq_s_b("त्र"))return;if(s.slice_del())break}})(),s.cursor=s.limit-e,s.ket=s.cursor,0==s.find_among_b(u)||(s.bra=s.cursor,!s.slice_del())){s.cursor=s.limit-i;break}}return s.cursor=s.limit_backward,!0},this.stemWord=function(r){return s.setCurrent(r),this.stem(),s.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/norwegian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/norwegian-stemmer.js index c8ec76cc1..5cf580e3e 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/norwegian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/norwegian-stemmer.js @@ -1 +1 @@ -NorwegianStemmer=function(){var r=new BaseStemmer;var e=[["a",-1,1],["e",-1,1],["ede",1,1],["ande",1,1],["ende",1,1],["ane",1,1],["ene",1,1],["hetene",6,1],["erte",1,3],["en",-1,1],["heten",9,1],["ar",-1,1],["er",-1,1],["heter",12,1],["s",-1,2],["as",14,1],["es",14,1],["edes",16,1],["endes",16,1],["enes",16,1],["hetenes",19,1],["ens",14,1],["hetens",21,1],["ers",14,1],["ets",14,1],["et",-1,1],["het",25,1],["ert",-1,3],["ast",-1,1]];var i=[["dt",-1,-1],["vt",-1,-1]];var t=[["leg",-1,1],["eleg",0,1],["ig",-1,1],["eig",2,1],["lig",2,1],["elig",4,1],["els",-1,1],["lov",-1,1],["elov",7,1],["slov",7,1],["hetslov",9,1]];var a=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128];var s=[119,125,149,1];var u=0;var c=0;function l(){c=r.limit;var e=r.cursor;{var i=r.cursor+3;if(i>r.limit){return false}r.cursor=i}u=r.cursor;r.cursor=e;r:while(true){var t=r.cursor;e:{if(!r.in_grouping(a,97,248)){break e}r.cursor=t;break r}r.cursor=t;if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(a,97,248)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}c=r.cursor;r:{if(!(ct.limit||(t.cursor=i,m=t.cursor,t.cursor=e,t.go_out_grouping(u,97,248)&&(t.cursor++,t.go_in_grouping(u,97,248))&&(t.cursor++,n=t.cursor,m<=n||(n=m))),t.cursor=r,t.limit_backward=t.cursor,t.cursor=t.limit,t.limit-t.cursor),e=((()=>{var r;if(!(t.cursor=r.limit){break e}r.cursor++}if(!r.slice_from("Y")){return false}l=true;continue}r.cursor=s;break}}r.cursor=i;n=r.limit;o=r.limit;var u=r.cursor;r:{e:while(true){i:{if(!r.in_grouping(c,97,121)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(c,97,121)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}n=r.cursor;e:while(true){i:{if(!r.in_grouping(c,97,121)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(c,97,121)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}o=r.cursor}r.cursor=u;r.limit_backward=r.cursor;r.cursor=r.limit;var t=r.limit-r.cursor;k();r.cursor=r.limit-t;var f=r.limit-r.cursor;v();r.cursor=r.limit-f;var b=r.limit-r.cursor;g();r.cursor=r.limit-b;var m=r.limit-r.cursor;d();r.cursor=r.limit-m;var _=r.limit-r.cursor;w();r.cursor=r.limit-_;var z=r.limit-r.cursor;h();r.cursor=r.limit-z;var y=r.limit-r.cursor;p();r.cursor=r.limit-y;var Y=r.limit-r.cursor;q();r.cursor=r.limit-Y;r.cursor=r.limit_backward;var C=r.cursor;r:{if(!l){break r}while(true){var S=r.cursor;e:{i:while(true){var B=r.cursor;s:{r.bra=r.cursor;if(!r.eq_s("Y")){break s}r.ket=r.cursor;r.cursor=B;break i}r.cursor=B;if(r.cursor>=r.limit){break e}r.cursor++}if(!r.slice_from("y")){return false}continue}r.cursor=S;break}}r.cursor=C;return true};this["stemWord"]=function(e){r.setCurrent(e);this.stem();return r.getCurrent()}}; \ No newline at end of file +var PorterStemmer=function(){var u=new BaseStemmer,t=[["s",-1,3],["ies",0,2],["sses",0,1],["ss",0,-1]],a=[["",-1,3],["bb",0,2],["dd",0,2],["ff",0,2],["gg",0,2],["bl",0,1],["mm",0,2],["nn",0,2],["pp",0,2],["rr",0,2],["at",0,1],["tt",0,2],["iz",0,1]],n=[["ed",-1,2],["eed",0,1],["ing",-1,2]],l=[["anci",-1,3],["enci",-1,2],["abli",-1,4],["eli",-1,6],["alli",-1,9],["ousli",-1,11],["entli",-1,5],["aliti",-1,9],["biliti",-1,13],["iviti",-1,12],["tional",-1,1],["ational",10,8],["alism",-1,9],["ation",-1,8],["ization",13,7],["izer",-1,7],["ator",-1,8],["iveness",-1,12],["fulness",-1,10],["ousness",-1,11]],f=[["icate",-1,2],["ative",-1,3],["alize",-1,1],["iciti",-1,2],["ical",-1,2],["ful",-1,3],["ness",-1,3]],_=[["ic",-1,1],["ance",-1,1],["ence",-1,1],["able",-1,1],["ible",-1,1],["ate",-1,1],["ive",-1,1],["ize",-1,1],["iti",-1,1],["al",-1,1],["ism",-1,1],["ion",-1,2],["er",-1,1],["ous",-1,1],["ant",-1,1],["ent",-1,1],["ment",15,1],["ement",16,1],["ou",-1,1]],m=[17,65,16,1],r=[1,17,65,208,1],b=!1,k=0,g=0;function d(){return u.out_grouping_b(r,89,121)&&u.in_grouping_b(m,97,121)&&!!u.out_grouping_b(m,97,121)}function v(){return g<=u.cursor}function p(){return k<=u.cursor}this.stem=function(){b=!1;var r=u.cursor;if(u.bra=u.cursor,u.eq_s("y")){if(u.ket=u.cursor,!u.slice_from("Y"))return!1;b=!0}u.cursor=r;for(r=u.cursor;;){var i=u.cursor;r:{for(;;){var e=u.cursor;if(u.in_grouping(m,97,121)&&(u.bra=u.cursor,u.eq_s("y"))){u.ket=u.cursor,u.cursor=e;break}if(u.cursor=e,u.cursor>=u.limit)break r;u.cursor++}if(!u.slice_from("Y"))return!1;b=!0;continue}u.cursor=i;break}u.cursor=r,g=u.limit,k=u.limit;var r=u.cursor,r=(u.go_out_grouping(m,97,121)&&(u.cursor++,u.go_in_grouping(m,97,121))&&(u.cursor++,g=u.cursor,u.go_out_grouping(m,97,121))&&(u.cursor++,u.go_in_grouping(m,97,121))&&(u.cursor++,k=u.cursor),u.cursor=r,u.limit_backward=u.cursor,u.cursor=u.limit,u.limit-u.cursor),r=((()=>{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(t)))switch(u.bra=u.cursor,r){case 1:if(u.slice_from("ss"))break;return;case 2:if(u.slice_from("i"))break;return;case 3:if(u.slice_del())break}})(),u.cursor=u.limit-r,u.limit-u.cursor),r=((()=>{if(u.ket=u.cursor,0!=(i=u.find_among_b(n)))switch(u.bra=u.cursor,i){case 1:if(!v())return;if(u.slice_from("ee"))break;return;case 2:var r=u.limit-u.cursor;if(!u.go_out_grouping_b(m,97,121))return;if(u.cursor--,u.cursor=u.limit-r,!u.slice_del())return;var r=u.limit-u.cursor,i=u.find_among_b(a);switch(u.cursor=u.limit-r,i){case 1:var e=u.cursor;u.insert(u.cursor,u.cursor,"e"),u.cursor=e;break;case 2:if(u.ket=u.cursor,u.cursor<=u.limit_backward)return;if(u.cursor--,u.bra=u.cursor,u.slice_del())break;return;case 3:if(u.cursor!=g)return;e=u.limit-u.cursor;if(!d())return;u.cursor=u.limit-e;e=u.cursor;u.insert(u.cursor,u.cursor,"e"),u.cursor=e}}})(),u.cursor=u.limit-r,u.limit-u.cursor),s=(u.ket=u.cursor,s=u.limit-u.cursor,(u.eq_s_b("y")||(u.cursor=u.limit-s,u.eq_s_b("Y")))&&(u.bra=u.cursor,u.go_out_grouping_b(m,97,121))&&(u.cursor--,u.slice_from("i")),u.cursor=u.limit-r,u.limit-u.cursor),r=((()=>{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(l))&&(u.bra=u.cursor,v()))switch(r){case 1:if(u.slice_from("tion"))break;return;case 2:if(u.slice_from("ence"))break;return;case 3:if(u.slice_from("ance"))break;return;case 4:if(u.slice_from("able"))break;return;case 5:if(u.slice_from("ent"))break;return;case 6:if(u.slice_from("e"))break;return;case 7:if(u.slice_from("ize"))break;return;case 8:if(u.slice_from("ate"))break;return;case 9:if(u.slice_from("al"))break;return;case 10:if(u.slice_from("ful"))break;return;case 11:if(u.slice_from("ous"))break;return;case 12:if(u.slice_from("ive"))break;return;case 13:if(u.slice_from("ble"))break}})(),u.cursor=u.limit-s,u.limit-u.cursor),s=((()=>{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(f))&&(u.bra=u.cursor,v()))switch(r){case 1:if(u.slice_from("al"))break;return;case 2:if(u.slice_from("ic"))break;return;case 3:if(u.slice_del())break}})(),u.cursor=u.limit-r,u.limit-u.cursor),r=((()=>{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(_))&&(u.bra=u.cursor,p()))switch(r){case 1:if(u.slice_del())break;return;case 2:var i=u.limit-u.cursor;if(!u.eq_s_b("s")&&(u.cursor=u.limit-i,!u.eq_s_b("t")))return;if(u.slice_del())break}})(),u.cursor=u.limit-s,u.limit-u.cursor),s=((()=>{if(u.ket=u.cursor,u.eq_s_b("e")){if(u.bra=u.cursor,!p()){if(!v())return;var r=u.limit-u.cursor;if(d())return;u.cursor=u.limit-r}u.slice_del()}})(),u.cursor=u.limit-r,u.limit-u.cursor),r=(u.ket=u.cursor,u.eq_s_b("l")&&(u.bra=u.cursor,p())&&u.eq_s_b("l")&&u.slice_del(),u.cursor=u.limit-s,u.cursor=u.limit_backward,u.cursor);if(b)for(;;){var c=u.cursor;r:{for(;;){var o=u.cursor;if(u.bra=u.cursor,u.eq_s("Y")){u.ket=u.cursor,u.cursor=o;break}if(u.cursor=o,u.cursor>=u.limit)break r;u.cursor++}if(u.slice_from("y"))continue;return!1}u.cursor=c;break}return u.cursor=r,!0},this.stemWord=function(r){return u.setCurrent(r),this.stem(),u.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/portuguese-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/portuguese-stemmer.js index 022d860e6..9cc42155d 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/portuguese-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/portuguese-stemmer.js @@ -1 +1 @@ -PortugueseStemmer=function(){var r=new BaseStemmer;var e=[["",-1,3],["ã",0,1],["õ",0,2]];var i=[["",-1,3],["a~",0,1],["o~",0,2]];var s=[["ic",-1,-1],["ad",-1,-1],["os",-1,-1],["iv",-1,1]];var a=[["ante",-1,1],["avel",-1,1],["ível",-1,1]];var u=[["ic",-1,1],["abil",-1,1],["iv",-1,1]];var o=[["ica",-1,1],["ância",-1,1],["ência",-1,4],["logia",-1,2],["ira",-1,9],["adora",-1,1],["osa",-1,1],["ista",-1,1],["iva",-1,8],["eza",-1,1],["idade",-1,7],["ante",-1,1],["mente",-1,6],["amente",12,5],["ável",-1,1],["ível",-1,1],["ico",-1,1],["ismo",-1,1],["oso",-1,1],["amento",-1,1],["imento",-1,1],["ivo",-1,8],["aça~o",-1,1],["uça~o",-1,3],["ador",-1,1],["icas",-1,1],["ências",-1,4],["logias",-1,2],["iras",-1,9],["adoras",-1,1],["osas",-1,1],["istas",-1,1],["ivas",-1,8],["ezas",-1,1],["idades",-1,7],["adores",-1,1],["antes",-1,1],["aço~es",-1,1],["uço~es",-1,3],["icos",-1,1],["ismos",-1,1],["osos",-1,1],["amentos",-1,1],["imentos",-1,1],["ivos",-1,8]];var t=[["ada",-1,1],["ida",-1,1],["ia",-1,1],["aria",2,1],["eria",2,1],["iria",2,1],["ara",-1,1],["era",-1,1],["ira",-1,1],["ava",-1,1],["asse",-1,1],["esse",-1,1],["isse",-1,1],["aste",-1,1],["este",-1,1],["iste",-1,1],["ei",-1,1],["arei",16,1],["erei",16,1],["irei",16,1],["am",-1,1],["iam",20,1],["ariam",21,1],["eriam",21,1],["iriam",21,1],["aram",20,1],["eram",20,1],["iram",20,1],["avam",20,1],["em",-1,1],["arem",29,1],["erem",29,1],["irem",29,1],["assem",29,1],["essem",29,1],["issem",29,1],["ado",-1,1],["ido",-1,1],["ando",-1,1],["endo",-1,1],["indo",-1,1],["ara~o",-1,1],["era~o",-1,1],["ira~o",-1,1],["ar",-1,1],["er",-1,1],["ir",-1,1],["as",-1,1],["adas",47,1],["idas",47,1],["ias",47,1],["arias",50,1],["erias",50,1],["irias",50,1],["aras",47,1],["eras",47,1],["iras",47,1],["avas",47,1],["es",-1,1],["ardes",58,1],["erdes",58,1],["irdes",58,1],["ares",58,1],["eres",58,1],["ires",58,1],["asses",58,1],["esses",58,1],["isses",58,1],["astes",58,1],["estes",58,1],["istes",58,1],["is",-1,1],["ais",71,1],["eis",71,1],["areis",73,1],["ereis",73,1],["ireis",73,1],["áreis",73,1],["éreis",73,1],["íreis",73,1],["ásseis",73,1],["ésseis",73,1],["ísseis",73,1],["áveis",73,1],["íeis",73,1],["aríeis",84,1],["eríeis",84,1],["iríeis",84,1],["ados",-1,1],["idos",-1,1],["amos",-1,1],["áramos",90,1],["éramos",90,1],["íramos",90,1],["ávamos",90,1],["íamos",90,1],["aríamos",95,1],["eríamos",95,1],["iríamos",95,1],["emos",-1,1],["aremos",99,1],["eremos",99,1],["iremos",99,1],["ássemos",99,1],["êssemos",99,1],["íssemos",99,1],["imos",-1,1],["armos",-1,1],["ermos",-1,1],["irmos",-1,1],["ámos",-1,1],["arás",-1,1],["erás",-1,1],["irás",-1,1],["eu",-1,1],["iu",-1,1],["ou",-1,1],["ará",-1,1],["erá",-1,1],["irá",-1,1]];var c=[["a",-1,1],["i",-1,1],["o",-1,1],["os",-1,1],["á",-1,1],["í",-1,1],["ó",-1,1]];var f=[["e",-1,1],["ç",-1,2],["é",-1,1],["ê",-1,1]];var l=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,3,19,12,2];var n=0;var m=0;var b=0;function k(){var i;while(true){var s=r.cursor;r:{r.bra=r.cursor;i=r.find_among(e);if(i==0){break r}r.ket=r.cursor;switch(i){case 1:if(!r.slice_from("a~")){return false}break;case 2:if(!r.slice_from("o~")){return false}break;case 3:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=s;break}return true}function _(){b=r.limit;m=r.limit;n=r.limit;var e=r.cursor;r:{e:{var i=r.cursor;i:{if(!r.in_grouping(l,97,250)){break i}s:{var s=r.cursor;a:{if(!r.out_grouping(l,97,250)){break a}u:while(true){o:{if(!r.in_grouping(l,97,250)){break o}break u}if(r.cursor>=r.limit){break a}r.cursor++}break s}r.cursor=s;if(!r.in_grouping(l,97,250)){break i}a:while(true){u:{if(!r.out_grouping(l,97,250)){break u}break a}if(r.cursor>=r.limit){break i}r.cursor++}}break e}r.cursor=i;if(!r.out_grouping(l,97,250)){break r}i:{var a=r.cursor;s:{if(!r.out_grouping(l,97,250)){break s}a:while(true){u:{if(!r.in_grouping(l,97,250)){break u}break a}if(r.cursor>=r.limit){break s}r.cursor++}break i}r.cursor=a;if(!r.in_grouping(l,97,250)){break r}if(r.cursor>=r.limit){break r}r.cursor++}}b=r.cursor}r.cursor=e;var u=r.cursor;r:{e:while(true){i:{if(!r.in_grouping(l,97,250)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(l,97,250)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}m=r.cursor;e:while(true){i:{if(!r.in_grouping(l,97,250)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(l,97,250)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}n=r.cursor}r.cursor=u;return true}function v(){var e;while(true){var s=r.cursor;r:{r.bra=r.cursor;e=r.find_among(i);if(e==0){break r}r.ket=r.cursor;switch(e){case 1:if(!r.slice_from("ã")){return false}break;case 2:if(!r.slice_from("õ")){return false}break;case 3:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=s;break}return true}function d(){if(!(b<=r.cursor)){return false}return true}function g(){if(!(m<=r.cursor)){return false}return true}function w(){if(!(n<=r.cursor)){return false}return true}function h(){var e;r.ket=r.cursor;e=r.find_among_b(o);if(e==0){return false}r.bra=r.cursor;switch(e){case 1:if(!w()){return false}if(!r.slice_del()){return false}break;case 2:if(!w()){return false}if(!r.slice_from("log")){return false}break;case 3:if(!w()){return false}if(!r.slice_from("u")){return false}break;case 4:if(!w()){return false}if(!r.slice_from("ente")){return false}break;case 5:if(!g()){return false}if(!r.slice_del()){return false}var i=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(s);if(e==0){r.cursor=r.limit-i;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-i;break r}if(!r.slice_del()){return false}switch(e){case 1:r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-i;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-i;break r}if(!r.slice_del()){return false}break}}break;case 6:if(!w()){return false}if(!r.slice_del()){return false}var t=r.limit-r.cursor;r:{r.ket=r.cursor;if(r.find_among_b(a)==0){r.cursor=r.limit-t;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-t;break r}if(!r.slice_del()){return false}}break;case 7:if(!w()){return false}if(!r.slice_del()){return false}var c=r.limit-r.cursor;r:{r.ket=r.cursor;if(r.find_among_b(u)==0){r.cursor=r.limit-c;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}}break;case 8:if(!w()){return false}if(!r.slice_del()){return false}var f=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-f;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-f;break r}if(!r.slice_del()){return false}}break;case 9:if(!d()){return false}if(!r.eq_s_b("e")){return false}if(!r.slice_from("ir")){return false}break}return true}function p(){if(r.cursor{for(var r;;){var i=u.cursor;r:{switch(u.bra=u.cursor,r=u.find_among(c),u.ket=u.cursor,r){case 1:if(u.slice_from("a~"))break;return;case 2:if(u.slice_from("o~"))break;return;case 3:if(u.cursor>=u.limit)break r;u.cursor++}continue}u.cursor=i;break}})(),u.cursor=r,k=u.limit,d=u.limit,b=u.limit,u.cursor);r:{i:{var i=u.cursor;s:if(u.in_grouping(_,97,250)){var s=u.cursor;if(!u.out_grouping(_,97,250)||!u.go_out_grouping(_,97,250)){if(u.cursor=s,!u.in_grouping(_,97,250))break s;if(!u.go_in_grouping(_,97,250))break s}u.cursor++;break i}if(u.cursor=i,!u.out_grouping(_,97,250))break r;s=u.cursor;if(u.out_grouping(_,97,250)&&u.go_out_grouping(_,97,250));else{if(u.cursor=s,!u.in_grouping(_,97,250))break r;if(u.cursor>=u.limit)break r}u.cursor++}k=u.cursor}u.cursor=r,r=u.cursor,u.go_out_grouping(_,97,250)&&(u.cursor++,u.go_in_grouping(_,97,250))&&(u.cursor++,d=u.cursor,u.go_out_grouping(_,97,250))&&(u.cursor++,u.go_in_grouping(_,97,250))&&(u.cursor++,b=u.cursor),u.cursor=r,u.limit_backward=u.cursor,u.cursor=u.limit;r=u.limit-u.cursor;r:{var e=u.limit-u.cursor,o=u.limit-u.cursor,a=u.limit-u.cursor;if(p()||(u.cursor=u.limit-a,(()=>{if(!(u.cursor{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(f)))switch(u.bra=u.cursor,r){case 1:if(!g())return;if(!u.slice_del())return;u.ket=u.cursor;r:{var i=u.limit-u.cursor;if(u.eq_s_b("u")){u.bra=u.cursor;var s=u.limit-u.cursor;if(u.eq_s_b("g")){u.cursor=u.limit-s;break r}}if(u.cursor=u.limit-i,!u.eq_s_b("i"))return;u.bra=u.cursor;s=u.limit-u.cursor;if(!u.eq_s_b("c"))return;u.cursor=u.limit-s}if(!g())return;if(u.slice_del())break;return;case 2:if(u.slice_from("c"))break}})(),u.cursor=u.limit-r,u.cursor=u.limit_backward,r=u.cursor;return(()=>{for(var r;;){var i=u.cursor;r:{switch(u.bra=u.cursor,r=u.find_among(t),u.ket=u.cursor,r){case 1:if(u.slice_from("ã"))break;return;case 2:if(u.slice_from("õ"))break;return;case 3:if(u.cursor>=u.limit)break r;u.cursor++}continue}u.cursor=i;break}})(),u.cursor=r,!0},this.stemWord=function(r){return u.setCurrent(r),this.stem(),u.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/romanian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/romanian-stemmer.js index 01c54d018..aefb07155 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/romanian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/romanian-stemmer.js @@ -1 +1 @@ -RomanianStemmer=function(){var r=new BaseStemmer;var i=[["",-1,3],["I",0,1],["U",0,2]];var e=[["ea",-1,3],["aţia",-1,7],["aua",-1,2],["iua",-1,4],["aţie",-1,7],["ele",-1,3],["ile",-1,5],["iile",6,4],["iei",-1,4],["atei",-1,6],["ii",-1,4],["ului",-1,1],["ul",-1,1],["elor",-1,3],["ilor",-1,4],["iilor",14,4]];var a=[["icala",-1,4],["iciva",-1,4],["ativa",-1,5],["itiva",-1,6],["icale",-1,4],["aţiune",-1,5],["iţiune",-1,6],["atoare",-1,5],["itoare",-1,6],["ătoare",-1,5],["icitate",-1,4],["abilitate",-1,1],["ibilitate",-1,2],["ivitate",-1,3],["icive",-1,4],["ative",-1,5],["itive",-1,6],["icali",-1,4],["atori",-1,5],["icatori",18,4],["itori",-1,6],["ători",-1,5],["icitati",-1,4],["abilitati",-1,1],["ivitati",-1,3],["icivi",-1,4],["ativi",-1,5],["itivi",-1,6],["icităi",-1,4],["abilităi",-1,1],["ivităi",-1,3],["icităţi",-1,4],["abilităţi",-1,1],["ivităţi",-1,3],["ical",-1,4],["ator",-1,5],["icator",35,4],["itor",-1,6],["ător",-1,5],["iciv",-1,4],["ativ",-1,5],["itiv",-1,6],["icală",-1,4],["icivă",-1,4],["ativă",-1,5],["itivă",-1,6]];var t=[["ica",-1,1],["abila",-1,1],["ibila",-1,1],["oasa",-1,1],["ata",-1,1],["ita",-1,1],["anta",-1,1],["ista",-1,3],["uta",-1,1],["iva",-1,1],["ic",-1,1],["ice",-1,1],["abile",-1,1],["ibile",-1,1],["isme",-1,3],["iune",-1,2],["oase",-1,1],["ate",-1,1],["itate",17,1],["ite",-1,1],["ante",-1,1],["iste",-1,3],["ute",-1,1],["ive",-1,1],["ici",-1,1],["abili",-1,1],["ibili",-1,1],["iuni",-1,2],["atori",-1,1],["osi",-1,1],["ati",-1,1],["itati",30,1],["iti",-1,1],["anti",-1,1],["isti",-1,3],["uti",-1,1],["işti",-1,3],["ivi",-1,1],["ităi",-1,1],["oşi",-1,1],["ităţi",-1,1],["abil",-1,1],["ibil",-1,1],["ism",-1,3],["ator",-1,1],["os",-1,1],["at",-1,1],["it",-1,1],["ant",-1,1],["ist",-1,3],["ut",-1,1],["iv",-1,1],["ică",-1,1],["abilă",-1,1],["ibilă",-1,1],["oasă",-1,1],["ată",-1,1],["ită",-1,1],["antă",-1,1],["istă",-1,3],["ută",-1,1],["ivă",-1,1]];var s=[["ea",-1,1],["ia",-1,1],["esc",-1,1],["ăsc",-1,1],["ind",-1,1],["ând",-1,1],["are",-1,1],["ere",-1,1],["ire",-1,1],["âre",-1,1],["se",-1,2],["ase",10,1],["sese",10,2],["ise",10,1],["use",10,1],["âse",10,1],["eşte",-1,1],["ăşte",-1,1],["eze",-1,1],["ai",-1,1],["eai",19,1],["iai",19,1],["sei",-1,2],["eşti",-1,1],["ăşti",-1,1],["ui",-1,1],["ezi",-1,1],["âi",-1,1],["aşi",-1,1],["seşi",-1,2],["aseşi",29,1],["seseşi",29,2],["iseşi",29,1],["useşi",29,1],["âseşi",29,1],["işi",-1,1],["uşi",-1,1],["âşi",-1,1],["aţi",-1,2],["eaţi",38,1],["iaţi",38,1],["eţi",-1,2],["iţi",-1,2],["âţi",-1,2],["arăţi",-1,1],["serăţi",-1,2],["aserăţi",45,1],["seserăţi",45,2],["iserăţi",45,1],["userăţi",45,1],["âserăţi",45,1],["irăţi",-1,1],["urăţi",-1,1],["ârăţi",-1,1],["am",-1,1],["eam",54,1],["iam",54,1],["em",-1,2],["asem",57,1],["sesem",57,2],["isem",57,1],["usem",57,1],["âsem",57,1],["im",-1,2],["âm",-1,2],["ăm",-1,2],["arăm",65,1],["serăm",65,2],["aserăm",67,1],["seserăm",67,2],["iserăm",67,1],["userăm",67,1],["âserăm",67,1],["irăm",65,1],["urăm",65,1],["ârăm",65,1],["au",-1,1],["eau",76,1],["iau",76,1],["indu",-1,1],["ându",-1,1],["ez",-1,1],["ească",-1,1],["ară",-1,1],["seră",-1,2],["aseră",84,1],["seseră",84,2],["iseră",84,1],["useră",84,1],["âseră",84,1],["iră",-1,1],["ură",-1,1],["âră",-1,1],["ează",-1,1]];var u=[["a",-1,1],["e",-1,1],["ie",1,1],["i",-1,1],["ă",-1,1]];var c=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,2,32,0,0,4];var o=false;var f=0;var l=0;var n=0;function b(){while(true){var i=r.cursor;r:{i:while(true){var e=r.cursor;e:{if(!r.in_grouping(c,97,259)){break e}r.bra=r.cursor;a:{var a=r.cursor;t:{if(!r.eq_s("u")){break t}r.ket=r.cursor;if(!r.in_grouping(c,97,259)){break t}if(!r.slice_from("U")){return false}break a}r.cursor=a;if(!r.eq_s("i")){break e}r.ket=r.cursor;if(!r.in_grouping(c,97,259)){break e}if(!r.slice_from("I")){return false}}r.cursor=e;break i}r.cursor=e;if(r.cursor>=r.limit){break r}r.cursor++}continue}r.cursor=i;break}return true}function m(){n=r.limit;l=r.limit;f=r.limit;var i=r.cursor;r:{i:{var e=r.cursor;e:{if(!r.in_grouping(c,97,259)){break e}a:{var a=r.cursor;t:{if(!r.out_grouping(c,97,259)){break t}s:while(true){u:{if(!r.in_grouping(c,97,259)){break u}break s}if(r.cursor>=r.limit){break t}r.cursor++}break a}r.cursor=a;if(!r.in_grouping(c,97,259)){break e}t:while(true){s:{if(!r.out_grouping(c,97,259)){break s}break t}if(r.cursor>=r.limit){break e}r.cursor++}}break i}r.cursor=e;if(!r.out_grouping(c,97,259)){break r}e:{var t=r.cursor;a:{if(!r.out_grouping(c,97,259)){break a}t:while(true){s:{if(!r.in_grouping(c,97,259)){break s}break t}if(r.cursor>=r.limit){break a}r.cursor++}break e}r.cursor=t;if(!r.in_grouping(c,97,259)){break r}if(r.cursor>=r.limit){break r}r.cursor++}}n=r.cursor}r.cursor=i;var s=r.cursor;r:{i:while(true){e:{if(!r.in_grouping(c,97,259)){break e}break i}if(r.cursor>=r.limit){break r}r.cursor++}i:while(true){e:{if(!r.out_grouping(c,97,259)){break e}break i}if(r.cursor>=r.limit){break r}r.cursor++}l=r.cursor;i:while(true){e:{if(!r.in_grouping(c,97,259)){break e}break i}if(r.cursor>=r.limit){break r}r.cursor++}i:while(true){e:{if(!r.out_grouping(c,97,259)){break e}break i}if(r.cursor>=r.limit){break r}r.cursor++}f=r.cursor}r.cursor=s;return true}function k(){var e;while(true){var a=r.cursor;r:{r.bra=r.cursor;e=r.find_among(i);if(e==0){break r}r.ket=r.cursor;switch(e){case 1:if(!r.slice_from("i")){return false}break;case 2:if(!r.slice_from("u")){return false}break;case 3:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=a;break}return true}function _(){if(!(n<=r.cursor)){return false}return true}function v(){if(!(l<=r.cursor)){return false}return true}function g(){if(!(f<=r.cursor)){return false}return true}function w(){var i;r.ket=r.cursor;i=r.find_among_b(e);if(i==0){return false}r.bra=r.cursor;if(!v()){return false}switch(i){case 1:if(!r.slice_del()){return false}break;case 2:if(!r.slice_from("a")){return false}break;case 3:if(!r.slice_from("e")){return false}break;case 4:if(!r.slice_from("i")){return false}break;case 5:{var a=r.limit-r.cursor;r:{if(!r.eq_s_b("ab")){break r}return false}r.cursor=r.limit-a}if(!r.slice_from("i")){return false}break;case 6:if(!r.slice_from("at")){return false}break;case 7:if(!r.slice_from("aţi")){return false}break}return true}function d(){var i;var e=r.limit-r.cursor;r.ket=r.cursor;i=r.find_among_b(a);if(i==0){return false}r.bra=r.cursor;if(!v()){return false}switch(i){case 1:if(!r.slice_from("abil")){return false}break;case 2:if(!r.slice_from("ibil")){return false}break;case 3:if(!r.slice_from("iv")){return false}break;case 4:if(!r.slice_from("ic")){return false}break;case 5:if(!r.slice_from("at")){return false}break;case 6:if(!r.slice_from("it")){return false}break}o=true;r.cursor=r.limit-e;return true}function h(){var i;o=false;while(true){var e=r.limit-r.cursor;r:{if(!d()){break r}continue}r.cursor=r.limit-e;break}r.ket=r.cursor;i=r.find_among_b(t);if(i==0){return false}r.bra=r.cursor;if(!g()){return false}switch(i){case 1:if(!r.slice_del()){return false}break;case 2:if(!r.eq_s_b("ţ")){return false}r.bra=r.cursor;if(!r.slice_from("t")){return false}break;case 3:if(!r.slice_from("ist")){return false}break}o=true;return true}function p(){var i;if(r.cursor{var i,r=s.limit-s.cursor;if(s.ket=s.cursor,0!=(i=s.find_among_b(e))&&(s.bra=s.cursor,_())){switch(i){case 1:if(s.slice_from("abil"))break;return;case 2:if(s.slice_from("ibil"))break;return;case 3:if(s.slice_from("iv"))break;return;case 4:if(s.slice_from("ic"))break;return;case 5:if(s.slice_from("at"))break;return;case 6:if(s.slice_from("it"))break;return}return l=!0,s.cursor=s.limit-r,1}})()){s.cursor=s.limit-r;break}}if(s.ket=s.cursor,0!=(i=s.find_among_b(a))&&(s.bra=s.cursor,m<=s.cursor)){switch(i){case 1:if(s.slice_del())break;return;case 2:if(!s.eq_s_b("ț"))return;if(s.bra=s.cursor,s.slice_from("t"))break;return;case 3:if(s.slice_from("ist"))break;return}l=!0}}function g(){s.ket=s.cursor,0!=s.find_among_b(i)&&(s.bra=s.cursor,b<=s.cursor)&&s.slice_del()}this.stem=function(){(()=>{for(var i,r=s.cursor;;){var e=s.cursor;i:{for(;;){var a=s.cursor;if(s.bra=s.cursor,0!=(i=s.find_among(t))){switch(s.ket=s.cursor,i){case 1:if(s.slice_from("ș"))break;return;case 2:if(s.slice_from("ț"))break;return}s.cursor=a;break}if(s.cursor=a,s.cursor>=s.limit)break i;s.cursor++}continue}s.cursor=e;break}s.cursor=r})();var i=s.cursor,i=((()=>{for(;;){var i=s.cursor;i:{for(;;){var r=s.cursor;r:if(s.in_grouping(n,97,259)){s.bra=s.cursor;e:{var e=s.cursor;if(s.eq_s("u")&&(s.ket=s.cursor,s.in_grouping(n,97,259))){if(s.slice_from("U"))break e;return}if(s.cursor=e,!s.eq_s("i"))break r;if(s.ket=s.cursor,!s.in_grouping(n,97,259))break r;if(!s.slice_from("I"))return}s.cursor=r;break}if(s.cursor=r,s.cursor>=s.limit)break i;s.cursor++}continue}s.cursor=i;break}})(),s.cursor=i,b=s.limit,f=s.limit,m=s.limit,s.cursor);i:{r:{var r=s.cursor;e:if(s.in_grouping(n,97,259)){var e=s.cursor;if(!s.out_grouping(n,97,259)||!s.go_out_grouping(n,97,259)){if(s.cursor=e,!s.in_grouping(n,97,259))break e;if(!s.go_in_grouping(n,97,259))break e}s.cursor++;break r}if(s.cursor=r,!s.out_grouping(n,97,259))break i;e=s.cursor;if(s.out_grouping(n,97,259)&&s.go_out_grouping(n,97,259));else{if(s.cursor=e,!s.in_grouping(n,97,259))break i;if(s.cursor>=s.limit)break i}s.cursor++}b=s.cursor}s.cursor=i,i=s.cursor,s.go_out_grouping(n,97,259)&&(s.cursor++,s.go_in_grouping(n,97,259))&&(s.cursor++,f=s.cursor,s.go_out_grouping(n,97,259))&&(s.cursor++,s.go_in_grouping(n,97,259))&&(s.cursor++,m=s.cursor),s.cursor=i,s.limit_backward=s.cursor,s.cursor=s.limit;var i=s.limit-s.cursor,i=((()=>{var i;if(s.ket=s.cursor,0!=(i=s.find_among_b(o))&&(s.bra=s.cursor,_()))switch(i){case 1:if(s.slice_del())break;return;case 2:if(s.slice_from("a"))break;return;case 3:if(s.slice_from("e"))break;return;case 4:if(s.slice_from("i"))break;return;case 5:var r=s.limit-s.cursor;if(s.eq_s_b("ab"))return;if(s.cursor=s.limit-r,s.slice_from("i"))break;return;case 6:if(s.slice_from("at"))break;return;case 7:if(s.slice_from("ați"))break}})(),s.cursor=s.limit-i,s.limit-s.cursor),i=(k(),s.cursor=s.limit-i,s.limit-s.cursor),a=s.limit-s.cursor,a=(l||(s.cursor=s.limit-a,(()=>{var i;if(!(s.cursor{for(var i;;){var r=s.cursor;i:{switch(s.bra=s.cursor,i=s.find_among(u),s.ket=s.cursor,i){case 1:if(s.slice_from("i"))break;return;case 2:if(s.slice_from("u"))break;return;case 3:if(s.cursor>=s.limit)break i;s.cursor++}continue}s.cursor=r;break}})(),s.cursor=i,!0},this.stemWord=function(i){return s.setCurrent(i),this.stem(),s.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/russian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/russian-stemmer.js index 698d92bcd..7b5410c5e 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/russian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/russian-stemmer.js @@ -1 +1 @@ -RussianStemmer=function(){var r=new BaseStemmer;var e=[["в",-1,1],["ив",0,2],["ыв",0,2],["вши",-1,1],["ивши",3,2],["ывши",3,2],["вшись",-1,1],["ившись",6,2],["ывшись",6,2]];var i=[["ее",-1,1],["ие",-1,1],["ое",-1,1],["ые",-1,1],["ими",-1,1],["ыми",-1,1],["ей",-1,1],["ий",-1,1],["ой",-1,1],["ый",-1,1],["ем",-1,1],["им",-1,1],["ом",-1,1],["ым",-1,1],["его",-1,1],["ого",-1,1],["ему",-1,1],["ому",-1,1],["их",-1,1],["ых",-1,1],["ею",-1,1],["ою",-1,1],["ую",-1,1],["юю",-1,1],["ая",-1,1],["яя",-1,1]];var u=[["ем",-1,1],["нн",-1,1],["вш",-1,1],["ивш",2,2],["ывш",2,2],["щ",-1,1],["ющ",5,1],["ующ",6,2]];var s=[["сь",-1,1],["ся",-1,1]];var a=[["ла",-1,1],["ила",0,2],["ыла",0,2],["на",-1,1],["ена",3,2],["ете",-1,1],["ите",-1,2],["йте",-1,1],["ейте",7,2],["уйте",7,2],["ли",-1,1],["или",10,2],["ыли",10,2],["й",-1,1],["ей",13,2],["уй",13,2],["л",-1,1],["ил",16,2],["ыл",16,2],["ем",-1,1],["им",-1,2],["ым",-1,2],["н",-1,1],["ен",22,2],["ло",-1,1],["ило",24,2],["ыло",24,2],["но",-1,1],["ено",27,2],["нно",27,1],["ет",-1,1],["ует",30,2],["ит",-1,2],["ыт",-1,2],["ют",-1,1],["уют",34,2],["ят",-1,2],["ны",-1,1],["ены",37,2],["ть",-1,1],["ить",39,2],["ыть",39,2],["ешь",-1,1],["ишь",-1,2],["ю",-1,2],["ую",44,2]];var t=[["а",-1,1],["ев",-1,1],["ов",-1,1],["е",-1,1],["ие",3,1],["ье",3,1],["и",-1,1],["еи",6,1],["ии",6,1],["ами",6,1],["ями",6,1],["иями",10,1],["й",-1,1],["ей",12,1],["ией",13,1],["ий",12,1],["ой",12,1],["ам",-1,1],["ем",-1,1],["ием",18,1],["ом",-1,1],["ям",-1,1],["иям",21,1],["о",-1,1],["у",-1,1],["ах",-1,1],["ях",-1,1],["иях",26,1],["ы",-1,1],["ь",-1,1],["ю",-1,1],["ию",30,1],["ью",30,1],["я",-1,1],["ия",33,1],["ья",33,1]];var c=[["ост",-1,1],["ость",-1,1]];var f=[["ейше",-1,1],["н",-1,2],["ейш",-1,1],["ь",-1,3]];var l=[33,65,8,232];var o=0;var n=0;function b(){n=r.limit;o=r.limit;var e=r.cursor;r:{e:while(true){i:{if(!r.in_grouping(l,1072,1103)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}n=r.cursor;e:while(true){i:{if(!r.out_grouping(l,1072,1103)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.in_grouping(l,1072,1103)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(l,1072,1103)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}o=r.cursor}r.cursor=e;return true}function _(){if(!(o<=r.cursor)){return false}return true}function k(){var i;r.ket=r.cursor;i=r.find_among_b(e);if(i==0){return false}r.bra=r.cursor;switch(i){case 1:r:{var u=r.limit-r.cursor;e:{if(!r.eq_s_b("а")){break e}break r}r.cursor=r.limit-u;if(!r.eq_s_b("я")){return false}}if(!r.slice_del()){return false}break;case 2:if(!r.slice_del()){return false}break}return true}function m(){r.ket=r.cursor;if(r.find_among_b(i)==0){return false}r.bra=r.cursor;if(!r.slice_del()){return false}return true}function v(){var e;if(!m()){return false}var i=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(u);if(e==0){r.cursor=r.limit-i;break r}r.bra=r.cursor;switch(e){case 1:e:{var s=r.limit-r.cursor;i:{if(!r.eq_s_b("а")){break i}break e}r.cursor=r.limit-s;if(!r.eq_s_b("я")){r.cursor=r.limit-i;break r}}if(!r.slice_del()){return false}break;case 2:if(!r.slice_del()){return false}break}}return true}function d(){r.ket=r.cursor;if(r.find_among_b(s)==0){return false}r.bra=r.cursor;if(!r.slice_del()){return false}return true}function g(){var e;r.ket=r.cursor;e=r.find_among_b(a);if(e==0){return false}r.bra=r.cursor;switch(e){case 1:r:{var i=r.limit-r.cursor;e:{if(!r.eq_s_b("а")){break e}break r}r.cursor=r.limit-i;if(!r.eq_s_b("я")){return false}}if(!r.slice_del()){return false}break;case 2:if(!r.slice_del()){return false}break}return true}function w(){r.ket=r.cursor;if(r.find_among_b(t)==0){return false}r.bra=r.cursor;if(!r.slice_del()){return false}return true}function h(){r.ket=r.cursor;if(r.find_among_b(c)==0){return false}r.bra=r.cursor;if(!_()){return false}if(!r.slice_del()){return false}return true}function q(){var e;r.ket=r.cursor;e=r.find_among_b(f);if(e==0){return false}r.bra=r.cursor;switch(e){case 1:if(!r.slice_del()){return false}r.ket=r.cursor;if(!r.eq_s_b("н")){return false}r.bra=r.cursor;if(!r.eq_s_b("н")){return false}if(!r.slice_del()){return false}break;case 2:if(!r.eq_s_b("н")){return false}if(!r.slice_del()){return false}break;case 3:if(!r.slice_del()){return false}break}return true}this.stem=function(){var e=r.cursor;r:{while(true){var i=r.cursor;e:{i:while(true){var u=r.cursor;u:{r.bra=r.cursor;if(!r.eq_s("ё")){break u}r.ket=r.cursor;r.cursor=u;break i}r.cursor=u;if(r.cursor>=r.limit){break e}r.cursor++}if(!r.slice_from("е")){return false}continue}r.cursor=i;break}}r.cursor=e;b();r.limit_backward=r.cursor;r.cursor=r.limit;if(r.cursor=u.limit)break r;u.cursor++}if(u.slice_from("е"))continue;return!1}u.cursor=i;break}if(u.cursor=r,b=u.limit,m=u.limit,r=u.cursor,u.go_out_grouping(n,1072,1103)&&(u.cursor++,b=u.cursor,u.go_in_grouping(n,1072,1103))&&(u.cursor++,u.go_out_grouping(n,1072,1103))&&(u.cursor++,u.go_in_grouping(n,1072,1103))&&(u.cursor++,m=u.cursor),u.cursor=r,u.limit_backward=u.cursor,u.cursor=u.limit,u.cursor{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(o))){switch(u.bra=u.cursor,r){case 1:var i=u.limit-u.cursor;if(!u.eq_s_b("а")&&(u.cursor=u.limit-i,!u.eq_s_b("я")))return;if(u.slice_del())break;return;case 2:if(u.slice_del())break;return}return 1}})()){u.cursor=u.limit-c;c=u.limit-u.cursor,c=(u.ket=u.cursor,0!=u.find_among_b(t)&&(u.bra=u.cursor,u.slice_del())||(u.cursor=u.limit-c),u.limit-u.cursor);if(!f()&&(u.cursor=u.limit-c,!(()=>{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(a))){switch(u.bra=u.cursor,r){case 1:var i=u.limit-u.cursor;if(!u.eq_s_b("а")&&(u.cursor=u.limit-i,!u.eq_s_b("я")))return;if(u.slice_del())break;return;case 2:if(u.slice_del())break;return}return 1}})())&&(u.cursor=u.limit-c,u.ket=u.cursor,0==u.find_among_b(l)||(u.bra=u.cursor,!u.slice_del())))break r}}u.cursor=u.limit-e;e=u.limit-u.cursor;if(u.ket=u.cursor,u.eq_s_b("и")){if(u.bra=u.cursor,!u.slice_del())return!1}else u.cursor=u.limit-e;e=u.limit-u.cursor,k(),u.cursor=u.limit-e,e=u.limit-u.cursor;return(()=>{var r;if(u.ket=u.cursor,0!=(r=u.find_among_b(_)))switch(u.bra=u.cursor,r){case 1:if(!u.slice_del())return;if(u.ket=u.cursor,!u.eq_s_b("н"))return;if(u.bra=u.cursor,!u.eq_s_b("н"))return;if(u.slice_del())break;return;case 2:if(!u.eq_s_b("н"))return;if(u.slice_del())break;return;case 3:if(u.slice_del())break}})(),u.cursor=u.limit-e,u.limit_backward=r,u.cursor=u.limit_backward,!0},this.stemWord=function(r){return u.setCurrent(r),this.stem(),u.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/serbian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/serbian-stemmer.js new file mode 100644 index 000000000..0ac2621eb --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/serbian-stemmer.js @@ -0,0 +1 @@ +var SerbianStemmer=function(){var m=new BaseStemmer,s=[["а",-1,1],["б",-1,2],["в",-1,3],["г",-1,4],["д",-1,5],["е",-1,7],["ж",-1,8],["з",-1,9],["и",-1,10],["к",-1,12],["л",-1,13],["м",-1,15],["н",-1,16],["о",-1,18],["п",-1,19],["р",-1,20],["с",-1,21],["т",-1,22],["у",-1,24],["ф",-1,25],["х",-1,26],["ц",-1,27],["ч",-1,28],["ш",-1,30],["ђ",-1,6],["ј",-1,11],["љ",-1,14],["њ",-1,17],["ћ",-1,23],["џ",-1,29]],r=[["daba",-1,73],["ajaca",-1,12],["ejaca",-1,14],["ljaca",-1,13],["njaca",-1,85],["ojaca",-1,15],["alaca",-1,82],["elaca",-1,83],["olaca",-1,84],["maca",-1,75],["naca",-1,76],["raca",-1,81],["saca",-1,80],["vaca",-1,79],["šaca",-1,18],["aoca",-1,82],["acaka",-1,55],["ajaka",-1,16],["ojaka",-1,17],["anaka",-1,78],["ataka",-1,58],["etaka",-1,59],["itaka",-1,60],["otaka",-1,61],["utaka",-1,62],["ačaka",-1,54],["esama",-1,67],["izama",-1,87],["jacima",-1,5],["nicima",-1,23],["ticima",-1,24],["teticima",30,21],["zicima",-1,25],["atcima",-1,58],["utcima",-1,62],["čcima",-1,74],["pesima",-1,2],["inzima",-1,19],["lozima",-1,1],["metara",-1,68],["centara",-1,69],["istara",-1,70],["ekata",-1,86],["anata",-1,53],["nstava",-1,22],["kustava",-1,29],["ajac",-1,12],["ejac",-1,14],["ljac",-1,13],["njac",-1,85],["anjac",49,11],["ojac",-1,15],["alac",-1,82],["elac",-1,83],["olac",-1,84],["mac",-1,75],["nac",-1,76],["rac",-1,81],["sac",-1,80],["vac",-1,79],["šac",-1,18],["jebe",-1,88],["olce",-1,84],["kuse",-1,27],["rave",-1,42],["save",-1,52],["šave",-1,51],["baci",-1,89],["jaci",-1,5],["tvenici",-1,20],["snici",-1,26],["tetici",-1,21],["bojci",-1,4],["vojci",-1,3],["ojsci",-1,66],["atci",-1,58],["itci",-1,60],["utci",-1,62],["čci",-1,74],["pesi",-1,2],["inzi",-1,19],["lozi",-1,1],["acak",-1,55],["usak",-1,57],["atak",-1,58],["etak",-1,59],["itak",-1,60],["otak",-1,61],["utak",-1,62],["ačak",-1,54],["ušak",-1,56],["izam",-1,87],["tican",-1,65],["cajan",-1,7],["čajan",-1,6],["voljan",-1,77],["eskan",-1,63],["alan",-1,40],["bilan",-1,33],["gilan",-1,37],["nilan",-1,39],["rilan",-1,38],["silan",-1,36],["tilan",-1,34],["avilan",-1,35],["laran",-1,9],["eran",-1,8],["asan",-1,91],["esan",-1,10],["dusan",-1,31],["kusan",-1,28],["atan",-1,47],["pletan",-1,50],["tetan",-1,49],["antan",-1,32],["pravan",-1,44],["stavan",-1,43],["sivan",-1,46],["tivan",-1,45],["ozan",-1,41],["tičan",-1,64],["ašan",-1,90],["dušan",-1,30],["metar",-1,68],["centar",-1,69],["istar",-1,70],["ekat",-1,86],["enat",-1,48],["oscu",-1,72],["ošću",-1,71]],o=[["aca",-1,124],["eca",-1,125],["uca",-1,126],["ga",-1,20],["acega",3,124],["ecega",3,125],["ucega",3,126],["anjijega",3,84],["enjijega",3,85],["snjijega",3,122],["šnjijega",3,86],["kijega",3,95],["skijega",11,1],["škijega",11,2],["elijega",3,83],["nijega",3,13],["osijega",3,123],["atijega",3,120],["evitijega",3,92],["ovitijega",3,93],["astijega",3,94],["avijega",3,77],["evijega",3,78],["ivijega",3,79],["ovijega",3,80],["ošijega",3,91],["anjega",3,84],["enjega",3,85],["snjega",3,122],["šnjega",3,86],["kega",3,95],["skega",30,1],["škega",30,2],["elega",3,83],["nega",3,13],["anega",34,10],["enega",34,87],["snega",34,159],["šnega",34,88],["osega",3,123],["atega",3,120],["evitega",3,92],["ovitega",3,93],["astega",3,94],["avega",3,77],["evega",3,78],["ivega",3,79],["ovega",3,80],["aćega",3,14],["ećega",3,15],["ućega",3,16],["ošega",3,91],["acoga",3,124],["ecoga",3,125],["ucoga",3,126],["anjoga",3,84],["enjoga",3,85],["snjoga",3,122],["šnjoga",3,86],["koga",3,95],["skoga",59,1],["škoga",59,2],["loga",3,19],["eloga",62,83],["noga",3,13],["cinoga",64,137],["činoga",64,89],["osoga",3,123],["atoga",3,120],["evitoga",3,92],["ovitoga",3,93],["astoga",3,94],["avoga",3,77],["evoga",3,78],["ivoga",3,79],["ovoga",3,80],["aćoga",3,14],["ećoga",3,15],["ućoga",3,16],["ošoga",3,91],["uga",3,18],["aja",-1,109],["caja",81,26],["laja",81,30],["raja",81,31],["ćaja",81,28],["čaja",81,27],["đaja",81,29],["bija",-1,32],["cija",-1,33],["dija",-1,34],["fija",-1,40],["gija",-1,39],["anjija",-1,84],["enjija",-1,85],["snjija",-1,122],["šnjija",-1,86],["kija",-1,95],["skija",97,1],["škija",97,2],["lija",-1,24],["elija",100,83],["mija",-1,37],["nija",-1,13],["ganija",103,9],["manija",103,6],["panija",103,7],["ranija",103,8],["tanija",103,5],["pija",-1,41],["rija",-1,42],["rarija",110,21],["sija",-1,23],["osija",112,123],["tija",-1,44],["atija",114,120],["evitija",114,92],["ovitija",114,93],["otija",114,22],["astija",114,94],["avija",-1,77],["evija",-1,78],["ivija",-1,79],["ovija",-1,80],["zija",-1,45],["ošija",-1,91],["žija",-1,38],["anja",-1,84],["enja",-1,85],["snja",-1,122],["šnja",-1,86],["ka",-1,95],["ska",131,1],["ška",131,2],["ala",-1,104],["acala",134,128],["astajala",134,106],["istajala",134,107],["ostajala",134,108],["ijala",134,47],["injala",134,114],["nala",134,46],["irala",134,100],["urala",134,105],["tala",134,113],["astala",144,110],["istala",144,111],["ostala",144,112],["avala",134,97],["evala",134,96],["ivala",134,98],["ovala",134,76],["uvala",134,99],["ačala",134,102],["ela",-1,83],["ila",-1,116],["acila",155,124],["lucila",155,121],["nila",155,103],["astanila",158,110],["istanila",158,111],["ostanila",158,112],["rosila",155,127],["jetila",155,118],["ozila",155,48],["ačila",155,101],["lučila",155,117],["rošila",155,90],["ola",-1,50],["asla",-1,115],["nula",-1,13],["gama",-1,20],["logama",171,19],["ugama",171,18],["ajama",-1,109],["cajama",174,26],["lajama",174,30],["rajama",174,31],["ćajama",174,28],["čajama",174,27],["đajama",174,29],["bijama",-1,32],["cijama",-1,33],["dijama",-1,34],["fijama",-1,40],["gijama",-1,39],["lijama",-1,35],["mijama",-1,37],["nijama",-1,36],["ganijama",188,9],["manijama",188,6],["panijama",188,7],["ranijama",188,8],["tanijama",188,5],["pijama",-1,41],["rijama",-1,42],["sijama",-1,43],["tijama",-1,44],["zijama",-1,45],["žijama",-1,38],["alama",-1,104],["ijalama",200,47],["nalama",200,46],["elama",-1,119],["ilama",-1,116],["ramama",-1,52],["lemama",-1,51],["inama",-1,11],["cinama",207,137],["činama",207,89],["rama",-1,52],["arama",210,53],["drama",210,54],["erama",210,55],["orama",210,56],["basama",-1,135],["gasama",-1,131],["jasama",-1,129],["kasama",-1,133],["nasama",-1,132],["tasama",-1,130],["vasama",-1,134],["esama",-1,152],["isama",-1,154],["etama",-1,70],["estama",-1,71],["istama",-1,72],["kstama",-1,73],["ostama",-1,74],["avama",-1,77],["evama",-1,78],["ivama",-1,79],["bašama",-1,63],["gašama",-1,64],["jašama",-1,61],["kašama",-1,62],["našama",-1,60],["tašama",-1,59],["vašama",-1,65],["ešama",-1,66],["išama",-1,67],["lema",-1,51],["acima",-1,124],["ecima",-1,125],["ucima",-1,126],["ajima",-1,109],["cajima",245,26],["lajima",245,30],["rajima",245,31],["ćajima",245,28],["čajima",245,27],["đajima",245,29],["bijima",-1,32],["cijima",-1,33],["dijima",-1,34],["fijima",-1,40],["gijima",-1,39],["anjijima",-1,84],["enjijima",-1,85],["snjijima",-1,122],["šnjijima",-1,86],["kijima",-1,95],["skijima",261,1],["škijima",261,2],["lijima",-1,35],["elijima",264,83],["mijima",-1,37],["nijima",-1,13],["ganijima",267,9],["manijima",267,6],["panijima",267,7],["ranijima",267,8],["tanijima",267,5],["pijima",-1,41],["rijima",-1,42],["sijima",-1,43],["osijima",275,123],["tijima",-1,44],["atijima",277,120],["evitijima",277,92],["ovitijima",277,93],["astijima",277,94],["avijima",-1,77],["evijima",-1,78],["ivijima",-1,79],["ovijima",-1,80],["zijima",-1,45],["ošijima",-1,91],["žijima",-1,38],["anjima",-1,84],["enjima",-1,85],["snjima",-1,122],["šnjima",-1,86],["kima",-1,95],["skima",293,1],["škima",293,2],["alima",-1,104],["ijalima",296,47],["nalima",296,46],["elima",-1,83],["ilima",-1,116],["ozilima",300,48],["olima",-1,50],["lemima",-1,51],["nima",-1,13],["anima",304,10],["inima",304,11],["cinima",306,137],["činima",306,89],["onima",304,12],["arima",-1,53],["drima",-1,54],["erima",-1,55],["orima",-1,56],["basima",-1,135],["gasima",-1,131],["jasima",-1,129],["kasima",-1,133],["nasima",-1,132],["tasima",-1,130],["vasima",-1,134],["esima",-1,57],["isima",-1,58],["osima",-1,123],["atima",-1,120],["ikatima",324,68],["latima",324,69],["etima",-1,70],["evitima",-1,92],["ovitima",-1,93],["astima",-1,94],["estima",-1,71],["istima",-1,72],["kstima",-1,73],["ostima",-1,74],["ištima",-1,75],["avima",-1,77],["evima",-1,78],["ajevima",337,109],["cajevima",338,26],["lajevima",338,30],["rajevima",338,31],["ćajevima",338,28],["čajevima",338,27],["đajevima",338,29],["ivima",-1,79],["ovima",-1,80],["govima",346,20],["ugovima",347,17],["lovima",346,82],["olovima",349,49],["movima",346,81],["onovima",346,12],["stvima",-1,3],["štvima",-1,4],["aćima",-1,14],["ećima",-1,15],["ućima",-1,16],["bašima",-1,63],["gašima",-1,64],["jašima",-1,61],["kašima",-1,62],["našima",-1,60],["tašima",-1,59],["vašima",-1,65],["ešima",-1,66],["išima",-1,67],["ošima",-1,91],["na",-1,13],["ana",368,10],["acana",369,128],["urana",369,105],["tana",369,113],["avana",369,97],["evana",369,96],["ivana",369,98],["uvana",369,99],["ačana",369,102],["acena",368,124],["lucena",368,121],["ačena",368,101],["lučena",368,117],["ina",368,11],["cina",382,137],["anina",382,10],["čina",382,89],["ona",368,12],["ara",-1,53],["dra",-1,54],["era",-1,55],["ora",-1,56],["basa",-1,135],["gasa",-1,131],["jasa",-1,129],["kasa",-1,133],["nasa",-1,132],["tasa",-1,130],["vasa",-1,134],["esa",-1,57],["isa",-1,58],["osa",-1,123],["ata",-1,120],["ikata",401,68],["lata",401,69],["eta",-1,70],["evita",-1,92],["ovita",-1,93],["asta",-1,94],["esta",-1,71],["ista",-1,72],["ksta",-1,73],["osta",-1,74],["nuta",-1,13],["išta",-1,75],["ava",-1,77],["eva",-1,78],["ajeva",415,109],["cajeva",416,26],["lajeva",416,30],["rajeva",416,31],["ćajeva",416,28],["čajeva",416,27],["đajeva",416,29],["iva",-1,79],["ova",-1,80],["gova",424,20],["ugova",425,17],["lova",424,82],["olova",427,49],["mova",424,81],["onova",424,12],["stva",-1,3],["štva",-1,4],["aća",-1,14],["eća",-1,15],["uća",-1,16],["baša",-1,63],["gaša",-1,64],["jaša",-1,61],["kaša",-1,62],["naša",-1,60],["taša",-1,59],["vaša",-1,65],["eša",-1,66],["iša",-1,67],["oša",-1,91],["ace",-1,124],["ece",-1,125],["uce",-1,126],["luce",448,121],["astade",-1,110],["istade",-1,111],["ostade",-1,112],["ge",-1,20],["loge",453,19],["uge",453,18],["aje",-1,104],["caje",456,26],["laje",456,30],["raje",456,31],["astaje",456,106],["istaje",456,107],["ostaje",456,108],["ćaje",456,28],["čaje",456,27],["đaje",456,29],["ije",-1,116],["bije",466,32],["cije",466,33],["dije",466,34],["fije",466,40],["gije",466,39],["anjije",466,84],["enjije",466,85],["snjije",466,122],["šnjije",466,86],["kije",466,95],["skije",476,1],["škije",476,2],["lije",466,35],["elije",479,83],["mije",466,37],["nije",466,13],["ganije",482,9],["manije",482,6],["panije",482,7],["ranije",482,8],["tanije",482,5],["pije",466,41],["rije",466,42],["sije",466,43],["osije",490,123],["tije",466,44],["atije",492,120],["evitije",492,92],["ovitije",492,93],["astije",492,94],["avije",466,77],["evije",466,78],["ivije",466,79],["ovije",466,80],["zije",466,45],["ošije",466,91],["žije",466,38],["anje",-1,84],["enje",-1,85],["snje",-1,122],["šnje",-1,86],["uje",-1,25],["lucuje",508,121],["iruje",508,100],["lučuje",508,117],["ke",-1,95],["ske",512,1],["ške",512,2],["ale",-1,104],["acale",515,128],["astajale",515,106],["istajale",515,107],["ostajale",515,108],["ijale",515,47],["injale",515,114],["nale",515,46],["irale",515,100],["urale",515,105],["tale",515,113],["astale",525,110],["istale",525,111],["ostale",525,112],["avale",515,97],["evale",515,96],["ivale",515,98],["ovale",515,76],["uvale",515,99],["ačale",515,102],["ele",-1,83],["ile",-1,116],["acile",536,124],["lucile",536,121],["nile",536,103],["rosile",536,127],["jetile",536,118],["ozile",536,48],["ačile",536,101],["lučile",536,117],["rošile",536,90],["ole",-1,50],["asle",-1,115],["nule",-1,13],["rame",-1,52],["leme",-1,51],["acome",-1,124],["ecome",-1,125],["ucome",-1,126],["anjome",-1,84],["enjome",-1,85],["snjome",-1,122],["šnjome",-1,86],["kome",-1,95],["skome",558,1],["škome",558,2],["elome",-1,83],["nome",-1,13],["cinome",562,137],["činome",562,89],["osome",-1,123],["atome",-1,120],["evitome",-1,92],["ovitome",-1,93],["astome",-1,94],["avome",-1,77],["evome",-1,78],["ivome",-1,79],["ovome",-1,80],["aćome",-1,14],["ećome",-1,15],["ućome",-1,16],["ošome",-1,91],["ne",-1,13],["ane",578,10],["acane",579,128],["urane",579,105],["tane",579,113],["astane",582,110],["istane",582,111],["ostane",582,112],["avane",579,97],["evane",579,96],["ivane",579,98],["uvane",579,99],["ačane",579,102],["acene",578,124],["lucene",578,121],["ačene",578,101],["lučene",578,117],["ine",578,11],["cine",595,137],["anine",595,10],["čine",595,89],["one",578,12],["are",-1,53],["dre",-1,54],["ere",-1,55],["ore",-1,56],["ase",-1,161],["base",604,135],["acase",604,128],["gase",604,131],["jase",604,129],["astajase",608,138],["istajase",608,139],["ostajase",608,140],["injase",608,150],["kase",604,133],["nase",604,132],["irase",604,155],["urase",604,156],["tase",604,130],["vase",604,134],["avase",618,144],["evase",618,145],["ivase",618,146],["ovase",618,148],["uvase",618,147],["ese",-1,57],["ise",-1,58],["acise",625,124],["lucise",625,121],["rosise",625,127],["jetise",625,149],["ose",-1,123],["astadose",630,141],["istadose",630,142],["ostadose",630,143],["ate",-1,104],["acate",634,128],["ikate",634,68],["late",634,69],["irate",634,100],["urate",634,105],["tate",634,113],["avate",634,97],["evate",634,96],["ivate",634,98],["uvate",634,99],["ačate",634,102],["ete",-1,70],["astadete",646,110],["istadete",646,111],["ostadete",646,112],["astajete",646,106],["istajete",646,107],["ostajete",646,108],["ijete",646,116],["injete",646,114],["ujete",646,25],["lucujete",655,121],["irujete",655,100],["lučujete",655,117],["nete",646,13],["astanete",659,110],["istanete",659,111],["ostanete",659,112],["astete",646,115],["ite",-1,116],["acite",664,124],["lucite",664,121],["nite",664,13],["astanite",667,110],["istanite",667,111],["ostanite",667,112],["rosite",664,127],["jetite",664,118],["astite",664,115],["evite",664,92],["ovite",664,93],["ačite",664,101],["lučite",664,117],["rošite",664,90],["ajte",-1,104],["urajte",679,105],["tajte",679,113],["astajte",681,106],["istajte",681,107],["ostajte",681,108],["avajte",679,97],["evajte",679,96],["ivajte",679,98],["uvajte",679,99],["ijte",-1,116],["lucujte",-1,121],["irujte",-1,100],["lučujte",-1,117],["aste",-1,94],["acaste",693,128],["astajaste",693,106],["istajaste",693,107],["ostajaste",693,108],["injaste",693,114],["iraste",693,100],["uraste",693,105],["taste",693,113],["avaste",693,97],["evaste",693,96],["ivaste",693,98],["ovaste",693,76],["uvaste",693,99],["ačaste",693,102],["este",-1,71],["iste",-1,72],["aciste",709,124],["luciste",709,121],["niste",709,103],["rosiste",709,127],["jetiste",709,118],["ačiste",709,101],["lučiste",709,117],["rošiste",709,90],["kste",-1,73],["oste",-1,74],["astadoste",719,110],["istadoste",719,111],["ostadoste",719,112],["nuste",-1,13],["ište",-1,75],["ave",-1,77],["eve",-1,78],["ajeve",726,109],["cajeve",727,26],["lajeve",727,30],["rajeve",727,31],["ćajeve",727,28],["čajeve",727,27],["đajeve",727,29],["ive",-1,79],["ove",-1,80],["gove",735,20],["ugove",736,17],["love",735,82],["olove",738,49],["move",735,81],["onove",735,12],["aće",-1,14],["eće",-1,15],["uće",-1,16],["ače",-1,101],["luče",-1,117],["aše",-1,104],["baše",747,63],["gaše",747,64],["jaše",747,61],["astajaše",750,106],["istajaše",750,107],["ostajaše",750,108],["injaše",750,114],["kaše",747,62],["naše",747,60],["iraše",747,100],["uraše",747,105],["taše",747,59],["vaše",747,65],["avaše",760,97],["evaše",760,96],["ivaše",760,98],["ovaše",760,76],["uvaše",760,99],["ačaše",747,102],["eše",-1,66],["iše",-1,67],["jetiše",768,118],["ačiše",768,101],["lučiše",768,117],["rošiše",768,90],["oše",-1,91],["astadoše",773,110],["istadoše",773,111],["ostadoše",773,112],["aceg",-1,124],["eceg",-1,125],["uceg",-1,126],["anjijeg",-1,84],["enjijeg",-1,85],["snjijeg",-1,122],["šnjijeg",-1,86],["kijeg",-1,95],["skijeg",784,1],["škijeg",784,2],["elijeg",-1,83],["nijeg",-1,13],["osijeg",-1,123],["atijeg",-1,120],["evitijeg",-1,92],["ovitijeg",-1,93],["astijeg",-1,94],["avijeg",-1,77],["evijeg",-1,78],["ivijeg",-1,79],["ovijeg",-1,80],["ošijeg",-1,91],["anjeg",-1,84],["enjeg",-1,85],["snjeg",-1,122],["šnjeg",-1,86],["keg",-1,95],["eleg",-1,83],["neg",-1,13],["aneg",805,10],["eneg",805,87],["sneg",805,159],["šneg",805,88],["oseg",-1,123],["ateg",-1,120],["aveg",-1,77],["eveg",-1,78],["iveg",-1,79],["oveg",-1,80],["aćeg",-1,14],["ećeg",-1,15],["ućeg",-1,16],["ošeg",-1,91],["acog",-1,124],["ecog",-1,125],["ucog",-1,126],["anjog",-1,84],["enjog",-1,85],["snjog",-1,122],["šnjog",-1,86],["kog",-1,95],["skog",827,1],["škog",827,2],["elog",-1,83],["nog",-1,13],["cinog",831,137],["činog",831,89],["osog",-1,123],["atog",-1,120],["evitog",-1,92],["ovitog",-1,93],["astog",-1,94],["avog",-1,77],["evog",-1,78],["ivog",-1,79],["ovog",-1,80],["aćog",-1,14],["ećog",-1,15],["ućog",-1,16],["ošog",-1,91],["ah",-1,104],["acah",847,128],["astajah",847,106],["istajah",847,107],["ostajah",847,108],["injah",847,114],["irah",847,100],["urah",847,105],["tah",847,113],["avah",847,97],["evah",847,96],["ivah",847,98],["ovah",847,76],["uvah",847,99],["ačah",847,102],["ih",-1,116],["acih",862,124],["ecih",862,125],["ucih",862,126],["lucih",865,121],["anjijih",862,84],["enjijih",862,85],["snjijih",862,122],["šnjijih",862,86],["kijih",862,95],["skijih",871,1],["škijih",871,2],["elijih",862,83],["nijih",862,13],["osijih",862,123],["atijih",862,120],["evitijih",862,92],["ovitijih",862,93],["astijih",862,94],["avijih",862,77],["evijih",862,78],["ivijih",862,79],["ovijih",862,80],["ošijih",862,91],["anjih",862,84],["enjih",862,85],["snjih",862,122],["šnjih",862,86],["kih",862,95],["skih",890,1],["ških",890,2],["elih",862,83],["nih",862,13],["cinih",894,137],["činih",894,89],["osih",862,123],["rosih",897,127],["atih",862,120],["jetih",862,118],["evitih",862,92],["ovitih",862,93],["astih",862,94],["avih",862,77],["evih",862,78],["ivih",862,79],["ovih",862,80],["aćih",862,14],["ećih",862,15],["ućih",862,16],["ačih",862,101],["lučih",862,117],["oših",862,91],["roših",913,90],["astadoh",-1,110],["istadoh",-1,111],["ostadoh",-1,112],["acuh",-1,124],["ecuh",-1,125],["ucuh",-1,126],["aćuh",-1,14],["ećuh",-1,15],["ućuh",-1,16],["aci",-1,124],["aceci",-1,124],["ieci",-1,162],["ajuci",-1,161],["irajuci",927,155],["urajuci",927,156],["astajuci",927,138],["istajuci",927,139],["ostajuci",927,140],["avajuci",927,144],["evajuci",927,145],["ivajuci",927,146],["uvajuci",927,147],["ujuci",-1,157],["lucujuci",937,121],["irujuci",937,155],["luci",-1,121],["nuci",-1,164],["etuci",-1,153],["astuci",-1,136],["gi",-1,20],["ugi",944,18],["aji",-1,109],["caji",946,26],["laji",946,30],["raji",946,31],["ćaji",946,28],["čaji",946,27],["đaji",946,29],["biji",-1,32],["ciji",-1,33],["diji",-1,34],["fiji",-1,40],["giji",-1,39],["anjiji",-1,84],["enjiji",-1,85],["snjiji",-1,122],["šnjiji",-1,86],["kiji",-1,95],["skiji",962,1],["škiji",962,2],["liji",-1,35],["eliji",965,83],["miji",-1,37],["niji",-1,13],["ganiji",968,9],["maniji",968,6],["paniji",968,7],["raniji",968,8],["taniji",968,5],["piji",-1,41],["riji",-1,42],["siji",-1,43],["osiji",976,123],["tiji",-1,44],["atiji",978,120],["evitiji",978,92],["ovitiji",978,93],["astiji",978,94],["aviji",-1,77],["eviji",-1,78],["iviji",-1,79],["oviji",-1,80],["ziji",-1,45],["ošiji",-1,91],["žiji",-1,38],["anji",-1,84],["enji",-1,85],["snji",-1,122],["šnji",-1,86],["ki",-1,95],["ski",994,1],["ški",994,2],["ali",-1,104],["acali",997,128],["astajali",997,106],["istajali",997,107],["ostajali",997,108],["ijali",997,47],["injali",997,114],["nali",997,46],["irali",997,100],["urali",997,105],["tali",997,113],["astali",1007,110],["istali",1007,111],["ostali",1007,112],["avali",997,97],["evali",997,96],["ivali",997,98],["ovali",997,76],["uvali",997,99],["ačali",997,102],["eli",-1,83],["ili",-1,116],["acili",1018,124],["lucili",1018,121],["nili",1018,103],["rosili",1018,127],["jetili",1018,118],["ozili",1018,48],["ačili",1018,101],["lučili",1018,117],["rošili",1018,90],["oli",-1,50],["asli",-1,115],["nuli",-1,13],["rami",-1,52],["lemi",-1,51],["ni",-1,13],["ani",1033,10],["acani",1034,128],["urani",1034,105],["tani",1034,113],["avani",1034,97],["evani",1034,96],["ivani",1034,98],["uvani",1034,99],["ačani",1034,102],["aceni",1033,124],["luceni",1033,121],["ačeni",1033,101],["lučeni",1033,117],["ini",1033,11],["cini",1047,137],["čini",1047,89],["oni",1033,12],["ari",-1,53],["dri",-1,54],["eri",-1,55],["ori",-1,56],["basi",-1,135],["gasi",-1,131],["jasi",-1,129],["kasi",-1,133],["nasi",-1,132],["tasi",-1,130],["vasi",-1,134],["esi",-1,152],["isi",-1,154],["osi",-1,123],["avsi",-1,161],["acavsi",1065,128],["iravsi",1065,155],["tavsi",1065,160],["etavsi",1068,153],["astavsi",1068,141],["istavsi",1068,142],["ostavsi",1068,143],["ivsi",-1,162],["nivsi",1073,158],["rosivsi",1073,127],["nuvsi",-1,164],["ati",-1,104],["acati",1077,128],["astajati",1077,106],["istajati",1077,107],["ostajati",1077,108],["injati",1077,114],["ikati",1077,68],["lati",1077,69],["irati",1077,100],["urati",1077,105],["tati",1077,113],["astati",1087,110],["istati",1087,111],["ostati",1087,112],["avati",1077,97],["evati",1077,96],["ivati",1077,98],["ovati",1077,76],["uvati",1077,99],["ačati",1077,102],["eti",-1,70],["iti",-1,116],["aciti",1098,124],["luciti",1098,121],["niti",1098,103],["rositi",1098,127],["jetiti",1098,118],["eviti",1098,92],["oviti",1098,93],["ačiti",1098,101],["lučiti",1098,117],["rošiti",1098,90],["asti",-1,94],["esti",-1,71],["isti",-1,72],["ksti",-1,73],["osti",-1,74],["nuti",-1,13],["avi",-1,77],["evi",-1,78],["ajevi",1116,109],["cajevi",1117,26],["lajevi",1117,30],["rajevi",1117,31],["ćajevi",1117,28],["čajevi",1117,27],["đajevi",1117,29],["ivi",-1,79],["ovi",-1,80],["govi",1125,20],["ugovi",1126,17],["lovi",1125,82],["olovi",1128,49],["movi",1125,81],["onovi",1125,12],["ieći",-1,116],["ačeći",-1,101],["ajući",-1,104],["irajući",1134,100],["urajući",1134,105],["astajući",1134,106],["istajući",1134,107],["ostajući",1134,108],["avajući",1134,97],["evajući",1134,96],["ivajući",1134,98],["uvajući",1134,99],["ujući",-1,25],["irujući",1144,100],["lučujući",1144,117],["nući",-1,13],["etući",-1,70],["astući",-1,115],["ači",-1,101],["luči",-1,117],["baši",-1,63],["gaši",-1,64],["jaši",-1,61],["kaši",-1,62],["naši",-1,60],["taši",-1,59],["vaši",-1,65],["eši",-1,66],["iši",-1,67],["oši",-1,91],["avši",-1,104],["iravši",1162,100],["tavši",1162,113],["etavši",1164,70],["astavši",1164,110],["istavši",1164,111],["ostavši",1164,112],["ačavši",1162,102],["ivši",-1,116],["nivši",1170,103],["rošivši",1170,90],["nuvši",-1,13],["aj",-1,104],["uraj",1174,105],["taj",1174,113],["avaj",1174,97],["evaj",1174,96],["ivaj",1174,98],["uvaj",1174,99],["ij",-1,116],["acoj",-1,124],["ecoj",-1,125],["ucoj",-1,126],["anjijoj",-1,84],["enjijoj",-1,85],["snjijoj",-1,122],["šnjijoj",-1,86],["kijoj",-1,95],["skijoj",1189,1],["škijoj",1189,2],["elijoj",-1,83],["nijoj",-1,13],["osijoj",-1,123],["evitijoj",-1,92],["ovitijoj",-1,93],["astijoj",-1,94],["avijoj",-1,77],["evijoj",-1,78],["ivijoj",-1,79],["ovijoj",-1,80],["ošijoj",-1,91],["anjoj",-1,84],["enjoj",-1,85],["snjoj",-1,122],["šnjoj",-1,86],["koj",-1,95],["skoj",1207,1],["škoj",1207,2],["aloj",-1,104],["eloj",-1,83],["noj",-1,13],["cinoj",1212,137],["činoj",1212,89],["osoj",-1,123],["atoj",-1,120],["evitoj",-1,92],["ovitoj",-1,93],["astoj",-1,94],["avoj",-1,77],["evoj",-1,78],["ivoj",-1,79],["ovoj",-1,80],["aćoj",-1,14],["ećoj",-1,15],["ućoj",-1,16],["ošoj",-1,91],["lucuj",-1,121],["iruj",-1,100],["lučuj",-1,117],["al",-1,104],["iral",1231,100],["ural",1231,105],["el",-1,119],["il",-1,116],["am",-1,104],["acam",1236,128],["iram",1236,100],["uram",1236,105],["tam",1236,113],["avam",1236,97],["evam",1236,96],["ivam",1236,98],["uvam",1236,99],["ačam",1236,102],["em",-1,119],["acem",1246,124],["ecem",1246,125],["ucem",1246,126],["astadem",1246,110],["istadem",1246,111],["ostadem",1246,112],["ajem",1246,104],["cajem",1253,26],["lajem",1253,30],["rajem",1253,31],["astajem",1253,106],["istajem",1253,107],["ostajem",1253,108],["ćajem",1253,28],["čajem",1253,27],["đajem",1253,29],["ijem",1246,116],["anjijem",1263,84],["enjijem",1263,85],["snjijem",1263,123],["šnjijem",1263,86],["kijem",1263,95],["skijem",1268,1],["škijem",1268,2],["lijem",1263,24],["elijem",1271,83],["nijem",1263,13],["rarijem",1263,21],["sijem",1263,23],["osijem",1275,123],["atijem",1263,120],["evitijem",1263,92],["ovitijem",1263,93],["otijem",1263,22],["astijem",1263,94],["avijem",1263,77],["evijem",1263,78],["ivijem",1263,79],["ovijem",1263,80],["ošijem",1263,91],["anjem",1246,84],["enjem",1246,85],["injem",1246,114],["snjem",1246,122],["šnjem",1246,86],["ujem",1246,25],["lucujem",1292,121],["irujem",1292,100],["lučujem",1292,117],["kem",1246,95],["skem",1296,1],["škem",1296,2],["elem",1246,83],["nem",1246,13],["anem",1300,10],["astanem",1301,110],["istanem",1301,111],["ostanem",1301,112],["enem",1300,87],["snem",1300,159],["šnem",1300,88],["basem",1246,135],["gasem",1246,131],["jasem",1246,129],["kasem",1246,133],["nasem",1246,132],["tasem",1246,130],["vasem",1246,134],["esem",1246,152],["isem",1246,154],["osem",1246,123],["atem",1246,120],["etem",1246,70],["evitem",1246,92],["ovitem",1246,93],["astem",1246,94],["istem",1246,151],["ištem",1246,75],["avem",1246,77],["evem",1246,78],["ivem",1246,79],["aćem",1246,14],["ećem",1246,15],["ućem",1246,16],["bašem",1246,63],["gašem",1246,64],["jašem",1246,61],["kašem",1246,62],["našem",1246,60],["tašem",1246,59],["vašem",1246,65],["ešem",1246,66],["išem",1246,67],["ošem",1246,91],["im",-1,116],["acim",1341,124],["ecim",1341,125],["ucim",1341,126],["lucim",1344,121],["anjijim",1341,84],["enjijim",1341,85],["snjijim",1341,122],["šnjijim",1341,86],["kijim",1341,95],["skijim",1350,1],["škijim",1350,2],["elijim",1341,83],["nijim",1341,13],["osijim",1341,123],["atijim",1341,120],["evitijim",1341,92],["ovitijim",1341,93],["astijim",1341,94],["avijim",1341,77],["evijim",1341,78],["ivijim",1341,79],["ovijim",1341,80],["ošijim",1341,91],["anjim",1341,84],["enjim",1341,85],["snjim",1341,122],["šnjim",1341,86],["kim",1341,95],["skim",1369,1],["škim",1369,2],["elim",1341,83],["nim",1341,13],["cinim",1373,137],["činim",1373,89],["osim",1341,123],["rosim",1376,127],["atim",1341,120],["jetim",1341,118],["evitim",1341,92],["ovitim",1341,93],["astim",1341,94],["avim",1341,77],["evim",1341,78],["ivim",1341,79],["ovim",1341,80],["aćim",1341,14],["ećim",1341,15],["ućim",1341,16],["ačim",1341,101],["lučim",1341,117],["ošim",1341,91],["rošim",1392,90],["acom",-1,124],["ecom",-1,125],["ucom",-1,126],["gom",-1,20],["logom",1397,19],["ugom",1397,18],["bijom",-1,32],["cijom",-1,33],["dijom",-1,34],["fijom",-1,40],["gijom",-1,39],["lijom",-1,35],["mijom",-1,37],["nijom",-1,36],["ganijom",1407,9],["manijom",1407,6],["panijom",1407,7],["ranijom",1407,8],["tanijom",1407,5],["pijom",-1,41],["rijom",-1,42],["sijom",-1,43],["tijom",-1,44],["zijom",-1,45],["žijom",-1,38],["anjom",-1,84],["enjom",-1,85],["snjom",-1,122],["šnjom",-1,86],["kom",-1,95],["skom",1423,1],["škom",1423,2],["alom",-1,104],["ijalom",1426,47],["nalom",1426,46],["elom",-1,83],["ilom",-1,116],["ozilom",1430,48],["olom",-1,50],["ramom",-1,52],["lemom",-1,51],["nom",-1,13],["anom",1435,10],["inom",1435,11],["cinom",1437,137],["aninom",1437,10],["činom",1437,89],["onom",1435,12],["arom",-1,53],["drom",-1,54],["erom",-1,55],["orom",-1,56],["basom",-1,135],["gasom",-1,131],["jasom",-1,129],["kasom",-1,133],["nasom",-1,132],["tasom",-1,130],["vasom",-1,134],["esom",-1,57],["isom",-1,58],["osom",-1,123],["atom",-1,120],["ikatom",1456,68],["latom",1456,69],["etom",-1,70],["evitom",-1,92],["ovitom",-1,93],["astom",-1,94],["estom",-1,71],["istom",-1,72],["kstom",-1,73],["ostom",-1,74],["avom",-1,77],["evom",-1,78],["ivom",-1,79],["ovom",-1,80],["lovom",1470,82],["movom",1470,81],["stvom",-1,3],["štvom",-1,4],["aćom",-1,14],["ećom",-1,15],["ućom",-1,16],["bašom",-1,63],["gašom",-1,64],["jašom",-1,61],["kašom",-1,62],["našom",-1,60],["tašom",-1,59],["vašom",-1,65],["ešom",-1,66],["išom",-1,67],["ošom",-1,91],["an",-1,104],["acan",1488,128],["iran",1488,100],["uran",1488,105],["tan",1488,113],["avan",1488,97],["evan",1488,96],["ivan",1488,98],["uvan",1488,99],["ačan",1488,102],["acen",-1,124],["lucen",-1,121],["ačen",-1,101],["lučen",-1,117],["anin",-1,10],["ao",-1,104],["acao",1503,128],["astajao",1503,106],["istajao",1503,107],["ostajao",1503,108],["injao",1503,114],["irao",1503,100],["urao",1503,105],["tao",1503,113],["astao",1511,110],["istao",1511,111],["ostao",1511,112],["avao",1503,97],["evao",1503,96],["ivao",1503,98],["ovao",1503,76],["uvao",1503,99],["ačao",1503,102],["go",-1,20],["ugo",1521,18],["io",-1,116],["acio",1523,124],["lucio",1523,121],["lio",1523,24],["nio",1523,103],["rario",1523,21],["sio",1523,23],["rosio",1529,127],["jetio",1523,118],["otio",1523,22],["ačio",1523,101],["lučio",1523,117],["rošio",1523,90],["bijo",-1,32],["cijo",-1,33],["dijo",-1,34],["fijo",-1,40],["gijo",-1,39],["lijo",-1,35],["mijo",-1,37],["nijo",-1,36],["pijo",-1,41],["rijo",-1,42],["sijo",-1,43],["tijo",-1,44],["zijo",-1,45],["žijo",-1,38],["anjo",-1,84],["enjo",-1,85],["snjo",-1,122],["šnjo",-1,86],["ko",-1,95],["sko",1554,1],["ško",1554,2],["alo",-1,104],["acalo",1557,128],["astajalo",1557,106],["istajalo",1557,107],["ostajalo",1557,108],["ijalo",1557,47],["injalo",1557,114],["nalo",1557,46],["iralo",1557,100],["uralo",1557,105],["talo",1557,113],["astalo",1567,110],["istalo",1567,111],["ostalo",1567,112],["avalo",1557,97],["evalo",1557,96],["ivalo",1557,98],["ovalo",1557,76],["uvalo",1557,99],["ačalo",1557,102],["elo",-1,83],["ilo",-1,116],["acilo",1578,124],["lucilo",1578,121],["nilo",1578,103],["rosilo",1578,127],["jetilo",1578,118],["ačilo",1578,101],["lučilo",1578,117],["rošilo",1578,90],["aslo",-1,115],["nulo",-1,13],["amo",-1,104],["acamo",1589,128],["ramo",1589,52],["iramo",1591,100],["uramo",1591,105],["tamo",1589,113],["avamo",1589,97],["evamo",1589,96],["ivamo",1589,98],["uvamo",1589,99],["ačamo",1589,102],["emo",-1,119],["astademo",1600,110],["istademo",1600,111],["ostademo",1600,112],["astajemo",1600,106],["istajemo",1600,107],["ostajemo",1600,108],["ijemo",1600,116],["injemo",1600,114],["ujemo",1600,25],["lucujemo",1609,121],["irujemo",1609,100],["lučujemo",1609,117],["lemo",1600,51],["nemo",1600,13],["astanemo",1614,110],["istanemo",1614,111],["ostanemo",1614,112],["etemo",1600,70],["astemo",1600,115],["imo",-1,116],["acimo",1620,124],["lucimo",1620,121],["nimo",1620,13],["astanimo",1623,110],["istanimo",1623,111],["ostanimo",1623,112],["rosimo",1620,127],["etimo",1620,70],["jetimo",1628,118],["astimo",1620,115],["ačimo",1620,101],["lučimo",1620,117],["rošimo",1620,90],["ajmo",-1,104],["urajmo",1634,105],["tajmo",1634,113],["astajmo",1636,106],["istajmo",1636,107],["ostajmo",1636,108],["avajmo",1634,97],["evajmo",1634,96],["ivajmo",1634,98],["uvajmo",1634,99],["ijmo",-1,116],["ujmo",-1,25],["lucujmo",1645,121],["irujmo",1645,100],["lučujmo",1645,117],["asmo",-1,104],["acasmo",1649,128],["astajasmo",1649,106],["istajasmo",1649,107],["ostajasmo",1649,108],["injasmo",1649,114],["irasmo",1649,100],["urasmo",1649,105],["tasmo",1649,113],["avasmo",1649,97],["evasmo",1649,96],["ivasmo",1649,98],["ovasmo",1649,76],["uvasmo",1649,99],["ačasmo",1649,102],["ismo",-1,116],["acismo",1664,124],["lucismo",1664,121],["nismo",1664,103],["rosismo",1664,127],["jetismo",1664,118],["ačismo",1664,101],["lučismo",1664,117],["rošismo",1664,90],["astadosmo",-1,110],["istadosmo",-1,111],["ostadosmo",-1,112],["nusmo",-1,13],["no",-1,13],["ano",1677,104],["acano",1678,128],["urano",1678,105],["tano",1678,113],["avano",1678,97],["evano",1678,96],["ivano",1678,98],["uvano",1678,99],["ačano",1678,102],["aceno",1677,124],["luceno",1677,121],["ačeno",1677,101],["lučeno",1677,117],["ino",1677,11],["cino",1691,137],["čino",1691,89],["ato",-1,120],["ikato",1694,68],["lato",1694,69],["eto",-1,70],["evito",-1,92],["ovito",-1,93],["asto",-1,94],["esto",-1,71],["isto",-1,72],["ksto",-1,73],["osto",-1,74],["nuto",-1,13],["nuo",-1,13],["avo",-1,77],["evo",-1,78],["ivo",-1,79],["ovo",-1,80],["stvo",-1,3],["štvo",-1,4],["as",-1,161],["acas",1713,128],["iras",1713,155],["uras",1713,156],["tas",1713,160],["avas",1713,144],["evas",1713,145],["ivas",1713,146],["uvas",1713,147],["es",-1,163],["astades",1722,141],["istades",1722,142],["ostades",1722,143],["astajes",1722,138],["istajes",1722,139],["ostajes",1722,140],["ijes",1722,162],["injes",1722,150],["ujes",1722,157],["lucujes",1731,121],["irujes",1731,155],["nes",1722,164],["astanes",1734,141],["istanes",1734,142],["ostanes",1734,143],["etes",1722,153],["astes",1722,136],["is",-1,162],["acis",1740,124],["lucis",1740,121],["nis",1740,158],["rosis",1740,127],["jetis",1740,149],["at",-1,104],["acat",1746,128],["astajat",1746,106],["istajat",1746,107],["ostajat",1746,108],["injat",1746,114],["irat",1746,100],["urat",1746,105],["tat",1746,113],["astat",1754,110],["istat",1754,111],["ostat",1754,112],["avat",1746,97],["evat",1746,96],["ivat",1746,98],["irivat",1760,100],["ovat",1746,76],["uvat",1746,99],["ačat",1746,102],["it",-1,116],["acit",1765,124],["lucit",1765,121],["rosit",1765,127],["jetit",1765,118],["ačit",1765,101],["lučit",1765,117],["rošit",1765,90],["nut",-1,13],["astadu",-1,110],["istadu",-1,111],["ostadu",-1,112],["gu",-1,20],["logu",1777,19],["ugu",1777,18],["ahu",-1,104],["acahu",1780,128],["astajahu",1780,106],["istajahu",1780,107],["ostajahu",1780,108],["injahu",1780,114],["irahu",1780,100],["urahu",1780,105],["avahu",1780,97],["evahu",1780,96],["ivahu",1780,98],["ovahu",1780,76],["uvahu",1780,99],["ačahu",1780,102],["aju",-1,104],["caju",1794,26],["acaju",1795,128],["laju",1794,30],["raju",1794,31],["iraju",1798,100],["uraju",1798,105],["taju",1794,113],["astaju",1801,106],["istaju",1801,107],["ostaju",1801,108],["avaju",1794,97],["evaju",1794,96],["ivaju",1794,98],["uvaju",1794,99],["ćaju",1794,28],["čaju",1794,27],["ačaju",1810,102],["đaju",1794,29],["iju",-1,116],["biju",1813,32],["ciju",1813,33],["diju",1813,34],["fiju",1813,40],["giju",1813,39],["anjiju",1813,84],["enjiju",1813,85],["snjiju",1813,122],["šnjiju",1813,86],["kiju",1813,95],["liju",1813,24],["eliju",1824,83],["miju",1813,37],["niju",1813,13],["ganiju",1827,9],["maniju",1827,6],["paniju",1827,7],["raniju",1827,8],["taniju",1827,5],["piju",1813,41],["riju",1813,42],["rariju",1834,21],["siju",1813,23],["osiju",1836,123],["tiju",1813,44],["atiju",1838,120],["otiju",1838,22],["aviju",1813,77],["eviju",1813,78],["iviju",1813,79],["oviju",1813,80],["ziju",1813,45],["ošiju",1813,91],["žiju",1813,38],["anju",-1,84],["enju",-1,85],["snju",-1,122],["šnju",-1,86],["uju",-1,25],["lucuju",1852,121],["iruju",1852,100],["lučuju",1852,117],["ku",-1,95],["sku",1856,1],["šku",1856,2],["alu",-1,104],["ijalu",1859,47],["nalu",1859,46],["elu",-1,83],["ilu",-1,116],["ozilu",1863,48],["olu",-1,50],["ramu",-1,52],["acemu",-1,124],["ecemu",-1,125],["ucemu",-1,126],["anjijemu",-1,84],["enjijemu",-1,85],["snjijemu",-1,122],["šnjijemu",-1,86],["kijemu",-1,95],["skijemu",1874,1],["škijemu",1874,2],["elijemu",-1,83],["nijemu",-1,13],["osijemu",-1,123],["atijemu",-1,120],["evitijemu",-1,92],["ovitijemu",-1,93],["astijemu",-1,94],["avijemu",-1,77],["evijemu",-1,78],["ivijemu",-1,79],["ovijemu",-1,80],["ošijemu",-1,91],["anjemu",-1,84],["enjemu",-1,85],["snjemu",-1,122],["šnjemu",-1,86],["kemu",-1,95],["skemu",1893,1],["škemu",1893,2],["lemu",-1,51],["elemu",1896,83],["nemu",-1,13],["anemu",1898,10],["enemu",1898,87],["snemu",1898,159],["šnemu",1898,88],["osemu",-1,123],["atemu",-1,120],["evitemu",-1,92],["ovitemu",-1,93],["astemu",-1,94],["avemu",-1,77],["evemu",-1,78],["ivemu",-1,79],["ovemu",-1,80],["aćemu",-1,14],["ećemu",-1,15],["ućemu",-1,16],["ošemu",-1,91],["acomu",-1,124],["ecomu",-1,125],["ucomu",-1,126],["anjomu",-1,84],["enjomu",-1,85],["snjomu",-1,122],["šnjomu",-1,86],["komu",-1,95],["skomu",1923,1],["škomu",1923,2],["elomu",-1,83],["nomu",-1,13],["cinomu",1927,137],["činomu",1927,89],["osomu",-1,123],["atomu",-1,120],["evitomu",-1,92],["ovitomu",-1,93],["astomu",-1,94],["avomu",-1,77],["evomu",-1,78],["ivomu",-1,79],["ovomu",-1,80],["aćomu",-1,14],["ećomu",-1,15],["ućomu",-1,16],["ošomu",-1,91],["nu",-1,13],["anu",1943,10],["astanu",1944,110],["istanu",1944,111],["ostanu",1944,112],["inu",1943,11],["cinu",1948,137],["aninu",1948,10],["činu",1948,89],["onu",1943,12],["aru",-1,53],["dru",-1,54],["eru",-1,55],["oru",-1,56],["basu",-1,135],["gasu",-1,131],["jasu",-1,129],["kasu",-1,133],["nasu",-1,132],["tasu",-1,130],["vasu",-1,134],["esu",-1,57],["isu",-1,58],["osu",-1,123],["atu",-1,120],["ikatu",1967,68],["latu",1967,69],["etu",-1,70],["evitu",-1,92],["ovitu",-1,93],["astu",-1,94],["estu",-1,71],["istu",-1,72],["kstu",-1,73],["ostu",-1,74],["ištu",-1,75],["avu",-1,77],["evu",-1,78],["ivu",-1,79],["ovu",-1,80],["lovu",1982,82],["movu",1982,81],["stvu",-1,3],["štvu",-1,4],["bašu",-1,63],["gašu",-1,64],["jašu",-1,61],["kašu",-1,62],["našu",-1,60],["tašu",-1,59],["vašu",-1,65],["ešu",-1,66],["išu",-1,67],["ošu",-1,91],["avav",-1,97],["evav",-1,96],["ivav",-1,98],["uvav",-1,99],["kov",-1,95],["aš",-1,104],["iraš",2002,100],["uraš",2002,105],["taš",2002,113],["avaš",2002,97],["evaš",2002,96],["ivaš",2002,98],["uvaš",2002,99],["ačaš",2002,102],["eš",-1,119],["astadeš",2011,110],["istadeš",2011,111],["ostadeš",2011,112],["astaješ",2011,106],["istaješ",2011,107],["ostaješ",2011,108],["iješ",2011,116],["inješ",2011,114],["uješ",2011,25],["iruješ",2020,100],["lučuješ",2020,117],["neš",2011,13],["astaneš",2023,110],["istaneš",2023,111],["ostaneš",2023,112],["eteš",2011,70],["asteš",2011,115],["iš",-1,116],["niš",2029,103],["jetiš",2029,118],["ačiš",2029,101],["lučiš",2029,117],["rošiš",2029,90]],t=[["a",-1,1],["oga",0,1],["ama",0,1],["ima",0,1],["ena",0,1],["e",-1,1],["og",-1,1],["anog",6,1],["enog",6,1],["anih",-1,1],["enih",-1,1],["i",-1,1],["ani",11,1],["eni",11,1],["anoj",-1,1],["enoj",-1,1],["anim",-1,1],["enim",-1,1],["om",-1,1],["enom",18,1],["o",-1,1],["ano",20,1],["eno",20,1],["ost",-1,1],["u",-1,1],["enu",24,1]],u=[17,65,16],n=[65,4,0,0,0,0,0,0,0,0,0,4,0,0,128],j=[119,95,23,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,136,0,0,0,0,0,0,0,0,0,128,0,0,0,16],c=[1],f=0,l=!1;function v(){return f<=m.cursor}this.stem=function(){(()=>{for(var a,e=m.cursor;;){var i=m.cursor;a:{for(;;){var r=m.cursor;if(m.bra=m.cursor,0!=(a=m.find_among(s))){switch(m.ket=m.cursor,a){case 1:if(m.slice_from("a"))break;return;case 2:if(m.slice_from("b"))break;return;case 3:if(m.slice_from("v"))break;return;case 4:if(m.slice_from("g"))break;return;case 5:if(m.slice_from("d"))break;return;case 6:if(m.slice_from("đ"))break;return;case 7:if(m.slice_from("e"))break;return;case 8:if(m.slice_from("ž"))break;return;case 9:if(m.slice_from("z"))break;return;case 10:if(m.slice_from("i"))break;return;case 11:if(m.slice_from("j"))break;return;case 12:if(m.slice_from("k"))break;return;case 13:if(m.slice_from("l"))break;return;case 14:if(m.slice_from("lj"))break;return;case 15:if(m.slice_from("m"))break;return;case 16:if(m.slice_from("n"))break;return;case 17:if(m.slice_from("nj"))break;return;case 18:if(m.slice_from("o"))break;return;case 19:if(m.slice_from("p"))break;return;case 20:if(m.slice_from("r"))break;return;case 21:if(m.slice_from("s"))break;return;case 22:if(m.slice_from("t"))break;return;case 23:if(m.slice_from("ć"))break;return;case 24:if(m.slice_from("u"))break;return;case 25:if(m.slice_from("f"))break;return;case 26:if(m.slice_from("h"))break;return;case 27:if(m.slice_from("c"))break;return;case 28:if(m.slice_from("č"))break;return;case 29:if(m.slice_from("dž"))break;return;case 30:if(m.slice_from("š"))break;return}m.cursor=r;break}if(m.cursor=r,m.cursor>=m.limit)break a;m.cursor++}continue}m.cursor=i;break}m.cursor=e})(),(()=>{for(var a=m.cursor;;){var e=m.cursor;a:{for(;;){var i=m.cursor;if(m.in_grouping(j,98,382)&&(m.bra=m.cursor,m.eq_s("ije"))&&(m.ket=m.cursor,m.in_grouping(j,98,382))){if(!m.slice_from("e"))return;m.cursor=i;break}if(m.cursor=i,m.cursor>=m.limit)break a;m.cursor++}continue}m.cursor=e;break}for(m.cursor=a,a=m.cursor;;){var r=m.cursor;a:{for(;;){var s=m.cursor;if(m.in_grouping(j,98,382)&&(m.bra=m.cursor,m.eq_s("je"))&&(m.ket=m.cursor,m.in_grouping(j,98,382))){if(!m.slice_from("e"))return;m.cursor=s;break}if(m.cursor=s,m.cursor>=m.limit)break a;m.cursor++}continue}m.cursor=r;break}for(m.cursor=a,a=m.cursor;;){var o=m.cursor;a:{for(;;){var t=m.cursor;if(m.bra=m.cursor,m.eq_s("dj")){if(m.ket=m.cursor,!m.slice_from("đ"))return;m.cursor=t;break}if(m.cursor=t,m.cursor>=m.limit)break a;m.cursor++}continue}m.cursor=o;break}m.cursor=a})(),l=!0;var a=m.cursor,a=(m.go_out_grouping(n,263,382)&&(m.cursor++,l=!1),m.cursor=a,f=m.limit,m.cursor),a=(m.go_out_grouping(u,97,117)&&(m.cursor++,2<=(f=m.cursor)||m.go_in_grouping(u,97,117)&&(m.cursor++,f=m.cursor)),m.cursor=a,m.cursor);a:{for(;;){if(m.eq_s("r"))break;if(m.cursor>=m.limit)break a;m.cursor++}var e=m.cursor;if(m.cursor<2){if(m.cursor=e,!m.go_in_grouping(c,114,114))break a;m.cursor++}f-m.cursor<=1||(f=m.cursor)}m.cursor=a,m.limit_backward=m.cursor,m.cursor=m.limit;var a=m.limit-m.cursor,a=((()=>{var a;if(m.ket=m.cursor,0!=(a=m.find_among_b(r)))switch(m.bra=m.cursor,a){case 1:if(m.slice_from("loga"))break;return;case 2:if(m.slice_from("peh"))break;return;case 3:if(m.slice_from("vojka"))break;return;case 4:if(m.slice_from("bojka"))break;return;case 5:if(m.slice_from("jak"))break;return;case 6:if(m.slice_from("čajni"))break;return;case 7:if(!l)return;if(m.slice_from("cajni"))break;return;case 8:if(m.slice_from("erni"))break;return;case 9:if(m.slice_from("larni"))break;return;case 10:if(m.slice_from("esni"))break;return;case 11:if(m.slice_from("anjca"))break;return;case 12:if(m.slice_from("ajca"))break;return;case 13:if(m.slice_from("ljca"))break;return;case 14:if(m.slice_from("ejca"))break;return;case 15:if(m.slice_from("ojca"))break;return;case 16:if(m.slice_from("ajka"))break;return;case 17:if(m.slice_from("ojka"))break;return;case 18:if(m.slice_from("šca"))break;return;case 19:if(m.slice_from("ing"))break;return;case 20:if(m.slice_from("tvenik"))break;return;case 21:if(m.slice_from("tetika"))break;return;case 22:if(m.slice_from("nstva"))break;return;case 23:if(m.slice_from("nik"))break;return;case 24:if(m.slice_from("tik"))break;return;case 25:if(m.slice_from("zik"))break;return;case 26:if(m.slice_from("snik"))break;return;case 27:if(m.slice_from("kusi"))break;return;case 28:if(m.slice_from("kusni"))break;return;case 29:if(m.slice_from("kustva"))break;return;case 30:if(m.slice_from("dušni"))break;return;case 31:if(!l)return;if(m.slice_from("dusni"))break;return;case 32:if(m.slice_from("antni"))break;return;case 33:if(m.slice_from("bilni"))break;return;case 34:if(m.slice_from("tilni"))break;return;case 35:if(m.slice_from("avilni"))break;return;case 36:if(m.slice_from("silni"))break;return;case 37:if(m.slice_from("gilni"))break;return;case 38:if(m.slice_from("rilni"))break;return;case 39:if(m.slice_from("nilni"))break;return;case 40:if(m.slice_from("alni"))break;return;case 41:if(m.slice_from("ozni"))break;return;case 42:if(m.slice_from("ravi"))break;return;case 43:if(m.slice_from("stavni"))break;return;case 44:if(m.slice_from("pravni"))break;return;case 45:if(m.slice_from("tivni"))break;return;case 46:if(m.slice_from("sivni"))break;return;case 47:if(m.slice_from("atni"))break;return;case 48:if(m.slice_from("enta"))break;return;case 49:if(m.slice_from("tetni"))break;return;case 50:if(m.slice_from("pletni"))break;return;case 51:if(m.slice_from("šavi"))break;return;case 52:if(!l)return;if(m.slice_from("savi"))break;return;case 53:if(m.slice_from("anta"))break;return;case 54:if(m.slice_from("ačka"))break;return;case 55:if(!l)return;if(m.slice_from("acka"))break;return;case 56:if(m.slice_from("uška"))break;return;case 57:if(!l)return;if(m.slice_from("uska"))break;return;case 58:if(m.slice_from("atka"))break;return;case 59:if(m.slice_from("etka"))break;return;case 60:if(m.slice_from("itka"))break;return;case 61:if(m.slice_from("otka"))break;return;case 62:if(m.slice_from("utka"))break;return;case 63:if(m.slice_from("eskna"))break;return;case 64:if(m.slice_from("tični"))break;return;case 65:if(!l)return;if(m.slice_from("ticni"))break;return;case 66:if(m.slice_from("ojska"))break;return;case 67:if(m.slice_from("esma"))break;return;case 68:if(m.slice_from("metra"))break;return;case 69:if(m.slice_from("centra"))break;return;case 70:if(m.slice_from("istra"))break;return;case 71:if(m.slice_from("osti"))break;return;case 72:if(!l)return;if(m.slice_from("osti"))break;return;case 73:if(m.slice_from("dba"))break;return;case 74:if(m.slice_from("čka"))break;return;case 75:if(m.slice_from("mca"))break;return;case 76:if(m.slice_from("nca"))break;return;case 77:if(m.slice_from("voljni"))break;return;case 78:if(m.slice_from("anki"))break;return;case 79:if(m.slice_from("vca"))break;return;case 80:if(m.slice_from("sca"))break;return;case 81:if(m.slice_from("rca"))break;return;case 82:if(m.slice_from("alca"))break;return;case 83:if(m.slice_from("elca"))break;return;case 84:if(m.slice_from("olca"))break;return;case 85:if(m.slice_from("njca"))break;return;case 86:if(m.slice_from("ekta"))break;return;case 87:if(m.slice_from("izma"))break;return;case 88:if(m.slice_from("jebi"))break;return;case 89:if(m.slice_from("baci"))break;return;case 90:if(m.slice_from("ašni"))break;return;case 91:if(!l)return;if(m.slice_from("asni"))break}})(),m.cursor=m.limit-a,m.limit-m.cursor),i=m.limit-m.cursor;return(()=>{var a;if(m.ket=m.cursor,0!=(a=m.find_among_b(o))&&(m.bra=m.cursor,v())){switch(a){case 1:if(m.slice_from("sk"))break;return;case 2:if(m.slice_from("šk"))break;return;case 3:if(m.slice_from("stv"))break;return;case 4:if(m.slice_from("štv"))break;return;case 5:if(m.slice_from("tanij"))break;return;case 6:if(m.slice_from("manij"))break;return;case 7:if(m.slice_from("panij"))break;return;case 8:if(m.slice_from("ranij"))break;return;case 9:if(m.slice_from("ganij"))break;return;case 10:if(m.slice_from("an"))break;return;case 11:if(m.slice_from("in"))break;return;case 12:if(m.slice_from("on"))break;return;case 13:if(m.slice_from("n"))break;return;case 14:if(m.slice_from("ać"))break;return;case 15:if(m.slice_from("eć"))break;return;case 16:if(m.slice_from("uć"))break;return;case 17:if(m.slice_from("ugov"))break;return;case 18:if(m.slice_from("ug"))break;return;case 19:if(m.slice_from("log"))break;return;case 20:if(m.slice_from("g"))break;return;case 21:if(m.slice_from("rari"))break;return;case 22:if(m.slice_from("oti"))break;return;case 23:if(m.slice_from("si"))break;return;case 24:if(m.slice_from("li"))break;return;case 25:if(m.slice_from("uj"))break;return;case 26:if(m.slice_from("caj"))break;return;case 27:if(m.slice_from("čaj"))break;return;case 28:if(m.slice_from("ćaj"))break;return;case 29:if(m.slice_from("đaj"))break;return;case 30:if(m.slice_from("laj"))break;return;case 31:if(m.slice_from("raj"))break;return;case 32:if(m.slice_from("bij"))break;return;case 33:if(m.slice_from("cij"))break;return;case 34:if(m.slice_from("dij"))break;return;case 35:if(m.slice_from("lij"))break;return;case 36:if(m.slice_from("nij"))break;return;case 37:if(m.slice_from("mij"))break;return;case 38:if(m.slice_from("žij"))break;return;case 39:if(m.slice_from("gij"))break;return;case 40:if(m.slice_from("fij"))break;return;case 41:if(m.slice_from("pij"))break;return;case 42:if(m.slice_from("rij"))break;return;case 43:if(m.slice_from("sij"))break;return;case 44:if(m.slice_from("tij"))break;return;case 45:if(m.slice_from("zij"))break;return;case 46:if(m.slice_from("nal"))break;return;case 47:if(m.slice_from("ijal"))break;return;case 48:if(m.slice_from("ozil"))break;return;case 49:if(m.slice_from("olov"))break;return;case 50:if(m.slice_from("ol"))break;return;case 51:if(m.slice_from("lem"))break;return;case 52:if(m.slice_from("ram"))break;return;case 53:if(m.slice_from("ar"))break;return;case 54:if(m.slice_from("dr"))break;return;case 55:if(m.slice_from("er"))break;return;case 56:if(m.slice_from("or"))break;return;case 57:if(m.slice_from("es"))break;return;case 58:if(m.slice_from("is"))break;return;case 59:if(m.slice_from("taš"))break;return;case 60:if(m.slice_from("naš"))break;return;case 61:if(m.slice_from("jaš"))break;return;case 62:if(m.slice_from("kaš"))break;return;case 63:if(m.slice_from("baš"))break;return;case 64:if(m.slice_from("gaš"))break;return;case 65:if(m.slice_from("vaš"))break;return;case 66:if(m.slice_from("eš"))break;return;case 67:if(m.slice_from("iš"))break;return;case 68:if(m.slice_from("ikat"))break;return;case 69:if(m.slice_from("lat"))break;return;case 70:if(m.slice_from("et"))break;return;case 71:if(m.slice_from("est"))break;return;case 72:if(m.slice_from("ist"))break;return;case 73:if(m.slice_from("kst"))break;return;case 74:if(m.slice_from("ost"))break;return;case 75:if(m.slice_from("išt"))break;return;case 76:if(m.slice_from("ova"))break;return;case 77:if(m.slice_from("av"))break;return;case 78:if(m.slice_from("ev"))break;return;case 79:if(m.slice_from("iv"))break;return;case 80:if(m.slice_from("ov"))break;return;case 81:if(m.slice_from("mov"))break;return;case 82:if(m.slice_from("lov"))break;return;case 83:if(m.slice_from("el"))break;return;case 84:if(m.slice_from("anj"))break;return;case 85:if(m.slice_from("enj"))break;return;case 86:if(m.slice_from("šnj"))break;return;case 87:if(m.slice_from("en"))break;return;case 88:if(m.slice_from("šn"))break;return;case 89:if(m.slice_from("čin"))break;return;case 90:if(m.slice_from("roši"))break;return;case 91:if(m.slice_from("oš"))break;return;case 92:if(m.slice_from("evit"))break;return;case 93:if(m.slice_from("ovit"))break;return;case 94:if(m.slice_from("ast"))break;return;case 95:if(m.slice_from("k"))break;return;case 96:if(m.slice_from("eva"))break;return;case 97:if(m.slice_from("ava"))break;return;case 98:if(m.slice_from("iva"))break;return;case 99:if(m.slice_from("uva"))break;return;case 100:if(m.slice_from("ir"))break;return;case 101:if(m.slice_from("ač"))break;return;case 102:if(m.slice_from("ača"))break;return;case 103:if(m.slice_from("ni"))break;return;case 104:if(m.slice_from("a"))break;return;case 105:if(m.slice_from("ur"))break;return;case 106:if(m.slice_from("astaj"))break;return;case 107:if(m.slice_from("istaj"))break;return;case 108:if(m.slice_from("ostaj"))break;return;case 109:if(m.slice_from("aj"))break;return;case 110:if(m.slice_from("asta"))break;return;case 111:if(m.slice_from("ista"))break;return;case 112:if(m.slice_from("osta"))break;return;case 113:if(m.slice_from("ta"))break;return;case 114:if(m.slice_from("inj"))break;return;case 115:if(m.slice_from("as"))break;return;case 116:if(m.slice_from("i"))break;return;case 117:if(m.slice_from("luč"))break;return;case 118:if(m.slice_from("jeti"))break;return;case 119:if(m.slice_from("e"))break;return;case 120:if(m.slice_from("at"))break;return;case 121:if(!l)return;if(m.slice_from("luc"))break;return;case 122:if(!l)return;if(m.slice_from("snj"))break;return;case 123:if(!l)return;if(m.slice_from("os"))break;return;case 124:if(!l)return;if(m.slice_from("ac"))break;return;case 125:if(!l)return;if(m.slice_from("ec"))break;return;case 126:if(!l)return;if(m.slice_from("uc"))break;return;case 127:if(!l)return;if(m.slice_from("rosi"))break;return;case 128:if(!l)return;if(m.slice_from("aca"))break;return;case 129:if(!l)return;if(m.slice_from("jas"))break;return;case 130:if(!l)return;if(m.slice_from("tas"))break;return;case 131:if(!l)return;if(m.slice_from("gas"))break;return;case 132:if(!l)return;if(m.slice_from("nas"))break;return;case 133:if(!l)return;if(m.slice_from("kas"))break;return;case 134:if(!l)return;if(m.slice_from("vas"))break;return;case 135:if(!l)return;if(m.slice_from("bas"))break;return;case 136:if(!l)return;if(m.slice_from("as"))break;return;case 137:if(!l)return;if(m.slice_from("cin"))break;return;case 138:if(!l)return;if(m.slice_from("astaj"))break;return;case 139:if(!l)return;if(m.slice_from("istaj"))break;return;case 140:if(!l)return;if(m.slice_from("ostaj"))break;return;case 141:if(!l)return;if(m.slice_from("asta"))break;return;case 142:if(!l)return;if(m.slice_from("ista"))break;return;case 143:if(!l)return;if(m.slice_from("osta"))break;return;case 144:if(!l)return;if(m.slice_from("ava"))break;return;case 145:if(!l)return;if(m.slice_from("eva"))break;return;case 146:if(!l)return;if(m.slice_from("iva"))break;return;case 147:if(!l)return;if(m.slice_from("uva"))break;return;case 148:if(!l)return;if(m.slice_from("ova"))break;return;case 149:if(!l)return;if(m.slice_from("jeti"))break;return;case 150:if(!l)return;if(m.slice_from("inj"))break;return;case 151:if(!l)return;if(m.slice_from("ist"))break;return;case 152:if(!l)return;if(m.slice_from("es"))break;return;case 153:if(!l)return;if(m.slice_from("et"))break;return;case 154:if(!l)return;if(m.slice_from("is"))break;return;case 155:if(!l)return;if(m.slice_from("ir"))break;return;case 156:if(!l)return;if(m.slice_from("ur"))break;return;case 157:if(!l)return;if(m.slice_from("uj"))break;return;case 158:if(!l)return;if(m.slice_from("ni"))break;return;case 159:if(!l)return;if(m.slice_from("sn"))break;return;case 160:if(!l)return;if(m.slice_from("ta"))break;return;case 161:if(!l)return;if(m.slice_from("a"))break;return;case 162:if(!l)return;if(m.slice_from("i"))break;return;case 163:if(!l)return;if(m.slice_from("e"))break;return;case 164:if(!l)return;if(m.slice_from("n"))break;return}return 1}})()||(m.cursor=m.limit-i,m.ket=m.cursor,0!=m.find_among_b(t)&&(m.bra=m.cursor,v())&&m.slice_from("")),m.cursor=m.limit-a,m.cursor=m.limit_backward,!0},this.stemWord=function(a){return m.setCurrent(a),this.stem(),m.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/spanish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/spanish-stemmer.js index ef634a8b7..c47ed2e41 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/spanish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/spanish-stemmer.js @@ -1 +1 @@ -SpanishStemmer=function(){var r=new BaseStemmer;var e=[["",-1,6],["á",0,1],["é",0,2],["í",0,3],["ó",0,4],["ú",0,5]];var i=[["la",-1,-1],["sela",0,-1],["le",-1,-1],["me",-1,-1],["se",-1,-1],["lo",-1,-1],["selo",5,-1],["las",-1,-1],["selas",7,-1],["les",-1,-1],["los",-1,-1],["selos",10,-1],["nos",-1,-1]];var a=[["ando",-1,6],["iendo",-1,6],["yendo",-1,7],["ándo",-1,2],["iéndo",-1,1],["ar",-1,6],["er",-1,6],["ir",-1,6],["ár",-1,3],["ér",-1,4],["ír",-1,5]];var s=[["ic",-1,-1],["ad",-1,-1],["os",-1,-1],["iv",-1,1]];var u=[["able",-1,1],["ible",-1,1],["ante",-1,1]];var o=[["ic",-1,1],["abil",-1,1],["iv",-1,1]];var t=[["ica",-1,1],["ancia",-1,2],["encia",-1,5],["adora",-1,2],["osa",-1,1],["ista",-1,1],["iva",-1,9],["anza",-1,1],["logía",-1,3],["idad",-1,8],["able",-1,1],["ible",-1,1],["ante",-1,2],["mente",-1,7],["amente",13,6],["ación",-1,2],["ución",-1,4],["ico",-1,1],["ismo",-1,1],["oso",-1,1],["amiento",-1,1],["imiento",-1,1],["ivo",-1,9],["ador",-1,2],["icas",-1,1],["ancias",-1,2],["encias",-1,5],["adoras",-1,2],["osas",-1,1],["istas",-1,1],["ivas",-1,9],["anzas",-1,1],["logías",-1,3],["idades",-1,8],["ables",-1,1],["ibles",-1,1],["aciones",-1,2],["uciones",-1,4],["adores",-1,2],["antes",-1,2],["icos",-1,1],["ismos",-1,1],["osos",-1,1],["amientos",-1,1],["imientos",-1,1],["ivos",-1,9]];var c=[["ya",-1,1],["ye",-1,1],["yan",-1,1],["yen",-1,1],["yeron",-1,1],["yendo",-1,1],["yo",-1,1],["yas",-1,1],["yes",-1,1],["yais",-1,1],["yamos",-1,1],["yó",-1,1]];var l=[["aba",-1,2],["ada",-1,2],["ida",-1,2],["ara",-1,2],["iera",-1,2],["ía",-1,2],["aría",5,2],["ería",5,2],["iría",5,2],["ad",-1,2],["ed",-1,2],["id",-1,2],["ase",-1,2],["iese",-1,2],["aste",-1,2],["iste",-1,2],["an",-1,2],["aban",16,2],["aran",16,2],["ieran",16,2],["ían",16,2],["arían",20,2],["erían",20,2],["irían",20,2],["en",-1,1],["asen",24,2],["iesen",24,2],["aron",-1,2],["ieron",-1,2],["arán",-1,2],["erán",-1,2],["irán",-1,2],["ado",-1,2],["ido",-1,2],["ando",-1,2],["iendo",-1,2],["ar",-1,2],["er",-1,2],["ir",-1,2],["as",-1,2],["abas",39,2],["adas",39,2],["idas",39,2],["aras",39,2],["ieras",39,2],["ías",39,2],["arías",45,2],["erías",45,2],["irías",45,2],["es",-1,1],["ases",49,2],["ieses",49,2],["abais",-1,2],["arais",-1,2],["ierais",-1,2],["íais",-1,2],["aríais",55,2],["eríais",55,2],["iríais",55,2],["aseis",-1,2],["ieseis",-1,2],["asteis",-1,2],["isteis",-1,2],["áis",-1,2],["éis",-1,1],["aréis",64,2],["eréis",64,2],["iréis",64,2],["ados",-1,2],["idos",-1,2],["amos",-1,2],["ábamos",70,2],["áramos",70,2],["iéramos",70,2],["íamos",70,2],["aríamos",74,2],["eríamos",74,2],["iríamos",74,2],["emos",-1,1],["aremos",78,2],["eremos",78,2],["iremos",78,2],["ásemos",78,2],["iésemos",78,2],["imos",-1,2],["arás",-1,2],["erás",-1,2],["irás",-1,2],["ís",-1,2],["ará",-1,2],["erá",-1,2],["irá",-1,2],["aré",-1,2],["eré",-1,2],["iré",-1,2],["ió",-1,2]];var f=[["a",-1,1],["e",-1,2],["o",-1,1],["os",-1,1],["á",-1,1],["é",-1,2],["í",-1,1],["ó",-1,1]];var n=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,10];var b=0;var m=0;var k=0;function _(){k=r.limit;m=r.limit;b=r.limit;var e=r.cursor;r:{e:{var i=r.cursor;i:{if(!r.in_grouping(n,97,252)){break i}a:{var a=r.cursor;s:{if(!r.out_grouping(n,97,252)){break s}u:while(true){o:{if(!r.in_grouping(n,97,252)){break o}break u}if(r.cursor>=r.limit){break s}r.cursor++}break a}r.cursor=a;if(!r.in_grouping(n,97,252)){break i}s:while(true){u:{if(!r.out_grouping(n,97,252)){break u}break s}if(r.cursor>=r.limit){break i}r.cursor++}}break e}r.cursor=i;if(!r.out_grouping(n,97,252)){break r}i:{var s=r.cursor;a:{if(!r.out_grouping(n,97,252)){break a}s:while(true){u:{if(!r.in_grouping(n,97,252)){break u}break s}if(r.cursor>=r.limit){break a}r.cursor++}break i}r.cursor=s;if(!r.in_grouping(n,97,252)){break r}if(r.cursor>=r.limit){break r}r.cursor++}}k=r.cursor}r.cursor=e;var u=r.cursor;r:{e:while(true){i:{if(!r.in_grouping(n,97,252)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(n,97,252)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}m=r.cursor;e:while(true){i:{if(!r.in_grouping(n,97,252)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}e:while(true){i:{if(!r.out_grouping(n,97,252)){break i}break e}if(r.cursor>=r.limit){break r}r.cursor++}b=r.cursor}r.cursor=u;return true}function d(){var i;while(true){var a=r.cursor;r:{r.bra=r.cursor;i=r.find_among(e);if(i==0){break r}r.ket=r.cursor;switch(i){case 1:if(!r.slice_from("a")){return false}break;case 2:if(!r.slice_from("e")){return false}break;case 3:if(!r.slice_from("i")){return false}break;case 4:if(!r.slice_from("o")){return false}break;case 5:if(!r.slice_from("u")){return false}break;case 6:if(r.cursor>=r.limit){break r}r.cursor++;break}continue}r.cursor=a;break}return true}function v(){if(!(k<=r.cursor)){return false}return true}function g(){if(!(m<=r.cursor)){return false}return true}function w(){if(!(b<=r.cursor)){return false}return true}function h(){var e;r.ket=r.cursor;if(r.find_among_b(i)==0){return false}r.bra=r.cursor;e=r.find_among_b(a);if(e==0){return false}if(!v()){return false}switch(e){case 1:r.bra=r.cursor;if(!r.slice_from("iendo")){return false}break;case 2:r.bra=r.cursor;if(!r.slice_from("ando")){return false}break;case 3:r.bra=r.cursor;if(!r.slice_from("ar")){return false}break;case 4:r.bra=r.cursor;if(!r.slice_from("er")){return false}break;case 5:r.bra=r.cursor;if(!r.slice_from("ir")){return false}break;case 6:if(!r.slice_del()){return false}break;case 7:if(!r.eq_s_b("u")){return false}if(!r.slice_del()){return false}break}return true}function p(){var e;r.ket=r.cursor;e=r.find_among_b(t);if(e==0){return false}r.bra=r.cursor;switch(e){case 1:if(!w()){return false}if(!r.slice_del()){return false}break;case 2:if(!w()){return false}if(!r.slice_del()){return false}var i=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("ic")){r.cursor=r.limit-i;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-i;break r}if(!r.slice_del()){return false}}break;case 3:if(!w()){return false}if(!r.slice_from("log")){return false}break;case 4:if(!w()){return false}if(!r.slice_from("u")){return false}break;case 5:if(!w()){return false}if(!r.slice_from("ente")){return false}break;case 6:if(!g()){return false}if(!r.slice_del()){return false}var a=r.limit-r.cursor;r:{r.ket=r.cursor;e=r.find_among_b(s);if(e==0){r.cursor=r.limit-a;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-a;break r}if(!r.slice_del()){return false}switch(e){case 1:r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-a;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-a;break r}if(!r.slice_del()){return false}break}}break;case 7:if(!w()){return false}if(!r.slice_del()){return false}var c=r.limit-r.cursor;r:{r.ket=r.cursor;if(r.find_among_b(u)==0){r.cursor=r.limit-c;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-c;break r}if(!r.slice_del()){return false}}break;case 8:if(!w()){return false}if(!r.slice_del()){return false}var l=r.limit-r.cursor;r:{r.ket=r.cursor;if(r.find_among_b(o)==0){r.cursor=r.limit-l;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-l;break r}if(!r.slice_del()){return false}}break;case 9:if(!w()){return false}if(!r.slice_del()){return false}var f=r.limit-r.cursor;r:{r.ket=r.cursor;if(!r.eq_s_b("at")){r.cursor=r.limit-f;break r}r.bra=r.cursor;if(!w()){r.cursor=r.limit-f;break r}if(!r.slice_del()){return false}}break}return true}function y(){if(r.cursor=a.limit)break r}a.cursor++}g=a.cursor}a.cursor=r,r=a.cursor,a.go_out_grouping(b,97,252)&&(a.cursor++,a.go_in_grouping(b,97,252))&&(a.cursor++,k=a.cursor,a.go_out_grouping(b,97,252))&&(a.cursor++,a.go_in_grouping(b,97,252))&&(a.cursor++,d=a.cursor),a.cursor=r,a.limit_backward=a.cursor,a.cursor=a.limit;var r=a.limit-a.cursor,r=((()=>{var r;if(a.ket=a.cursor,0!=a.find_among_b(c)&&(a.bra=a.cursor,0!=(r=a.find_among_b(u)))&&v())switch(r){case 1:if(a.bra=a.cursor,a.slice_from("iendo"))break;return;case 2:if(a.bra=a.cursor,a.slice_from("ando"))break;return;case 3:if(a.bra=a.cursor,a.slice_from("ar"))break;return;case 4:if(a.bra=a.cursor,a.slice_from("er"))break;return;case 5:if(a.bra=a.cursor,a.slice_from("ir"))break;return;case 6:if(a.slice_del())break;return;case 7:if(!a.eq_s_b("u"))return;if(a.slice_del())break}})(),a.cursor=a.limit-r,a.limit-a.cursor),s=a.limit-a.cursor,s=(p()||(a.cursor=a.limit-s,(()=>{if(!(a.cursor{var r;if(!(a.cursor{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(_)))switch(a.bra=a.cursor,r){case 1:if(!v())return;if(a.slice_del())break;return;case 2:if(!v())return;if(!a.slice_del())return;var i=a.limit-a.cursor;if(a.ket=a.cursor,a.eq_s_b("u")){a.bra=a.cursor;var e=a.limit-a.cursor;if(a.eq_s_b("g"))if(a.cursor=a.limit-e,v()){if(!a.slice_del());}else a.cursor=a.limit-i;else a.cursor=a.limit-i}else a.cursor=a.limit-i}})(),a.cursor=a.limit-s,a.cursor=a.limit_backward,a.cursor);return(()=>{for(var r;;){var i=a.cursor;r:{switch(a.bra=a.cursor,r=a.find_among(o),a.ket=a.cursor,r){case 1:if(a.slice_from("a"))break;return;case 2:if(a.slice_from("e"))break;return;case 3:if(a.slice_from("i"))break;return;case 4:if(a.slice_from("o"))break;return;case 5:if(a.slice_from("u"))break;return;case 6:if(a.cursor>=a.limit)break r;a.cursor++}continue}a.cursor=i;break}})(),a.cursor=r,!0},this.stemWord=function(r){return a.setCurrent(r),this.stem(),a.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/swedish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/swedish-stemmer.js index b975f5428..d66010809 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/swedish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/swedish-stemmer.js @@ -1 +1 @@ -SwedishStemmer=function(){var r=new BaseStemmer;var e=[["a",-1,1],["arna",0,1],["erna",0,1],["heterna",2,1],["orna",0,1],["ad",-1,1],["e",-1,1],["ade",6,1],["ande",6,1],["arne",6,1],["are",6,1],["aste",6,1],["en",-1,1],["anden",12,1],["aren",12,1],["heten",12,1],["ern",-1,1],["ar",-1,1],["er",-1,1],["heter",18,1],["or",-1,1],["s",-1,2],["as",21,1],["arnas",22,1],["ernas",22,1],["ornas",22,1],["es",21,1],["ades",26,1],["andes",26,1],["ens",21,1],["arens",29,1],["hetens",29,1],["erns",21,1],["at",-1,1],["andet",-1,1],["het",-1,1],["ast",-1,1]];var a=[["dd",-1,-1],["gd",-1,-1],["nn",-1,-1],["dt",-1,-1],["gt",-1,-1],["kt",-1,-1],["tt",-1,-1]];var i=[["ig",-1,1],["lig",0,1],["els",-1,1],["fullt",-1,3],["löst",-1,2]];var t=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,24,0,32];var s=[119,127,149];var u=0;var n=0;function c(){n=r.limit;var e=r.cursor;{var a=r.cursor+3;if(a>r.limit){return false}r.cursor=a}u=r.cursor;r.cursor=e;r:while(true){var i=r.cursor;e:{if(!r.in_grouping(t,97,246)){break e}r.cursor=i;break r}r.cursor=i;if(r.cursor>=r.limit){return false}r.cursor++}r:while(true){e:{if(!r.out_grouping(t,97,246)){break e}break r}if(r.cursor>=r.limit){return false}r.cursor++}n=r.cursor;r:{if(!(na.limit_backward))return a.cursor=a.limit-r,r=a.limit-a.cursor,0==a.find_among_b(i)?(a.cursor=a.limit-r,1):void 0}this.stem=function(){var r=a.cursor,i=(m=a.limit,t=a.cursor,(i=a.cursor+3)>a.limit||(a.cursor=i,l=a.cursor,a.cursor=t,a.go_out_grouping(u,97,246)&&(a.cursor++,a.go_in_grouping(u,97,246))&&(a.cursor++,m=a.cursor,l<=m||(m=l))),a.cursor=r,a.limit_backward=a.cursor,a.cursor=a.limit,a.limit-a.cursor),t=((()=>{var r;if(!(a.cursor{var r;if(!(a.cursor{var r;if(z=!1,A()){l.limit_backward=l.cursor,l.cursor=l.limit;var i=l.limit-l.cursor;r:{var c=l.limit-l.cursor;if(l.ket=l.cursor,0!=(r=l.find_among_b(p))){switch(l.bra=l.cursor,r){case 1:if(l.slice_del())break;return;case 2:var e=l.limit-l.cursor;if(0!=l.find_among_b(W))break r;if(l.cursor=l.limit-e,l.slice_del())break;return;case 3:var s=l.limit-l.cursor;if(0!=l.find_among_b(j))break r;if(l.cursor=l.limit-s,l.slice_del())break;return;case 4:var o=l.limit-l.cursor;if(l.eq_s_b("ச"))break r;if(l.cursor=l.limit-o,l.slice_from("்"))break;return;case 5:if(l.slice_from("்"))break;return;case 6:var u=l.limit-l.cursor;if(!l.eq_s_b("்"))break r;if(l.cursor=l.limit-u,l.slice_del())break;return}z=!0,l.cursor=l.limit-c}}if(l.cursor=l.limit-i,i=l.limit-l.cursor,l.ket=l.cursor,0!=l.find_among_b(x)){if(l.bra=l.cursor,!l.slice_del())return;z=!0}return l.cursor=l.limit-i,l.cursor=l.limit_backward,E(),!!z}})()){l.cursor=r;break}}}this.stem=function(){y=!1;var r,i,c=l.cursor;return F(),l.cursor=c,!!A()&&(c=l.cursor,l.bra=l.cursor,l.eq_s("எ")&&0!=l.find_among(e)&&l.eq_s("்")&&(l.ket=l.cursor,l.slice_del())&&(r=l.cursor,D(),l.cursor=r),l.cursor=c,r=l.cursor,l.bra=l.cursor,0!=l.find_among(s)&&0!=l.find_among(o)&&l.eq_s("்")&&(l.ket=l.cursor,l.slice_del())&&(c=l.cursor,D(),l.cursor=c),l.cursor=r,c=l.cursor,A()&&(l.limit_backward=l.cursor,l.cursor=l.limit,i=l.limit-l.cursor,l.ket=l.cursor,0!=l.find_among_b(v)&&(l.bra=l.cursor,!l.slice_from("்"))||(l.cursor=l.limit-i,l.cursor=l.limit_backward,E())),l.cursor=c,i=l.cursor,A()&&(l.limit_backward=l.cursor,l.cursor=l.limit,l.ket=l.cursor,l.eq_s_b("ும்"))&&(l.bra=l.cursor,l.slice_from("்"))&&(l.cursor=l.limit_backward,c=l.cursor,F(),l.cursor=c),l.cursor=i,c=l.cursor,(()=>{var r;if(A()&&(l.limit_backward=l.cursor,l.cursor=l.limit,l.ket=l.cursor,0!=(r=l.find_among_b(q)))){switch(l.bra=l.cursor,r){case 1:if(l.slice_from("்"))break;return;case 2:var i=l.limit-l.cursor;if(0!=l.find_among_b(w))return;if(l.cursor=l.limit-i,l.slice_from("்"))break;return;case 3:if(l.slice_del())break;return}l.cursor=l.limit_backward,E()}})(),l.cursor=c,c=l.cursor,(()=>{var r;if(y=!1,A()){l.limit_backward=l.cursor,l.cursor=l.limit;r:{var i=l.limit-l.cursor;i:{var c=l.limit-l.cursor;if(l.ket=l.cursor,0!=(r=l.find_among_b(S))){switch(l.bra=l.cursor,r){case 1:if(l.slice_del())break;return;case 2:if(l.slice_from("்"))break;return;case 3:var e=l.limit-l.cursor;if(l.eq_s_b("ம"))break i;if(l.cursor=l.limit-e,l.slice_from("்"))break;return;case 4:if(l.current.length<7)break i;if(l.slice_from("்"))break;return;case 5:var s=l.limit-l.cursor;if(0!=l.find_among_b(h))break i;if(l.cursor=l.limit-s,l.slice_from("்"))break;return;case 6:var o=l.limit-l.cursor;if(0!=l.find_among_b(C))break i;if(l.cursor=l.limit-o,l.slice_del())break;return;case 7:if(l.slice_from("ி"))break;return}l.cursor=l.limit-c;break r}}l.cursor=l.limit-i;i=l.limit-l.cursor;if(l.ket=l.cursor,!l.eq_s_b("ை"))return;var u=l.limit-l.cursor,a=l.limit-l.cursor;if(0==l.find_among_b(B))l.cursor=l.limit-a;else{l.cursor=l.limit-u;a=l.limit-l.cursor;if(0==l.find_among_b(T))return;if(!l.eq_s_b("்"))return;l.cursor=l.limit-a}if(l.bra=l.cursor,!l.slice_from("்"))return;l.cursor=l.limit-i}y=!0;var t=l.limit-l.cursor;l.ket=l.cursor,l.eq_s_b("ின்")&&(l.bra=l.cursor,!l.slice_from("்"))||(l.cursor=l.limit-t,l.cursor=l.limit_backward,E())}})(),l.cursor=c,c=l.cursor,(()=>{var r;if(l.limit_backward=l.cursor,l.cursor=l.limit,l.ket=l.cursor,0!=(r=l.find_among_b(d))){switch(l.bra=l.cursor,r){case 1:r:{var i=l.limit-l.cursor;if(0!=l.find_among_b(u)){if(l.slice_from("ுங்"))break r;return}if(l.cursor=l.limit-i,!l.slice_from("்"))return}break;case 2:if(l.slice_from("ல்"))break;return;case 3:if(l.slice_from("ள்"))break;return;case 4:if(l.slice_del())break;return}l.cursor=l.limit_backward}})(),l.cursor=c,c=l.cursor,A()&&(l.limit_backward=l.cursor,l.cursor=l.limit,l.ket=l.cursor,0!=l.find_among_b(g))&&(l.bra=l.cursor,l.slice_del())&&(l.cursor=l.limit_backward),l.cursor=c,c=l.cursor,G(),l.cursor=c,!0)},this.stemWord=function(r){return l.setCurrent(r),this.stem(),l.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/minified-js/turkish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/minified-js/turkish-stemmer.js index 4c0a699bf..476e4abc4 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/minified-js/turkish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/minified-js/turkish-stemmer.js @@ -1 +1 @@ -TurkishStemmer=function(){var r=new BaseStemmer;var i=[["m",-1,-1],["n",-1,-1],["miz",-1,-1],["niz",-1,-1],["muz",-1,-1],["nuz",-1,-1],["müz",-1,-1],["nüz",-1,-1],["mız",-1,-1],["nız",-1,-1]];var e=[["leri",-1,-1],["ları",-1,-1]];var u=[["ni",-1,-1],["nu",-1,-1],["nü",-1,-1],["nı",-1,-1]];var a=[["in",-1,-1],["un",-1,-1],["ün",-1,-1],["ın",-1,-1]];var s=[["a",-1,-1],["e",-1,-1]];var t=[["na",-1,-1],["ne",-1,-1]];var l=[["da",-1,-1],["ta",-1,-1],["de",-1,-1],["te",-1,-1]];var c=[["nda",-1,-1],["nde",-1,-1]];var o=[["dan",-1,-1],["tan",-1,-1],["den",-1,-1],["ten",-1,-1]];var f=[["ndan",-1,-1],["nden",-1,-1]];var n=[["la",-1,-1],["le",-1,-1]];var b=[["ca",-1,-1],["ce",-1,-1]];var m=[["im",-1,-1],["um",-1,-1],["üm",-1,-1],["ım",-1,-1]];var k=[["sin",-1,-1],["sun",-1,-1],["sün",-1,-1],["sın",-1,-1]];var _=[["iz",-1,-1],["uz",-1,-1],["üz",-1,-1],["ız",-1,-1]];var v=[["siniz",-1,-1],["sunuz",-1,-1],["sünüz",-1,-1],["sınız",-1,-1]];var d=[["lar",-1,-1],["ler",-1,-1]];var g=[["niz",-1,-1],["nuz",-1,-1],["nüz",-1,-1],["nız",-1,-1]];var w=[["dir",-1,-1],["tir",-1,-1],["dur",-1,-1],["tur",-1,-1],["dür",-1,-1],["tür",-1,-1],["dır",-1,-1],["tır",-1,-1]];var q=[["casına",-1,-1],["cesine",-1,-1]];var p=[["di",-1,-1],["ti",-1,-1],["dik",-1,-1],["tik",-1,-1],["duk",-1,-1],["tuk",-1,-1],["dük",-1,-1],["tük",-1,-1],["dık",-1,-1],["tık",-1,-1],["dim",-1,-1],["tim",-1,-1],["dum",-1,-1],["tum",-1,-1],["düm",-1,-1],["tüm",-1,-1],["dım",-1,-1],["tım",-1,-1],["din",-1,-1],["tin",-1,-1],["dun",-1,-1],["tun",-1,-1],["dün",-1,-1],["tün",-1,-1],["dın",-1,-1],["tın",-1,-1],["du",-1,-1],["tu",-1,-1],["dü",-1,-1],["tü",-1,-1],["dı",-1,-1],["tı",-1,-1]];var h=[["sa",-1,-1],["se",-1,-1],["sak",-1,-1],["sek",-1,-1],["sam",-1,-1],["sem",-1,-1],["san",-1,-1],["sen",-1,-1]];var z=[["miş",-1,-1],["muş",-1,-1],["müş",-1,-1],["mış",-1,-1]];var y=[["b",-1,1],["c",-1,2],["d",-1,3],["ğ",-1,4]];var C=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,8,0,0,0,0,0,0,1];var S=[1,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,1];var B=[1,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1];var T=[17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130];var W=[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1];var j=[17];var x=[65];var A=[65];var D=false;function E(){var i=r.limit-r.cursor;r:while(true){var e=r.limit-r.cursor;i:{if(!r.in_grouping_b(C,97,305)){break i}r.cursor=r.limit-e;break r}r.cursor=r.limit-e;if(r.cursor<=r.limit_backward){return false}r.cursor--}r:{var u=r.limit-r.cursor;i:{if(!r.eq_s_b("a")){break i}e:while(true){var a=r.limit-r.cursor;u:{if(!r.in_grouping_b(B,97,305)){break u}r.cursor=r.limit-a;break e}r.cursor=r.limit-a;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;i:{if(!r.eq_s_b("e")){break i}e:while(true){var s=r.limit-r.cursor;u:{if(!r.in_grouping_b(T,101,252)){break u}r.cursor=r.limit-s;break e}r.cursor=r.limit-s;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;i:{if(!r.eq_s_b("ı")){break i}e:while(true){var t=r.limit-r.cursor;u:{if(!r.in_grouping_b(W,97,305)){break u}r.cursor=r.limit-t;break e}r.cursor=r.limit-t;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;i:{if(!r.eq_s_b("i")){break i}e:while(true){var l=r.limit-r.cursor;u:{if(!r.in_grouping_b(j,101,105)){break u}r.cursor=r.limit-l;break e}r.cursor=r.limit-l;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;i:{if(!r.eq_s_b("o")){break i}e:while(true){var c=r.limit-r.cursor;u:{if(!r.in_grouping_b(x,111,117)){break u}r.cursor=r.limit-c;break e}r.cursor=r.limit-c;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;i:{if(!r.eq_s_b("ö")){break i}e:while(true){var o=r.limit-r.cursor;u:{if(!r.in_grouping_b(A,246,252)){break u}r.cursor=r.limit-o;break e}r.cursor=r.limit-o;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;i:{if(!r.eq_s_b("u")){break i}e:while(true){var f=r.limit-r.cursor;u:{if(!r.in_grouping_b(x,111,117)){break u}r.cursor=r.limit-f;break e}r.cursor=r.limit-f;if(r.cursor<=r.limit_backward){break i}r.cursor--}break r}r.cursor=r.limit-u;if(!r.eq_s_b("ü")){return false}i:while(true){var n=r.limit-r.cursor;e:{if(!r.in_grouping_b(A,246,252)){break e}r.cursor=r.limit-n;break i}r.cursor=r.limit-n;if(r.cursor<=r.limit_backward){return false}r.cursor--}}r.cursor=r.limit-i;return true}function F(){r:{var i=r.limit-r.cursor;i:{if(!r.eq_s_b("n")){break i}var e=r.limit-r.cursor;if(!r.in_grouping_b(C,97,305)){break i}r.cursor=r.limit-e;break r}r.cursor=r.limit-i;{var u=r.limit-r.cursor;i:{var a=r.limit-r.cursor;if(!r.eq_s_b("n")){break i}r.cursor=r.limit-a;return false}r.cursor=r.limit-u}var s=r.limit-r.cursor;if(r.cursor<=r.limit_backward){return false}r.cursor--;if(!r.in_grouping_b(C,97,305)){return false}r.cursor=r.limit-s}return true}function G(){r:{var i=r.limit-r.cursor;i:{if(!r.eq_s_b("s")){break i}var e=r.limit-r.cursor;if(!r.in_grouping_b(C,97,305)){break i}r.cursor=r.limit-e;break r}r.cursor=r.limit-i;{var u=r.limit-r.cursor;i:{var a=r.limit-r.cursor;if(!r.eq_s_b("s")){break i}r.cursor=r.limit-a;return false}r.cursor=r.limit-u}var s=r.limit-r.cursor;if(r.cursor<=r.limit_backward){return false}r.cursor--;if(!r.in_grouping_b(C,97,305)){return false}r.cursor=r.limit-s}return true}function H(){r:{var i=r.limit-r.cursor;i:{if(!r.eq_s_b("y")){break i}var e=r.limit-r.cursor;if(!r.in_grouping_b(C,97,305)){break i}r.cursor=r.limit-e;break r}r.cursor=r.limit-i;{var u=r.limit-r.cursor;i:{var a=r.limit-r.cursor;if(!r.eq_s_b("y")){break i}r.cursor=r.limit-a;return false}r.cursor=r.limit-u}var s=r.limit-r.cursor;if(r.cursor<=r.limit_backward){return false}r.cursor--;if(!r.in_grouping_b(C,97,305)){return false}r.cursor=r.limit-s}return true}function I(){r:{var i=r.limit-r.cursor;i:{if(!r.in_grouping_b(S,105,305)){break i}var e=r.limit-r.cursor;if(!r.out_grouping_b(C,97,305)){break i}r.cursor=r.limit-e;break r}r.cursor=r.limit-i;{var u=r.limit-r.cursor;i:{var a=r.limit-r.cursor;if(!r.in_grouping_b(S,105,305)){break i}r.cursor=r.limit-a;return false}r.cursor=r.limit-u}var s=r.limit-r.cursor;if(r.cursor<=r.limit_backward){return false}r.cursor--;if(!r.out_grouping_b(C,97,305)){return false}r.cursor=r.limit-s}return true}function J(){if(r.find_among_b(i)==0){return false}if(!I()){return false}return true}function K(){if(!E()){return false}if(!r.in_grouping_b(S,105,305)){return false}if(!G()){return false}return true}function L(){if(r.find_among_b(e)==0){return false}return true}function M(){if(!E()){return false}if(!r.in_grouping_b(S,105,305)){return false}if(!H()){return false}return true}function N(){if(!E()){return false}if(r.find_among_b(u)==0){return false}return true}function O(){if(!E()){return false}if(r.find_among_b(a)==0){return false}if(!F()){return false}return true}function P(){if(!E()){return false}if(r.find_among_b(s)==0){return false}if(!H()){return false}return true}function Q(){if(!E()){return false}if(r.find_among_b(t)==0){return false}return true}function R(){if(!E()){return false}if(r.find_among_b(l)==0){return false}return true}function U(){if(!E()){return false}if(r.find_among_b(c)==0){return false}return true}function V(){if(!E()){return false}if(r.find_among_b(o)==0){return false}return true}function X(){if(!E()){return false}if(r.find_among_b(f)==0){return false}return true}function Y(){if(!E()){return false}if(r.find_among_b(n)==0){return false}if(!H()){return false}return true}function Z(){if(!r.eq_s_b("ki")){return false}return true}function $(){if(!E()){return false}if(r.find_among_b(b)==0){return false}if(!F()){return false}return true}function rr(){if(!E()){return false}if(r.find_among_b(m)==0){return false}if(!H()){return false}return true}function ir(){if(!E()){return false}if(r.find_among_b(k)==0){return false}return true}function er(){if(!E()){return false}if(r.find_among_b(_)==0){return false}if(!H()){return false}return true}function ur(){if(r.find_among_b(v)==0){return false}return true}function ar(){if(!E()){return false}if(r.find_among_b(d)==0){return false}return true}function sr(){if(!E()){return false}if(r.find_among_b(g)==0){return false}return true}function tr(){if(!E()){return false}if(r.find_among_b(w)==0){return false}return true}function lr(){if(r.find_among_b(q)==0){return false}return true}function cr(){if(!E()){return false}if(r.find_among_b(p)==0){return false}if(!H()){return false}return true}function or(){if(r.find_among_b(h)==0){return false}if(!H()){return false}return true}function fr(){if(!E()){return false}if(r.find_among_b(z)==0){return false}if(!H()){return false}return true}function nr(){if(!r.eq_s_b("ken")){return false}if(!H()){return false}return true}function br(){r.ket=r.cursor;D=true;r:{var i=r.limit-r.cursor;i:{e:{var e=r.limit-r.cursor;u:{if(!fr()){break u}break e}r.cursor=r.limit-e;u:{if(!cr()){break u}break e}r.cursor=r.limit-e;u:{if(!or()){break u}break e}r.cursor=r.limit-e;if(!nr()){break i}}break r}r.cursor=r.limit-i;i:{if(!lr()){break i}e:{var u=r.limit-r.cursor;u:{if(!ur()){break u}break e}r.cursor=r.limit-u;u:{if(!ar()){break u}break e}r.cursor=r.limit-u;u:{if(!rr()){break u}break e}r.cursor=r.limit-u;u:{if(!ir()){break u}break e}r.cursor=r.limit-u;u:{if(!er()){break u}break e}r.cursor=r.limit-u}if(!fr()){break i}break r}r.cursor=r.limit-i;i:{if(!ar()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}var a=r.limit-r.cursor;e:{r.ket=r.cursor;u:{var s=r.limit-r.cursor;a:{if(!tr()){break a}break u}r.cursor=r.limit-s;a:{if(!cr()){break a}break u}r.cursor=r.limit-s;a:{if(!or()){break a}break u}r.cursor=r.limit-s;if(!fr()){r.cursor=r.limit-a;break e}}}D=false;break r}r.cursor=r.limit-i;i:{if(!sr()){break i}e:{var t=r.limit-r.cursor;u:{if(!cr()){break u}break e}r.cursor=r.limit-t;if(!or()){break i}}break r}r.cursor=r.limit-i;i:{e:{var l=r.limit-r.cursor;u:{if(!ur()){break u}break e}r.cursor=r.limit-l;u:{if(!er()){break u}break e}r.cursor=r.limit-l;u:{if(!ir()){break u}break e}r.cursor=r.limit-l;if(!rr()){break i}}r.bra=r.cursor;if(!r.slice_del()){return false}var c=r.limit-r.cursor;e:{r.ket=r.cursor;if(!fr()){r.cursor=r.limit-c;break e}}break r}r.cursor=r.limit-i;if(!tr()){return false}r.bra=r.cursor;if(!r.slice_del()){return false}var o=r.limit-r.cursor;i:{r.ket=r.cursor;e:{var f=r.limit-r.cursor;u:{if(!ur()){break u}break e}r.cursor=r.limit-f;u:{if(!ar()){break u}break e}r.cursor=r.limit-f;u:{if(!rr()){break u}break e}r.cursor=r.limit-f;u:{if(!ir()){break u}break e}r.cursor=r.limit-f;u:{if(!er()){break u}break e}r.cursor=r.limit-f}if(!fr()){r.cursor=r.limit-o;break i}}}r.bra=r.cursor;if(!r.slice_del()){return false}return true}function mr(){r.ket=r.cursor;if(!Z()){return false}r:{var i=r.limit-r.cursor;i:{if(!R()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}var e=r.limit-r.cursor;e:{r.ket=r.cursor;u:{var u=r.limit-r.cursor;a:{if(!ar()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}var a=r.limit-r.cursor;s:{if(!mr()){r.cursor=r.limit-a;break s}}break u}r.cursor=r.limit-u;if(!J()){r.cursor=r.limit-e;break e}r.bra=r.cursor;if(!r.slice_del()){return false}var s=r.limit-r.cursor;a:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-s;break a}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-s;break a}}}}break r}r.cursor=r.limit-i;i:{if(!O()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}var t=r.limit-r.cursor;e:{r.ket=r.cursor;u:{var l=r.limit-r.cursor;a:{if(!L()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}break u}r.cursor=r.limit-l;a:{r.ket=r.cursor;s:{var c=r.limit-r.cursor;t:{if(!J()){break t}break s}r.cursor=r.limit-c;if(!K()){break a}}r.bra=r.cursor;if(!r.slice_del()){return false}var o=r.limit-r.cursor;s:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-o;break s}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-o;break s}}break u}r.cursor=r.limit-l;if(!mr()){r.cursor=r.limit-t;break e}}}break r}r.cursor=r.limit-i;if(!U()){return false}i:{var f=r.limit-r.cursor;e:{if(!L()){break e}r.bra=r.cursor;if(!r.slice_del()){return false}break i}r.cursor=r.limit-f;e:{if(!K()){break e}r.bra=r.cursor;if(!r.slice_del()){return false}var n=r.limit-r.cursor;u:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-n;break u}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-n;break u}}break i}r.cursor=r.limit-f;if(!mr()){return false}}}return true}function kr(){r:{var i=r.limit-r.cursor;i:{r.ket=r.cursor;if(!ar()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}var e=r.limit-r.cursor;e:{if(!mr()){r.cursor=r.limit-e;break e}}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;if(!$()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}var u=r.limit-r.cursor;e:{u:{var a=r.limit-r.cursor;a:{r.ket=r.cursor;if(!L()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}break u}r.cursor=r.limit-a;a:{r.ket=r.cursor;s:{var s=r.limit-r.cursor;t:{if(!J()){break t}break s}r.cursor=r.limit-s;if(!K()){break a}}r.bra=r.cursor;if(!r.slice_del()){return false}var t=r.limit-r.cursor;s:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-t;break s}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-t;break s}}break u}r.cursor=r.limit-a;r.ket=r.cursor;if(!ar()){r.cursor=r.limit-u;break e}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-u;break e}}}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;e:{var l=r.limit-r.cursor;u:{if(!U()){break u}break e}r.cursor=r.limit-l;if(!Q()){break i}}e:{var c=r.limit-r.cursor;u:{if(!L()){break u}r.bra=r.cursor;if(!r.slice_del()){return false}break e}r.cursor=r.limit-c;u:{if(!K()){break u}r.bra=r.cursor;if(!r.slice_del()){return false}var o=r.limit-r.cursor;a:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-o;break a}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-o;break a}}break e}r.cursor=r.limit-c;if(!mr()){break i}}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;e:{var f=r.limit-r.cursor;u:{if(!X()){break u}break e}r.cursor=r.limit-f;if(!N()){break i}}e:{var n=r.limit-r.cursor;u:{if(!K()){break u}r.bra=r.cursor;if(!r.slice_del()){return false}var b=r.limit-r.cursor;a:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-b;break a}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-b;break a}}break e}r.cursor=r.limit-n;if(!L()){break i}}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;if(!V()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}var m=r.limit-r.cursor;e:{r.ket=r.cursor;u:{var k=r.limit-r.cursor;a:{if(!J()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}var _=r.limit-r.cursor;s:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-_;break s}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-_;break s}}break u}r.cursor=r.limit-k;a:{if(!ar()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}var v=r.limit-r.cursor;s:{if(!mr()){r.cursor=r.limit-v;break s}}break u}r.cursor=r.limit-k;if(!mr()){r.cursor=r.limit-m;break e}}}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;e:{var d=r.limit-r.cursor;u:{if(!O()){break u}break e}r.cursor=r.limit-d;if(!Y()){break i}}r.bra=r.cursor;if(!r.slice_del()){return false}var g=r.limit-r.cursor;e:{u:{var w=r.limit-r.cursor;a:{r.ket=r.cursor;if(!ar()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){break a}break u}r.cursor=r.limit-w;a:{r.ket=r.cursor;s:{var q=r.limit-r.cursor;t:{if(!J()){break t}break s}r.cursor=r.limit-q;if(!K()){break a}}r.bra=r.cursor;if(!r.slice_del()){return false}var p=r.limit-r.cursor;s:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-p;break s}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-p;break s}}break u}r.cursor=r.limit-w;if(!mr()){r.cursor=r.limit-g;break e}}}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;if(!L()){break i}r.bra=r.cursor;if(!r.slice_del()){return false}break r}r.cursor=r.limit-i;i:{if(!mr()){break i}break r}r.cursor=r.limit-i;i:{r.ket=r.cursor;e:{var h=r.limit-r.cursor;u:{if(!R()){break u}break e}r.cursor=r.limit-h;u:{if(!M()){break u}break e}r.cursor=r.limit-h;if(!P()){break i}}r.bra=r.cursor;if(!r.slice_del()){return false}var z=r.limit-r.cursor;e:{r.ket=r.cursor;u:{var y=r.limit-r.cursor;a:{if(!J()){break a}r.bra=r.cursor;if(!r.slice_del()){return false}var C=r.limit-r.cursor;s:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-C;break s}}break u}r.cursor=r.limit-y;if(!ar()){r.cursor=r.limit-z;break e}}r.bra=r.cursor;if(!r.slice_del()){return false}r.ket=r.cursor;if(!mr()){r.cursor=r.limit-z;break e}}break r}r.cursor=r.limit-i;r.ket=r.cursor;i:{var S=r.limit-r.cursor;e:{if(!J()){break e}break i}r.cursor=r.limit-S;if(!K()){return false}}r.bra=r.cursor;if(!r.slice_del()){return false}var B=r.limit-r.cursor;i:{r.ket=r.cursor;if(!ar()){r.cursor=r.limit-B;break i}r.bra=r.cursor;if(!r.slice_del()){return false}if(!mr()){r.cursor=r.limit-B;break i}}}return true}function _r(){var i;r.ket=r.cursor;i=r.find_among_b(y);if(i==0){return false}r.bra=r.cursor;switch(i){case 1:if(!r.slice_from("p")){return false}break;case 2:if(!r.slice_from("ç")){return false}break;case 3:if(!r.slice_from("t")){return false}break;case 4:if(!r.slice_from("k")){return false}break}return true}function vr(){var i=r.limit-r.cursor;r:{var e=r.limit-r.cursor;i:{if(!r.eq_s_b("d")){break i}break r}r.cursor=r.limit-e;if(!r.eq_s_b("g")){return false}}r.cursor=r.limit-i;r:{var u=r.limit-r.cursor;i:{var a=r.limit-r.cursor;e:while(true){var s=r.limit-r.cursor;u:{if(!r.in_grouping_b(C,97,305)){break u}r.cursor=r.limit-s;break e}r.cursor=r.limit-s;if(r.cursor<=r.limit_backward){break i}r.cursor--}e:{var t=r.limit-r.cursor;u:{if(!r.eq_s_b("a")){break u}break e}r.cursor=r.limit-t;if(!r.eq_s_b("ı")){break i}}r.cursor=r.limit-a;{var l=r.cursor;r.insert(r.cursor,r.cursor,"ı");r.cursor=l}break r}r.cursor=r.limit-u;i:{var c=r.limit-r.cursor;e:while(true){var o=r.limit-r.cursor;u:{if(!r.in_grouping_b(C,97,305)){break u}r.cursor=r.limit-o;break e}r.cursor=r.limit-o;if(r.cursor<=r.limit_backward){break i}r.cursor--}e:{var f=r.limit-r.cursor;u:{if(!r.eq_s_b("e")){break u}break e}r.cursor=r.limit-f;if(!r.eq_s_b("i")){break i}}r.cursor=r.limit-c;{var n=r.cursor;r.insert(r.cursor,r.cursor,"i");r.cursor=n}break r}r.cursor=r.limit-u;i:{var b=r.limit-r.cursor;e:while(true){var m=r.limit-r.cursor;u:{if(!r.in_grouping_b(C,97,305)){break u}r.cursor=r.limit-m;break e}r.cursor=r.limit-m;if(r.cursor<=r.limit_backward){break i}r.cursor--}e:{var k=r.limit-r.cursor;u:{if(!r.eq_s_b("o")){break u}break e}r.cursor=r.limit-k;if(!r.eq_s_b("u")){break i}}r.cursor=r.limit-b;{var _=r.cursor;r.insert(r.cursor,r.cursor,"u");r.cursor=_}break r}r.cursor=r.limit-u;var v=r.limit-r.cursor;i:while(true){var d=r.limit-r.cursor;e:{if(!r.in_grouping_b(C,97,305)){break e}r.cursor=r.limit-d;break i}r.cursor=r.limit-d;if(r.cursor<=r.limit_backward){return false}r.cursor--}i:{var g=r.limit-r.cursor;e:{if(!r.eq_s_b("ö")){break e}break i}r.cursor=r.limit-g;if(!r.eq_s_b("ü")){return false}}r.cursor=r.limit-v;{var w=r.cursor;r.insert(r.cursor,r.cursor,"ü");r.cursor=w}}return true}function dr(){if(!r.eq_s_b("ad")){return false}var i=r.limit-r.cursor;r:{if(!r.eq_s_b("soy")){r.cursor=r.limit-i;break r}}if(r.cursor>r.limit_backward){return false}return true}function gr(){var i=r.cursor;{var e=2;while(true){var u=r.cursor;r:{i:while(true){e:{if(!r.in_grouping(C,97,305)){break e}break i}if(r.cursor>=r.limit){break r}r.cursor++}e--;continue}r.cursor=u;break}if(e>0){return false}}r.cursor=i;return true}function wr(){r.limit_backward=r.cursor;r.cursor=r.limit;{var i=r.limit-r.cursor;r:{if(!dr()){break r}return false}r.cursor=r.limit-i}var e=r.limit-r.cursor;vr();r.cursor=r.limit-e;var u=r.limit-r.cursor;_r();r.cursor=r.limit-u;r.cursor=r.limit_backward;return true}this.stem=function(){if(!gr()){return false}r.limit_backward=r.cursor;r.cursor=r.limit;var i=r.limit-r.cursor;br();r.cursor=r.limit-i;if(!D){return false}var e=r.limit-r.cursor;kr();r.cursor=r.limit-e;r.cursor=r.limit_backward;if(!wr()){return false}return true};this["stemWord"]=function(i){r.setCurrent(i);this.stem();return r.getCurrent()}}; \ No newline at end of file +var TurkishStemmer=function(){var q=new BaseStemmer,u=[["m",-1,-1],["n",-1,-1],["miz",-1,-1],["niz",-1,-1],["muz",-1,-1],["nuz",-1,-1],["müz",-1,-1],["nüz",-1,-1],["mız",-1,-1],["nız",-1,-1]],r=[["leri",-1,-1],["ları",-1,-1]],p=[["ni",-1,-1],["nu",-1,-1],["nü",-1,-1],["nı",-1,-1]],i=[["in",-1,-1],["un",-1,-1],["ün",-1,-1],["ın",-1,-1]],z=[["a",-1,-1],["e",-1,-1]],w=[["na",-1,-1],["ne",-1,-1]],s=[["da",-1,-1],["ta",-1,-1],["de",-1,-1],["te",-1,-1]],o=[["nda",-1,-1],["nde",-1,-1]],h=[["dan",-1,-1],["tan",-1,-1],["den",-1,-1],["ten",-1,-1]],y=[["ndan",-1,-1],["nden",-1,-1]],C=[["la",-1,-1],["le",-1,-1]],I=[["ca",-1,-1],["ce",-1,-1]],g=[["im",-1,-1],["um",-1,-1],["üm",-1,-1],["ım",-1,-1]],v=[["sin",-1,-1],["sun",-1,-1],["sün",-1,-1],["sın",-1,-1]],J=[["iz",-1,-1],["uz",-1,-1],["üz",-1,-1],["ız",-1,-1]],K=[["siniz",-1,-1],["sunuz",-1,-1],["sünüz",-1,-1],["sınız",-1,-1]],L=[["lar",-1,-1],["ler",-1,-1]],M=[["niz",-1,-1],["nuz",-1,-1],["nüz",-1,-1],["nız",-1,-1]],N=[["dir",-1,-1],["tir",-1,-1],["dur",-1,-1],["tur",-1,-1],["dür",-1,-1],["tür",-1,-1],["dır",-1,-1],["tır",-1,-1]],O=[["casına",-1,-1],["cesine",-1,-1]],P=[["di",-1,-1],["ti",-1,-1],["dik",-1,-1],["tik",-1,-1],["duk",-1,-1],["tuk",-1,-1],["dük",-1,-1],["tük",-1,-1],["dık",-1,-1],["tık",-1,-1],["dim",-1,-1],["tim",-1,-1],["dum",-1,-1],["tum",-1,-1],["düm",-1,-1],["tüm",-1,-1],["dım",-1,-1],["tım",-1,-1],["din",-1,-1],["tin",-1,-1],["dun",-1,-1],["tun",-1,-1],["dün",-1,-1],["tün",-1,-1],["dın",-1,-1],["tın",-1,-1],["du",-1,-1],["tu",-1,-1],["dü",-1,-1],["tü",-1,-1],["dı",-1,-1],["tı",-1,-1]],Q=[["sa",-1,-1],["se",-1,-1],["sak",-1,-1],["sek",-1,-1],["sam",-1,-1],["sem",-1,-1],["san",-1,-1],["sen",-1,-1]],R=[["miş",-1,-1],["muş",-1,-1],["müş",-1,-1],["mış",-1,-1]],U=[["b",-1,1],["c",-1,2],["d",-1,3],["ğ",-1,4]],t=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,8,0,0,0,0,0,0,1],S=[1,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,1],V=[1,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],X=[17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130],Y=[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],Z=[17],c=[65],e=[65],l=!1;function B(){var r=q.limit-q.cursor;if(q.go_out_grouping_b(t,97,305)){var i=q.limit-q.cursor;if(!(q.eq_s_b("a")&&q.go_out_grouping_b(V,97,305)||(q.cursor=q.limit-i,q.eq_s_b("e")&&q.go_out_grouping_b(X,101,252))||(q.cursor=q.limit-i,q.eq_s_b("ı")&&q.go_out_grouping_b(Y,97,305))||(q.cursor=q.limit-i,q.eq_s_b("i")&&q.go_out_grouping_b(Z,101,105))||(q.cursor=q.limit-i,q.eq_s_b("o")&&q.go_out_grouping_b(c,111,117))||(q.cursor=q.limit-i,q.eq_s_b("ö")&&q.go_out_grouping_b(e,246,252))||(q.cursor=q.limit-i,q.eq_s_b("u")&&q.go_out_grouping_b(c,111,117)))){if(q.cursor=q.limit-i,!q.eq_s_b("ü"))return;if(!q.go_out_grouping_b(e,246,252))return}return q.cursor=q.limit-r,1}}function T(){r:{var r=q.limit-q.cursor;if(q.eq_s_b("n")){var i=q.limit-q.cursor;if(q.in_grouping_b(t,97,305)){q.cursor=q.limit-i;break r}}q.cursor=q.limit-r;i=q.limit-q.cursor,r=q.limit-q.cursor;if(q.eq_s_b("n"))return void(q.cursor=q.limit-r);q.cursor=q.limit-i;r=q.limit-q.cursor;if(q.cursor<=q.limit_backward)return;if(q.cursor--,!q.in_grouping_b(t,97,305))return;q.cursor=q.limit-r}return 1}function W(){r:{var r=q.limit-q.cursor;if(q.eq_s_b("y")){var i=q.limit-q.cursor;if(q.in_grouping_b(t,97,305)){q.cursor=q.limit-i;break r}}q.cursor=q.limit-r;i=q.limit-q.cursor,r=q.limit-q.cursor;if(q.eq_s_b("y"))return void(q.cursor=q.limit-r);q.cursor=q.limit-i;r=q.limit-q.cursor;if(q.cursor<=q.limit_backward)return;if(q.cursor--,!q.in_grouping_b(t,97,305))return;q.cursor=q.limit-r}return 1}function j(){if(0!=q.find_among_b(u)){r:{var r=q.limit-q.cursor;if(q.in_grouping_b(S,105,305)){var i=q.limit-q.cursor;if(q.out_grouping_b(t,97,305)){q.cursor=q.limit-i;break r}}q.cursor=q.limit-r;i=q.limit-q.cursor,r=q.limit-q.cursor;if(q.in_grouping_b(S,105,305))return!!(q.cursor=q.limit-r,0);q.cursor=q.limit-i;r=q.limit-q.cursor;if(q.cursor<=q.limit_backward)return!!void 0;if(q.cursor--,!q.out_grouping_b(t,97,305))return!!void 0;q.cursor=q.limit-r}return!!1}}function x(){if(B()&&q.in_grouping_b(S,105,305)){r:{var r=q.limit-q.cursor;if(q.eq_s_b("s")){var i=q.limit-q.cursor;if(q.in_grouping_b(t,97,305)){q.cursor=q.limit-i;break r}}q.cursor=q.limit-r;i=q.limit-q.cursor,r=q.limit-q.cursor;if(q.eq_s_b("s"))return!!(q.cursor=q.limit-r,0);q.cursor=q.limit-i;r=q.limit-q.cursor;if(q.cursor<=q.limit_backward)return!!void 0;if(q.cursor--,!q.in_grouping_b(t,97,305))return!!void 0;q.cursor=q.limit-r}return!!1}}function A(){return 0!=q.find_among_b(r)}function D(){return B()&&0!=q.find_among_b(i)&&!!T()}function E(){return B()&&0!=q.find_among_b(s)}function F(){return B()&&0!=q.find_among_b(o)}function m(){return B()&&0!=q.find_among_b(g)&&!!W()}function n(){return B()&&0!=q.find_among_b(v)}function _(){return B()&&0!=q.find_among_b(J)&&!!W()}function f(){return 0!=q.find_among_b(K)}function G(){return B()&&0!=q.find_among_b(L)}function a(){return B()&&0!=q.find_among_b(N)}function b(){return B()&&0!=q.find_among_b(P)&&!!W()}function d(){return 0!=q.find_among_b(Q)&&!!W()}function k(){return B()&&0!=q.find_among_b(R)&&!!W()}function $(){q.ket=q.cursor,l=!0;r:{var r=q.limit-q.cursor,i=q.limit-q.cursor;if(!(k()||(q.cursor=q.limit-i,b())||(q.cursor=q.limit-i,d())||(q.cursor=q.limit-i,q.eq_s_b("ken")&&W()))){if(q.cursor=q.limit-r,0!=q.find_among_b(O)){i=q.limit-q.cursor;if(f()||(q.cursor=q.limit-i,G())||(q.cursor=q.limit-i,m())||(q.cursor=q.limit-i,n())||(q.cursor=q.limit-i,_())||(q.cursor=q.limit-i),k())break r}if(q.cursor=q.limit-r,G()){if(q.bra=q.cursor,!q.slice_del())return;var i=q.limit-q.cursor,u=(q.ket=q.cursor,q.limit-q.cursor);a()||(q.cursor=q.limit-u,b())||(q.cursor=q.limit-u,d())||(q.cursor=q.limit-u,k())||(q.cursor=q.limit-i),l=!1}else{if(q.cursor=q.limit-r,B()&&0!=q.find_among_b(M)){u=q.limit-q.cursor;if(b()||(q.cursor=q.limit-u,d()))break r}q.cursor=q.limit-r;i=q.limit-q.cursor;if(f()||(q.cursor=q.limit-i,_())||(q.cursor=q.limit-i,n())||(q.cursor=q.limit-i,m())){if(q.bra=q.cursor,!q.slice_del())return;u=q.limit-q.cursor;q.ket=q.cursor,k()||(q.cursor=q.limit-u)}else{if(q.cursor=q.limit-r,!a())return;if(q.bra=q.cursor,!q.slice_del())return;i=q.limit-q.cursor,u=(q.ket=q.cursor,q.limit-q.cursor);f()||(q.cursor=q.limit-u,G())||(q.cursor=q.limit-u,m())||(q.cursor=q.limit-u,n())||(q.cursor=q.limit-u,_())||(q.cursor=q.limit-u),k()||(q.cursor=q.limit-i)}}}}q.bra=q.cursor,q.slice_del()}function H(){if(q.ket=q.cursor,q.eq_s_b("ki")){var r=q.limit-q.cursor;if(E()){if(q.bra=q.cursor,!q.slice_del())return;var i=q.limit-q.cursor;r:{q.ket=q.cursor;var u=q.limit-q.cursor;if(G()){if(q.bra=q.cursor,!q.slice_del())return;var s=q.limit-q.cursor;H()||(q.cursor=q.limit-s)}else{if(q.cursor=q.limit-u,!j()){q.cursor=q.limit-i;break r}if(q.bra=q.cursor,!q.slice_del())return;s=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-s)}else q.cursor=q.limit-s}}}else if(q.cursor=q.limit-r,D()){if(q.bra=q.cursor,!q.slice_del())return;var o=q.limit-q.cursor;r:{q.ket=q.cursor;i:{var t=q.limit-q.cursor;if(A()){if(q.bra=q.cursor,q.slice_del())break i;return}q.cursor=q.limit-t,q.ket=q.cursor;var c=q.limit-q.cursor;if(j()||(q.cursor=q.limit-c,x())){if(q.bra=q.cursor,!q.slice_del())return;c=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-c)}else q.cursor=q.limit-c}else if(q.cursor=q.limit-t,!H()){q.cursor=q.limit-o;break r}}}}else{if(q.cursor=q.limit-r,!F())return;r:{var e=q.limit-q.cursor;if(A()){if(q.bra=q.cursor,q.slice_del())break r;return}if(q.cursor=q.limit-e,x()){if(q.bra=q.cursor,!q.slice_del())return;var l=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-l)}else q.cursor=q.limit-l}else if(q.cursor=q.limit-e,!H())return}}return 1}}function rr(){r:{var r=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;var i=q.limit-q.cursor;H()||(q.cursor=q.limit-i)}else if(q.cursor=q.limit-r,q.ket=q.cursor,B()&&0!=q.find_among_b(I)&&T()){if(q.bra=q.cursor,!q.slice_del())return;var u=q.limit-q.cursor;i:u:{var s=q.limit-q.cursor;if(q.ket=q.cursor,A()){if(q.bra=q.cursor,q.slice_del())break u;return}q.cursor=q.limit-s,q.ket=q.cursor;var o=q.limit-q.cursor;if(j()||(q.cursor=q.limit-o,x())){if(q.bra=q.cursor,!q.slice_del())return;o=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-o)}else q.cursor=q.limit-o}else{if(q.cursor=q.limit-s,q.ket=q.cursor,!G()){q.cursor=q.limit-u;break i}if(q.bra=q.cursor,!q.slice_del())return;if(!H()){q.cursor=q.limit-u;break i}}}}else{q.cursor=q.limit-r;i:{q.ket=q.cursor;var t=q.limit-q.cursor;if(F()||(q.cursor=q.limit-t,B()&&0!=q.find_among_b(w))){u:{var c=q.limit-q.cursor;if(A()){if(q.bra=q.cursor,q.slice_del())break u;return}if(q.cursor=q.limit-c,x()){if(q.bra=q.cursor,!q.slice_del())return;var e=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-e)}else q.cursor=q.limit-e}else if(q.cursor=q.limit-c,!H())break i}break r}}q.cursor=q.limit-r;i:{q.ket=q.cursor;var l=q.limit-q.cursor;if(B()&&0!=q.find_among_b(y)||(q.cursor=q.limit-l,B()&&0!=q.find_among_b(p))){l=q.limit-q.cursor;if(x()){if(q.bra=q.cursor,!q.slice_del())return;var m=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-m)}else q.cursor=q.limit-m}else if(q.cursor=q.limit-l,!A())break i;break r}}if(q.cursor=q.limit-r,q.ket=q.cursor,B()&&0!=q.find_among_b(h)){if(q.bra=q.cursor,!q.slice_del())return;var n=q.limit-q.cursor;i:{q.ket=q.cursor;var _=q.limit-q.cursor;if(j()){if(q.bra=q.cursor,!q.slice_del())return;var f=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-f)}else q.cursor=q.limit-f}else if(q.cursor=q.limit-_,G()){if(q.bra=q.cursor,!q.slice_del())return;f=q.limit-q.cursor;H()||(q.cursor=q.limit-f)}else if(q.cursor=q.limit-_,!H()){q.cursor=q.limit-n;break i}}}else{q.cursor=q.limit-r,q.ket=q.cursor;m=q.limit-q.cursor;if(D()||(q.cursor=q.limit-m,B()&&0!=q.find_among_b(C)&&W())){if(q.bra=q.cursor,!q.slice_del())return;var a=q.limit-q.cursor;i:u:{var b=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;if(H())break u}q.cursor=q.limit-b,q.ket=q.cursor;var d=q.limit-q.cursor;if(j()||(q.cursor=q.limit-d,x())){if(q.bra=q.cursor,!q.slice_del())return;d=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-d)}else q.cursor=q.limit-d}else if(q.cursor=q.limit-b,!H()){q.cursor=q.limit-a;break i}}}else{if(q.cursor=q.limit-r,q.ket=q.cursor,A()){if(q.bra=q.cursor,q.slice_del())break r;return}if(q.cursor=q.limit-r,!H()){q.cursor=q.limit-r,q.ket=q.cursor;l=q.limit-q.cursor;if(E()||(q.cursor=q.limit-l,B()&&q.in_grouping_b(S,105,305)&&W())||(q.cursor=q.limit-l,B()&&0!=q.find_among_b(z)&&W())){if(q.bra=q.cursor,!q.slice_del())return;var k=q.limit-q.cursor;i:{q.ket=q.cursor;var g=q.limit-q.cursor;if(j()){if(q.bra=q.cursor,!q.slice_del())return;var v=q.limit-q.cursor;q.ket=q.cursor,G()||(q.cursor=q.limit-v)}else if(q.cursor=q.limit-g,!G()){q.cursor=q.limit-k;break i}if(q.bra=q.cursor,!q.slice_del())return;q.ket=q.cursor,H()||(q.cursor=q.limit-k)}}else{q.cursor=q.limit-r,q.ket=q.cursor;m=q.limit-q.cursor;if(!j()&&(q.cursor=q.limit-m,!x()))return;if(q.bra=q.cursor,!q.slice_del())return;l=q.limit-q.cursor;if(q.ket=q.cursor,G()){if(q.bra=q.cursor,!q.slice_del())return;H()||(q.cursor=q.limit-l)}else q.cursor=q.limit-l}}}}}}}function ir(){q.limit_backward=q.cursor,q.cursor=q.limit;var r=q.limit-q.cursor;if(!(()=>{var r;return!q.eq_s_b("ad")||(r=q.limit-q.cursor,q.eq_s_b("soy")||(q.cursor=q.limit-r),q.cursor>q.limit_backward)?void 0:1})())return q.cursor=q.limit-r,r=q.limit-q.cursor,(()=>{q.ket=q.cursor,q.bra=q.cursor;var r=q.limit-q.cursor;if((q.eq_s_b("d")||(q.cursor=q.limit-r,q.eq_s_b("g")))&&q.go_out_grouping_b(t,97,305))r:{var i=q.limit-q.cursor,u=q.limit-q.cursor;if(q.eq_s_b("a")||(q.cursor=q.limit-u,q.eq_s_b("ı"))){if(q.slice_from("ı"))break r;return}q.cursor=q.limit-i;u=q.limit-q.cursor;if(q.eq_s_b("e")||(q.cursor=q.limit-u,q.eq_s_b("i"))){if(q.slice_from("i"))break r;return}q.cursor=q.limit-i;u=q.limit-q.cursor;if(q.eq_s_b("o")||(q.cursor=q.limit-u,q.eq_s_b("u"))){if(q.slice_from("u"))break r;return}q.cursor=q.limit-i;u=q.limit-q.cursor;if(!q.eq_s_b("ö")&&(q.cursor=q.limit-u,!q.eq_s_b("ü")))return;if(!q.slice_from("ü"))return}})(),q.cursor=q.limit-r,r=q.limit-q.cursor,(()=>{var r;if(q.ket=q.cursor,0!=(r=q.find_among_b(U)))switch(q.bra=q.cursor,r){case 1:if(q.slice_from("p"))break;return;case 2:if(q.slice_from("ç"))break;return;case 3:if(q.slice_from("t"))break;return;case 4:if(q.slice_from("k"))break}})(),q.cursor=q.limit-r,q.cursor=q.limit_backward,1}this.stem=function(){if((()=>{var r=q.cursor;r:{for(q.bra=q.cursor;;){var i=q.cursor,u=q.cursor;if(!q.eq_s("'")){q.cursor=u,q.cursor=i;break}if(q.cursor=i,q.cursor>=q.limit)break r;q.cursor++}if(q.ket=q.cursor,!q.slice_del())return}q.cursor=r,r=q.cursor;r:{var s=q.cursor+2;if(!(s>q.limit)){for(q.cursor=s;;){var o=q.cursor;if(q.eq_s("'")){q.cursor=o;break}if(q.cursor=o,q.cursor>=q.limit)break r;q.cursor++}if(q.bra=q.cursor,q.cursor=q.limit,q.ket=q.cursor,!q.slice_del())return}}q.cursor=r})(),!(()=>{for(var r=q.cursor,i=2;0{for(var r,e=t.cursor;;){var s=t.cursor;r:{for(;;){var i=t.cursor;e:if(t.bra=t.cursor,0!=(r=t.find_among(l))){switch(t.ket=t.cursor,r){case 1:var c=t.cursor;if(t.eq_s("ּ"))break e;if(t.cursor=c,t.slice_from("װ"))break;return;case 2:var o=t.cursor;if(t.eq_s("ִ"))break e;if(t.cursor=o,t.slice_from("ױ"))break;return;case 3:var u=t.cursor;if(t.eq_s("ִ"))break e;if(t.cursor=u,t.slice_from("ײ"))break;return;case 4:if(t.slice_from("כ"))break;return;case 5:if(t.slice_from("מ"))break;return;case 6:if(t.slice_from("נ"))break;return;case 7:if(t.slice_from("פ"))break;return;case 8:if(t.slice_from("צ"))break;return}t.cursor=i;break}if(t.cursor=i,t.cursor>=t.limit)break r;t.cursor++}continue}t.cursor=s;break}for(t.cursor=e,e=t.cursor;;){var a=t.cursor;r:{for(;;){var f=t.cursor;if(t.bra=t.cursor,t.in_grouping(k,1456,1474)){if(t.ket=t.cursor,!t.slice_del())return;t.cursor=f;break}if(t.cursor=f,t.cursor>=t.limit)break r;t.cursor++}continue}t.cursor=a;break}t.cursor=e})();var r=t.cursor;return(()=>{q=t.limit;var r=t.cursor;if(t.bra=t.cursor,t.eq_s("גע")){t.ket=t.cursor;var e=t.cursor,s=t.cursor;if(!t.eq_s("לט")&&(t.cursor=s,!t.eq_s("בנ"))&&(t.cursor=s,t.cursort.limit||(t.cursor=e,v=t.cursor,t.cursor=s,r=t.cursor,0==t.find_among(f)&&(t.cursor=r),e=t.cursor,t.in_grouping(d,1489,1520)&&t.in_grouping(d,1489,1520)&&t.in_grouping(d,1489,1520)?q=t.cursor:(t.cursor=e,t.go_out_grouping(g,1488,1522)&&(t.cursor++,t.go_in_grouping(g,1488,1522))&&(q=t.cursor,v<=q||(q=v))))})(),t.cursor=r,t.limit_backward=t.cursor,t.cursor=t.limit,e(),t.cursor=t.limit_backward,!0},this.stemWord=function(r){return t.setCurrent(r),this.stem(),t.getCurrent()}}; \ No newline at end of file diff --git a/addons/source-python/packages/site-packages/sphinx/search/nl.py b/addons/source-python/packages/site-packages/sphinx/search/nl.py index 2d2f2b8a8..de1a7d1f1 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/nl.py +++ b/addons/source-python/packages/site-packages/sphinx/search/nl.py @@ -1,124 +1,21 @@ -"""Dutch search language: includes the JS porter stemmer.""" +"""Dutch search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -dutch_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/dutch/stop.txt -de | the -en | and -van | of, from -ik | I, the ego -te | (1) chez, at etc, (2) to, (3) too -dat | that, which -die | that, those, who, which -in | in, inside -een | a, an, one -hij | he -het | the, it -niet | not, nothing, naught -zijn | (1) to be, being, (2) his, one's, its -is | is -was | (1) was, past tense of all persons sing. of 'zijn' (to be) (2) wax, (3) the washing, (4) rise of river -op | on, upon, at, in, up, used up -aan | on, upon, to (as dative) -met | with, by -als | like, such as, when -voor | (1) before, in front of, (2) furrow -had | had, past tense all persons sing. of 'hebben' (have) -er | there -maar | but, only -om | round, about, for etc -hem | him -dan | then -zou | should/would, past tense all persons sing. of 'zullen' -of | or, whether, if -wat | what, something, anything -mijn | possessive and noun 'mine' -men | people, 'one' -dit | this -zo | so, thus, in this way -door | through by -over | over, across -ze | she, her, they, them -zich | oneself -bij | (1) a bee, (2) by, near, at -ook | also, too -tot | till, until -je | you -mij | me -uit | out of, from -der | Old Dutch form of 'van der' still found in surnames -daar | (1) there, (2) because -haar | (1) her, their, them, (2) hair -naar | (1) unpleasant, unwell etc, (2) towards, (3) as -heb | present first person sing. of 'to have' -hoe | how, why -heeft | present third person sing. of 'to have' -hebben | 'to have' and various parts thereof -deze | this -u | you -want | (1) for, (2) mitten, (3) rigging -nog | yet, still -zal | 'shall', first and third person sing. of verb 'zullen' (will) -me | me -zij | she, they -nu | now -ge | 'thou', still used in Belgium and south Netherlands -geen | none -omdat | because -iets | something, somewhat -worden | to become, grow, get -toch | yet, still -al | all, every, each -waren | (1) 'were' (2) to wander, (3) wares, (3) -veel | much, many -meer | (1) more, (2) lake -doen | to do, to make -toen | then, when -moet | noun 'spot/mote' and present form of 'to must' -ben | (1) am, (2) 'are' in interrogative second person singular of 'to be' -zonder | without -kan | noun 'can' and present form of 'to be able' -hun | their, them -dus | so, consequently -alles | all, everything, anything -onder | under, beneath -ja | yes, of course -eens | once, one day -hier | here -wie | who -werd | imperfect third person sing. of 'become' -altijd | always -doch | yet, but etc -wordt | present third person sing. of 'become' -wezen | (1) to be, (2) 'been' as in 'been fishing', (3) orphans -kunnen | to be able -ons | us/our -zelf | self -tegen | against, towards, at -na | after, near -reeds | already -wil | (1) present tense of 'want', (2) 'will', noun, (3) fender -kon | could; past tense of 'to be able' -niets | nothing -uw | your -iemand | somebody -geweest | been; past participle of 'be' -andere | other -""") # NoQA: E501 +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.nl import DUTCH_STOPWORDS class SearchDutch(SearchLanguage): lang = 'nl' language_name = 'Dutch' js_stemmer_rawcode = 'dutch-stemmer.js' - stopwords = dutch_stopwords + stopwords = DUTCH_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('dutch') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/no.py b/addons/source-python/packages/site-packages/sphinx/search/no.py index dfc7786d4..45b202f09 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/no.py +++ b/addons/source-python/packages/site-packages/sphinx/search/no.py @@ -1,199 +1,21 @@ -"""Norwegian search language: includes the JS Norwegian stemmer.""" +"""Norwegian search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -norwegian_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/norwegian/stop.txt -og | and -i | in -jeg | I -det | it/this/that -at | to (w. inf.) -en | a/an -et | a/an -den | it/this/that -til | to -er | is/am/are -som | who/that -på | on -de | they / you(formal) -med | with -han | he -av | of -ikke | not -ikkje | not * -der | there -så | so -var | was/were -meg | me -seg | you -men | but -ett | one -har | have -om | about -vi | we -min | my -mitt | my -ha | have -hadde | had -hun | she -nå | now -over | over -da | when/as -ved | by/know -fra | from -du | you -ut | out -sin | your -dem | them -oss | us -opp | up -man | you/one -kan | can -hans | his -hvor | where -eller | or -hva | what -skal | shall/must -selv | self (reflective) -sjøl | self (reflective) -her | here -alle | all -vil | will -bli | become -ble | became -blei | became * -blitt | have become -kunne | could -inn | in -når | when -være | be -kom | come -noen | some -noe | some -ville | would -dere | you -som | who/which/that -deres | their/theirs -kun | only/just -ja | yes -etter | after -ned | down -skulle | should -denne | this -for | for/because -deg | you -si | hers/his -sine | hers/his -sitt | hers/his -mot | against -å | to -meget | much -hvorfor | why -dette | this -disse | these/those -uten | without -hvordan | how -ingen | none -din | your -ditt | your -blir | become -samme | same -hvilken | which -hvilke | which (plural) -sånn | such a -inni | inside/within -mellom | between -vår | our -hver | each -hvem | who -vors | us/ours -hvis | whose -både | both -bare | only/just -enn | than -fordi | as/because -før | before -mange | many -også | also -slik | just -vært | been -være | to be -båe | both * -begge | both -siden | since -dykk | your * -dykkar | yours * -dei | they * -deira | them * -deires | theirs * -deim | them * -di | your (fem.) * -då | as/when * -eg | I * -ein | a/an * -eit | a/an * -eitt | a/an * -elles | or * -honom | he * -hjå | at * -ho | she * -hoe | she * -henne | her -hennar | her/hers -hennes | hers -hoss | how * -hossen | how * -ikkje | not * -ingi | noone * -inkje | noone * -korleis | how * -korso | how * -kva | what/which * -kvar | where * -kvarhelst | where * -kven | who/whom * -kvi | why * -kvifor | why * -me | we * -medan | while * -mi | my * -mine | my * -mykje | much * -no | now * -nokon | some (masc./neut.) * -noka | some (fem.) * -nokor | some * -noko | some * -nokre | some * -si | his/hers * -sia | since * -sidan | since * -so | so * -somt | some * -somme | some * -um | about* -upp | up * -vere | be * -vore | was * -verte | become * -vort | become * -varte | became * -vart | became * -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.no import NORWEGIAN_STOPWORDS class SearchNorwegian(SearchLanguage): lang = 'no' language_name = 'Norwegian' js_stemmer_rawcode = 'norwegian-stemmer.js' - stopwords = norwegian_stopwords + stopwords = NORWEGIAN_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('norwegian') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/arabic-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/arabic-stemmer.js new file mode 100644 index 000000000..dbab12d81 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/arabic-stemmer.js @@ -0,0 +1,1612 @@ +// Generated from arabic.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var ArabicStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u0640", -1, 1], + ["\u064B", -1, 1], + ["\u064C", -1, 1], + ["\u064D", -1, 1], + ["\u064E", -1, 1], + ["\u064F", -1, 1], + ["\u0650", -1, 1], + ["\u0651", -1, 1], + ["\u0652", -1, 1], + ["\u0660", -1, 2], + ["\u0661", -1, 3], + ["\u0662", -1, 4], + ["\u0663", -1, 5], + ["\u0664", -1, 6], + ["\u0665", -1, 7], + ["\u0666", -1, 8], + ["\u0667", -1, 9], + ["\u0668", -1, 10], + ["\u0669", -1, 11], + ["\uFE80", -1, 12], + ["\uFE81", -1, 16], + ["\uFE82", -1, 16], + ["\uFE83", -1, 13], + ["\uFE84", -1, 13], + ["\uFE85", -1, 17], + ["\uFE86", -1, 17], + ["\uFE87", -1, 14], + ["\uFE88", -1, 14], + ["\uFE89", -1, 15], + ["\uFE8A", -1, 15], + ["\uFE8B", -1, 15], + ["\uFE8C", -1, 15], + ["\uFE8D", -1, 18], + ["\uFE8E", -1, 18], + ["\uFE8F", -1, 19], + ["\uFE90", -1, 19], + ["\uFE91", -1, 19], + ["\uFE92", -1, 19], + ["\uFE93", -1, 20], + ["\uFE94", -1, 20], + ["\uFE95", -1, 21], + ["\uFE96", -1, 21], + ["\uFE97", -1, 21], + ["\uFE98", -1, 21], + ["\uFE99", -1, 22], + ["\uFE9A", -1, 22], + ["\uFE9B", -1, 22], + ["\uFE9C", -1, 22], + ["\uFE9D", -1, 23], + ["\uFE9E", -1, 23], + ["\uFE9F", -1, 23], + ["\uFEA0", -1, 23], + ["\uFEA1", -1, 24], + ["\uFEA2", -1, 24], + ["\uFEA3", -1, 24], + ["\uFEA4", -1, 24], + ["\uFEA5", -1, 25], + ["\uFEA6", -1, 25], + ["\uFEA7", -1, 25], + ["\uFEA8", -1, 25], + ["\uFEA9", -1, 26], + ["\uFEAA", -1, 26], + ["\uFEAB", -1, 27], + ["\uFEAC", -1, 27], + ["\uFEAD", -1, 28], + ["\uFEAE", -1, 28], + ["\uFEAF", -1, 29], + ["\uFEB0", -1, 29], + ["\uFEB1", -1, 30], + ["\uFEB2", -1, 30], + ["\uFEB3", -1, 30], + ["\uFEB4", -1, 30], + ["\uFEB5", -1, 31], + ["\uFEB6", -1, 31], + ["\uFEB7", -1, 31], + ["\uFEB8", -1, 31], + ["\uFEB9", -1, 32], + ["\uFEBA", -1, 32], + ["\uFEBB", -1, 32], + ["\uFEBC", -1, 32], + ["\uFEBD", -1, 33], + ["\uFEBE", -1, 33], + ["\uFEBF", -1, 33], + ["\uFEC0", -1, 33], + ["\uFEC1", -1, 34], + ["\uFEC2", -1, 34], + ["\uFEC3", -1, 34], + ["\uFEC4", -1, 34], + ["\uFEC5", -1, 35], + ["\uFEC6", -1, 35], + ["\uFEC7", -1, 35], + ["\uFEC8", -1, 35], + ["\uFEC9", -1, 36], + ["\uFECA", -1, 36], + ["\uFECB", -1, 36], + ["\uFECC", -1, 36], + ["\uFECD", -1, 37], + ["\uFECE", -1, 37], + ["\uFECF", -1, 37], + ["\uFED0", -1, 37], + ["\uFED1", -1, 38], + ["\uFED2", -1, 38], + ["\uFED3", -1, 38], + ["\uFED4", -1, 38], + ["\uFED5", -1, 39], + ["\uFED6", -1, 39], + ["\uFED7", -1, 39], + ["\uFED8", -1, 39], + ["\uFED9", -1, 40], + ["\uFEDA", -1, 40], + ["\uFEDB", -1, 40], + ["\uFEDC", -1, 40], + ["\uFEDD", -1, 41], + ["\uFEDE", -1, 41], + ["\uFEDF", -1, 41], + ["\uFEE0", -1, 41], + ["\uFEE1", -1, 42], + ["\uFEE2", -1, 42], + ["\uFEE3", -1, 42], + ["\uFEE4", -1, 42], + ["\uFEE5", -1, 43], + ["\uFEE6", -1, 43], + ["\uFEE7", -1, 43], + ["\uFEE8", -1, 43], + ["\uFEE9", -1, 44], + ["\uFEEA", -1, 44], + ["\uFEEB", -1, 44], + ["\uFEEC", -1, 44], + ["\uFEED", -1, 45], + ["\uFEEE", -1, 45], + ["\uFEEF", -1, 46], + ["\uFEF0", -1, 46], + ["\uFEF1", -1, 47], + ["\uFEF2", -1, 47], + ["\uFEF3", -1, 47], + ["\uFEF4", -1, 47], + ["\uFEF5", -1, 51], + ["\uFEF6", -1, 51], + ["\uFEF7", -1, 49], + ["\uFEF8", -1, 49], + ["\uFEF9", -1, 50], + ["\uFEFA", -1, 50], + ["\uFEFB", -1, 48], + ["\uFEFC", -1, 48] + ]; + + /** @const */ var a_1 = [ + ["\u0622", -1, 1], + ["\u0623", -1, 1], + ["\u0624", -1, 1], + ["\u0625", -1, 1], + ["\u0626", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["\u0622", -1, 1], + ["\u0623", -1, 1], + ["\u0624", -1, 2], + ["\u0625", -1, 1], + ["\u0626", -1, 3] + ]; + + /** @const */ var a_3 = [ + ["\u0627\u0644", -1, 2], + ["\u0628\u0627\u0644", -1, 1], + ["\u0643\u0627\u0644", -1, 1], + ["\u0644\u0644", -1, 2] + ]; + + /** @const */ var a_4 = [ + ["\u0623\u0622", -1, 2], + ["\u0623\u0623", -1, 1], + ["\u0623\u0624", -1, 1], + ["\u0623\u0625", -1, 4], + ["\u0623\u0627", -1, 3] + ]; + + /** @const */ var a_5 = [ + ["\u0641", -1, 1], + ["\u0648", -1, 1] + ]; + + /** @const */ var a_6 = [ + ["\u0627\u0644", -1, 2], + ["\u0628\u0627\u0644", -1, 1], + ["\u0643\u0627\u0644", -1, 1], + ["\u0644\u0644", -1, 2] + ]; + + /** @const */ var a_7 = [ + ["\u0628", -1, 1], + ["\u0628\u0627", 0, -1], + ["\u0628\u0628", 0, 2], + ["\u0643\u0643", -1, 3] + ]; + + /** @const */ var a_8 = [ + ["\u0633\u0623", -1, 4], + ["\u0633\u062A", -1, 2], + ["\u0633\u0646", -1, 3], + ["\u0633\u064A", -1, 1] + ]; + + /** @const */ var a_9 = [ + ["\u062A\u0633\u062A", -1, 1], + ["\u0646\u0633\u062A", -1, 1], + ["\u064A\u0633\u062A", -1, 1] + ]; + + /** @const */ var a_10 = [ + ["\u0643\u0645\u0627", -1, 3], + ["\u0647\u0645\u0627", -1, 3], + ["\u0646\u0627", -1, 2], + ["\u0647\u0627", -1, 2], + ["\u0643", -1, 1], + ["\u0643\u0645", -1, 2], + ["\u0647\u0645", -1, 2], + ["\u0647\u0646", -1, 2], + ["\u0647", -1, 1], + ["\u064A", -1, 1] + ]; + + /** @const */ var a_11 = [ + ["\u0646", -1, 1] + ]; + + /** @const */ var a_12 = [ + ["\u0627", -1, 1], + ["\u0648", -1, 1], + ["\u064A", -1, 1] + ]; + + /** @const */ var a_13 = [ + ["\u0627\u062A", -1, 1] + ]; + + /** @const */ var a_14 = [ + ["\u062A", -1, 1] + ]; + + /** @const */ var a_15 = [ + ["\u0629", -1, 1] + ]; + + /** @const */ var a_16 = [ + ["\u064A", -1, 1] + ]; + + /** @const */ var a_17 = [ + ["\u0643\u0645\u0627", -1, 3], + ["\u0647\u0645\u0627", -1, 3], + ["\u0646\u0627", -1, 2], + ["\u0647\u0627", -1, 2], + ["\u0643", -1, 1], + ["\u0643\u0645", -1, 2], + ["\u0647\u0645", -1, 2], + ["\u0643\u0646", -1, 2], + ["\u0647\u0646", -1, 2], + ["\u0647", -1, 1], + ["\u0643\u0645\u0648", -1, 3], + ["\u0646\u064A", -1, 2] + ]; + + /** @const */ var a_18 = [ + ["\u0627", -1, 1], + ["\u062A\u0627", 0, 2], + ["\u062A\u0645\u0627", 0, 4], + ["\u0646\u0627", 0, 2], + ["\u062A", -1, 1], + ["\u0646", -1, 1], + ["\u0627\u0646", 5, 3], + ["\u062A\u0646", 5, 2], + ["\u0648\u0646", 5, 3], + ["\u064A\u0646", 5, 3], + ["\u064A", -1, 1] + ]; + + /** @const */ var a_19 = [ + ["\u0648\u0627", -1, 1], + ["\u062A\u0645", -1, 1] + ]; + + /** @const */ var a_20 = [ + ["\u0648", -1, 1], + ["\u062A\u0645\u0648", 0, 2] + ]; + + /** @const */ var a_21 = [ + ["\u0649", -1, 1] + ]; + + var /** boolean */ B_is_defined = false; + var /** boolean */ B_is_verb = false; + var /** boolean */ B_is_noun = false; + + + /** @return {boolean} */ + function r_Normalize_pre() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + lab2: { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + if (among_var == 0) + { + break lab3; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("0")) + { + return false; + } + break; + case 3: + if (!base.slice_from("1")) + { + return false; + } + break; + case 4: + if (!base.slice_from("2")) + { + return false; + } + break; + case 5: + if (!base.slice_from("3")) + { + return false; + } + break; + case 6: + if (!base.slice_from("4")) + { + return false; + } + break; + case 7: + if (!base.slice_from("5")) + { + return false; + } + break; + case 8: + if (!base.slice_from("6")) + { + return false; + } + break; + case 9: + if (!base.slice_from("7")) + { + return false; + } + break; + case 10: + if (!base.slice_from("8")) + { + return false; + } + break; + case 11: + if (!base.slice_from("9")) + { + return false; + } + break; + case 12: + if (!base.slice_from("\u0621")) + { + return false; + } + break; + case 13: + if (!base.slice_from("\u0623")) + { + return false; + } + break; + case 14: + if (!base.slice_from("\u0625")) + { + return false; + } + break; + case 15: + if (!base.slice_from("\u0626")) + { + return false; + } + break; + case 16: + if (!base.slice_from("\u0622")) + { + return false; + } + break; + case 17: + if (!base.slice_from("\u0624")) + { + return false; + } + break; + case 18: + if (!base.slice_from("\u0627")) + { + return false; + } + break; + case 19: + if (!base.slice_from("\u0628")) + { + return false; + } + break; + case 20: + if (!base.slice_from("\u0629")) + { + return false; + } + break; + case 21: + if (!base.slice_from("\u062A")) + { + return false; + } + break; + case 22: + if (!base.slice_from("\u062B")) + { + return false; + } + break; + case 23: + if (!base.slice_from("\u062C")) + { + return false; + } + break; + case 24: + if (!base.slice_from("\u062D")) + { + return false; + } + break; + case 25: + if (!base.slice_from("\u062E")) + { + return false; + } + break; + case 26: + if (!base.slice_from("\u062F")) + { + return false; + } + break; + case 27: + if (!base.slice_from("\u0630")) + { + return false; + } + break; + case 28: + if (!base.slice_from("\u0631")) + { + return false; + } + break; + case 29: + if (!base.slice_from("\u0632")) + { + return false; + } + break; + case 30: + if (!base.slice_from("\u0633")) + { + return false; + } + break; + case 31: + if (!base.slice_from("\u0634")) + { + return false; + } + break; + case 32: + if (!base.slice_from("\u0635")) + { + return false; + } + break; + case 33: + if (!base.slice_from("\u0636")) + { + return false; + } + break; + case 34: + if (!base.slice_from("\u0637")) + { + return false; + } + break; + case 35: + if (!base.slice_from("\u0638")) + { + return false; + } + break; + case 36: + if (!base.slice_from("\u0639")) + { + return false; + } + break; + case 37: + if (!base.slice_from("\u063A")) + { + return false; + } + break; + case 38: + if (!base.slice_from("\u0641")) + { + return false; + } + break; + case 39: + if (!base.slice_from("\u0642")) + { + return false; + } + break; + case 40: + if (!base.slice_from("\u0643")) + { + return false; + } + break; + case 41: + if (!base.slice_from("\u0644")) + { + return false; + } + break; + case 42: + if (!base.slice_from("\u0645")) + { + return false; + } + break; + case 43: + if (!base.slice_from("\u0646")) + { + return false; + } + break; + case 44: + if (!base.slice_from("\u0647")) + { + return false; + } + break; + case 45: + if (!base.slice_from("\u0648")) + { + return false; + } + break; + case 46: + if (!base.slice_from("\u0649")) + { + return false; + } + break; + case 47: + if (!base.slice_from("\u064A")) + { + return false; + } + break; + case 48: + if (!base.slice_from("\u0644\u0627")) + { + return false; + } + break; + case 49: + if (!base.slice_from("\u0644\u0623")) + { + return false; + } + break; + case 50: + if (!base.slice_from("\u0644\u0625")) + { + return false; + } + break; + case 51: + if (!base.slice_from("\u0644\u0622")) + { + return false; + } + break; + } + break lab2; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { + break lab1; + } + base.cursor++; + } + continue; + } + base.cursor = v_2; + break; + } + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_Normalize_post() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.limit_backward = base.cursor; base.cursor = base.limit; + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_from("\u0621")) + { + return false; + } + base.cursor = base.limit_backward; + } + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + while(true) + { + /** @const */ var /** number */ v_3 = base.cursor; + lab2: { + lab3: { + /** @const */ var /** number */ v_4 = base.cursor; + lab4: { + base.bra = base.cursor; + among_var = base.find_among(a_2); + if (among_var == 0) + { + break lab4; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u0627")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u0648")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u064A")) + { + return false; + } + break; + } + break lab3; + } + base.cursor = v_4; + if (base.cursor >= base.limit) + { + break lab2; + } + base.cursor++; + } + continue; + } + base.cursor = v_3; + break; + } + } + base.cursor = v_2; + return true; + }; + + /** @return {boolean} */ + function r_Checks1() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_3); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (base.current.length <= 4) + { + return false; + } + B_is_noun = true; + B_is_verb = false; + B_is_defined = true; + break; + case 2: + if (base.current.length <= 3) + { + return false; + } + B_is_noun = true; + B_is_verb = false; + B_is_defined = true; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Prefix_Step1() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_4); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_from("\u0623")) + { + return false; + } + break; + case 2: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_from("\u0622")) + { + return false; + } + break; + case 3: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_from("\u0627")) + { + return false; + } + break; + case 4: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_from("\u0625")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Prefix_Step2() { + base.bra = base.cursor; + if (base.find_among(a_5) == 0) + { + return false; + } + base.ket = base.cursor; + if (base.current.length <= 3) + { + return false; + } + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!(base.eq_s("\u0627"))) + { + break lab0; + } + return false; + } + base.cursor = v_1; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Prefix_Step3a_Noun() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_6); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (base.current.length <= 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (base.current.length <= 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Prefix_Step3b_Noun() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_7); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_from("\u0628")) + { + return false; + } + break; + case 3: + if (base.current.length <= 3) + { + return false; + } + if (!base.slice_from("\u0643")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Prefix_Step3_Verb() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_8); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (base.current.length <= 4) + { + return false; + } + if (!base.slice_from("\u064A")) + { + return false; + } + break; + case 2: + if (base.current.length <= 4) + { + return false; + } + if (!base.slice_from("\u062A")) + { + return false; + } + break; + case 3: + if (base.current.length <= 4) + { + return false; + } + if (!base.slice_from("\u0646")) + { + return false; + } + break; + case 4: + if (base.current.length <= 4) + { + return false; + } + if (!base.slice_from("\u0623")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Prefix_Step4_Verb() { + base.bra = base.cursor; + if (base.find_among(a_9) == 0) + { + return false; + } + base.ket = base.cursor; + if (base.current.length <= 4) + { + return false; + } + B_is_verb = true; + B_is_noun = false; + if (!base.slice_from("\u0627\u0633\u062A")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step1a() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_10); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (base.current.length < 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (base.current.length < 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (base.current.length < 6) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step1b() { + base.ket = base.cursor; + if (base.find_among_b(a_11) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length <= 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step2a() { + base.ket = base.cursor; + if (base.find_among_b(a_12) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length <= 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step2b() { + base.ket = base.cursor; + if (base.find_among_b(a_13) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length < 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step2c1() { + base.ket = base.cursor; + if (base.find_among_b(a_14) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length < 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step2c2() { + base.ket = base.cursor; + if (base.find_among_b(a_15) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length < 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Noun_Step3() { + base.ket = base.cursor; + if (base.find_among_b(a_16) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length < 3) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Verb_Step1() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_17); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (base.current.length < 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (base.current.length < 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (base.current.length < 6) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Verb_Step2a() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_18); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (base.current.length < 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (base.current.length < 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (base.current.length <= 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 4: + if (base.current.length < 6) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Verb_Step2b() { + base.ket = base.cursor; + if (base.find_among_b(a_19) == 0) + { + return false; + } + base.bra = base.cursor; + if (base.current.length < 5) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_Verb_Step2c() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_20); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (base.current.length < 4) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (base.current.length < 6) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Suffix_All_alef_maqsura() { + base.ket = base.cursor; + if (base.find_among_b(a_21) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_from("\u064A")) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + B_is_noun = true; + B_is_verb = true; + B_is_defined = false; + /** @const */ var /** number */ v_1 = base.cursor; + r_Checks1(); + base.cursor = v_1; + r_Normalize_pre(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab0: { + lab1: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!B_is_verb) + { + break lab2; + } + lab3: { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab4: { + { + var v_5 = 1; + while(true) + { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab5: { + if (!r_Suffix_Verb_Step1()) + { + break lab5; + } + v_5--; + continue; + } + base.cursor = base.limit - v_6; + break; + } + if (v_5 > 0) + { + break lab4; + } + } + lab6: { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab7: { + if (!r_Suffix_Verb_Step2a()) + { + break lab7; + } + break lab6; + } + base.cursor = base.limit - v_7; + lab8: { + if (!r_Suffix_Verb_Step2c()) + { + break lab8; + } + break lab6; + } + base.cursor = base.limit - v_7; + if (base.cursor <= base.limit_backward) + { + break lab4; + } + base.cursor--; + } + break lab3; + } + base.cursor = base.limit - v_4; + lab9: { + if (!r_Suffix_Verb_Step2b()) + { + break lab9; + } + break lab3; + } + base.cursor = base.limit - v_4; + if (!r_Suffix_Verb_Step2a()) + { + break lab2; + } + } + break lab1; + } + base.cursor = base.limit - v_3; + lab10: { + if (!B_is_noun) + { + break lab10; + } + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab11: { + lab12: { + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + lab13: { + if (!r_Suffix_Noun_Step2c2()) + { + break lab13; + } + break lab12; + } + base.cursor = base.limit - v_9; + lab14: { + lab15: { + if (!B_is_defined) + { + break lab15; + } + break lab14; + } + if (!r_Suffix_Noun_Step1a()) + { + break lab14; + } + lab16: { + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + lab17: { + if (!r_Suffix_Noun_Step2a()) + { + break lab17; + } + break lab16; + } + base.cursor = base.limit - v_10; + lab18: { + if (!r_Suffix_Noun_Step2b()) + { + break lab18; + } + break lab16; + } + base.cursor = base.limit - v_10; + lab19: { + if (!r_Suffix_Noun_Step2c1()) + { + break lab19; + } + break lab16; + } + base.cursor = base.limit - v_10; + if (base.cursor <= base.limit_backward) + { + break lab14; + } + base.cursor--; + } + break lab12; + } + base.cursor = base.limit - v_9; + lab20: { + if (!r_Suffix_Noun_Step1b()) + { + break lab20; + } + lab21: { + /** @const */ var /** number */ v_11 = base.limit - base.cursor; + lab22: { + if (!r_Suffix_Noun_Step2a()) + { + break lab22; + } + break lab21; + } + base.cursor = base.limit - v_11; + lab23: { + if (!r_Suffix_Noun_Step2b()) + { + break lab23; + } + break lab21; + } + base.cursor = base.limit - v_11; + if (!r_Suffix_Noun_Step2c1()) + { + break lab20; + } + } + break lab12; + } + base.cursor = base.limit - v_9; + lab24: { + lab25: { + if (!B_is_defined) + { + break lab25; + } + break lab24; + } + if (!r_Suffix_Noun_Step2a()) + { + break lab24; + } + break lab12; + } + base.cursor = base.limit - v_9; + if (!r_Suffix_Noun_Step2b()) + { + base.cursor = base.limit - v_8; + break lab11; + } + } + } + if (!r_Suffix_Noun_Step3()) + { + break lab10; + } + break lab1; + } + base.cursor = base.limit - v_3; + if (!r_Suffix_All_alef_maqsura()) + { + break lab0; + } + } + } + base.cursor = base.limit - v_2; + base.cursor = base.limit_backward; + /** @const */ var /** number */ v_12 = base.cursor; + lab26: { + /** @const */ var /** number */ v_13 = base.cursor; + lab27: { + if (!r_Prefix_Step1()) + { + base.cursor = v_13; + break lab27; + } + } + /** @const */ var /** number */ v_14 = base.cursor; + lab28: { + if (!r_Prefix_Step2()) + { + base.cursor = v_14; + break lab28; + } + } + lab29: { + /** @const */ var /** number */ v_15 = base.cursor; + lab30: { + if (!r_Prefix_Step3a_Noun()) + { + break lab30; + } + break lab29; + } + base.cursor = v_15; + lab31: { + if (!B_is_noun) + { + break lab31; + } + if (!r_Prefix_Step3b_Noun()) + { + break lab31; + } + break lab29; + } + base.cursor = v_15; + if (!B_is_verb) + { + break lab26; + } + /** @const */ var /** number */ v_16 = base.cursor; + lab32: { + if (!r_Prefix_Step3_Verb()) + { + base.cursor = v_16; + break lab32; + } + } + if (!r_Prefix_Step4_Verb()) + { + break lab26; + } + } + } + base.cursor = v_12; + r_Normalize_post(); + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/armenian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/armenian-stemmer.js new file mode 100644 index 000000000..915146dbd --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/armenian-stemmer.js @@ -0,0 +1,350 @@ +// Generated from armenian.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var ArmenianStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u0580\u0578\u0580\u0564", -1, 1], + ["\u0565\u0580\u0578\u0580\u0564", 0, 1], + ["\u0561\u056C\u056B", -1, 1], + ["\u0561\u056F\u056B", -1, 1], + ["\u0578\u0580\u0561\u056F", -1, 1], + ["\u0565\u0572", -1, 1], + ["\u0561\u056F\u0561\u0576", -1, 1], + ["\u0561\u0580\u0561\u0576", -1, 1], + ["\u0565\u0576", -1, 1], + ["\u0565\u056F\u0565\u0576", 8, 1], + ["\u0565\u0580\u0565\u0576", 8, 1], + ["\u0578\u0580\u0567\u0576", -1, 1], + ["\u056B\u0576", -1, 1], + ["\u0563\u056B\u0576", 12, 1], + ["\u0578\u057E\u056B\u0576", 12, 1], + ["\u056C\u0561\u0575\u0576", -1, 1], + ["\u057E\u0578\u0582\u0576", -1, 1], + ["\u057A\u0565\u057D", -1, 1], + ["\u056B\u057E", -1, 1], + ["\u0561\u057F", -1, 1], + ["\u0561\u057E\u0565\u057F", -1, 1], + ["\u056F\u0578\u057F", -1, 1], + ["\u0562\u0561\u0580", -1, 1] + ]; + + /** @const */ var a_1 = [ + ["\u0561", -1, 1], + ["\u0561\u0581\u0561", 0, 1], + ["\u0565\u0581\u0561", 0, 1], + ["\u057E\u0565", -1, 1], + ["\u0561\u0581\u0580\u056B", -1, 1], + ["\u0561\u0581\u056B", -1, 1], + ["\u0565\u0581\u056B", -1, 1], + ["\u057E\u0565\u0581\u056B", 6, 1], + ["\u0561\u056C", -1, 1], + ["\u0568\u0561\u056C", 8, 1], + ["\u0561\u0576\u0561\u056C", 8, 1], + ["\u0565\u0576\u0561\u056C", 8, 1], + ["\u0561\u0581\u0576\u0561\u056C", 8, 1], + ["\u0565\u056C", -1, 1], + ["\u0568\u0565\u056C", 13, 1], + ["\u0576\u0565\u056C", 13, 1], + ["\u0581\u0576\u0565\u056C", 15, 1], + ["\u0565\u0581\u0576\u0565\u056C", 16, 1], + ["\u0579\u0565\u056C", 13, 1], + ["\u057E\u0565\u056C", 13, 1], + ["\u0561\u0581\u057E\u0565\u056C", 19, 1], + ["\u0565\u0581\u057E\u0565\u056C", 19, 1], + ["\u057F\u0565\u056C", 13, 1], + ["\u0561\u057F\u0565\u056C", 22, 1], + ["\u0578\u057F\u0565\u056C", 22, 1], + ["\u056F\u0578\u057F\u0565\u056C", 24, 1], + ["\u057E\u0561\u056E", -1, 1], + ["\u0578\u0582\u0574", -1, 1], + ["\u057E\u0578\u0582\u0574", 27, 1], + ["\u0561\u0576", -1, 1], + ["\u0581\u0561\u0576", 29, 1], + ["\u0561\u0581\u0561\u0576", 30, 1], + ["\u0561\u0581\u0580\u056B\u0576", -1, 1], + ["\u0561\u0581\u056B\u0576", -1, 1], + ["\u0565\u0581\u056B\u0576", -1, 1], + ["\u057E\u0565\u0581\u056B\u0576", 34, 1], + ["\u0561\u056C\u056B\u057D", -1, 1], + ["\u0565\u056C\u056B\u057D", -1, 1], + ["\u0561\u057E", -1, 1], + ["\u0561\u0581\u0561\u057E", 38, 1], + ["\u0565\u0581\u0561\u057E", 38, 1], + ["\u0561\u056C\u0578\u057E", -1, 1], + ["\u0565\u056C\u0578\u057E", -1, 1], + ["\u0561\u0580", -1, 1], + ["\u0561\u0581\u0561\u0580", 43, 1], + ["\u0565\u0581\u0561\u0580", 43, 1], + ["\u0561\u0581\u0580\u056B\u0580", -1, 1], + ["\u0561\u0581\u056B\u0580", -1, 1], + ["\u0565\u0581\u056B\u0580", -1, 1], + ["\u057E\u0565\u0581\u056B\u0580", 48, 1], + ["\u0561\u0581", -1, 1], + ["\u0565\u0581", -1, 1], + ["\u0561\u0581\u0580\u0565\u0581", 51, 1], + ["\u0561\u056C\u0578\u0582\u0581", -1, 1], + ["\u0565\u056C\u0578\u0582\u0581", -1, 1], + ["\u0561\u056C\u0578\u0582", -1, 1], + ["\u0565\u056C\u0578\u0582", -1, 1], + ["\u0561\u0584", -1, 1], + ["\u0581\u0561\u0584", 57, 1], + ["\u0561\u0581\u0561\u0584", 58, 1], + ["\u0561\u0581\u0580\u056B\u0584", -1, 1], + ["\u0561\u0581\u056B\u0584", -1, 1], + ["\u0565\u0581\u056B\u0584", -1, 1], + ["\u057E\u0565\u0581\u056B\u0584", 62, 1], + ["\u0561\u0576\u0584", -1, 1], + ["\u0581\u0561\u0576\u0584", 64, 1], + ["\u0561\u0581\u0561\u0576\u0584", 65, 1], + ["\u0561\u0581\u0580\u056B\u0576\u0584", -1, 1], + ["\u0561\u0581\u056B\u0576\u0584", -1, 1], + ["\u0565\u0581\u056B\u0576\u0584", -1, 1], + ["\u057E\u0565\u0581\u056B\u0576\u0584", 69, 1] + ]; + + /** @const */ var a_2 = [ + ["\u0578\u0580\u0564", -1, 1], + ["\u0578\u0582\u0575\u0569", -1, 1], + ["\u0578\u0582\u0570\u056B", -1, 1], + ["\u0581\u056B", -1, 1], + ["\u056B\u056C", -1, 1], + ["\u0561\u056F", -1, 1], + ["\u0575\u0561\u056F", 5, 1], + ["\u0561\u0576\u0561\u056F", 5, 1], + ["\u056B\u056F", -1, 1], + ["\u0578\u0582\u056F", -1, 1], + ["\u0561\u0576", -1, 1], + ["\u057A\u0561\u0576", 10, 1], + ["\u057D\u057F\u0561\u0576", 10, 1], + ["\u0561\u0580\u0561\u0576", 10, 1], + ["\u0565\u0572\u0567\u0576", -1, 1], + ["\u0575\u0578\u0582\u0576", -1, 1], + ["\u0578\u0582\u0569\u0575\u0578\u0582\u0576", 15, 1], + ["\u0561\u056E\u0578", -1, 1], + ["\u056B\u0579", -1, 1], + ["\u0578\u0582\u057D", -1, 1], + ["\u0578\u0582\u057D\u057F", -1, 1], + ["\u0563\u0561\u0580", -1, 1], + ["\u057E\u0578\u0580", -1, 1], + ["\u0561\u057E\u0578\u0580", 22, 1], + ["\u0578\u0581", -1, 1], + ["\u0561\u0576\u0585\u0581", -1, 1], + ["\u0578\u0582", -1, 1], + ["\u0584", -1, 1], + ["\u0579\u0565\u0584", 27, 1], + ["\u056B\u0584", 27, 1], + ["\u0561\u056C\u056B\u0584", 29, 1], + ["\u0561\u0576\u056B\u0584", 29, 1], + ["\u057E\u0561\u056E\u0584", 27, 1], + ["\u0578\u0582\u0575\u0584", 27, 1], + ["\u0565\u0576\u0584", 27, 1], + ["\u0578\u0576\u0584", 27, 1], + ["\u0578\u0582\u0576\u0584", 27, 1], + ["\u0574\u0578\u0582\u0576\u0584", 36, 1], + ["\u056B\u0579\u0584", 27, 1], + ["\u0561\u0580\u0584", 27, 1] + ]; + + /** @const */ var a_3 = [ + ["\u057D\u0561", -1, 1], + ["\u057E\u0561", -1, 1], + ["\u0561\u0574\u0562", -1, 1], + ["\u0564", -1, 1], + ["\u0561\u0576\u0564", 3, 1], + ["\u0578\u0582\u0569\u0575\u0561\u0576\u0564", 4, 1], + ["\u057E\u0561\u0576\u0564", 4, 1], + ["\u0578\u057B\u0564", 3, 1], + ["\u0565\u0580\u0564", 3, 1], + ["\u0576\u0565\u0580\u0564", 8, 1], + ["\u0578\u0582\u0564", 3, 1], + ["\u0568", -1, 1], + ["\u0561\u0576\u0568", 11, 1], + ["\u0578\u0582\u0569\u0575\u0561\u0576\u0568", 12, 1], + ["\u057E\u0561\u0576\u0568", 12, 1], + ["\u0578\u057B\u0568", 11, 1], + ["\u0565\u0580\u0568", 11, 1], + ["\u0576\u0565\u0580\u0568", 16, 1], + ["\u056B", -1, 1], + ["\u057E\u056B", 18, 1], + ["\u0565\u0580\u056B", 18, 1], + ["\u0576\u0565\u0580\u056B", 20, 1], + ["\u0561\u0576\u0578\u0582\u0574", -1, 1], + ["\u0565\u0580\u0578\u0582\u0574", -1, 1], + ["\u0576\u0565\u0580\u0578\u0582\u0574", 23, 1], + ["\u0576", -1, 1], + ["\u0561\u0576", 25, 1], + ["\u0578\u0582\u0569\u0575\u0561\u0576", 26, 1], + ["\u057E\u0561\u0576", 26, 1], + ["\u056B\u0576", 25, 1], + ["\u0565\u0580\u056B\u0576", 29, 1], + ["\u0576\u0565\u0580\u056B\u0576", 30, 1], + ["\u0578\u0582\u0569\u0575\u0561\u0576\u0576", 25, 1], + ["\u0565\u0580\u0576", 25, 1], + ["\u0576\u0565\u0580\u0576", 33, 1], + ["\u0578\u0582\u0576", 25, 1], + ["\u0578\u057B", -1, 1], + ["\u0578\u0582\u0569\u0575\u0561\u0576\u057D", -1, 1], + ["\u057E\u0561\u0576\u057D", -1, 1], + ["\u0578\u057B\u057D", -1, 1], + ["\u0578\u057E", -1, 1], + ["\u0561\u0576\u0578\u057E", 40, 1], + ["\u057E\u0578\u057E", 40, 1], + ["\u0565\u0580\u0578\u057E", 40, 1], + ["\u0576\u0565\u0580\u0578\u057E", 43, 1], + ["\u0565\u0580", -1, 1], + ["\u0576\u0565\u0580", 45, 1], + ["\u0581", -1, 1], + ["\u056B\u0581", 47, 1], + ["\u057E\u0561\u0576\u056B\u0581", 48, 1], + ["\u0578\u057B\u056B\u0581", 48, 1], + ["\u057E\u056B\u0581", 48, 1], + ["\u0565\u0580\u056B\u0581", 48, 1], + ["\u0576\u0565\u0580\u056B\u0581", 52, 1], + ["\u0581\u056B\u0581", 48, 1], + ["\u0578\u0581", 47, 1], + ["\u0578\u0582\u0581", 47, 1] + ]; + + /** @const */ var /** Array */ g_v = [209, 4, 128, 0, 18]; + + var /** number */ I_p2 = 0; + var /** number */ I_pV = 0; + + + /** @return {boolean} */ + function r_mark_regions() { + I_pV = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!base.go_out_grouping(g_v, 1377, 1413)) + { + break lab0; + } + base.cursor++; + I_pV = base.cursor; + if (!base.go_in_grouping(g_v, 1377, 1413)) + { + break lab0; + } + base.cursor++; + if (!base.go_out_grouping(g_v, 1377, 1413)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 1377, 1413)) + { + break lab0; + } + base.cursor++; + I_p2 = base.cursor; + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_adjective() { + base.ket = base.cursor; + if (base.find_among_b(a_0) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_verb() { + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_noun() { + base.ket = base.cursor; + if (base.find_among_b(a_2) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_ending() { + base.ket = base.cursor; + if (base.find_among_b(a_3) == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + if (base.cursor < I_pV) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_pV; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + r_ending(); + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_verb(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_adjective(); + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + r_noun(); + base.cursor = base.limit - v_5; + base.limit_backward = v_1; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/base-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/base-stemmer.js index ca6cca156..e6fa0c492 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/base-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/base-stemmer.js @@ -1,5 +1,18 @@ +// @ts-check + /**@constructor*/ BaseStemmer = function() { + /** @protected */ + this.current = ''; + this.cursor = 0; + this.limit = 0; + this.limit_backward = 0; + this.bra = 0; + this.ket = 0; + + /** + * @param {string} value + */ this.setCurrent = function(value) { this.current = value; this.cursor = 0; @@ -9,11 +22,18 @@ BaseStemmer = function() { this.ket = this.limit; }; + /** + * @return {string} + */ this.getCurrent = function() { return this.current; }; + /** + * @param {BaseStemmer} other + */ this.copy_from = function(other) { + /** @protected */ this.current = other.current; this.cursor = other.cursor; this.limit = other.limit; @@ -22,7 +42,14 @@ BaseStemmer = function() { this.ket = other.ket; }; + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ this.in_grouping = function(s, min, max) { + /** @protected */ if (this.cursor >= this.limit) return false; var ch = this.current.charCodeAt(this.cursor); if (ch > max || ch < min) return false; @@ -32,7 +59,34 @@ BaseStemmer = function() { return true; }; + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_in_grouping = function(s, min, max) { + /** @protected */ + while (this.cursor < this.limit) { + var ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) + return true; + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) + return true; + this.cursor++; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ this.in_grouping_b = function(s, min, max) { + /** @protected */ if (this.cursor <= this.limit_backward) return false; var ch = this.current.charCodeAt(this.cursor - 1); if (ch > max || ch < min) return false; @@ -42,7 +96,32 @@ BaseStemmer = function() { return true; }; + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_in_grouping_b = function(s, min, max) { + /** @protected */ + while (this.cursor > this.limit_backward) { + var ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) return true; + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) return true; + this.cursor--; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ this.out_grouping = function(s, min, max) { + /** @protected */ if (this.cursor >= this.limit) return false; var ch = this.current.charCodeAt(this.cursor); if (ch > max || ch < min) { @@ -57,7 +136,35 @@ BaseStemmer = function() { return false; }; + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_out_grouping = function(s, min, max) { + /** @protected */ + while (this.cursor < this.limit) { + var ch = this.current.charCodeAt(this.cursor); + if (ch <= max && ch >= min) { + ch -= min; + if ((s[ch >>> 3] & (0X1 << (ch & 0x7))) != 0) { + return true; + } + } + this.cursor++; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ this.out_grouping_b = function(s, min, max) { + /** @protected */ if (this.cursor <= this.limit_backward) return false; var ch = this.current.charCodeAt(this.cursor - 1); if (ch > max || ch < min) { @@ -72,8 +179,34 @@ BaseStemmer = function() { return false; }; + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_out_grouping_b = function(s, min, max) { + /** @protected */ + while (this.cursor > this.limit_backward) { + var ch = this.current.charCodeAt(this.cursor - 1); + if (ch <= max && ch >= min) { + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) != 0) { + return true; + } + } + this.cursor--; + } + return false; + }; + + /** + * @param {string} s + * @return {boolean} + */ this.eq_s = function(s) { + /** @protected */ if (this.limit - this.cursor < s.length) return false; if (this.current.slice(this.cursor, this.cursor + s.length) != s) { @@ -83,8 +216,13 @@ BaseStemmer = function() { return true; }; + /** + * @param {string} s + * @return {boolean} + */ this.eq_s_b = function(s) { + /** @protected */ if (this.cursor - this.limit_backward < s.length) return false; if (this.current.slice(this.cursor - s.length, this.cursor) != s) { @@ -94,8 +232,13 @@ BaseStemmer = function() { return true; }; - /** @return {number} */ this.find_among = function(v) + /** + * @param {Among[]} v + * @return {number} + */ + this.find_among = function(v) { + /** @protected */ var i = 0; var j = v.length; @@ -165,8 +308,13 @@ BaseStemmer = function() { }; // find_among_b is for backwards processing. Same comments apply + /** + * @param {Among[]} v + * @return {number} + */ this.find_among_b = function(v) { + /** @protected */ var i = 0; var j = v.length @@ -232,8 +380,15 @@ BaseStemmer = function() { /* to replace chars between c_bra and c_ket in this.current by the * chars in s. */ + /** + * @param {number} c_bra + * @param {number} c_ket + * @param {string} s + * @return {number} + */ this.replace_s = function(c_bra, c_ket, s) { + /** @protected */ var adjustment = s.length - (c_ket - c_bra); this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); this.limit += adjustment; @@ -242,8 +397,12 @@ BaseStemmer = function() { return adjustment; }; + /** + * @return {boolean} + */ this.slice_check = function() { + /** @protected */ if (this.bra < 0 || this.bra > this.ket || this.ket > this.limit || @@ -254,8 +413,13 @@ BaseStemmer = function() { return true; }; + /** + * @param {number} c_bra + * @return {boolean} + */ this.slice_from = function(s) { + /** @protected */ var result = false; if (this.slice_check()) { @@ -265,20 +429,34 @@ BaseStemmer = function() { return result; }; + /** + * @return {boolean} + */ this.slice_del = function() { + /** @protected */ return this.slice_from(""); }; + /** + * @param {number} c_bra + * @param {number} c_ket + * @param {string} s + */ this.insert = function(c_bra, c_ket, s) { + /** @protected */ var adjustment = this.replace_s(c_bra, c_ket, s); if (c_bra <= this.bra) this.bra += adjustment; if (c_bra <= this.ket) this.ket += adjustment; }; + /** + * @return {string} + */ this.slice_to = function() { + /** @protected */ var result = ''; if (this.slice_check()) { @@ -287,8 +465,12 @@ BaseStemmer = function() { return result; }; + /** + * @return {string} + */ this.assign_to = function() { + /** @protected */ return this.current.slice(0, this.limit); }; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/basque-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/basque-stemmer.js new file mode 100644 index 000000000..5ed3a26af --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/basque-stemmer.js @@ -0,0 +1,736 @@ +// Generated from basque.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var BasqueStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["idea", -1, 1], + ["bidea", 0, 1], + ["kidea", 0, 1], + ["pidea", 0, 1], + ["kundea", -1, 1], + ["galea", -1, 1], + ["tailea", -1, 1], + ["tzailea", -1, 1], + ["gunea", -1, 1], + ["kunea", -1, 1], + ["tzaga", -1, 1], + ["gaia", -1, 1], + ["aldia", -1, 1], + ["taldia", 12, 1], + ["karia", -1, 1], + ["garria", -1, 2], + ["karria", -1, 1], + ["ka", -1, 1], + ["tzaka", 17, 1], + ["la", -1, 1], + ["mena", -1, 1], + ["pena", -1, 1], + ["kina", -1, 1], + ["ezina", -1, 1], + ["tezina", 23, 1], + ["kuna", -1, 1], + ["tuna", -1, 1], + ["kizuna", -1, 1], + ["era", -1, 1], + ["bera", 28, 1], + ["arabera", 29, -1], + ["kera", 28, 1], + ["pera", 28, 1], + ["orra", -1, 1], + ["korra", 33, 1], + ["dura", -1, 1], + ["gura", -1, 1], + ["kura", -1, 1], + ["tura", -1, 1], + ["eta", -1, 1], + ["keta", 39, 1], + ["gailua", -1, 1], + ["eza", -1, 1], + ["erreza", 42, 1], + ["tza", -1, 2], + ["gaitza", 44, 1], + ["kaitza", 44, 1], + ["kuntza", 44, 1], + ["ide", -1, 1], + ["bide", 48, 1], + ["kide", 48, 1], + ["pide", 48, 1], + ["kunde", -1, 1], + ["tzake", -1, 1], + ["tzeke", -1, 1], + ["le", -1, 1], + ["gale", 55, 1], + ["taile", 55, 1], + ["tzaile", 55, 1], + ["gune", -1, 1], + ["kune", -1, 1], + ["tze", -1, 1], + ["atze", 61, 1], + ["gai", -1, 1], + ["aldi", -1, 1], + ["taldi", 64, 1], + ["ki", -1, 1], + ["ari", -1, 1], + ["kari", 67, 1], + ["lari", 67, 1], + ["tari", 67, 1], + ["etari", 70, 1], + ["garri", -1, 2], + ["karri", -1, 1], + ["arazi", -1, 1], + ["tarazi", 74, 1], + ["an", -1, 1], + ["ean", 76, 1], + ["rean", 77, 1], + ["kan", 76, 1], + ["etan", 76, 1], + ["atseden", -1, -1], + ["men", -1, 1], + ["pen", -1, 1], + ["kin", -1, 1], + ["rekin", 84, 1], + ["ezin", -1, 1], + ["tezin", 86, 1], + ["tun", -1, 1], + ["kizun", -1, 1], + ["go", -1, 1], + ["ago", 90, 1], + ["tio", -1, 1], + ["dako", -1, 1], + ["or", -1, 1], + ["kor", 94, 1], + ["tzat", -1, 1], + ["du", -1, 1], + ["gailu", -1, 1], + ["tu", -1, 1], + ["atu", 99, 1], + ["aldatu", 100, 1], + ["tatu", 100, 1], + ["baditu", 99, -1], + ["ez", -1, 1], + ["errez", 104, 1], + ["tzez", 104, 1], + ["gaitz", -1, 1], + ["kaitz", -1, 1] + ]; + + /** @const */ var a_1 = [ + ["ada", -1, 1], + ["kada", 0, 1], + ["anda", -1, 1], + ["denda", -1, 1], + ["gabea", -1, 1], + ["kabea", -1, 1], + ["aldea", -1, 1], + ["kaldea", 6, 1], + ["taldea", 6, 1], + ["ordea", -1, 1], + ["zalea", -1, 1], + ["tzalea", 10, 1], + ["gilea", -1, 1], + ["emea", -1, 1], + ["kumea", -1, 1], + ["nea", -1, 1], + ["enea", 15, 1], + ["zionea", 15, 1], + ["unea", 15, 1], + ["gunea", 18, 1], + ["pea", -1, 1], + ["aurrea", -1, 1], + ["tea", -1, 1], + ["kotea", 22, 1], + ["artea", 22, 1], + ["ostea", 22, 1], + ["etxea", -1, 1], + ["ga", -1, 1], + ["anga", 27, 1], + ["gaia", -1, 1], + ["aldia", -1, 1], + ["taldia", 30, 1], + ["handia", -1, 1], + ["mendia", -1, 1], + ["geia", -1, 1], + ["egia", -1, 1], + ["degia", 35, 1], + ["tegia", 35, 1], + ["nahia", -1, 1], + ["ohia", -1, 1], + ["kia", -1, 1], + ["tokia", 40, 1], + ["oia", -1, 1], + ["koia", 42, 1], + ["aria", -1, 1], + ["karia", 44, 1], + ["laria", 44, 1], + ["taria", 44, 1], + ["eria", -1, 1], + ["keria", 48, 1], + ["teria", 48, 1], + ["garria", -1, 2], + ["larria", -1, 1], + ["kirria", -1, 1], + ["duria", -1, 1], + ["asia", -1, 1], + ["tia", -1, 1], + ["ezia", -1, 1], + ["bizia", -1, 1], + ["ontzia", -1, 1], + ["ka", -1, 1], + ["joka", 60, 3], + ["aurka", 60, -1], + ["ska", 60, 1], + ["xka", 60, 1], + ["zka", 60, 1], + ["gibela", -1, 1], + ["gela", -1, 1], + ["kaila", -1, 1], + ["skila", -1, 1], + ["tila", -1, 1], + ["ola", -1, 1], + ["na", -1, 1], + ["kana", 72, 1], + ["ena", 72, 1], + ["garrena", 74, 1], + ["gerrena", 74, 1], + ["urrena", 74, 1], + ["zaina", 72, 1], + ["tzaina", 78, 1], + ["kina", 72, 1], + ["mina", 72, 1], + ["garna", 72, 1], + ["una", 72, 1], + ["duna", 83, 1], + ["asuna", 83, 1], + ["tasuna", 85, 1], + ["ondoa", -1, 1], + ["kondoa", 87, 1], + ["ngoa", -1, 1], + ["zioa", -1, 1], + ["koa", -1, 1], + ["takoa", 91, 1], + ["zkoa", 91, 1], + ["noa", -1, 1], + ["zinoa", 94, 1], + ["aroa", -1, 1], + ["taroa", 96, 1], + ["zaroa", 96, 1], + ["eroa", -1, 1], + ["oroa", -1, 1], + ["osoa", -1, 1], + ["toa", -1, 1], + ["ttoa", 102, 1], + ["ztoa", 102, 1], + ["txoa", -1, 1], + ["tzoa", -1, 1], + ["\u00F1oa", -1, 1], + ["ra", -1, 1], + ["ara", 108, 1], + ["dara", 109, 1], + ["liara", 109, 1], + ["tiara", 109, 1], + ["tara", 109, 1], + ["etara", 113, 1], + ["tzara", 109, 1], + ["bera", 108, 1], + ["kera", 108, 1], + ["pera", 108, 1], + ["ora", 108, 2], + ["tzarra", 108, 1], + ["korra", 108, 1], + ["tra", 108, 1], + ["sa", -1, 1], + ["osa", 123, 1], + ["ta", -1, 1], + ["eta", 125, 1], + ["keta", 126, 1], + ["sta", 125, 1], + ["dua", -1, 1], + ["mendua", 129, 1], + ["ordua", 129, 1], + ["lekua", -1, 1], + ["burua", -1, 1], + ["durua", -1, 1], + ["tsua", -1, 1], + ["tua", -1, 1], + ["mentua", 136, 1], + ["estua", 136, 1], + ["txua", -1, 1], + ["zua", -1, 1], + ["tzua", 140, 1], + ["za", -1, 1], + ["eza", 142, 1], + ["eroza", 142, 1], + ["tza", 142, 2], + ["koitza", 145, 1], + ["antza", 145, 1], + ["gintza", 145, 1], + ["kintza", 145, 1], + ["kuntza", 145, 1], + ["gabe", -1, 1], + ["kabe", -1, 1], + ["kide", -1, 1], + ["alde", -1, 1], + ["kalde", 154, 1], + ["talde", 154, 1], + ["orde", -1, 1], + ["ge", -1, 1], + ["zale", -1, 1], + ["tzale", 159, 1], + ["gile", -1, 1], + ["eme", -1, 1], + ["kume", -1, 1], + ["ne", -1, 1], + ["zione", 164, 1], + ["une", 164, 1], + ["gune", 166, 1], + ["pe", -1, 1], + ["aurre", -1, 1], + ["te", -1, 1], + ["kote", 170, 1], + ["arte", 170, 1], + ["oste", 170, 1], + ["etxe", -1, 1], + ["gai", -1, 1], + ["di", -1, 1], + ["aldi", 176, 1], + ["taldi", 177, 1], + ["geldi", 176, -1], + ["handi", 176, 1], + ["mendi", 176, 1], + ["gei", -1, 1], + ["egi", -1, 1], + ["degi", 183, 1], + ["tegi", 183, 1], + ["nahi", -1, 1], + ["ohi", -1, 1], + ["ki", -1, 1], + ["toki", 188, 1], + ["oi", -1, 1], + ["goi", 190, 1], + ["koi", 190, 1], + ["ari", -1, 1], + ["kari", 193, 1], + ["lari", 193, 1], + ["tari", 193, 1], + ["garri", -1, 2], + ["larri", -1, 1], + ["kirri", -1, 1], + ["duri", -1, 1], + ["asi", -1, 1], + ["ti", -1, 1], + ["ontzi", -1, 1], + ["\u00F1i", -1, 1], + ["ak", -1, 1], + ["ek", -1, 1], + ["tarik", -1, 1], + ["gibel", -1, 1], + ["ail", -1, 1], + ["kail", 209, 1], + ["kan", -1, 1], + ["tan", -1, 1], + ["etan", 212, 1], + ["en", -1, 4], + ["ren", 214, 2], + ["garren", 215, 1], + ["gerren", 215, 1], + ["urren", 215, 1], + ["ten", 214, 4], + ["tzen", 214, 4], + ["zain", -1, 1], + ["tzain", 221, 1], + ["kin", -1, 1], + ["min", -1, 1], + ["dun", -1, 1], + ["asun", -1, 1], + ["tasun", 226, 1], + ["aizun", -1, 1], + ["ondo", -1, 1], + ["kondo", 229, 1], + ["go", -1, 1], + ["ngo", 231, 1], + ["zio", -1, 1], + ["ko", -1, 1], + ["trako", 234, 5], + ["tako", 234, 1], + ["etako", 236, 1], + ["eko", 234, 1], + ["tariko", 234, 1], + ["sko", 234, 1], + ["tuko", 234, 1], + ["minutuko", 241, 6], + ["zko", 234, 1], + ["no", -1, 1], + ["zino", 244, 1], + ["ro", -1, 1], + ["aro", 246, 1], + ["igaro", 247, -1], + ["taro", 247, 1], + ["zaro", 247, 1], + ["ero", 246, 1], + ["giro", 246, 1], + ["oro", 246, 1], + ["oso", -1, 1], + ["to", -1, 1], + ["tto", 255, 1], + ["zto", 255, 1], + ["txo", -1, 1], + ["tzo", -1, 1], + ["gintzo", 259, 1], + ["\u00F1o", -1, 1], + ["zp", -1, 1], + ["ar", -1, 1], + ["dar", 263, 1], + ["behar", 263, 1], + ["zehar", 263, -1], + ["liar", 263, 1], + ["tiar", 263, 1], + ["tar", 263, 1], + ["tzar", 263, 1], + ["or", -1, 2], + ["kor", 271, 1], + ["os", -1, 1], + ["ket", -1, 1], + ["du", -1, 1], + ["mendu", 275, 1], + ["ordu", 275, 1], + ["leku", -1, 1], + ["buru", -1, 2], + ["duru", -1, 1], + ["tsu", -1, 1], + ["tu", -1, 1], + ["tatu", 282, 4], + ["mentu", 282, 1], + ["estu", 282, 1], + ["txu", -1, 1], + ["zu", -1, 1], + ["tzu", 287, 1], + ["gintzu", 288, 1], + ["z", -1, 1], + ["ez", 290, 1], + ["eroz", 290, 1], + ["tz", 290, 1], + ["koitz", 293, 1] + ]; + + /** @const */ var a_2 = [ + ["zlea", -1, 2], + ["keria", -1, 1], + ["la", -1, 1], + ["era", -1, 1], + ["dade", -1, 1], + ["tade", -1, 1], + ["date", -1, 1], + ["tate", -1, 1], + ["gi", -1, 1], + ["ki", -1, 1], + ["ik", -1, 1], + ["lanik", 10, 1], + ["rik", 10, 1], + ["larik", 12, 1], + ["ztik", 10, 1], + ["go", -1, 1], + ["ro", -1, 1], + ["ero", 16, 1], + ["to", -1, 1] + ]; + + /** @const */ var /** Array */ g_v = [17, 65, 16]; + + var /** number */ I_p2 = 0; + var /** number */ I_p1 = 0; + var /** number */ I_pV = 0; + + + /** @return {boolean} */ + function r_mark_regions() { + I_pV = base.limit; + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + lab1: { + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { + if (!(base.in_grouping(g_v, 97, 117))) + { + break lab2; + } + lab3: { + /** @const */ var /** number */ v_3 = base.cursor; + lab4: { + if (!(base.out_grouping(g_v, 97, 117))) + { + break lab4; + } + if (!base.go_out_grouping(g_v, 97, 117)) + { + break lab4; + } + base.cursor++; + break lab3; + } + base.cursor = v_3; + if (!(base.in_grouping(g_v, 97, 117))) + { + break lab2; + } + if (!base.go_in_grouping(g_v, 97, 117)) + { + break lab2; + } + base.cursor++; + } + break lab1; + } + base.cursor = v_2; + if (!(base.out_grouping(g_v, 97, 117))) + { + break lab0; + } + lab5: { + /** @const */ var /** number */ v_4 = base.cursor; + lab6: { + if (!(base.out_grouping(g_v, 97, 117))) + { + break lab6; + } + if (!base.go_out_grouping(g_v, 97, 117)) + { + break lab6; + } + base.cursor++; + break lab5; + } + base.cursor = v_4; + if (!(base.in_grouping(g_v, 97, 117))) + { + break lab0; + } + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + } + } + I_pV = base.cursor; + } + base.cursor = v_1; + /** @const */ var /** number */ v_5 = base.cursor; + lab7: { + if (!base.go_out_grouping(g_v, 97, 117)) + { + break lab7; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 117)) + { + break lab7; + } + base.cursor++; + I_p1 = base.cursor; + if (!base.go_out_grouping(g_v, 97, 117)) + { + break lab7; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 117)) + { + break lab7; + } + base.cursor++; + I_p2 = base.cursor; + } + base.cursor = v_5; + return true; + }; + + /** @return {boolean} */ + function r_RV() { + return I_pV <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_aditzak() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_0); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_RV()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_izenak() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_RV()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (!base.slice_from("jok")) + { + return false; + } + break; + case 4: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 5: + if (!base.slice_from("tra")) + { + return false; + } + break; + case 6: + if (!base.slice_from("minutu")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_adjetiboak() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_RV()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("z")) + { + return false; + } + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + while(true) + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!r_aditzak()) + { + break lab0; + } + continue; + } + base.cursor = base.limit - v_1; + break; + } + while(true) + { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!r_izenak()) + { + break lab1; + } + continue; + } + base.cursor = base.limit - v_2; + break; + } + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_adjetiboak(); + base.cursor = base.limit - v_3; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/catalan-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/catalan-stemmer.js new file mode 100644 index 000000000..441e655ad --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/catalan-stemmer.js @@ -0,0 +1,886 @@ +// Generated from catalan.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var CatalanStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["", -1, 7], + ["\u00B7", 0, 6], + ["\u00E0", 0, 1], + ["\u00E1", 0, 1], + ["\u00E8", 0, 2], + ["\u00E9", 0, 2], + ["\u00EC", 0, 3], + ["\u00ED", 0, 3], + ["\u00EF", 0, 3], + ["\u00F2", 0, 4], + ["\u00F3", 0, 4], + ["\u00FA", 0, 5], + ["\u00FC", 0, 5] + ]; + + /** @const */ var a_1 = [ + ["la", -1, 1], + ["-la", 0, 1], + ["sela", 0, 1], + ["le", -1, 1], + ["me", -1, 1], + ["-me", 4, 1], + ["se", -1, 1], + ["-te", -1, 1], + ["hi", -1, 1], + ["'hi", 8, 1], + ["li", -1, 1], + ["-li", 10, 1], + ["'l", -1, 1], + ["'m", -1, 1], + ["-m", -1, 1], + ["'n", -1, 1], + ["-n", -1, 1], + ["ho", -1, 1], + ["'ho", 17, 1], + ["lo", -1, 1], + ["selo", 19, 1], + ["'s", -1, 1], + ["las", -1, 1], + ["selas", 22, 1], + ["les", -1, 1], + ["-les", 24, 1], + ["'ls", -1, 1], + ["-ls", -1, 1], + ["'ns", -1, 1], + ["-ns", -1, 1], + ["ens", -1, 1], + ["los", -1, 1], + ["selos", 31, 1], + ["nos", -1, 1], + ["-nos", 33, 1], + ["vos", -1, 1], + ["us", -1, 1], + ["-us", 36, 1], + ["'t", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["ica", -1, 4], + ["l\u00F3gica", 0, 3], + ["enca", -1, 1], + ["ada", -1, 2], + ["ancia", -1, 1], + ["encia", -1, 1], + ["\u00E8ncia", -1, 1], + ["\u00EDcia", -1, 1], + ["logia", -1, 3], + ["inia", -1, 1], + ["\u00EDinia", 9, 1], + ["eria", -1, 1], + ["\u00E0ria", -1, 1], + ["at\u00F2ria", -1, 1], + ["alla", -1, 1], + ["ella", -1, 1], + ["\u00EDvola", -1, 1], + ["ima", -1, 1], + ["\u00EDssima", 17, 1], + ["qu\u00EDssima", 18, 5], + ["ana", -1, 1], + ["ina", -1, 1], + ["era", -1, 1], + ["sfera", 22, 1], + ["ora", -1, 1], + ["dora", 24, 1], + ["adora", 25, 1], + ["adura", -1, 1], + ["esa", -1, 1], + ["osa", -1, 1], + ["assa", -1, 1], + ["essa", -1, 1], + ["issa", -1, 1], + ["eta", -1, 1], + ["ita", -1, 1], + ["ota", -1, 1], + ["ista", -1, 1], + ["ialista", 36, 1], + ["ionista", 36, 1], + ["iva", -1, 1], + ["ativa", 39, 1], + ["n\u00E7a", -1, 1], + ["log\u00EDa", -1, 3], + ["ic", -1, 4], + ["\u00EDstic", 43, 1], + ["enc", -1, 1], + ["esc", -1, 1], + ["ud", -1, 1], + ["atge", -1, 1], + ["ble", -1, 1], + ["able", 49, 1], + ["ible", 49, 1], + ["isme", -1, 1], + ["ialisme", 52, 1], + ["ionisme", 52, 1], + ["ivisme", 52, 1], + ["aire", -1, 1], + ["icte", -1, 1], + ["iste", -1, 1], + ["ici", -1, 1], + ["\u00EDci", -1, 1], + ["logi", -1, 3], + ["ari", -1, 1], + ["tori", -1, 1], + ["al", -1, 1], + ["il", -1, 1], + ["all", -1, 1], + ["ell", -1, 1], + ["\u00EDvol", -1, 1], + ["isam", -1, 1], + ["issem", -1, 1], + ["\u00ECssem", -1, 1], + ["\u00EDssem", -1, 1], + ["\u00EDssim", -1, 1], + ["qu\u00EDssim", 73, 5], + ["amen", -1, 1], + ["\u00ECssin", -1, 1], + ["ar", -1, 1], + ["ificar", 77, 1], + ["egar", 77, 1], + ["ejar", 77, 1], + ["itar", 77, 1], + ["itzar", 77, 1], + ["fer", -1, 1], + ["or", -1, 1], + ["dor", 84, 1], + ["dur", -1, 1], + ["doras", -1, 1], + ["ics", -1, 4], + ["l\u00F3gics", 88, 3], + ["uds", -1, 1], + ["nces", -1, 1], + ["ades", -1, 2], + ["ancies", -1, 1], + ["encies", -1, 1], + ["\u00E8ncies", -1, 1], + ["\u00EDcies", -1, 1], + ["logies", -1, 3], + ["inies", -1, 1], + ["\u00EDnies", -1, 1], + ["eries", -1, 1], + ["\u00E0ries", -1, 1], + ["at\u00F2ries", -1, 1], + ["bles", -1, 1], + ["ables", 103, 1], + ["ibles", 103, 1], + ["imes", -1, 1], + ["\u00EDssimes", 106, 1], + ["qu\u00EDssimes", 107, 5], + ["formes", -1, 1], + ["ismes", -1, 1], + ["ialismes", 110, 1], + ["ines", -1, 1], + ["eres", -1, 1], + ["ores", -1, 1], + ["dores", 114, 1], + ["idores", 115, 1], + ["dures", -1, 1], + ["eses", -1, 1], + ["oses", -1, 1], + ["asses", -1, 1], + ["ictes", -1, 1], + ["ites", -1, 1], + ["otes", -1, 1], + ["istes", -1, 1], + ["ialistes", 124, 1], + ["ionistes", 124, 1], + ["iques", -1, 4], + ["l\u00F3giques", 127, 3], + ["ives", -1, 1], + ["atives", 129, 1], + ["log\u00EDes", -1, 3], + ["alleng\u00FCes", -1, 1], + ["icis", -1, 1], + ["\u00EDcis", -1, 1], + ["logis", -1, 3], + ["aris", -1, 1], + ["toris", -1, 1], + ["ls", -1, 1], + ["als", 138, 1], + ["ells", 138, 1], + ["ims", -1, 1], + ["\u00EDssims", 141, 1], + ["qu\u00EDssims", 142, 5], + ["ions", -1, 1], + ["cions", 144, 1], + ["acions", 145, 2], + ["esos", -1, 1], + ["osos", -1, 1], + ["assos", -1, 1], + ["issos", -1, 1], + ["ers", -1, 1], + ["ors", -1, 1], + ["dors", 152, 1], + ["adors", 153, 1], + ["idors", 153, 1], + ["ats", -1, 1], + ["itats", 156, 1], + ["bilitats", 157, 1], + ["ivitats", 157, 1], + ["ativitats", 159, 1], + ["\u00EFtats", 156, 1], + ["ets", -1, 1], + ["ants", -1, 1], + ["ents", -1, 1], + ["ments", 164, 1], + ["aments", 165, 1], + ["ots", -1, 1], + ["uts", -1, 1], + ["ius", -1, 1], + ["trius", 169, 1], + ["atius", 169, 1], + ["\u00E8s", -1, 1], + ["\u00E9s", -1, 1], + ["\u00EDs", -1, 1], + ["d\u00EDs", 174, 1], + ["\u00F3s", -1, 1], + ["itat", -1, 1], + ["bilitat", 177, 1], + ["ivitat", 177, 1], + ["ativitat", 179, 1], + ["\u00EFtat", -1, 1], + ["et", -1, 1], + ["ant", -1, 1], + ["ent", -1, 1], + ["ient", 184, 1], + ["ment", 184, 1], + ["ament", 186, 1], + ["isament", 187, 1], + ["ot", -1, 1], + ["isseu", -1, 1], + ["\u00ECsseu", -1, 1], + ["\u00EDsseu", -1, 1], + ["triu", -1, 1], + ["\u00EDssiu", -1, 1], + ["atiu", -1, 1], + ["\u00F3", -1, 1], + ["i\u00F3", 196, 1], + ["ci\u00F3", 197, 1], + ["aci\u00F3", 198, 1] + ]; + + /** @const */ var a_3 = [ + ["aba", -1, 1], + ["esca", -1, 1], + ["isca", -1, 1], + ["\u00EFsca", -1, 1], + ["ada", -1, 1], + ["ida", -1, 1], + ["uda", -1, 1], + ["\u00EFda", -1, 1], + ["ia", -1, 1], + ["aria", 8, 1], + ["iria", 8, 1], + ["ara", -1, 1], + ["iera", -1, 1], + ["ira", -1, 1], + ["adora", -1, 1], + ["\u00EFra", -1, 1], + ["ava", -1, 1], + ["ixa", -1, 1], + ["itza", -1, 1], + ["\u00EDa", -1, 1], + ["ar\u00EDa", 19, 1], + ["er\u00EDa", 19, 1], + ["ir\u00EDa", 19, 1], + ["\u00EFa", -1, 1], + ["isc", -1, 1], + ["\u00EFsc", -1, 1], + ["ad", -1, 1], + ["ed", -1, 1], + ["id", -1, 1], + ["ie", -1, 1], + ["re", -1, 1], + ["dre", 30, 1], + ["ase", -1, 1], + ["iese", -1, 1], + ["aste", -1, 1], + ["iste", -1, 1], + ["ii", -1, 1], + ["ini", -1, 1], + ["esqui", -1, 1], + ["eixi", -1, 1], + ["itzi", -1, 1], + ["am", -1, 1], + ["em", -1, 1], + ["arem", 42, 1], + ["irem", 42, 1], + ["\u00E0rem", 42, 1], + ["\u00EDrem", 42, 1], + ["\u00E0ssem", 42, 1], + ["\u00E9ssem", 42, 1], + ["iguem", 42, 1], + ["\u00EFguem", 42, 1], + ["avem", 42, 1], + ["\u00E0vem", 42, 1], + ["\u00E1vem", 42, 1], + ["ir\u00ECem", 42, 1], + ["\u00EDem", 42, 1], + ["ar\u00EDem", 55, 1], + ["ir\u00EDem", 55, 1], + ["assim", -1, 1], + ["essim", -1, 1], + ["issim", -1, 1], + ["\u00E0ssim", -1, 1], + ["\u00E8ssim", -1, 1], + ["\u00E9ssim", -1, 1], + ["\u00EDssim", -1, 1], + ["\u00EFm", -1, 1], + ["an", -1, 1], + ["aban", 66, 1], + ["arian", 66, 1], + ["aran", 66, 1], + ["ieran", 66, 1], + ["iran", 66, 1], + ["\u00EDan", 66, 1], + ["ar\u00EDan", 72, 1], + ["er\u00EDan", 72, 1], + ["ir\u00EDan", 72, 1], + ["en", -1, 1], + ["ien", 76, 1], + ["arien", 77, 1], + ["irien", 77, 1], + ["aren", 76, 1], + ["eren", 76, 1], + ["iren", 76, 1], + ["\u00E0ren", 76, 1], + ["\u00EFren", 76, 1], + ["asen", 76, 1], + ["iesen", 76, 1], + ["assen", 76, 1], + ["essen", 76, 1], + ["issen", 76, 1], + ["\u00E9ssen", 76, 1], + ["\u00EFssen", 76, 1], + ["esquen", 76, 1], + ["isquen", 76, 1], + ["\u00EFsquen", 76, 1], + ["aven", 76, 1], + ["ixen", 76, 1], + ["eixen", 96, 1], + ["\u00EFxen", 76, 1], + ["\u00EFen", 76, 1], + ["in", -1, 1], + ["inin", 100, 1], + ["sin", 100, 1], + ["isin", 102, 1], + ["assin", 102, 1], + ["essin", 102, 1], + ["issin", 102, 1], + ["\u00EFssin", 102, 1], + ["esquin", 100, 1], + ["eixin", 100, 1], + ["aron", -1, 1], + ["ieron", -1, 1], + ["ar\u00E1n", -1, 1], + ["er\u00E1n", -1, 1], + ["ir\u00E1n", -1, 1], + ["i\u00EFn", -1, 1], + ["ado", -1, 1], + ["ido", -1, 1], + ["ando", -1, 2], + ["iendo", -1, 1], + ["io", -1, 1], + ["ixo", -1, 1], + ["eixo", 121, 1], + ["\u00EFxo", -1, 1], + ["itzo", -1, 1], + ["ar", -1, 1], + ["tzar", 125, 1], + ["er", -1, 1], + ["eixer", 127, 1], + ["ir", -1, 1], + ["ador", -1, 1], + ["as", -1, 1], + ["abas", 131, 1], + ["adas", 131, 1], + ["idas", 131, 1], + ["aras", 131, 1], + ["ieras", 131, 1], + ["\u00EDas", 131, 1], + ["ar\u00EDas", 137, 1], + ["er\u00EDas", 137, 1], + ["ir\u00EDas", 137, 1], + ["ids", -1, 1], + ["es", -1, 1], + ["ades", 142, 1], + ["ides", 142, 1], + ["udes", 142, 1], + ["\u00EFdes", 142, 1], + ["atges", 142, 1], + ["ies", 142, 1], + ["aries", 148, 1], + ["iries", 148, 1], + ["ares", 142, 1], + ["ires", 142, 1], + ["adores", 142, 1], + ["\u00EFres", 142, 1], + ["ases", 142, 1], + ["ieses", 142, 1], + ["asses", 142, 1], + ["esses", 142, 1], + ["isses", 142, 1], + ["\u00EFsses", 142, 1], + ["ques", 142, 1], + ["esques", 161, 1], + ["\u00EFsques", 161, 1], + ["aves", 142, 1], + ["ixes", 142, 1], + ["eixes", 165, 1], + ["\u00EFxes", 142, 1], + ["\u00EFes", 142, 1], + ["abais", -1, 1], + ["arais", -1, 1], + ["ierais", -1, 1], + ["\u00EDais", -1, 1], + ["ar\u00EDais", 172, 1], + ["er\u00EDais", 172, 1], + ["ir\u00EDais", 172, 1], + ["aseis", -1, 1], + ["ieseis", -1, 1], + ["asteis", -1, 1], + ["isteis", -1, 1], + ["inis", -1, 1], + ["sis", -1, 1], + ["isis", 181, 1], + ["assis", 181, 1], + ["essis", 181, 1], + ["issis", 181, 1], + ["\u00EFssis", 181, 1], + ["esquis", -1, 1], + ["eixis", -1, 1], + ["itzis", -1, 1], + ["\u00E1is", -1, 1], + ["ar\u00E9is", -1, 1], + ["er\u00E9is", -1, 1], + ["ir\u00E9is", -1, 1], + ["ams", -1, 1], + ["ados", -1, 1], + ["idos", -1, 1], + ["amos", -1, 1], + ["\u00E1bamos", 197, 1], + ["\u00E1ramos", 197, 1], + ["i\u00E9ramos", 197, 1], + ["\u00EDamos", 197, 1], + ["ar\u00EDamos", 201, 1], + ["er\u00EDamos", 201, 1], + ["ir\u00EDamos", 201, 1], + ["aremos", -1, 1], + ["eremos", -1, 1], + ["iremos", -1, 1], + ["\u00E1semos", -1, 1], + ["i\u00E9semos", -1, 1], + ["imos", -1, 1], + ["adors", -1, 1], + ["ass", -1, 1], + ["erass", 212, 1], + ["ess", -1, 1], + ["ats", -1, 1], + ["its", -1, 1], + ["ents", -1, 1], + ["\u00E0s", -1, 1], + ["ar\u00E0s", 218, 1], + ["ir\u00E0s", 218, 1], + ["ar\u00E1s", -1, 1], + ["er\u00E1s", -1, 1], + ["ir\u00E1s", -1, 1], + ["\u00E9s", -1, 1], + ["ar\u00E9s", 224, 1], + ["\u00EDs", -1, 1], + ["i\u00EFs", -1, 1], + ["at", -1, 1], + ["it", -1, 1], + ["ant", -1, 1], + ["ent", -1, 1], + ["int", -1, 1], + ["ut", -1, 1], + ["\u00EFt", -1, 1], + ["au", -1, 1], + ["erau", 235, 1], + ["ieu", -1, 1], + ["ineu", -1, 1], + ["areu", -1, 1], + ["ireu", -1, 1], + ["\u00E0reu", -1, 1], + ["\u00EDreu", -1, 1], + ["asseu", -1, 1], + ["esseu", -1, 1], + ["eresseu", 244, 1], + ["\u00E0sseu", -1, 1], + ["\u00E9sseu", -1, 1], + ["igueu", -1, 1], + ["\u00EFgueu", -1, 1], + ["\u00E0veu", -1, 1], + ["\u00E1veu", -1, 1], + ["itzeu", -1, 1], + ["\u00ECeu", -1, 1], + ["ir\u00ECeu", 253, 1], + ["\u00EDeu", -1, 1], + ["ar\u00EDeu", 255, 1], + ["ir\u00EDeu", 255, 1], + ["assiu", -1, 1], + ["issiu", -1, 1], + ["\u00E0ssiu", -1, 1], + ["\u00E8ssiu", -1, 1], + ["\u00E9ssiu", -1, 1], + ["\u00EDssiu", -1, 1], + ["\u00EFu", -1, 1], + ["ix", -1, 1], + ["eix", 265, 1], + ["\u00EFx", -1, 1], + ["itz", -1, 1], + ["i\u00E0", -1, 1], + ["ar\u00E0", -1, 1], + ["ir\u00E0", -1, 1], + ["itz\u00E0", -1, 1], + ["ar\u00E1", -1, 1], + ["er\u00E1", -1, 1], + ["ir\u00E1", -1, 1], + ["ir\u00E8", -1, 1], + ["ar\u00E9", -1, 1], + ["er\u00E9", -1, 1], + ["ir\u00E9", -1, 1], + ["\u00ED", -1, 1], + ["i\u00EF", -1, 1], + ["i\u00F3", -1, 1] + ]; + + /** @const */ var a_4 = [ + ["a", -1, 1], + ["e", -1, 1], + ["i", -1, 1], + ["\u00EFn", -1, 1], + ["o", -1, 1], + ["ir", -1, 1], + ["s", -1, 1], + ["is", 6, 1], + ["os", 6, 1], + ["\u00EFs", 6, 1], + ["it", -1, 1], + ["eu", -1, 1], + ["iu", -1, 1], + ["iqu", -1, 2], + ["itz", -1, 1], + ["\u00E0", -1, 1], + ["\u00E1", -1, 1], + ["\u00E9", -1, 1], + ["\u00EC", -1, 1], + ["\u00ED", -1, 1], + ["\u00EF", -1, 1], + ["\u00F3", -1, 1] + ]; + + /** @const */ var /** Array */ g_v = [17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 129, 81, 6, 10]; + + var /** number */ I_p2 = 0; + var /** number */ I_p1 = 0; + + + /** @return {boolean} */ + function r_mark_regions() { + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!base.go_out_grouping(g_v, 97, 252)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 252)) + { + break lab0; + } + base.cursor++; + I_p1 = base.cursor; + if (!base.go_out_grouping(g_v, 97, 252)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 252)) + { + break lab0; + } + base.cursor++; + I_p2 = base.cursor; + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_cleaning() { + var /** number */ among_var; + while(true) + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("a")) + { + return false; + } + break; + case 2: + if (!base.slice_from("e")) + { + return false; + } + break; + case 3: + if (!base.slice_from("i")) + { + return false; + } + break; + case 4: + if (!base.slice_from("o")) + { + return false; + } + break; + case 5: + if (!base.slice_from("u")) + { + return false; + } + break; + case 6: + if (!base.slice_from(".")) + { + return false; + } + break; + case 7: + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + break; + } + continue; + } + base.cursor = v_1; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_attached_pronoun() { + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_standard_suffix() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (!r_R2()) + { + return false; + } + if (!base.slice_from("log")) + { + return false; + } + break; + case 4: + if (!r_R2()) + { + return false; + } + if (!base.slice_from("ic")) + { + return false; + } + break; + case 5: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("c")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_verb_suffix() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_3); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_residual_suffix() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("ic")) + { + return false; + } + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + r_attached_pronoun(); + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab0: { + lab1: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!r_standard_suffix()) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_3; + if (!r_verb_suffix()) + { + break lab0; + } + } + } + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_residual_suffix(); + base.cursor = base.limit - v_4; + base.cursor = base.limit_backward; + /** @const */ var /** number */ v_5 = base.cursor; + r_cleaning(); + base.cursor = v_5; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/danish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/danish-stemmer.js index 46b5d55b0..b0867495b 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/danish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/danish-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from danish.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -DanishStemmer = function() { +var DanishStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["hed", -1, 1], ["ethed", 0, 1], @@ -67,9 +68,9 @@ DanishStemmer = function() { /** @return {boolean} */ function r_mark_regions() { I_p1 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; { - var /** number */ c1 = base.cursor + 3; + /** @const */ var /** number */ c1 = base.cursor + 3; if (c1 > base.limit) { return false; @@ -78,44 +79,21 @@ DanishStemmer = function() { } I_x = base.cursor; base.cursor = v_1; - golab0: while(true) + if (!base.go_out_grouping(g_v, 97, 248)) { - var /** number */ v_2 = base.cursor; - lab1: { - if (!(base.in_grouping(g_v, 97, 248))) - { - break lab1; - } - base.cursor = v_2; - break golab0; - } - base.cursor = v_2; - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } - golab2: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 248)) { - lab3: { - if (!(base.out_grouping(g_v, 97, 248))) - { - break lab3; - } - break golab2; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } + base.cursor++; I_p1 = base.cursor; - lab4: { - if (!(I_p1 < I_x)) + lab0: { + if (I_p1 >= I_x) { - break lab4; + break lab0; } I_p1 = I_x; } @@ -129,17 +107,17 @@ DanishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; among_var = base.find_among_b(a_0); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: if (!base.slice_del()) @@ -163,21 +141,21 @@ DanishStemmer = function() { /** @return {boolean} */ function r_consonant_pair() { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; if (base.cursor < I_p1) { return false; } - var /** number */ v_3 = base.limit_backward; + /** @const */ var /** number */ v_2 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; if (base.find_among_b(a_1) == 0) { - base.limit_backward = v_3; + base.limit_backward = v_2; return false; } base.bra = base.cursor; - base.limit_backward = v_3; + base.limit_backward = v_2; base.cursor = base.limit - v_1; if (base.cursor <= base.limit_backward) { @@ -195,7 +173,7 @@ DanishStemmer = function() { /** @return {boolean} */ function r_other_suffix() { var /** number */ among_var; - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.eq_s_b("st"))) @@ -217,26 +195,26 @@ DanishStemmer = function() { { return false; } - var /** number */ v_3 = base.limit_backward; + /** @const */ var /** number */ v_2 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; among_var = base.find_among_b(a_2); if (among_var == 0) { - base.limit_backward = v_3; + base.limit_backward = v_2; return false; } base.bra = base.cursor; - base.limit_backward = v_3; + base.limit_backward = v_2; switch (among_var) { case 1: if (!base.slice_del()) { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_consonant_pair(); - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; break; case 2: if (!base.slice_from("l\u00F8s")) @@ -254,12 +232,12 @@ DanishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; if (!(base.in_grouping_b(g_c, 98, 122))) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; @@ -268,7 +246,7 @@ DanishStemmer = function() { { return false; } - base.limit_backward = v_2; + base.limit_backward = v_1; if (!(base.eq_s_b(S_ch))) { return false; @@ -281,20 +259,20 @@ DanishStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_mark_regions(); base.cursor = v_1; base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_main_suffix(); base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_consonant_pair(); base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; r_other_suffix(); base.cursor = base.limit - v_4; - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; r_undouble(); base.cursor = base.limit - v_5; base.cursor = base.limit_backward; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch-stemmer.js index 0ad11e212..50e53e7b5 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch-stemmer.js @@ -1,678 +1,1960 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from dutch.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -DutchStemmer = function() { +var DutchStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ - ["", -1, 6], - ["\u00E1", 0, 1], - ["\u00E4", 0, 1], - ["\u00E9", 0, 2], - ["\u00EB", 0, 2], - ["\u00ED", 0, 3], - ["\u00EF", 0, 3], - ["\u00F3", 0, 4], - ["\u00F6", 0, 4], - ["\u00FA", 0, 5], - ["\u00FC", 0, 5] + ["a", -1, 1], + ["e", -1, 2], + ["o", -1, 1], + ["u", -1, 1], + ["\u00E0", -1, 1], + ["\u00E1", -1, 1], + ["\u00E2", -1, 1], + ["\u00E4", -1, 1], + ["\u00E8", -1, 2], + ["\u00E9", -1, 2], + ["\u00EA", -1, 2], + ["e\u00EB", -1, 3], + ["i\u00EB", -1, 4], + ["\u00F2", -1, 1], + ["\u00F3", -1, 1], + ["\u00F4", -1, 1], + ["\u00F6", -1, 1], + ["\u00F9", -1, 1], + ["\u00FA", -1, 1], + ["\u00FB", -1, 1], + ["\u00FC", -1, 1] ]; /** @const */ var a_1 = [ - ["", -1, 3], - ["I", 0, 2], - ["Y", 0, 1] + ["nde", -1, 8], + ["en", -1, 7], + ["s", -1, 2], + ["'s", 2, 1], + ["es", 2, 4], + ["ies", 4, 3], + ["aus", 2, 6], + ["\u00E9s", 2, 5] ]; /** @const */ var a_2 = [ - ["dd", -1, -1], - ["kk", -1, -1], - ["tt", -1, -1] + ["de", -1, 5], + ["ge", -1, 2], + ["ische", -1, 4], + ["je", -1, 1], + ["lijke", -1, 3], + ["le", -1, 9], + ["ene", -1, 10], + ["re", -1, 8], + ["se", -1, 7], + ["te", -1, 6], + ["ieve", -1, 11] ]; /** @const */ var a_3 = [ - ["ene", -1, 2], - ["se", -1, 3], - ["en", -1, 2], - ["heden", 2, 1], - ["s", -1, 3] + ["heid", -1, 3], + ["fie", -1, 7], + ["gie", -1, 8], + ["atie", -1, 1], + ["isme", -1, 5], + ["ing", -1, 5], + ["arij", -1, 6], + ["erij", -1, 5], + ["sel", -1, 3], + ["rder", -1, 4], + ["ster", -1, 3], + ["iteit", -1, 2], + ["dst", -1, 10], + ["tst", -1, 9] ]; /** @const */ var a_4 = [ - ["end", -1, 1], - ["ig", -1, 2], - ["ing", -1, 1], - ["lijk", -1, 3], - ["baar", -1, 4], - ["bar", -1, 5] + ["end", -1, 9], + ["atief", -1, 2], + ["erig", -1, 9], + ["achtig", -1, 3], + ["ioneel", -1, 1], + ["baar", -1, 3], + ["laar", -1, 5], + ["naar", -1, 4], + ["raar", -1, 6], + ["eriger", -1, 9], + ["achtiger", -1, 3], + ["lijker", -1, 8], + ["tant", -1, 7], + ["erigst", -1, 9], + ["achtigst", -1, 3], + ["lijkst", -1, 8] ]; /** @const */ var a_5 = [ - ["aa", -1, -1], - ["ee", -1, -1], - ["oo", -1, -1], - ["uu", -1, -1] + ["ig", -1, 1], + ["iger", -1, 1], + ["igst", -1, 1] + ]; + + /** @const */ var a_6 = [ + ["ft", -1, 2], + ["kt", -1, 1], + ["pt", -1, 3] + ]; + + /** @const */ var a_7 = [ + ["bb", -1, 1], + ["cc", -1, 2], + ["dd", -1, 3], + ["ff", -1, 4], + ["gg", -1, 5], + ["hh", -1, 6], + ["jj", -1, 7], + ["kk", -1, 8], + ["ll", -1, 9], + ["mm", -1, 10], + ["nn", -1, 11], + ["pp", -1, 12], + ["qq", -1, 13], + ["rr", -1, 14], + ["ss", -1, 15], + ["tt", -1, 16], + ["v", -1, 4], + ["vv", 16, 17], + ["ww", -1, 18], + ["xx", -1, 19], + ["z", -1, 15], + ["zz", 20, 20] + ]; + + /** @const */ var a_8 = [ + ["d", -1, 1], + ["t", -1, 2] + ]; + + /** @const */ var a_9 = [ + ["", -1, -1], + ["eft", 0, 1], + ["vaa", 0, 1], + ["val", 0, 1], + ["vali", 3, -1], + ["vare", 0, 1] + ]; + + /** @const */ var a_10 = [ + ["\u00EB", -1, 1], + ["\u00EF", -1, 2] + ]; + + /** @const */ var a_11 = [ + ["\u00EB", -1, 1], + ["\u00EF", -1, 2] ]; - /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + /** @const */ var /** Array */ g_E = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120]; + + /** @const */ var /** Array */ g_AIOU = [1, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 11, 120, 46, 15]; - /** @const */ var /** Array */ g_v_I = [1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + /** @const */ var /** Array */ g_AEIOU = [17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15]; - /** @const */ var /** Array */ g_v_j = [17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15]; + /** @const */ var /** Array */ g_v_WX = [17, 65, 208, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15]; + + var /** boolean */ B_GE_removed = false; + var /** boolean */ B_stemmed = false; var /** number */ I_p2 = 0; var /** number */ I_p1 = 0; - var /** boolean */ B_e_found = false; + var /** string */ S_ch = ''; /** @return {boolean} */ - function r_prelude() { - var /** number */ among_var; - var /** number */ v_1 = base.cursor; - while(true) + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_V() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!(base.in_grouping_b(g_v, 97, 252))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_2; + if (!(base.eq_s_b("ij"))) + { + return false; + } + } + base.cursor = base.limit - v_1; + return true; + }; + + /** @return {boolean} */ + function r_VX() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (base.cursor <= base.limit_backward) + { + return false; + } + base.cursor--; + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!(base.in_grouping_b(g_v, 97, 252))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_2; + if (!(base.eq_s_b("ij"))) + { + return false; + } + } + base.cursor = base.limit - v_1; + return true; + }; + + /** @return {boolean} */ + function r_C() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { - base.bra = base.cursor; - among_var = base.find_among(a_0); - if (among_var == 0) + if (!(base.eq_s_b("ij"))) { break lab0; } - base.ket = base.cursor; - switch (among_var) { - case 1: - if (!base.slice_from("a")) - { - return false; - } - break; - case 2: - if (!base.slice_from("e")) - { - return false; - } - break; - case 3: - if (!base.slice_from("i")) - { - return false; - } - break; - case 4: - if (!base.slice_from("o")) - { - return false; - } - break; - case 5: - if (!base.slice_from("u")) - { - return false; - } - break; - case 6: - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; - break; - } - continue; + return false; } - base.cursor = v_2; - break; + base.cursor = base.limit - v_2; } - base.cursor = v_1; - var /** number */ v_3 = base.cursor; - lab1: { - base.bra = base.cursor; - if (!(base.eq_s("y"))) + if (!(base.out_grouping_b(g_v, 97, 252))) + { + return false; + } + base.cursor = base.limit - v_1; + return true; + }; + + /** @return {boolean} */ + function r_lengthen_V() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.out_grouping_b(g_v_WX, 97, 252))) { - base.cursor = v_3; - break lab1; + break lab0; } base.ket = base.cursor; - if (!base.slice_from("Y")) + among_var = base.find_among_b(a_0); + if (among_var == 0) { - return false; + break lab0; } - } - while(true) - { - var /** number */ v_4 = base.cursor; - lab2: { - golab3: while(true) - { - var /** number */ v_5 = base.cursor; - lab4: { - if (!(base.in_grouping(g_v, 97, 232))) + base.bra = base.cursor; + switch (among_var) { + case 1: + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!(base.out_grouping_b(g_AEIOU, 97, 252))) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_3; + if (base.cursor > base.limit_backward) { - break lab4; + break lab0; } - base.bra = base.cursor; + } + base.cursor = base.limit - v_2; + S_ch = base.slice_to(); + if (S_ch == '') + { + return false; + } + { + /** @const */ var /** number */ c1 = base.cursor; + base.insert(base.cursor, base.cursor, S_ch); + base.cursor = c1; + } + break; + case 2: + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab3: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab4: { + if (!(base.out_grouping_b(g_AEIOU, 97, 252))) + { + break lab4; + } + break lab3; + } + base.cursor = base.limit - v_5; + if (base.cursor > base.limit_backward) + { + break lab0; + } + } + { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab5: { - var /** number */ v_6 = base.cursor; lab6: { - if (!(base.eq_s("i"))) - { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab7: { + if (!(base.in_grouping_b(g_AIOU, 97, 252))) + { + break lab7; + } break lab6; } - base.ket = base.cursor; - if (!(base.in_grouping(g_v, 97, 232))) + base.cursor = base.limit - v_7; + if (!(base.in_grouping_b(g_E, 101, 235))) { - break lab6; + break lab5; } - if (!base.slice_from("I")) + if (base.cursor > base.limit_backward) { - return false; + break lab5; } - break lab5; } - base.cursor = v_6; - if (!(base.eq_s("y"))) + break lab0; + } + base.cursor = base.limit - v_6; + } + { + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab8: { + if (base.cursor <= base.limit_backward) { - break lab4; + break lab8; + } + base.cursor--; + if (!(base.in_grouping_b(g_AIOU, 97, 252))) + { + break lab8; } - base.ket = base.cursor; - if (!base.slice_from("Y")) + if (!(base.out_grouping_b(g_AEIOU, 97, 252))) { - return false; + break lab8; } + break lab0; } - base.cursor = v_5; - break golab3; + base.cursor = base.limit - v_8; } - base.cursor = v_5; - if (base.cursor >= base.limit) + base.cursor = base.limit - v_4; + S_ch = base.slice_to(); + if (S_ch == '') { - break lab2; + return false; } - base.cursor++; - } - continue; + { + /** @const */ var /** number */ c2 = base.cursor; + base.insert(base.cursor, base.cursor, S_ch); + base.cursor = c2; + } + break; + case 3: + if (!base.slice_from("e\u00EBe")) + { + return false; + } + break; + case 4: + if (!base.slice_from("iee")) + { + return false; + } + break; } - base.cursor = v_4; - break; } + base.cursor = base.limit - v_1; return true; }; /** @return {boolean} */ - function r_mark_regions() { - I_p1 = base.limit; - I_p2 = base.limit; - golab0: while(true) + function r_Step_1() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) { - lab1: { - if (!(base.in_grouping(g_v, 97, 232))) + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) { - break lab1; + return false; } - break golab0; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; - } - golab2: while(true) - { - lab3: { - if (!(base.out_grouping(g_v, 97, 232))) + break; + case 2: + if (!r_R1()) { - break lab3; + return false; } - break golab2; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; - } - I_p1 = base.cursor; - lab4: { - if (!(I_p1 < 3)) - { - break lab4; - } - I_p1 = 3; - } - golab5: while(true) - { - lab6: { - if (!(base.in_grouping(g_v, 97, 232))) { - break lab6; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("t"))) + { + break lab0; + } + if (!r_R1()) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_1; } - break golab5; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; - } - golab7: while(true) - { - lab8: { - if (!(base.out_grouping(g_v, 97, 232))) + if (!r_C()) { - break lab8; + return false; } - break golab7; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; - } - I_p2 = base.cursor; - return true; - }; - - /** @return {boolean} */ - function r_postlude() { - var /** number */ among_var; - while(true) - { - var /** number */ v_1 = base.cursor; - lab0: { - base.bra = base.cursor; - among_var = base.find_among(a_1); - if (among_var == 0) + if (!base.slice_del()) { - break lab0; + return false; + } + break; + case 3: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("ie")) + { + return false; + } + break; + case 4: + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + if (!(base.eq_s_b("ar"))) + { + break lab2; + } + if (!r_R1()) + { + break lab2; + } + if (!r_C()) + { + break lab2; + } + base.cursor = base.limit - v_3; + if (!base.slice_del()) + { + return false; + } + r_lengthen_V(); + break lab1; + } + base.cursor = base.limit - v_2; + lab3: { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + if (!(base.eq_s_b("er"))) + { + break lab3; + } + if (!r_R1()) + { + break lab3; + } + if (!r_C()) + { + break lab3; + } + base.cursor = base.limit - v_4; + if (!base.slice_del()) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_from("e")) + { + return false; + } + } + break; + case 5: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("\u00E9")) + { + return false; + } + break; + case 6: + if (!r_R1()) + { + return false; + } + if (!r_V()) + { + return false; + } + if (!base.slice_from("au")) + { + return false; + } + break; + case 7: + lab4: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab5: { + if (!(base.eq_s_b("hed"))) + { + break lab5; + } + if (!r_R1()) + { + break lab5; + } + base.bra = base.cursor; + if (!base.slice_from("heid")) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_5; + lab6: { + if (!(base.eq_s_b("nd"))) + { + break lab6; + } + if (!base.slice_del()) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_5; + lab7: { + if (!(base.eq_s_b("d"))) + { + break lab7; + } + if (!r_R1()) + { + break lab7; + } + if (!r_C()) + { + break lab7; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_5; + lab8: { + lab9: { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab10: { + if (!(base.eq_s_b("i"))) + { + break lab10; + } + break lab9; + } + base.cursor = base.limit - v_6; + if (!(base.eq_s_b("j"))) + { + break lab8; + } + } + if (!r_V()) + { + break lab8; + } + if (!base.slice_del()) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_5; + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + r_lengthen_V(); + } + break; + case 8: + if (!base.slice_from("nd")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_2() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("'t"))) + { + break lab1; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + if (!(base.eq_s_b("et"))) + { + break lab2; + } + base.bra = base.cursor; + if (!r_R1()) + { + break lab2; + } + if (!r_C()) + { + break lab2; + } + if (!base.slice_del()) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab3: { + if (!(base.eq_s_b("rnt"))) + { + break lab3; + } + base.bra = base.cursor; + if (!base.slice_from("rn")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab4: { + if (!(base.eq_s_b("t"))) + { + break lab4; + } + base.bra = base.cursor; + if (!r_R1()) + { + break lab4; + } + if (!r_VX()) + { + break lab4; + } + if (!base.slice_del()) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab5: { + if (!(base.eq_s_b("ink"))) + { + break lab5; + } + base.bra = base.cursor; + if (!base.slice_from("ing")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab6: { + if (!(base.eq_s_b("mp"))) + { + break lab6; + } + base.bra = base.cursor; + if (!base.slice_from("m")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab7: { + if (!(base.eq_s_b("'"))) + { + break lab7; + } + base.bra = base.cursor; + if (!r_R1()) + { + break lab7; + } + if (!base.slice_del()) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + } + break; + case 2: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("g")) + { + return false; + } + break; + case 3: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("lijk")) + { + return false; + } + break; + case 4: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("isch")) + { + return false; + } + break; + case 5: + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 6: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("t")) + { + return false; + } + break; + case 7: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("s")) + { + return false; + } + break; + case 8: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("r")) + { + return false; + } + break; + case 9: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + base.insert(base.cursor, base.cursor, "l"); + r_lengthen_V(); + break; + case 10: + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + base.insert(base.cursor, base.cursor, "en"); + r_lengthen_V(); + break; + case 11: + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_from("ief")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_3() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_3); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + return false; + } + if (!base.slice_from("eer")) + { + return false; + } + break; + case 2: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + r_lengthen_V(); + break; + case 3: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 4: + if (!base.slice_from("r")) + { + return false; + } + break; + case 5: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("ild"))) + { + break lab1; + } + if (!base.slice_from("er")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + r_lengthen_V(); + } + break; + case 6: + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_from("aar")) + { + return false; + } + break; + case 7: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + base.insert(base.cursor, base.cursor, "f"); + r_lengthen_V(); + break; + case 8: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + base.insert(base.cursor, base.cursor, "g"); + r_lengthen_V(); + break; + case 9: + if (!r_R1()) + { + return false; } + if (!r_C()) + { + return false; + } + if (!base.slice_from("t")) + { + return false; + } + break; + case 10: + if (!r_R1()) + { + return false; + } + if (!r_C()) + { + return false; + } + if (!base.slice_from("d")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_4() { + var /** number */ among_var; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { base.ket = base.cursor; + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + break lab1; + } + base.bra = base.cursor; switch (among_var) { case 1: - if (!base.slice_from("y")) + if (!r_R1()) + { + break lab1; + } + if (!base.slice_from("ie")) + { + return false; + } + break; + case 2: + if (!r_R1()) + { + break lab1; + } + if (!base.slice_from("eer")) + { + return false; + } + break; + case 3: + if (!r_R1()) + { + break lab1; + } + if (!base.slice_del()) + { + return false; + } + break; + case 4: + if (!r_R1()) + { + break lab1; + } + if (!r_V()) + { + break lab1; + } + if (!base.slice_from("n")) + { + return false; + } + break; + case 5: + if (!r_R1()) + { + break lab1; + } + if (!r_V()) + { + break lab1; + } + if (!base.slice_from("l")) + { + return false; + } + break; + case 6: + if (!r_R1()) + { + break lab1; + } + if (!r_V()) + { + break lab1; + } + if (!base.slice_from("r")) + { + return false; + } + break; + case 7: + if (!r_R1()) + { + break lab1; + } + if (!base.slice_from("teer")) { return false; } break; - case 2: - if (!base.slice_from("i")) + case 8: + if (!r_R1()) + { + break lab1; + } + if (!base.slice_from("lijk")) { return false; } break; - case 3: - if (base.cursor >= base.limit) + case 9: + if (!r_R1()) { - break lab0; + break lab1; + } + if (!r_C()) + { + break lab1; + } + if (!base.slice_del()) + { + return false; } - base.cursor++; + r_lengthen_V(); break; } - continue; + break lab0; } - base.cursor = v_1; - break; + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (base.find_among_b(a_5) == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + if (!(base.eq_s_b("inn"))) + { + break lab2; + } + if (base.cursor > base.limit_backward) + { + break lab2; + } + return false; + } + base.cursor = base.limit - v_2; + } + if (!r_C()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + r_lengthen_V(); } return true; }; /** @return {boolean} */ - function r_R1() { - if (!(I_p1 <= base.cursor)) + function r_Step_7() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_6); + if (among_var == 0) { return false; } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("k")) + { + return false; + } + break; + case 2: + if (!base.slice_from("f")) + { + return false; + } + break; + case 3: + if (!base.slice_from("p")) + { + return false; + } + break; + } return true; }; /** @return {boolean} */ - function r_R2() { - if (!(I_p2 <= base.cursor)) + function r_Step_6() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_7); + if (among_var == 0) { return false; } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("b")) + { + return false; + } + break; + case 2: + if (!base.slice_from("c")) + { + return false; + } + break; + case 3: + if (!base.slice_from("d")) + { + return false; + } + break; + case 4: + if (!base.slice_from("f")) + { + return false; + } + break; + case 5: + if (!base.slice_from("g")) + { + return false; + } + break; + case 6: + if (!base.slice_from("h")) + { + return false; + } + break; + case 7: + if (!base.slice_from("j")) + { + return false; + } + break; + case 8: + if (!base.slice_from("k")) + { + return false; + } + break; + case 9: + if (!base.slice_from("l")) + { + return false; + } + break; + case 10: + if (!base.slice_from("m")) + { + return false; + } + break; + case 11: + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("i"))) + { + break lab0; + } + if (base.cursor > base.limit_backward) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_1; + } + if (!base.slice_from("n")) + { + return false; + } + break; + case 12: + if (!base.slice_from("p")) + { + return false; + } + break; + case 13: + if (!base.slice_from("q")) + { + return false; + } + break; + case 14: + if (!base.slice_from("r")) + { + return false; + } + break; + case 15: + if (!base.slice_from("s")) + { + return false; + } + break; + case 16: + if (!base.slice_from("t")) + { + return false; + } + break; + case 17: + if (!base.slice_from("v")) + { + return false; + } + break; + case 18: + if (!base.slice_from("w")) + { + return false; + } + break; + case 19: + if (!base.slice_from("x")) + { + return false; + } + break; + case 20: + if (!base.slice_from("z")) + { + return false; + } + break; + } return true; }; /** @return {boolean} */ - function r_undouble() { - var /** number */ v_1 = base.limit - base.cursor; - if (base.find_among_b(a_2) == 0) + function r_Step_1c() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_8); + if (among_var == 0) { return false; } - base.cursor = base.limit - v_1; - base.ket = base.cursor; - if (base.cursor <= base.limit_backward) + base.bra = base.cursor; + if (!r_R1()) { return false; } - base.cursor--; - base.bra = base.cursor; - if (!base.slice_del()) + if (!r_C()) { return false; } + switch (among_var) { + case 1: + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("n"))) + { + break lab0; + } + if (!r_R1()) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_1; + } + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + if (!(base.eq_s_b("in"))) + { + break lab2; + } + if (base.cursor > base.limit_backward) + { + break lab2; + } + if (!base.slice_from("n")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + if (!base.slice_del()) + { + return false; + } + } + break; + case 2: + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab3: { + if (!(base.eq_s_b("h"))) + { + break lab3; + } + if (!r_R1()) + { + break lab3; + } + return false; + } + base.cursor = base.limit - v_3; + } + { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab4: { + if (!(base.eq_s_b("en"))) + { + break lab4; + } + if (base.cursor > base.limit_backward) + { + break lab4; + } + return false; + } + base.cursor = base.limit - v_4; + } + if (!base.slice_del()) + { + return false; + } + break; + } return true; }; /** @return {boolean} */ - function r_e_ending() { - B_e_found = false; - base.ket = base.cursor; - if (!(base.eq_s_b("e"))) + function r_Lose_prefix() { + var /** number */ among_var; + base.bra = base.cursor; + if (!(base.eq_s("ge"))) { return false; } - base.bra = base.cursor; - if (!r_R1()) + base.ket = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; { - return false; + /** @const */ var /** number */ c1 = base.cursor + 3; + if (c1 > base.limit) + { + return false; + } + base.cursor = c1; } - var /** number */ v_1 = base.limit - base.cursor; - if (!(base.out_grouping_b(g_v, 97, 232))) + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + golab0: while(true) { - return false; + /** @const */ var /** number */ v_3 = base.cursor; + lab1: { + lab2: { + /** @const */ var /** number */ v_4 = base.cursor; + lab3: { + if (!(base.eq_s("ij"))) + { + break lab3; + } + break lab2; + } + base.cursor = v_4; + if (!(base.in_grouping(g_v, 97, 252))) + { + break lab1; + } + } + break golab0; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { + return false; + } + base.cursor++; } - base.cursor = base.limit - v_1; - if (!base.slice_del()) + while(true) { + /** @const */ var /** number */ v_5 = base.cursor; + lab4: { + lab5: { + /** @const */ var /** number */ v_6 = base.cursor; + lab6: { + if (!(base.eq_s("ij"))) + { + break lab6; + } + break lab5; + } + base.cursor = v_6; + if (!(base.in_grouping(g_v, 97, 252))) + { + break lab4; + } + } + continue; + } + base.cursor = v_5; + break; + } + lab7: { + if (base.cursor < base.limit) + { + break lab7; + } return false; } - B_e_found = true; - if (!r_undouble()) + base.cursor = v_2; + among_var = base.find_among(a_9); + switch (among_var) { + case 1: + return false; + } + B_GE_removed = true; + if (!base.slice_del()) { return false; } + /** @const */ var /** number */ v_7 = base.cursor; + lab8: { + base.bra = base.cursor; + among_var = base.find_among(a_10); + if (among_var == 0) + { + break lab8; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("e")) + { + return false; + } + break; + case 2: + if (!base.slice_from("i")) + { + return false; + } + break; + } + } + base.cursor = v_7; return true; }; /** @return {boolean} */ - function r_en_ending() { - if (!r_R1()) + function r_Lose_infix() { + var /** number */ among_var; + if (base.cursor >= base.limit) { return false; } - var /** number */ v_1 = base.limit - base.cursor; - if (!(base.out_grouping_b(g_v, 97, 232))) + base.cursor++; + golab0: while(true) { - return false; + lab1: { + base.bra = base.cursor; + if (!(base.eq_s("ge"))) + { + break lab1; + } + base.ket = base.cursor; + break golab0; + } + if (base.cursor >= base.limit) + { + return false; + } + base.cursor++; } - base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_1 = base.cursor; + { + /** @const */ var /** number */ c1 = base.cursor + 3; + if (c1 > base.limit) + { + return false; + } + base.cursor = c1; + } + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + golab2: while(true) { - var /** number */ v_2 = base.limit - base.cursor; - lab0: { - if (!(base.eq_s_b("gem"))) - { - break lab0; + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + lab4: { + /** @const */ var /** number */ v_4 = base.cursor; + lab5: { + if (!(base.eq_s("ij"))) + { + break lab5; + } + break lab4; + } + base.cursor = v_4; + if (!(base.in_grouping(g_v, 97, 252))) + { + break lab3; + } } + break golab2; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { return false; } - base.cursor = base.limit - v_2; + base.cursor++; } - if (!base.slice_del()) + while(true) { + /** @const */ var /** number */ v_5 = base.cursor; + lab6: { + lab7: { + /** @const */ var /** number */ v_6 = base.cursor; + lab8: { + if (!(base.eq_s("ij"))) + { + break lab8; + } + break lab7; + } + base.cursor = v_6; + if (!(base.in_grouping(g_v, 97, 252))) + { + break lab6; + } + } + continue; + } + base.cursor = v_5; + break; + } + lab9: { + if (base.cursor < base.limit) + { + break lab9; + } return false; } - if (!r_undouble()) + base.cursor = v_2; + B_GE_removed = true; + if (!base.slice_del()) { return false; } - return true; - }; - - /** @return {boolean} */ - function r_standard_suffix() { - var /** number */ among_var; - var /** number */ v_1 = base.limit - base.cursor; - lab0: { - base.ket = base.cursor; - among_var = base.find_among_b(a_3); + /** @const */ var /** number */ v_7 = base.cursor; + lab10: { + base.bra = base.cursor; + among_var = base.find_among(a_11); if (among_var == 0) { - break lab0; + break lab10; } - base.bra = base.cursor; + base.ket = base.cursor; switch (among_var) { case 1: - if (!r_R1()) - { - break lab0; - } - if (!base.slice_from("heid")) + if (!base.slice_from("e")) { return false; } break; case 2: - if (!r_en_ending()) + if (!base.slice_from("i")) { - break lab0; + return false; } break; - case 3: - if (!r_R1()) - { - break lab0; - } - if (!(base.out_grouping_b(g_v_j, 97, 232))) + } + } + base.cursor = v_7; + return true; + }; + + /** @return {boolean} */ + function r_measure() { + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + lab1: { + if (!(base.out_grouping(g_v, 97, 252))) { - break lab0; + break lab1; } - if (!base.slice_del()) - { - return false; + continue; + } + break; + } + { + var v_2 = 1; + while(true) + { + /** @const */ var /** number */ v_3 = base.cursor; + lab2: { + lab3: { + /** @const */ var /** number */ v_4 = base.cursor; + lab4: { + if (!(base.eq_s("ij"))) + { + break lab4; + } + break lab3; + } + base.cursor = v_4; + if (!(base.in_grouping(g_v, 97, 252))) + { + break lab2; + } + } + v_2--; + continue; } + base.cursor = v_3; break; + } + if (v_2 > 0) + { + break lab0; + } } - } - base.cursor = base.limit - v_1; - var /** number */ v_2 = base.limit - base.cursor; - r_e_ending(); - base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; - lab1: { - base.ket = base.cursor; - if (!(base.eq_s_b("heid"))) + if (!(base.out_grouping(g_v, 97, 252))) { - break lab1; + break lab0; } - base.bra = base.cursor; - if (!r_R2()) + I_p1 = base.cursor; + while(true) { - break lab1; + lab5: { + if (!(base.out_grouping(g_v, 97, 252))) + { + break lab5; + } + continue; + } + break; } { - var /** number */ v_4 = base.limit - base.cursor; - lab2: { - if (!(base.eq_s_b("c"))) - { - break lab2; + var v_5 = 1; + while(true) + { + /** @const */ var /** number */ v_6 = base.cursor; + lab6: { + lab7: { + /** @const */ var /** number */ v_7 = base.cursor; + lab8: { + if (!(base.eq_s("ij"))) + { + break lab8; + } + break lab7; + } + base.cursor = v_7; + if (!(base.in_grouping(g_v, 97, 252))) + { + break lab6; + } + } + v_5--; + continue; } - break lab1; + base.cursor = v_6; + break; + } + if (v_5 > 0) + { + break lab0; } - base.cursor = base.limit - v_4; } - if (!base.slice_del()) + if (!(base.out_grouping(g_v, 97, 252))) { - return false; + break lab0; } - base.ket = base.cursor; - if (!(base.eq_s_b("en"))) + I_p2 = base.cursor; + } + base.cursor = v_1; + return true; + }; + + this.stem = /** @return {boolean} */ function() { + B_stemmed = false; + r_measure(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!r_Step_1()) { - break lab1; + break lab0; } - base.bra = base.cursor; - if (!r_en_ending()) + B_stemmed = true; + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!r_Step_2()) { break lab1; } + B_stemmed = true; + } + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!r_Step_3()) + { + break lab2; + } + B_stemmed = true; } base.cursor = base.limit - v_3; - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab3: { - base.ket = base.cursor; - among_var = base.find_among_b(a_4); - if (among_var == 0) + if (!r_Step_4()) { break lab3; } - base.bra = base.cursor; - switch (among_var) { - case 1: - if (!r_R2()) - { - break lab3; - } - if (!base.slice_del()) - { - return false; - } - lab4: { - var /** number */ v_6 = base.limit - base.cursor; - lab5: { - base.ket = base.cursor; - if (!(base.eq_s_b("ig"))) - { - break lab5; - } - base.bra = base.cursor; - if (!r_R2()) - { - break lab5; - } - { - var /** number */ v_7 = base.limit - base.cursor; - lab6: { - if (!(base.eq_s_b("e"))) - { - break lab6; - } - break lab5; - } - base.cursor = base.limit - v_7; - } - if (!base.slice_del()) - { - return false; - } - break lab4; - } - base.cursor = base.limit - v_6; - if (!r_undouble()) - { - break lab3; - } - } - break; - case 2: - if (!r_R2()) - { - break lab3; - } - { - var /** number */ v_8 = base.limit - base.cursor; - lab7: { - if (!(base.eq_s_b("e"))) - { - break lab7; - } - break lab3; - } - base.cursor = base.limit - v_8; - } - if (!base.slice_del()) - { - return false; - } - break; - case 3: - if (!r_R2()) - { - break lab3; - } - if (!base.slice_del()) - { - return false; - } - if (!r_e_ending()) - { - break lab3; - } - break; - case 4: - if (!r_R2()) - { - break lab3; - } - if (!base.slice_del()) - { - return false; - } - break; - case 5: - if (!r_R2()) - { - break lab3; - } - if (!B_e_found) - { - break lab3; - } - if (!base.slice_del()) - { - return false; - } - break; + B_stemmed = true; + } + base.cursor = base.limit - v_4; + base.cursor = base.limit_backward; + B_GE_removed = false; + /** @const */ var /** number */ v_5 = base.cursor; + lab4: { + /** @const */ var /** number */ v_6 = base.cursor; + if (!r_Lose_prefix()) + { + break lab4; } + base.cursor = v_6; + r_measure(); } - base.cursor = base.limit - v_5; - var /** number */ v_9 = base.limit - base.cursor; - lab8: { - if (!(base.out_grouping_b(g_v_I, 73, 232))) + base.cursor = v_5; + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab5: { + if (!B_GE_removed) { - break lab8; + break lab5; } - var /** number */ v_10 = base.limit - base.cursor; - if (base.find_among_b(a_5) == 0) + B_stemmed = true; + if (!r_Step_1c()) { - break lab8; + break lab5; } - if (!(base.out_grouping_b(g_v, 97, 232))) + } + base.cursor = base.limit - v_7; + base.cursor = base.limit_backward; + B_GE_removed = false; + /** @const */ var /** number */ v_8 = base.cursor; + lab6: { + /** @const */ var /** number */ v_9 = base.cursor; + if (!r_Lose_infix()) { - break lab8; + break lab6; } - base.cursor = base.limit - v_10; - base.ket = base.cursor; - if (base.cursor <= base.limit_backward) + base.cursor = v_9; + r_measure(); + } + base.cursor = v_8; + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + lab7: { + if (!B_GE_removed) { - break lab8; + break lab7; } - base.cursor--; - base.bra = base.cursor; - if (!base.slice_del()) + B_stemmed = true; + if (!r_Step_1c()) { - return false; + break lab7; } } - base.cursor = base.limit - v_9; - return true; - }; - - this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; - r_prelude(); - base.cursor = v_1; - var /** number */ v_2 = base.cursor; - r_mark_regions(); - base.cursor = v_2; + base.cursor = base.limit - v_10; + base.cursor = base.limit_backward; base.limit_backward = base.cursor; base.cursor = base.limit; - r_standard_suffix(); + /** @const */ var /** number */ v_11 = base.limit - base.cursor; + lab8: { + if (!r_Step_7()) + { + break lab8; + } + B_stemmed = true; + } + base.cursor = base.limit - v_11; + /** @const */ var /** number */ v_12 = base.limit - base.cursor; + lab9: { + if (!B_stemmed) + { + break lab9; + } + if (!r_Step_6()) + { + break lab9; + } + } + base.cursor = base.limit - v_12; base.cursor = base.limit_backward; - var /** number */ v_4 = base.cursor; - r_postlude(); - base.cursor = v_4; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch_porter-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch_porter-stemmer.js new file mode 100644 index 000000000..6bbf2bf2e --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/dutch_porter-stemmer.js @@ -0,0 +1,637 @@ +// Generated from dutch_porter.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var DutchPorterStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["", -1, 6], + ["\u00E1", 0, 1], + ["\u00E4", 0, 1], + ["\u00E9", 0, 2], + ["\u00EB", 0, 2], + ["\u00ED", 0, 3], + ["\u00EF", 0, 3], + ["\u00F3", 0, 4], + ["\u00F6", 0, 4], + ["\u00FA", 0, 5], + ["\u00FC", 0, 5] + ]; + + /** @const */ var a_1 = [ + ["", -1, 3], + ["I", 0, 2], + ["Y", 0, 1] + ]; + + /** @const */ var a_2 = [ + ["dd", -1, -1], + ["kk", -1, -1], + ["tt", -1, -1] + ]; + + /** @const */ var a_3 = [ + ["ene", -1, 2], + ["se", -1, 3], + ["en", -1, 2], + ["heden", 2, 1], + ["s", -1, 3] + ]; + + /** @const */ var a_4 = [ + ["end", -1, 1], + ["ig", -1, 2], + ["ing", -1, 1], + ["lijk", -1, 3], + ["baar", -1, 4], + ["bar", -1, 5] + ]; + + /** @const */ var a_5 = [ + ["aa", -1, -1], + ["ee", -1, -1], + ["oo", -1, -1], + ["uu", -1, -1] + ]; + + /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + + /** @const */ var /** Array */ g_v_I = [1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + + /** @const */ var /** Array */ g_v_j = [17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + + var /** number */ I_x = 0; + var /** number */ I_p2 = 0; + var /** number */ I_p1 = 0; + var /** boolean */ B_e_found = false; + + + /** @return {boolean} */ + function r_prelude() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab0: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("a")) + { + return false; + } + break; + case 2: + if (!base.slice_from("e")) + { + return false; + } + break; + case 3: + if (!base.slice_from("i")) + { + return false; + } + break; + case 4: + if (!base.slice_from("o")) + { + return false; + } + break; + case 5: + if (!base.slice_from("u")) + { + return false; + } + break; + case 6: + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + break; + } + continue; + } + base.cursor = v_2; + break; + } + base.cursor = v_1; + /** @const */ var /** number */ v_3 = base.cursor; + lab1: { + base.bra = base.cursor; + if (!(base.eq_s("y"))) + { + base.cursor = v_3; + break lab1; + } + base.ket = base.cursor; + if (!base.slice_from("Y")) + { + return false; + } + } + while(true) + { + /** @const */ var /** number */ v_4 = base.cursor; + lab2: { + if (!base.go_out_grouping(g_v, 97, 232)) + { + break lab2; + } + base.cursor++; + /** @const */ var /** number */ v_5 = base.cursor; + lab3: { + base.bra = base.cursor; + lab4: { + /** @const */ var /** number */ v_6 = base.cursor; + lab5: { + if (!(base.eq_s("i"))) + { + break lab5; + } + base.ket = base.cursor; + /** @const */ var /** number */ v_7 = base.cursor; + lab6: { + if (!(base.in_grouping(g_v, 97, 232))) + { + break lab6; + } + if (!base.slice_from("I")) + { + return false; + } + } + base.cursor = v_7; + break lab4; + } + base.cursor = v_6; + if (!(base.eq_s("y"))) + { + base.cursor = v_5; + break lab3; + } + base.ket = base.cursor; + if (!base.slice_from("Y")) + { + return false; + } + } + } + continue; + } + base.cursor = v_4; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_mark_regions() { + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + { + /** @const */ var /** number */ c1 = base.cursor + 3; + if (c1 > base.limit) + { + return false; + } + base.cursor = c1; + } + I_x = base.cursor; + base.cursor = v_1; + if (!base.go_out_grouping(g_v, 97, 232)) + { + return false; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 232)) + { + return false; + } + base.cursor++; + I_p1 = base.cursor; + lab0: { + if (I_p1 >= I_x) + { + break lab0; + } + I_p1 = I_x; + } + if (!base.go_out_grouping(g_v, 97, 232)) + { + return false; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 232)) + { + return false; + } + base.cursor++; + I_p2 = base.cursor; + return true; + }; + + /** @return {boolean} */ + function r_postlude() { + var /** number */ among_var; + while(true) + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + among_var = base.find_among(a_1); + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("y")) + { + return false; + } + break; + case 2: + if (!base.slice_from("i")) + { + return false; + } + break; + case 3: + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + break; + } + continue; + } + base.cursor = v_1; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_undouble() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (base.find_among_b(a_2) == 0) + { + return false; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (base.cursor <= base.limit_backward) + { + return false; + } + base.cursor--; + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_e_ending() { + B_e_found = false; + base.ket = base.cursor; + if (!(base.eq_s_b("e"))) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (!(base.out_grouping_b(g_v, 97, 232))) + { + return false; + } + base.cursor = base.limit - v_1; + if (!base.slice_del()) + { + return false; + } + B_e_found = true; + if (!r_undouble()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_en_ending() { + if (!r_R1()) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (!(base.out_grouping_b(g_v, 97, 232))) + { + return false; + } + base.cursor = base.limit - v_1; + { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("gem"))) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_2; + } + if (!base.slice_del()) + { + return false; + } + if (!r_undouble()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_standard_suffix() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + among_var = base.find_among_b(a_3); + if (among_var == 0) + { + break lab0; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + break lab0; + } + if (!base.slice_from("heid")) + { + return false; + } + break; + case 2: + if (!r_en_ending()) + { + break lab0; + } + break; + case 3: + if (!r_R1()) + { + break lab0; + } + if (!(base.out_grouping_b(g_v_j, 97, 232))) + { + break lab0; + } + if (!base.slice_del()) + { + return false; + } + break; + } + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + r_e_ending(); + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + if (!(base.eq_s_b("heid"))) + { + break lab1; + } + base.bra = base.cursor; + if (!r_R2()) + { + break lab1; + } + { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab2: { + if (!(base.eq_s_b("c"))) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_4; + } + if (!base.slice_del()) + { + return false; + } + base.ket = base.cursor; + if (!(base.eq_s_b("en"))) + { + break lab1; + } + base.bra = base.cursor; + if (!r_en_ending()) + { + break lab1; + } + } + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab3: { + base.ket = base.cursor; + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + break lab3; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R2()) + { + break lab3; + } + if (!base.slice_del()) + { + return false; + } + lab4: { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab5: { + base.ket = base.cursor; + if (!(base.eq_s_b("ig"))) + { + break lab5; + } + base.bra = base.cursor; + if (!r_R2()) + { + break lab5; + } + { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab6: { + if (!(base.eq_s_b("e"))) + { + break lab6; + } + break lab5; + } + base.cursor = base.limit - v_7; + } + if (!base.slice_del()) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_6; + if (!r_undouble()) + { + break lab3; + } + } + break; + case 2: + if (!r_R2()) + { + break lab3; + } + { + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab7: { + if (!(base.eq_s_b("e"))) + { + break lab7; + } + break lab3; + } + base.cursor = base.limit - v_8; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (!r_R2()) + { + break lab3; + } + if (!base.slice_del()) + { + return false; + } + if (!r_e_ending()) + { + break lab3; + } + break; + case 4: + if (!r_R2()) + { + break lab3; + } + if (!base.slice_del()) + { + return false; + } + break; + case 5: + if (!r_R2()) + { + break lab3; + } + if (!B_e_found) + { + break lab3; + } + if (!base.slice_del()) + { + return false; + } + break; + } + } + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + lab8: { + if (!(base.out_grouping_b(g_v_I, 73, 232))) + { + break lab8; + } + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + if (base.find_among_b(a_5) == 0) + { + break lab8; + } + if (!(base.out_grouping_b(g_v, 97, 232))) + { + break lab8; + } + base.cursor = base.limit - v_10; + base.ket = base.cursor; + if (base.cursor <= base.limit_backward) + { + break lab8; + } + base.cursor--; + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.cursor = base.limit - v_9; + return true; + }; + + this.stem = /** @return {boolean} */ function() { + /** @const */ var /** number */ v_1 = base.cursor; + r_prelude(); + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + r_mark_regions(); + base.cursor = v_2; + base.limit_backward = base.cursor; base.cursor = base.limit; + r_standard_suffix(); + base.cursor = base.limit_backward; + /** @const */ var /** number */ v_3 = base.cursor; + r_postlude(); + base.cursor = v_3; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/english-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/english-stemmer.js new file mode 100644 index 000000000..056760ee8 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/english-stemmer.js @@ -0,0 +1,1066 @@ +// Generated from english.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var EnglishStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["arsen", -1, -1], + ["commun", -1, -1], + ["emerg", -1, -1], + ["gener", -1, -1], + ["later", -1, -1], + ["organ", -1, -1], + ["past", -1, -1], + ["univers", -1, -1] + ]; + + /** @const */ var a_1 = [ + ["'", -1, 1], + ["'s'", 0, 1], + ["'s", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["ied", -1, 2], + ["s", -1, 3], + ["ies", 1, 2], + ["sses", 1, 1], + ["ss", 1, -1], + ["us", 1, -1] + ]; + + /** @const */ var a_3 = [ + ["succ", -1, 1], + ["proc", -1, 1], + ["exc", -1, 1] + ]; + + /** @const */ var a_4 = [ + ["even", -1, 2], + ["cann", -1, 2], + ["inn", -1, 2], + ["earr", -1, 2], + ["herr", -1, 2], + ["out", -1, 2], + ["y", -1, 1] + ]; + + /** @const */ var a_5 = [ + ["", -1, -1], + ["ed", 0, 2], + ["eed", 1, 1], + ["ing", 0, 3], + ["edly", 0, 2], + ["eedly", 4, 1], + ["ingly", 0, 2] + ]; + + /** @const */ var a_6 = [ + ["", -1, 3], + ["bb", 0, 2], + ["dd", 0, 2], + ["ff", 0, 2], + ["gg", 0, 2], + ["bl", 0, 1], + ["mm", 0, 2], + ["nn", 0, 2], + ["pp", 0, 2], + ["rr", 0, 2], + ["at", 0, 1], + ["tt", 0, 2], + ["iz", 0, 1] + ]; + + /** @const */ var a_7 = [ + ["anci", -1, 3], + ["enci", -1, 2], + ["ogi", -1, 14], + ["li", -1, 16], + ["bli", 3, 12], + ["abli", 4, 4], + ["alli", 3, 8], + ["fulli", 3, 9], + ["lessli", 3, 15], + ["ousli", 3, 10], + ["entli", 3, 5], + ["aliti", -1, 8], + ["biliti", -1, 12], + ["iviti", -1, 11], + ["tional", -1, 1], + ["ational", 14, 7], + ["alism", -1, 8], + ["ation", -1, 7], + ["ization", 17, 6], + ["izer", -1, 6], + ["ator", -1, 7], + ["iveness", -1, 11], + ["fulness", -1, 9], + ["ousness", -1, 10], + ["ogist", -1, 13] + ]; + + /** @const */ var a_8 = [ + ["icate", -1, 4], + ["ative", -1, 6], + ["alize", -1, 3], + ["iciti", -1, 4], + ["ical", -1, 4], + ["tional", -1, 1], + ["ational", 5, 2], + ["ful", -1, 5], + ["ness", -1, 5] + ]; + + /** @const */ var a_9 = [ + ["ic", -1, 1], + ["ance", -1, 1], + ["ence", -1, 1], + ["able", -1, 1], + ["ible", -1, 1], + ["ate", -1, 1], + ["ive", -1, 1], + ["ize", -1, 1], + ["iti", -1, 1], + ["al", -1, 1], + ["ism", -1, 1], + ["ion", -1, 2], + ["er", -1, 1], + ["ous", -1, 1], + ["ant", -1, 1], + ["ent", -1, 1], + ["ment", 15, 1], + ["ement", 16, 1] + ]; + + /** @const */ var a_10 = [ + ["e", -1, 1], + ["l", -1, 2] + ]; + + /** @const */ var a_11 = [ + ["andes", -1, -1], + ["atlas", -1, -1], + ["bias", -1, -1], + ["cosmos", -1, -1], + ["early", -1, 5], + ["gently", -1, 3], + ["howe", -1, -1], + ["idly", -1, 2], + ["news", -1, -1], + ["only", -1, 6], + ["singly", -1, 7], + ["skies", -1, 1], + ["sky", -1, -1], + ["ugly", -1, 4] + ]; + + /** @const */ var /** Array */ g_aeo = [17, 64]; + + /** @const */ var /** Array */ g_v = [17, 65, 16, 1]; + + /** @const */ var /** Array */ g_v_WXY = [1, 17, 65, 208, 1]; + + /** @const */ var /** Array */ g_valid_LI = [55, 141, 2]; + + var /** boolean */ B_Y_found = false; + var /** number */ I_p2 = 0; + var /** number */ I_p1 = 0; + + + /** @return {boolean} */ + function r_prelude() { + B_Y_found = false; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + if (!(base.eq_s("'"))) + { + break lab0; + } + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + base.bra = base.cursor; + if (!(base.eq_s("y"))) + { + break lab1; + } + base.ket = base.cursor; + if (!base.slice_from("Y")) + { + return false; + } + B_Y_found = true; + } + base.cursor = v_2; + /** @const */ var /** number */ v_3 = base.cursor; + lab2: { + while(true) + { + /** @const */ var /** number */ v_4 = base.cursor; + lab3: { + golab4: while(true) + { + /** @const */ var /** number */ v_5 = base.cursor; + lab5: { + if (!(base.in_grouping(g_v, 97, 121))) + { + break lab5; + } + base.bra = base.cursor; + if (!(base.eq_s("y"))) + { + break lab5; + } + base.ket = base.cursor; + base.cursor = v_5; + break golab4; + } + base.cursor = v_5; + if (base.cursor >= base.limit) + { + break lab3; + } + base.cursor++; + } + if (!base.slice_from("Y")) + { + return false; + } + B_Y_found = true; + continue; + } + base.cursor = v_4; + break; + } + } + base.cursor = v_3; + return true; + }; + + /** @return {boolean} */ + function r_mark_regions() { + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + lab1: { + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { + if (base.find_among(a_0) == 0) + { + break lab2; + } + break lab1; + } + base.cursor = v_2; + if (!base.go_out_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + } + I_p1 = base.cursor; + if (!base.go_out_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + I_p2 = base.cursor; + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_shortv() { + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.out_grouping_b(g_v_WXY, 89, 121))) + { + break lab1; + } + if (!(base.in_grouping_b(g_v, 97, 121))) + { + break lab1; + } + if (!(base.out_grouping_b(g_v, 97, 121))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + if (!(base.out_grouping_b(g_v, 97, 121))) + { + break lab2; + } + if (!(base.in_grouping_b(g_v, 97, 121))) + { + break lab2; + } + if (base.cursor > base.limit_backward) + { + break lab2; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("past"))) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_Step_1a() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + base.cursor = base.limit - v_1; + break lab0; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("ss")) + { + return false; + } + break; + case 2: + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + { + /** @const */ var /** number */ c1 = base.cursor - 2; + if (c1 < base.limit_backward) + { + break lab2; + } + base.cursor = c1; + } + if (!base.slice_from("i")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + if (!base.slice_from("ie")) + { + return false; + } + } + break; + case 3: + if (base.cursor <= base.limit_backward) + { + return false; + } + base.cursor--; + if (!base.go_out_grouping_b(g_v, 97, 121)) + { + return false; + } + base.cursor--; + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_1b() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_5); + base.bra = base.cursor; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + switch (among_var) { + case 1: + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + lab3: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab4: { + if (base.find_among_b(a_3) == 0) + { + break lab4; + } + if (base.cursor > base.limit_backward) + { + break lab4; + } + break lab3; + } + base.cursor = base.limit - v_3; + if (!r_R1()) + { + break lab2; + } + if (!base.slice_from("ee")) + { + return false; + } + } + } + base.cursor = base.limit - v_2; + break; + case 2: + break lab1; + case 3: + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + break lab1; + } + switch (among_var) { + case 1: + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + if (!(base.out_grouping_b(g_v, 97, 121))) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + base.cursor = base.limit - v_4; + base.bra = base.cursor; + if (!base.slice_from("ie")) + { + return false; + } + break; + case 2: + if (base.cursor > base.limit_backward) + { + break lab1; + } + break; + } + break; + } + break lab0; + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + if (!base.go_out_grouping_b(g_v, 97, 121)) + { + return false; + } + base.cursor--; + base.cursor = base.limit - v_5; + if (!base.slice_del()) + { + return false; + } + base.ket = base.cursor; + base.bra = base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + among_var = base.find_among_b(a_6); + switch (among_var) { + case 1: + if (!base.slice_from("e")) + { + return false; + } + return false; + case 2: + { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab5: { + if (!(base.in_grouping_b(g_aeo, 97, 111))) + { + break lab5; + } + if (base.cursor > base.limit_backward) + { + break lab5; + } + return false; + } + base.cursor = base.limit - v_7; + } + break; + case 3: + if (base.cursor != I_p1) + { + return false; + } + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + if (!r_shortv()) + { + return false; + } + base.cursor = base.limit - v_8; + if (!base.slice_from("e")) + { + return false; + } + return false; + } + base.cursor = base.limit - v_6; + base.ket = base.cursor; + if (base.cursor <= base.limit_backward) + { + return false; + } + base.cursor--; + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_Step_1c() { + base.ket = base.cursor; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("y"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("Y"))) + { + return false; + } + } + base.bra = base.cursor; + if (!(base.out_grouping_b(g_v, 97, 121))) + { + return false; + } + lab2: { + if (base.cursor > base.limit_backward) + { + break lab2; + } + return false; + } + if (!base.slice_from("i")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_2() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_7); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("tion")) + { + return false; + } + break; + case 2: + if (!base.slice_from("ence")) + { + return false; + } + break; + case 3: + if (!base.slice_from("ance")) + { + return false; + } + break; + case 4: + if (!base.slice_from("able")) + { + return false; + } + break; + case 5: + if (!base.slice_from("ent")) + { + return false; + } + break; + case 6: + if (!base.slice_from("ize")) + { + return false; + } + break; + case 7: + if (!base.slice_from("ate")) + { + return false; + } + break; + case 8: + if (!base.slice_from("al")) + { + return false; + } + break; + case 9: + if (!base.slice_from("ful")) + { + return false; + } + break; + case 10: + if (!base.slice_from("ous")) + { + return false; + } + break; + case 11: + if (!base.slice_from("ive")) + { + return false; + } + break; + case 12: + if (!base.slice_from("ble")) + { + return false; + } + break; + case 13: + if (!base.slice_from("og")) + { + return false; + } + break; + case 14: + if (!(base.eq_s_b("l"))) + { + return false; + } + if (!base.slice_from("og")) + { + return false; + } + break; + case 15: + if (!base.slice_from("less")) + { + return false; + } + break; + case 16: + if (!(base.in_grouping_b(g_valid_LI, 99, 116))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_3() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_8); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("tion")) + { + return false; + } + break; + case 2: + if (!base.slice_from("ate")) + { + return false; + } + break; + case 3: + if (!base.slice_from("al")) + { + return false; + } + break; + case 4: + if (!base.slice_from("ic")) + { + return false; + } + break; + case 5: + if (!base.slice_del()) + { + return false; + } + break; + case 6: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_4() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_9); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R2()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("s"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("t"))) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_5() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_10); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + lab0: { + lab1: { + if (!r_R2()) + { + break lab1; + } + break lab0; + } + if (!r_R1()) + { + return false; + } + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab2: { + if (!r_shortv()) + { + break lab2; + } + return false; + } + base.cursor = base.limit - v_1; + } + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!(base.eq_s_b("l"))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_exception1() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_11); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + if (base.cursor < base.limit) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("sky")) + { + return false; + } + break; + case 2: + if (!base.slice_from("idl")) + { + return false; + } + break; + case 3: + if (!base.slice_from("gentl")) + { + return false; + } + break; + case 4: + if (!base.slice_from("ugli")) + { + return false; + } + break; + case 5: + if (!base.slice_from("earli")) + { + return false; + } + break; + case 6: + if (!base.slice_from("onli")) + { + return false; + } + break; + case 7: + if (!base.slice_from("singl")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_postlude() { + if (!B_Y_found) + { + return false; + } + while(true) + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + golab1: while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { + base.bra = base.cursor; + if (!(base.eq_s("Y"))) + { + break lab2; + } + base.ket = base.cursor; + base.cursor = v_2; + break golab1; + } + base.cursor = v_2; + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + } + if (!base.slice_from("y")) + { + return false; + } + continue; + } + base.cursor = v_1; + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + lab0: { + /** @const */ var /** number */ v_1 = base.cursor; + lab1: { + if (!r_exception1()) + { + break lab1; + } + break lab0; + } + base.cursor = v_1; + lab2: { + { + /** @const */ var /** number */ v_2 = base.cursor; + lab3: { + { + /** @const */ var /** number */ c1 = base.cursor + 3; + if (c1 > base.limit) + { + break lab3; + } + base.cursor = c1; + } + break lab2; + } + base.cursor = v_2; + } + break lab0; + } + base.cursor = v_1; + r_prelude(); + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_Step_1a(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_Step_1b(); + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + r_Step_1c(); + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + r_Step_2(); + base.cursor = base.limit - v_6; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + r_Step_3(); + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + r_Step_4(); + base.cursor = base.limit - v_8; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + r_Step_5(); + base.cursor = base.limit - v_9; + base.cursor = base.limit_backward; + /** @const */ var /** number */ v_10 = base.cursor; + r_postlude(); + base.cursor = v_10; + } + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/esperanto-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/esperanto-stemmer.js new file mode 100644 index 000000000..8fc6af00f --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/esperanto-stemmer.js @@ -0,0 +1,762 @@ +// Generated from esperanto.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var EsperantoStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["", -1, 14], + ["-", 0, 13], + ["cx", 0, 1], + ["gx", 0, 2], + ["hx", 0, 3], + ["jx", 0, 4], + ["q", 0, 12], + ["sx", 0, 5], + ["ux", 0, 6], + ["w", 0, 12], + ["x", 0, 12], + ["y", 0, 12], + ["\u00E1", 0, 7], + ["\u00E9", 0, 8], + ["\u00ED", 0, 9], + ["\u00F3", 0, 10], + ["\u00FA", 0, 11] + ]; + + /** @const */ var a_1 = [ + ["as", -1, -1], + ["i", -1, -1], + ["is", 1, -1], + ["os", -1, -1], + ["u", -1, -1], + ["us", 4, -1] + ]; + + /** @const */ var a_2 = [ + ["ci", -1, -1], + ["gi", -1, -1], + ["hi", -1, -1], + ["li", -1, -1], + ["ili", 3, -1], + ["\u015Dli", 3, -1], + ["mi", -1, -1], + ["ni", -1, -1], + ["oni", 7, -1], + ["ri", -1, -1], + ["si", -1, -1], + ["vi", -1, -1], + ["ivi", 11, -1], + ["\u011Di", -1, -1], + ["\u015Di", -1, -1], + ["i\u015Di", 14, -1], + ["mal\u015Di", 14, -1] + ]; + + /** @const */ var a_3 = [ + ["amb", -1, -1], + ["bald", -1, -1], + ["malbald", 1, -1], + ["morg", -1, -1], + ["postmorg", 3, -1], + ["adi", -1, -1], + ["hodi", -1, -1], + ["ank", -1, -1], + ["\u0109irk", -1, -1], + ["tut\u0109irk", 8, -1], + ["presk", -1, -1], + ["almen", -1, -1], + ["apen", -1, -1], + ["hier", -1, -1], + ["anta\u016Dhier", 13, -1], + ["malgr", -1, -1], + ["ankor", -1, -1], + ["kontr", -1, -1], + ["anstat", -1, -1], + ["kvaz", -1, -1] + ]; + + /** @const */ var a_4 = [ + ["aliu", -1, -1], + ["unu", -1, -1] + ]; + + /** @const */ var a_5 = [ + ["aha", -1, -1], + ["haha", 0, -1], + ["haleluja", -1, -1], + ["hola", -1, -1], + ["hosana", -1, -1], + ["maltra", -1, -1], + ["hura", -1, -1], + ["\u0125a\u0125a", -1, -1], + ["ekde", -1, -1], + ["elde", -1, -1], + ["disde", -1, -1], + ["ehe", -1, -1], + ["maltre", -1, -1], + ["dirlididi", -1, -1], + ["malpli", -1, -1], + ["mal\u0109i", -1, -1], + ["malkaj", -1, -1], + ["amen", -1, -1], + ["tamen", 17, -1], + ["oho", -1, -1], + ["maltro", -1, -1], + ["minus", -1, -1], + ["uhu", -1, -1], + ["muu", -1, -1] + ]; + + /** @const */ var a_6 = [ + ["tri", -1, -1], + ["du", -1, -1], + ["unu", -1, -1] + ]; + + /** @const */ var a_7 = [ + ["dek", -1, -1], + ["cent", -1, -1] + ]; + + /** @const */ var a_8 = [ + ["k", -1, -1], + ["kelk", 0, -1], + ["nen", -1, -1], + ["t", -1, -1], + ["mult", 3, -1], + ["samt", 3, -1], + ["\u0109", -1, -1] + ]; + + /** @const */ var a_9 = [ + ["a", -1, -1], + ["e", -1, -1], + ["i", -1, -1], + ["j", -1, -1, r_not_after_letter], + ["aj", 3, -1], + ["oj", 3, -1], + ["n", -1, -1, r_not_after_letter], + ["an", 6, -1], + ["en", 6, -1], + ["jn", 6, -1, r_not_after_letter], + ["ajn", 9, -1], + ["ojn", 9, -1], + ["on", 6, -1], + ["o", -1, -1], + ["as", -1, -1], + ["is", -1, -1], + ["os", -1, -1], + ["us", -1, -1], + ["u", -1, -1] + ]; + + /** @const */ var /** Array */ g_vowel = [17, 65, 16]; + + /** @const */ var /** Array */ g_aou = [1, 64, 16]; + + /** @const */ var /** Array */ g_digit = [255, 3]; + + var /** boolean */ B_foreign = false; + + + /** @return {boolean} */ + function r_canonical_form() { + var /** number */ among_var; + B_foreign = false; + while(true) + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u0109")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u011D")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u0125")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u0135")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u015D")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u016D")) + { + return false; + } + break; + case 7: + if (!base.slice_from("a")) + { + return false; + } + B_foreign = true; + break; + case 8: + if (!base.slice_from("e")) + { + return false; + } + B_foreign = true; + break; + case 9: + if (!base.slice_from("i")) + { + return false; + } + B_foreign = true; + break; + case 10: + if (!base.slice_from("o")) + { + return false; + } + B_foreign = true; + break; + case 11: + if (!base.slice_from("u")) + { + return false; + } + B_foreign = true; + break; + case 12: + B_foreign = true; + break; + case 13: + B_foreign = false; + break; + case 14: + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + break; + } + continue; + } + base.cursor = v_1; + break; + } + lab1: { + if (!B_foreign) + { + break lab1; + } + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_initial_apostrophe() { + base.bra = base.cursor; + if (!(base.eq_s("'"))) + { + return false; + } + base.ket = base.cursor; + if (!(base.eq_s("st"))) + { + return false; + } + if (base.find_among(a_1) == 0) + { + return false; + } + if (base.cursor < base.limit) + { + return false; + } + if (!base.slice_from("e")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_pronoun() { + base.ket = base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("n"))) + { + base.cursor = base.limit - v_1; + break lab0; + } + } + base.bra = base.cursor; + if (base.find_among_b(a_2) == 0) + { + return false; + } + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + if (base.cursor > base.limit_backward) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_2; + if (!(base.eq_s_b("-"))) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_final_apostrophe() { + base.ket = base.cursor; + if (!(base.eq_s_b("'"))) + { + return false; + } + base.bra = base.cursor; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("l"))) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + if (!base.slice_from("a")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + if (!(base.eq_s_b("un"))) + { + break lab2; + } + if (base.cursor > base.limit_backward) + { + break lab2; + } + if (!base.slice_from("u")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab3: { + if (base.find_among_b(a_3) == 0) + { + break lab3; + } + lab4: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab5: { + if (base.cursor > base.limit_backward) + { + break lab5; + } + break lab4; + } + base.cursor = base.limit - v_2; + if (!(base.eq_s_b("-"))) + { + break lab3; + } + } + if (!base.slice_from("a\u016D")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!base.slice_from("o")) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_ujn_suffix() { + base.ket = base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("n"))) + { + base.cursor = base.limit - v_1; + break lab0; + } + } + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("j"))) + { + base.cursor = base.limit - v_2; + break lab1; + } + } + base.bra = base.cursor; + if (base.find_among_b(a_4) == 0) + { + return false; + } + lab2: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab3: { + if (base.cursor > base.limit_backward) + { + break lab3; + } + break lab2; + } + base.cursor = base.limit - v_3; + if (!(base.eq_s_b("-"))) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_uninflected() { + if (base.find_among_b(a_5) == 0) + { + return false; + } + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (base.cursor > base.limit_backward) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("-"))) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_merged_numeral() { + if (base.find_among_b(a_6) == 0) + { + return false; + } + if (base.find_among_b(a_7) == 0) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_correlative() { + base.ket = base.cursor; + base.bra = base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!(base.eq_s_b("n"))) + { + base.cursor = base.limit - v_3; + break lab2; + } + } + base.bra = base.cursor; + if (!(base.eq_s_b("e"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab3: { + if (!(base.eq_s_b("n"))) + { + base.cursor = base.limit - v_4; + break lab3; + } + } + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab4: { + if (!(base.eq_s_b("j"))) + { + base.cursor = base.limit - v_5; + break lab4; + } + } + base.bra = base.cursor; + if (!(base.in_grouping_b(g_aou, 97, 117))) + { + return false; + } + } + if (!(base.eq_s_b("i"))) + { + return false; + } + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab5: { + if (base.find_among_b(a_8) == 0) + { + base.cursor = base.limit - v_6; + break lab5; + } + } + lab6: { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab7: { + if (base.cursor > base.limit_backward) + { + break lab7; + } + break lab6; + } + base.cursor = base.limit - v_7; + if (!(base.eq_s_b("-"))) + { + return false; + } + } + base.cursor = base.limit - v_1; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_long_word() { + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + for (var /** number */ v_2 = 2; v_2 > 0; v_2--) + { + if (!base.go_out_grouping_b(g_vowel, 97, 117)) + { + break lab1; + } + base.cursor--; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + golab3: while(true) + { + lab4: { + if (!(base.eq_s_b("-"))) + { + break lab4; + } + break golab3; + } + if (base.cursor <= base.limit_backward) + { + break lab2; + } + base.cursor--; + } + if (base.cursor <= base.limit_backward) + { + break lab2; + } + base.cursor--; + break lab0; + } + base.cursor = base.limit - v_1; + if (!base.go_out_grouping_b(g_digit, 48, 57)) + { + return false; + } + base.cursor--; + } + return true; + }; + + /** @return {boolean} */ + function r_not_after_letter() { + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("-"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.in_grouping_b(g_digit, 48, 57))) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_standard_suffix() { + base.ket = base.cursor; + if (base.find_among_b(a_9) == 0) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("-"))) + { + base.cursor = base.limit - v_1; + break lab0; + } + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + /** @const */ var /** number */ v_1 = base.cursor; + if (!r_canonical_form()) + { + return false; + } + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + r_initial_apostrophe(); + base.cursor = v_2; + base.limit_backward = base.cursor; base.cursor = base.limit; + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab0: { + if (!r_pronoun()) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_3; + } + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_final_apostrophe(); + base.cursor = base.limit - v_4; + { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab1: { + if (!r_correlative()) + { + break lab1; + } + return false; + } + base.cursor = base.limit - v_5; + } + { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab2: { + if (!r_uninflected()) + { + break lab2; + } + return false; + } + base.cursor = base.limit - v_6; + } + { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab3: { + if (!r_merged_numeral()) + { + break lab3; + } + return false; + } + base.cursor = base.limit - v_7; + } + { + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab4: { + if (!r_ujn_suffix()) + { + break lab4; + } + return false; + } + base.cursor = base.limit - v_8; + } + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + if (!r_long_word()) + { + return false; + } + base.cursor = base.limit - v_9; + if (!r_standard_suffix()) + { + return false; + } + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/estonian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/estonian-stemmer.js new file mode 100644 index 000000000..2700c0b33 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/estonian-stemmer.js @@ -0,0 +1,1088 @@ +// Generated from estonian.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var EstonianStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["gi", -1, 1], + ["ki", -1, 2] + ]; + + /** @const */ var a_1 = [ + ["da", -1, 3], + ["mata", -1, 1], + ["b", -1, 3], + ["ksid", -1, 1], + ["nuksid", 3, 1], + ["me", -1, 3], + ["sime", 5, 1], + ["ksime", 6, 1], + ["nuksime", 7, 1], + ["akse", -1, 2], + ["dakse", 9, 1], + ["takse", 9, 1], + ["site", -1, 1], + ["ksite", 12, 1], + ["nuksite", 13, 1], + ["n", -1, 3], + ["sin", 15, 1], + ["ksin", 16, 1], + ["nuksin", 17, 1], + ["daks", -1, 1], + ["taks", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["aa", -1, -1], + ["ee", -1, -1], + ["ii", -1, -1], + ["oo", -1, -1], + ["uu", -1, -1], + ["\u00E4\u00E4", -1, -1], + ["\u00F5\u00F5", -1, -1], + ["\u00F6\u00F6", -1, -1], + ["\u00FC\u00FC", -1, -1] + ]; + + /** @const */ var a_3 = [ + ["i", -1, 1] + ]; + + /** @const */ var a_4 = [ + ["lane", -1, 1], + ["line", -1, 3], + ["mine", -1, 2], + ["lasse", -1, 1], + ["lisse", -1, 3], + ["misse", -1, 2], + ["lasi", -1, 1], + ["lisi", -1, 3], + ["misi", -1, 2], + ["last", -1, 1], + ["list", -1, 3], + ["mist", -1, 2] + ]; + + /** @const */ var a_5 = [ + ["ga", -1, 1], + ["ta", -1, 1], + ["le", -1, 1], + ["sse", -1, 1], + ["l", -1, 1], + ["s", -1, 1], + ["ks", 5, 1], + ["t", -1, 2], + ["lt", 7, 1], + ["st", 7, 1] + ]; + + /** @const */ var a_6 = [ + ["", -1, 2], + ["las", 0, 1], + ["lis", 0, 1], + ["mis", 0, 1], + ["t", 0, -1] + ]; + + /** @const */ var a_7 = [ + ["d", -1, 4], + ["sid", 0, 2], + ["de", -1, 4], + ["ikkude", 2, 1], + ["ike", -1, 1], + ["ikke", -1, 1], + ["te", -1, 3] + ]; + + /** @const */ var a_8 = [ + ["va", -1, -1], + ["du", -1, -1], + ["nu", -1, -1], + ["tu", -1, -1] + ]; + + /** @const */ var a_9 = [ + ["kk", -1, 1], + ["pp", -1, 2], + ["tt", -1, 3] + ]; + + /** @const */ var a_10 = [ + ["ma", -1, 2], + ["mai", -1, 1], + ["m", -1, 1] + ]; + + /** @const */ var a_11 = [ + ["joob", -1, 1], + ["jood", -1, 1], + ["joodakse", 1, 1], + ["jooma", -1, 1], + ["joomata", 3, 1], + ["joome", -1, 1], + ["joon", -1, 1], + ["joote", -1, 1], + ["joovad", -1, 1], + ["juua", -1, 1], + ["juuakse", 9, 1], + ["j\u00E4i", -1, 12], + ["j\u00E4id", 11, 12], + ["j\u00E4ime", 11, 12], + ["j\u00E4in", 11, 12], + ["j\u00E4ite", 11, 12], + ["j\u00E4\u00E4b", -1, 12], + ["j\u00E4\u00E4d", -1, 12], + ["j\u00E4\u00E4da", 17, 12], + ["j\u00E4\u00E4dakse", 18, 12], + ["j\u00E4\u00E4di", 17, 12], + ["j\u00E4\u00E4ks", -1, 12], + ["j\u00E4\u00E4ksid", 21, 12], + ["j\u00E4\u00E4ksime", 21, 12], + ["j\u00E4\u00E4ksin", 21, 12], + ["j\u00E4\u00E4ksite", 21, 12], + ["j\u00E4\u00E4ma", -1, 12], + ["j\u00E4\u00E4mata", 26, 12], + ["j\u00E4\u00E4me", -1, 12], + ["j\u00E4\u00E4n", -1, 12], + ["j\u00E4\u00E4te", -1, 12], + ["j\u00E4\u00E4vad", -1, 12], + ["j\u00F5i", -1, 1], + ["j\u00F5id", 32, 1], + ["j\u00F5ime", 32, 1], + ["j\u00F5in", 32, 1], + ["j\u00F5ite", 32, 1], + ["keeb", -1, 4], + ["keed", -1, 4], + ["keedakse", 38, 4], + ["keeks", -1, 4], + ["keeksid", 40, 4], + ["keeksime", 40, 4], + ["keeksin", 40, 4], + ["keeksite", 40, 4], + ["keema", -1, 4], + ["keemata", 45, 4], + ["keeme", -1, 4], + ["keen", -1, 4], + ["kees", -1, 4], + ["keeta", -1, 4], + ["keete", -1, 4], + ["keevad", -1, 4], + ["k\u00E4ia", -1, 8], + ["k\u00E4iakse", 53, 8], + ["k\u00E4ib", -1, 8], + ["k\u00E4id", -1, 8], + ["k\u00E4idi", 56, 8], + ["k\u00E4iks", -1, 8], + ["k\u00E4iksid", 58, 8], + ["k\u00E4iksime", 58, 8], + ["k\u00E4iksin", 58, 8], + ["k\u00E4iksite", 58, 8], + ["k\u00E4ima", -1, 8], + ["k\u00E4imata", 63, 8], + ["k\u00E4ime", -1, 8], + ["k\u00E4in", -1, 8], + ["k\u00E4is", -1, 8], + ["k\u00E4ite", -1, 8], + ["k\u00E4ivad", -1, 8], + ["laob", -1, 16], + ["laod", -1, 16], + ["laoks", -1, 16], + ["laoksid", 72, 16], + ["laoksime", 72, 16], + ["laoksin", 72, 16], + ["laoksite", 72, 16], + ["laome", -1, 16], + ["laon", -1, 16], + ["laote", -1, 16], + ["laovad", -1, 16], + ["loeb", -1, 14], + ["loed", -1, 14], + ["loeks", -1, 14], + ["loeksid", 83, 14], + ["loeksime", 83, 14], + ["loeksin", 83, 14], + ["loeksite", 83, 14], + ["loeme", -1, 14], + ["loen", -1, 14], + ["loete", -1, 14], + ["loevad", -1, 14], + ["loob", -1, 7], + ["lood", -1, 7], + ["loodi", 93, 7], + ["looks", -1, 7], + ["looksid", 95, 7], + ["looksime", 95, 7], + ["looksin", 95, 7], + ["looksite", 95, 7], + ["looma", -1, 7], + ["loomata", 100, 7], + ["loome", -1, 7], + ["loon", -1, 7], + ["loote", -1, 7], + ["loovad", -1, 7], + ["luua", -1, 7], + ["luuakse", 106, 7], + ["l\u00F5i", -1, 6], + ["l\u00F5id", 108, 6], + ["l\u00F5ime", 108, 6], + ["l\u00F5in", 108, 6], + ["l\u00F5ite", 108, 6], + ["l\u00F6\u00F6b", -1, 5], + ["l\u00F6\u00F6d", -1, 5], + ["l\u00F6\u00F6dakse", 114, 5], + ["l\u00F6\u00F6di", 114, 5], + ["l\u00F6\u00F6ks", -1, 5], + ["l\u00F6\u00F6ksid", 117, 5], + ["l\u00F6\u00F6ksime", 117, 5], + ["l\u00F6\u00F6ksin", 117, 5], + ["l\u00F6\u00F6ksite", 117, 5], + ["l\u00F6\u00F6ma", -1, 5], + ["l\u00F6\u00F6mata", 122, 5], + ["l\u00F6\u00F6me", -1, 5], + ["l\u00F6\u00F6n", -1, 5], + ["l\u00F6\u00F6te", -1, 5], + ["l\u00F6\u00F6vad", -1, 5], + ["l\u00FC\u00FCa", -1, 5], + ["l\u00FC\u00FCakse", 128, 5], + ["m\u00FC\u00FCa", -1, 13], + ["m\u00FC\u00FCakse", 130, 13], + ["m\u00FC\u00FCb", -1, 13], + ["m\u00FC\u00FCd", -1, 13], + ["m\u00FC\u00FCdi", 133, 13], + ["m\u00FC\u00FCks", -1, 13], + ["m\u00FC\u00FCksid", 135, 13], + ["m\u00FC\u00FCksime", 135, 13], + ["m\u00FC\u00FCksin", 135, 13], + ["m\u00FC\u00FCksite", 135, 13], + ["m\u00FC\u00FCma", -1, 13], + ["m\u00FC\u00FCmata", 140, 13], + ["m\u00FC\u00FCme", -1, 13], + ["m\u00FC\u00FCn", -1, 13], + ["m\u00FC\u00FCs", -1, 13], + ["m\u00FC\u00FCte", -1, 13], + ["m\u00FC\u00FCvad", -1, 13], + ["n\u00E4eb", -1, 18], + ["n\u00E4ed", -1, 18], + ["n\u00E4eks", -1, 18], + ["n\u00E4eksid", 149, 18], + ["n\u00E4eksime", 149, 18], + ["n\u00E4eksin", 149, 18], + ["n\u00E4eksite", 149, 18], + ["n\u00E4eme", -1, 18], + ["n\u00E4en", -1, 18], + ["n\u00E4ete", -1, 18], + ["n\u00E4evad", -1, 18], + ["n\u00E4gema", -1, 18], + ["n\u00E4gemata", 158, 18], + ["n\u00E4ha", -1, 18], + ["n\u00E4hakse", 160, 18], + ["n\u00E4hti", -1, 18], + ["p\u00F5eb", -1, 15], + ["p\u00F5ed", -1, 15], + ["p\u00F5eks", -1, 15], + ["p\u00F5eksid", 165, 15], + ["p\u00F5eksime", 165, 15], + ["p\u00F5eksin", 165, 15], + ["p\u00F5eksite", 165, 15], + ["p\u00F5eme", -1, 15], + ["p\u00F5en", -1, 15], + ["p\u00F5ete", -1, 15], + ["p\u00F5evad", -1, 15], + ["saab", -1, 2], + ["saad", -1, 2], + ["saada", 175, 2], + ["saadakse", 176, 2], + ["saadi", 175, 2], + ["saaks", -1, 2], + ["saaksid", 179, 2], + ["saaksime", 179, 2], + ["saaksin", 179, 2], + ["saaksite", 179, 2], + ["saama", -1, 2], + ["saamata", 184, 2], + ["saame", -1, 2], + ["saan", -1, 2], + ["saate", -1, 2], + ["saavad", -1, 2], + ["sai", -1, 2], + ["said", 190, 2], + ["saime", 190, 2], + ["sain", 190, 2], + ["saite", 190, 2], + ["s\u00F5i", -1, 9], + ["s\u00F5id", 195, 9], + ["s\u00F5ime", 195, 9], + ["s\u00F5in", 195, 9], + ["s\u00F5ite", 195, 9], + ["s\u00F6\u00F6b", -1, 9], + ["s\u00F6\u00F6d", -1, 9], + ["s\u00F6\u00F6dakse", 201, 9], + ["s\u00F6\u00F6di", 201, 9], + ["s\u00F6\u00F6ks", -1, 9], + ["s\u00F6\u00F6ksid", 204, 9], + ["s\u00F6\u00F6ksime", 204, 9], + ["s\u00F6\u00F6ksin", 204, 9], + ["s\u00F6\u00F6ksite", 204, 9], + ["s\u00F6\u00F6ma", -1, 9], + ["s\u00F6\u00F6mata", 209, 9], + ["s\u00F6\u00F6me", -1, 9], + ["s\u00F6\u00F6n", -1, 9], + ["s\u00F6\u00F6te", -1, 9], + ["s\u00F6\u00F6vad", -1, 9], + ["s\u00FC\u00FCa", -1, 9], + ["s\u00FC\u00FCakse", 215, 9], + ["teeb", -1, 17], + ["teed", -1, 17], + ["teeks", -1, 17], + ["teeksid", 219, 17], + ["teeksime", 219, 17], + ["teeksin", 219, 17], + ["teeksite", 219, 17], + ["teeme", -1, 17], + ["teen", -1, 17], + ["teete", -1, 17], + ["teevad", -1, 17], + ["tegema", -1, 17], + ["tegemata", 228, 17], + ["teha", -1, 17], + ["tehakse", 230, 17], + ["tehti", -1, 17], + ["toob", -1, 10], + ["tood", -1, 10], + ["toodi", 234, 10], + ["tooks", -1, 10], + ["tooksid", 236, 10], + ["tooksime", 236, 10], + ["tooksin", 236, 10], + ["tooksite", 236, 10], + ["tooma", -1, 10], + ["toomata", 241, 10], + ["toome", -1, 10], + ["toon", -1, 10], + ["toote", -1, 10], + ["toovad", -1, 10], + ["tuua", -1, 10], + ["tuuakse", 247, 10], + ["t\u00F5i", -1, 10], + ["t\u00F5id", 249, 10], + ["t\u00F5ime", 249, 10], + ["t\u00F5in", 249, 10], + ["t\u00F5ite", 249, 10], + ["viia", -1, 3], + ["viiakse", 254, 3], + ["viib", -1, 3], + ["viid", -1, 3], + ["viidi", 257, 3], + ["viiks", -1, 3], + ["viiksid", 259, 3], + ["viiksime", 259, 3], + ["viiksin", 259, 3], + ["viiksite", 259, 3], + ["viima", -1, 3], + ["viimata", 264, 3], + ["viime", -1, 3], + ["viin", -1, 3], + ["viisime", -1, 3], + ["viisin", -1, 3], + ["viisite", -1, 3], + ["viite", -1, 3], + ["viivad", -1, 3], + ["v\u00F5ib", -1, 11], + ["v\u00F5id", -1, 11], + ["v\u00F5ida", 274, 11], + ["v\u00F5idakse", 275, 11], + ["v\u00F5idi", 274, 11], + ["v\u00F5iks", -1, 11], + ["v\u00F5iksid", 278, 11], + ["v\u00F5iksime", 278, 11], + ["v\u00F5iksin", 278, 11], + ["v\u00F5iksite", 278, 11], + ["v\u00F5ima", -1, 11], + ["v\u00F5imata", 283, 11], + ["v\u00F5ime", -1, 11], + ["v\u00F5in", -1, 11], + ["v\u00F5is", -1, 11], + ["v\u00F5ite", -1, 11], + ["v\u00F5ivad", -1, 11] + ]; + + /** @const */ var /** Array */ g_V1 = [17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 48, 8]; + + /** @const */ var /** Array */ g_RV = [17, 65, 16]; + + /** @const */ var /** Array */ g_KI = [117, 66, 6, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 16]; + + /** @const */ var /** Array */ g_GI = [21, 123, 243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 48, 8]; + + var /** number */ I_p1 = 0; + + + /** @return {boolean} */ + function r_mark_regions() { + I_p1 = base.limit; + if (!base.go_out_grouping(g_V1, 97, 252)) + { + return false; + } + base.cursor++; + if (!base.go_in_grouping(g_V1, 97, 252)) + { + return false; + } + base.cursor++; + I_p1 = base.cursor; + return true; + }; + + /** @return {boolean} */ + function r_emphasis() { + var /** number */ among_var; + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + among_var = base.find_among_b(a_0); + if (among_var == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + { + /** @const */ var /** number */ c1 = base.cursor - 4; + if (c1 < base.limit_backward) + { + return false; + } + base.cursor = c1; + } + base.cursor = base.limit - v_2; + switch (among_var) { + case 1: + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + if (!(base.in_grouping_b(g_GI, 97, 252))) + { + return false; + } + base.cursor = base.limit - v_3; + { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab0: { + if (!r_LONGV()) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_4; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!(base.in_grouping_b(g_KI, 98, 382))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_verb() { + var /** number */ among_var; + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("a")) + { + return false; + } + break; + case 3: + if (!(base.in_grouping_b(g_V1, 97, 252))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_LONGV() { + if (base.find_among_b(a_2) == 0) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_i_plural() { + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + if (base.find_among_b(a_3) == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + if (!(base.in_grouping_b(g_RV, 97, 117))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_special_noun_endings() { + var /** number */ among_var; + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + switch (among_var) { + case 1: + if (!base.slice_from("lase")) + { + return false; + } + break; + case 2: + if (!base.slice_from("mise")) + { + return false; + } + break; + case 3: + if (!base.slice_from("lise")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_case_ending() { + var /** number */ among_var; + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + among_var = base.find_among_b(a_5); + if (among_var == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + switch (among_var) { + case 1: + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!(base.in_grouping_b(g_RV, 97, 117))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_2; + if (!r_LONGV()) + { + return false; + } + } + break; + case 2: + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + { + /** @const */ var /** number */ c1 = base.cursor - 4; + if (c1 < base.limit_backward) + { + return false; + } + base.cursor = c1; + } + base.cursor = base.limit - v_3; + break; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_plural_three_first_cases() { + var /** number */ among_var; + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + among_var = base.find_among_b(a_7); + if (among_var == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + switch (among_var) { + case 1: + if (!base.slice_from("iku")) + { + return false; + } + break; + case 2: + { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab0: { + if (!r_LONGV()) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_2; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + lab1: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + { + /** @const */ var /** number */ c1 = base.cursor - 4; + if (c1 < base.limit_backward) + { + break lab2; + } + base.cursor = c1; + } + base.cursor = base.limit - v_4; + among_var = base.find_among_b(a_6); + switch (among_var) { + case 1: + if (!base.slice_from("e")) + { + return false; + } + break; + case 2: + if (!base.slice_del()) + { + return false; + } + break; + } + break lab1; + } + base.cursor = base.limit - v_3; + if (!base.slice_from("t")) + { + return false; + } + } + break; + case 4: + lab3: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab4: { + if (!(base.in_grouping_b(g_RV, 97, 117))) + { + break lab4; + } + break lab3; + } + base.cursor = base.limit - v_5; + if (!r_LONGV()) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_nu() { + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + if (base.find_among_b(a_8) == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_undouble_kpt() { + var /** number */ among_var; + if (!(base.in_grouping_b(g_V1, 97, 252))) + { + return false; + } + if (I_p1 > base.cursor) + { + return false; + } + base.ket = base.cursor; + among_var = base.find_among_b(a_9); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("k")) + { + return false; + } + break; + case 2: + if (!base.slice_from("p")) + { + return false; + } + break; + case 3: + if (!base.slice_from("t")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_degrees() { + var /** number */ among_var; + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + among_var = base.find_among_b(a_10); + if (among_var == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + switch (among_var) { + case 1: + if (!(base.in_grouping_b(g_RV, 97, 117))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_substantive() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + r_special_noun_endings(); + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + r_case_ending(); + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_plural_three_first_cases(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_degrees(); + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + r_i_plural(); + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + r_nu(); + base.cursor = base.limit - v_6; + return true; + }; + + /** @return {boolean} */ + function r_verb_exceptions() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_11); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + if (base.cursor < base.limit) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("joo")) + { + return false; + } + break; + case 2: + if (!base.slice_from("saa")) + { + return false; + } + break; + case 3: + if (!base.slice_from("viima")) + { + return false; + } + break; + case 4: + if (!base.slice_from("keesi")) + { + return false; + } + break; + case 5: + if (!base.slice_from("l\u00F6\u00F6")) + { + return false; + } + break; + case 6: + if (!base.slice_from("l\u00F5i")) + { + return false; + } + break; + case 7: + if (!base.slice_from("loo")) + { + return false; + } + break; + case 8: + if (!base.slice_from("k\u00E4isi")) + { + return false; + } + break; + case 9: + if (!base.slice_from("s\u00F6\u00F6")) + { + return false; + } + break; + case 10: + if (!base.slice_from("too")) + { + return false; + } + break; + case 11: + if (!base.slice_from("v\u00F5isi")) + { + return false; + } + break; + case 12: + if (!base.slice_from("j\u00E4\u00E4ma")) + { + return false; + } + break; + case 13: + if (!base.slice_from("m\u00FC\u00FCsi")) + { + return false; + } + break; + case 14: + if (!base.slice_from("luge")) + { + return false; + } + break; + case 15: + if (!base.slice_from("p\u00F5de")) + { + return false; + } + break; + case 16: + if (!base.slice_from("ladu")) + { + return false; + } + break; + case 17: + if (!base.slice_from("tegi")) + { + return false; + } + break; + case 18: + if (!base.slice_from("n\u00E4gi")) + { + return false; + } + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!r_verb_exceptions()) + { + break lab0; + } + return false; + } + base.cursor = v_1; + } + /** @const */ var /** number */ v_2 = base.cursor; + r_mark_regions(); + base.cursor = v_2; + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_emphasis(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab1: { + lab2: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab3: { + if (!r_verb()) + { + break lab3; + } + break lab2; + } + base.cursor = base.limit - v_5; + r_substantive(); + } + } + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + r_undouble_kpt(); + base.cursor = base.limit - v_6; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/finnish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/finnish-stemmer.js index c907c4a70..07fd78516 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/finnish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/finnish-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from finnish.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -FinnishStemmer = function() { +var FinnishStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["pa", -1, 1], ["sti", -1, 2], @@ -141,84 +142,34 @@ FinnishStemmer = function() { function r_mark_regions() { I_p1 = base.limit; I_p2 = base.limit; - golab0: while(true) + if (!base.go_out_grouping(g_V1, 97, 246)) { - var /** number */ v_1 = base.cursor; - lab1: { - if (!(base.in_grouping(g_V1, 97, 246))) - { - break lab1; - } - base.cursor = v_1; - break golab0; - } - base.cursor = v_1; - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } - golab2: while(true) + base.cursor++; + if (!base.go_in_grouping(g_V1, 97, 246)) { - lab3: { - if (!(base.out_grouping(g_V1, 97, 246))) - { - break lab3; - } - break golab2; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } + base.cursor++; I_p1 = base.cursor; - golab4: while(true) + if (!base.go_out_grouping(g_V1, 97, 246)) { - var /** number */ v_3 = base.cursor; - lab5: { - if (!(base.in_grouping(g_V1, 97, 246))) - { - break lab5; - } - base.cursor = v_3; - break golab4; - } - base.cursor = v_3; - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } - golab6: while(true) + base.cursor++; + if (!base.go_in_grouping(g_V1, 97, 246)) { - lab7: { - if (!(base.out_grouping(g_V1, 97, 246))) - { - break lab7; - } - break golab6; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } + base.cursor++; I_p2 = base.cursor; return true; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -228,17 +179,17 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; among_var = base.find_among_b(a_0); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: if (!(base.in_grouping_b(g_particle_end, 97, 246))) @@ -267,21 +218,21 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; among_var = base.find_among_b(a_4); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("k"))) { @@ -289,7 +240,7 @@ FinnishStemmer = function() { } return false; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; } if (!base.slice_del()) { @@ -381,17 +332,17 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; among_var = base.find_among_b(a_6); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: if (!(base.eq_s_b("a"))) @@ -430,11 +381,11 @@ FinnishStemmer = function() { } break; case 7: - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab1: { - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab2: { if (!r_LONG()) { @@ -442,17 +393,17 @@ FinnishStemmer = function() { } break lab1; } - base.cursor = base.limit - v_5; + base.cursor = base.limit - v_4; if (!(base.eq_s_b("ie"))) { - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; break lab0; } } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; if (base.cursor <= base.limit_backward) { - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; break lab0; } base.cursor--; @@ -485,21 +436,21 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p2; base.ket = base.cursor; among_var = base.find_among_b(a_7); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("po"))) { @@ -507,7 +458,7 @@ FinnishStemmer = function() { } return false; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; } break; } @@ -524,16 +475,16 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; if (base.find_among_b(a_8) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; if (!base.slice_del()) { return false; @@ -548,46 +499,46 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; if (!(base.eq_s_b("t"))) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.in_grouping_b(g_V1, 97, 246))) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; if (!base.slice_del()) { return false; } - base.limit_backward = v_2; + base.limit_backward = v_1; if (base.cursor < I_p2) { return false; } - var /** number */ v_5 = base.limit_backward; + /** @const */ var /** number */ v_3 = base.limit_backward; base.limit_backward = I_p2; base.ket = base.cursor; among_var = base.find_among_b(a_9); if (among_var == 0) { - base.limit_backward = v_5; + base.limit_backward = v_3; return false; } base.bra = base.cursor; - base.limit_backward = v_5; + base.limit_backward = v_3; switch (among_var) { case 1: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("po"))) { @@ -595,7 +546,7 @@ FinnishStemmer = function() { } return false; } - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_4; } break; } @@ -612,16 +563,16 @@ FinnishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; if (!r_LONG()) { break lab0; } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; base.ket = base.cursor; if (base.cursor <= base.limit_backward) { @@ -634,8 +585,8 @@ FinnishStemmer = function() { return false; } } - base.cursor = base.limit - v_3; - var /** number */ v_5 = base.limit - base.cursor; + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab1: { base.ket = base.cursor; if (!(base.in_grouping_b(g_AEI, 97, 228))) @@ -652,8 +603,8 @@ FinnishStemmer = function() { return false; } } - base.cursor = base.limit - v_5; - var /** number */ v_6 = base.limit - base.cursor; + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab2: { base.ket = base.cursor; if (!(base.eq_s_b("j"))) @@ -662,7 +613,7 @@ FinnishStemmer = function() { } base.bra = base.cursor; lab3: { - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab4: { if (!(base.eq_s_b("o"))) { @@ -670,7 +621,7 @@ FinnishStemmer = function() { } break lab3; } - base.cursor = base.limit - v_7; + base.cursor = base.limit - v_6; if (!(base.eq_s_b("u"))) { break lab2; @@ -681,8 +632,8 @@ FinnishStemmer = function() { return false; } } - base.cursor = base.limit - v_6; - var /** number */ v_8 = base.limit - base.cursor; + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab5: { base.ket = base.cursor; if (!(base.eq_s_b("o"))) @@ -699,25 +650,11 @@ FinnishStemmer = function() { return false; } } - base.cursor = base.limit - v_8; - base.limit_backward = v_2; - golab6: while(true) + base.cursor = base.limit - v_7; + base.limit_backward = v_1; + if (!base.go_in_grouping_b(g_V1, 97, 246)) { - var /** number */ v_9 = base.limit - base.cursor; - lab7: { - if (!(base.out_grouping_b(g_V1, 97, 246))) - { - break lab7; - } - base.cursor = base.limit - v_9; - break golab6; - } - base.cursor = base.limit - v_9; - if (base.cursor <= base.limit_backward) - { - return false; - } - base.cursor--; + return false; } base.ket = base.cursor; if (!(base.in_grouping_b(g_C, 98, 122))) @@ -742,21 +679,21 @@ FinnishStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_mark_regions(); base.cursor = v_1; B_ending_removed = false; base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_particle_etc(); base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_possessive(); base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; r_case_ending(); base.cursor = base.limit - v_4; - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; r_other_endings(); base.cursor = base.limit - v_5; lab0: { @@ -765,18 +702,18 @@ FinnishStemmer = function() { { break lab1; } - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; r_i_plural(); - base.cursor = base.limit - v_7; + base.cursor = base.limit - v_6; break lab0; } - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; r_t_plural(); - base.cursor = base.limit - v_8; + base.cursor = base.limit - v_7; } - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; r_tidy(); - base.cursor = base.limit - v_9; + base.cursor = base.limit - v_8; base.cursor = base.limit_backward; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/french-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/french-stemmer.js index c9708312a..0e7b06554 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/french-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/french-stemmer.js @@ -1,10 +1,12 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from french.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -FrenchStemmer = function() { +var FrenchStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["col", -1, -1], + ["ni", -1, 1], ["par", -1, -1], ["tap", -1, -1] ]; @@ -42,7 +44,7 @@ FrenchStemmer = function() { ["logie", -1, 3], ["able", -1, 1], ["isme", -1, 1], - ["euse", -1, 11], + ["euse", -1, 12], ["iste", -1, 1], ["ive", -1, 8], ["if", -1, 8], @@ -57,7 +59,7 @@ FrenchStemmer = function() { ["logies", -1, 3], ["ables", -1, 1], ["ismes", -1, 1], - ["euses", -1, 11], + ["euses", -1, 12], ["istes", -1, 1], ["ives", -1, 8], ["ifs", -1, 8], @@ -65,18 +67,19 @@ FrenchStemmer = function() { ["ations", -1, 2], ["utions", -1, 4], ["ateurs", -1, 2], - ["ments", -1, 15], + ["ments", -1, 16], ["ements", 30, 6], - ["issements", 31, 12], + ["issements", 31, 13], ["it\u00E9s", -1, 7], - ["ment", -1, 15], + ["ment", -1, 16], ["ement", 34, 6], - ["issement", 35, 12], - ["amment", 34, 13], - ["emment", 34, 14], + ["issement", 35, 13], + ["amment", 34, 14], + ["emment", 34, 15], ["aux", -1, 10], ["eaux", 39, 9], ["eux", -1, 1], + ["oux", -1, 11], ["it\u00E9", -1, 7] ]; @@ -119,47 +122,56 @@ FrenchStemmer = function() { ]; /** @const */ var a_6 = [ + ["al", -1, 1], + ["\u00E9pl", -1, -1], + ["auv", -1, -1] + ]; + + /** @const */ var a_7 = [ ["a", -1, 3], ["era", 0, 2], + ["aise", -1, 4], ["asse", -1, 3], ["ante", -1, 3], ["\u00E9e", -1, 2], ["ai", -1, 3], - ["erai", 5, 2], + ["erai", 6, 2], ["er", -1, 2], ["as", -1, 3], - ["eras", 8, 2], + ["eras", 9, 2], ["\u00E2mes", -1, 3], + ["aises", -1, 4], ["asses", -1, 3], ["antes", -1, 3], ["\u00E2tes", -1, 3], ["\u00E9es", -1, 2], - ["ais", -1, 3], - ["erais", 15, 2], + ["ais", -1, 4], + ["eais", 17, 2], + ["erais", 17, 2], ["ions", -1, 1], - ["erions", 17, 2], - ["assions", 17, 3], + ["erions", 20, 2], + ["assions", 20, 3], ["erons", -1, 2], ["ants", -1, 3], ["\u00E9s", -1, 2], ["ait", -1, 3], - ["erait", 23, 2], + ["erait", 26, 2], ["ant", -1, 3], ["aIent", -1, 3], - ["eraIent", 26, 2], + ["eraIent", 29, 2], ["\u00E8rent", -1, 2], ["assent", -1, 3], ["eront", -1, 2], ["\u00E2t", -1, 3], ["ez", -1, 2], - ["iez", 32, 2], - ["eriez", 33, 2], - ["assiez", 33, 3], - ["erez", 32, 2], + ["iez", 35, 2], + ["eriez", 36, 2], + ["assiez", 36, 3], + ["erez", 35, 2], ["\u00E9", -1, 2] ]; - /** @const */ var a_7 = [ + /** @const */ var a_8 = [ ["e", -1, 3], ["I\u00E8re", 0, 2], ["i\u00E8re", 0, 2], @@ -168,7 +180,7 @@ FrenchStemmer = function() { ["ier", -1, 2] ]; - /** @const */ var a_8 = [ + /** @const */ var a_9 = [ ["ell", -1, -1], ["eill", -1, -1], ["enn", -1, -1], @@ -178,6 +190,10 @@ FrenchStemmer = function() { /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 130, 103, 8, 5]; + /** @const */ var /** Array */ g_oux_ending = [65, 85]; + + /** @const */ var /** Array */ g_elision_char = [131, 14, 3]; + /** @const */ var /** Array */ g_keep_with_s = [1, 65, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; var /** number */ I_p2 = 0; @@ -185,18 +201,55 @@ FrenchStemmer = function() { var /** number */ I_pV = 0; + /** @return {boolean} */ + function r_elisions() { + base.bra = base.cursor; + lab0: { + /** @const */ var /** number */ v_1 = base.cursor; + lab1: { + if (!(base.in_grouping(g_elision_char, 99, 116))) + { + break lab1; + } + break lab0; + } + base.cursor = v_1; + if (!(base.eq_s("qu"))) + { + return false; + } + } + if (!(base.eq_s("'"))) + { + return false; + } + base.ket = base.cursor; + lab2: { + if (base.cursor < base.limit) + { + break lab2; + } + return false; + } + if (!base.slice_del()) + { + return false; + } + return true; + }; + /** @return {boolean} */ function r_prelude() { while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { golab1: while(true) { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { lab3: { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab4: { if (!(base.in_grouping(g_v, 97, 251))) { @@ -204,7 +257,7 @@ FrenchStemmer = function() { } base.bra = base.cursor; lab5: { - var /** number */ v_4 = base.cursor; + /** @const */ var /** number */ v_4 = base.cursor; lab6: { if (!(base.eq_s("u"))) { @@ -333,13 +386,14 @@ FrenchStemmer = function() { /** @return {boolean} */ function r_mark_regions() { + var /** number */ among_var; I_pV = base.limit; I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { lab1: { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { if (!(base.in_grouping(g_v, 97, 251))) { @@ -358,10 +412,19 @@ FrenchStemmer = function() { } base.cursor = v_2; lab3: { - if (base.find_among(a_0) == 0) + among_var = base.find_among(a_0); + if (among_var == 0) { break lab3; } + switch (among_var) { + case 1: + if (!(base.in_grouping(g_v, 97, 251))) + { + break lab3; + } + break; + } break lab1; } base.cursor = v_2; @@ -370,91 +433,41 @@ FrenchStemmer = function() { break lab0; } base.cursor++; - golab4: while(true) + if (!base.go_out_grouping(g_v, 97, 251)) { - lab5: { - if (!(base.in_grouping(g_v, 97, 251))) - { - break lab5; - } - break golab4; - } - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; + break lab0; } + base.cursor++; } I_pV = base.cursor; } base.cursor = v_1; - var /** number */ v_4 = base.cursor; - lab6: { - golab7: while(true) + /** @const */ var /** number */ v_3 = base.cursor; + lab4: { + if (!base.go_out_grouping(g_v, 97, 251)) { - lab8: { - if (!(base.in_grouping(g_v, 97, 251))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - break lab6; - } - base.cursor++; + break lab4; } - golab9: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 251)) { - lab10: { - if (!(base.out_grouping(g_v, 97, 251))) - { - break lab10; - } - break golab9; - } - if (base.cursor >= base.limit) - { - break lab6; - } - base.cursor++; + break lab4; } + base.cursor++; I_p1 = base.cursor; - golab11: while(true) + if (!base.go_out_grouping(g_v, 97, 251)) { - lab12: { - if (!(base.in_grouping(g_v, 97, 251))) - { - break lab12; - } - break golab11; - } - if (base.cursor >= base.limit) - { - break lab6; - } - base.cursor++; + break lab4; } - golab13: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 251)) { - lab14: { - if (!(base.out_grouping(g_v, 97, 251))) - { - break lab14; - } - break golab13; - } - if (base.cursor >= base.limit) - { - break lab6; - } - base.cursor++; + break lab4; } + base.cursor++; I_p2 = base.cursor; } - base.cursor = v_4; + base.cursor = v_3; return true; }; @@ -463,14 +476,10 @@ FrenchStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; among_var = base.find_among(a_1); - if (among_var == 0) - { - break lab0; - } base.ket = base.cursor; switch (among_var) { case 1: @@ -527,29 +536,17 @@ FrenchStemmer = function() { /** @return {boolean} */ function r_RV() { - if (!(I_pV <= base.cursor)) - { - return false; - } - return true; + return I_pV <= base.cursor; }; /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -582,7 +579,7 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.eq_s_b("ic"))) @@ -592,7 +589,7 @@ FrenchStemmer = function() { } base.bra = base.cursor; lab1: { - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab2: { if (!r_R2()) { @@ -651,7 +648,7 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab3: { base.ket = base.cursor; among_var = base.find_among_b(a_2); @@ -691,7 +688,7 @@ FrenchStemmer = function() { break; case 2: lab4: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab5: { if (!r_R2()) { @@ -749,7 +746,7 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab6: { base.ket = base.cursor; among_var = base.find_among_b(a_3); @@ -762,7 +759,7 @@ FrenchStemmer = function() { switch (among_var) { case 1: lab7: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab8: { if (!r_R2()) { @@ -783,7 +780,7 @@ FrenchStemmer = function() { break; case 2: lab9: { - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab10: { if (!r_R2()) { @@ -825,7 +822,7 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; lab11: { base.ket = base.cursor; if (!(base.eq_s_b("at"))) @@ -851,7 +848,7 @@ FrenchStemmer = function() { } base.bra = base.cursor; lab12: { - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; lab13: { if (!r_R2()) { @@ -888,8 +885,18 @@ FrenchStemmer = function() { } break; case 11: + if (!(base.in_grouping_b(g_oux_ending, 98, 112))) + { + return false; + } + if (!base.slice_from("ou")) + { + return false; + } + break; + case 12: lab14: { - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; lab15: { if (!r_R2()) { @@ -912,7 +919,7 @@ FrenchStemmer = function() { } } break; - case 12: + case 13: if (!r_R1()) { return false; @@ -926,7 +933,7 @@ FrenchStemmer = function() { return false; } break; - case 13: + case 14: if (!r_RV()) { return false; @@ -936,7 +943,7 @@ FrenchStemmer = function() { return false; } return false; - case 14: + case 15: if (!r_RV()) { return false; @@ -946,8 +953,8 @@ FrenchStemmer = function() { return false; } return false; - case 15: - var /** number */ v_11 = base.limit - base.cursor; + case 16: + /** @const */ var /** number */ v_11 = base.limit - base.cursor; if (!(base.in_grouping_b(g_v, 97, 251))) { return false; @@ -972,37 +979,37 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; if (base.find_among_b(a_5) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("H"))) { break lab0; } - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; } if (!(base.out_grouping_b(g_v, 97, 251))) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } if (!base.slice_del()) { return false; } - base.limit_backward = v_2; + base.limit_backward = v_1; return true; }; @@ -1013,21 +1020,21 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; - among_var = base.find_among_b(a_6); + among_var = base.find_among_b(a_7); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; + base.limit_backward = v_1; switch (among_var) { case 1: if (!r_R2()) { - base.limit_backward = v_2; return false; } if (!base.slice_del()) @@ -1042,34 +1049,64 @@ FrenchStemmer = function() { } break; case 3: - if (!base.slice_del()) - { - return false; - } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { - base.ket = base.cursor; if (!(base.eq_s_b("e"))) { - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; break lab0; } - base.bra = base.cursor; - if (!base.slice_del()) + if (!r_RV()) { + base.cursor = base.limit - v_2; + break lab0; + } + base.bra = base.cursor; + } + if (!base.slice_del()) + { + return false; + } + break; + case 4: + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab1: { + among_var = base.find_among_b(a_6); + if (among_var == 0) + { + break lab1; + } + switch (among_var) { + case 1: + if (base.cursor <= base.limit_backward) + { + break lab1; + } + base.cursor--; + if (base.cursor > base.limit_backward) + { + break lab1; + } + break; + } return false; } + base.cursor = base.limit - v_3; + } + if (!base.slice_del()) + { + return false; } break; } - base.limit_backward = v_2; return true; }; /** @return {boolean} */ function r_residual_suffix() { var /** number */ among_var; - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.eq_s_b("s"))) @@ -1078,9 +1115,9 @@ FrenchStemmer = function() { break lab0; } base.bra = base.cursor; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { if (!(base.eq_s_b("Hi"))) { @@ -1105,13 +1142,13 @@ FrenchStemmer = function() { { return false; } - var /** number */ v_5 = base.limit_backward; + /** @const */ var /** number */ v_4 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; - among_var = base.find_among_b(a_7); + among_var = base.find_among_b(a_8); if (among_var == 0) { - base.limit_backward = v_5; + base.limit_backward = v_4; return false; } base.bra = base.cursor; @@ -1119,11 +1156,11 @@ FrenchStemmer = function() { case 1: if (!r_R2()) { - base.limit_backward = v_5; + base.limit_backward = v_4; return false; } lab3: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab4: { if (!(base.eq_s_b("s"))) { @@ -1131,10 +1168,10 @@ FrenchStemmer = function() { } break lab3; } - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_5; if (!(base.eq_s_b("t"))) { - base.limit_backward = v_5; + base.limit_backward = v_4; return false; } } @@ -1156,14 +1193,14 @@ FrenchStemmer = function() { } break; } - base.limit_backward = v_5; + base.limit_backward = v_4; return true; }; /** @return {boolean} */ function r_un_double() { - var /** number */ v_1 = base.limit - base.cursor; - if (base.find_among_b(a_8) == 0) + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (base.find_among_b(a_9) == 0) { return false; } @@ -1205,7 +1242,7 @@ FrenchStemmer = function() { } base.ket = base.cursor; lab1: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab2: { if (!(base.eq_s_b("\u00E9"))) { @@ -1213,7 +1250,7 @@ FrenchStemmer = function() { } break lab1; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; if (!(base.eq_s_b("\u00E8"))) { return false; @@ -1228,19 +1265,22 @@ FrenchStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; - r_prelude(); + /** @const */ var /** number */ v_1 = base.cursor; + r_elisions(); base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + r_prelude(); + base.cursor = v_2; r_mark_regions(); base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab0: { lab1: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab2: { - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab3: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab4: { if (!r_standard_suffix()) { @@ -1263,11 +1303,11 @@ FrenchStemmer = function() { } } base.cursor = base.limit - v_5; - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab6: { base.ket = base.cursor; lab7: { - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; lab8: { if (!(base.eq_s_b("Y"))) { @@ -1303,14 +1343,14 @@ FrenchStemmer = function() { } } base.cursor = base.limit - v_3; - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; r_un_double(); base.cursor = base.limit - v_9; - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; r_un_accent(); base.cursor = base.limit - v_10; base.cursor = base.limit_backward; - var /** number */ v_11 = base.cursor; + /** @const */ var /** number */ v_11 = base.cursor; r_postlude(); base.cursor = v_11; return true; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/german-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/german-stemmer.js index f5ff81bc9..007a86685 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/german-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/german-stemmer.js @@ -1,9 +1,19 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from german.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -GermanStemmer = function() { +var GermanStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ + ["", -1, 5], + ["ae", 0, 2], + ["oe", 0, 3], + ["qu", 0, -1], + ["ue", 0, 4], + ["\u00DF", 0, 1] + ]; + + /** @const */ var a_1 = [ ["", -1, 5], ["U", 0, 2], ["Y", 0, 1], @@ -12,29 +22,42 @@ GermanStemmer = function() { ["\u00FC", 0, 2] ]; - /** @const */ var a_1 = [ - ["e", -1, 2], + /** @const */ var a_2 = [ + ["e", -1, 3], ["em", -1, 1], - ["en", -1, 2], - ["ern", -1, 1], - ["er", -1, 1], - ["s", -1, 3], - ["es", 5, 2] + ["en", -1, 3], + ["erinnen", 2, 2], + ["erin", -1, 2], + ["ln", -1, 5], + ["ern", -1, 2], + ["er", -1, 2], + ["s", -1, 4], + ["es", 8, 3], + ["lns", 8, 5] ]; - /** @const */ var a_2 = [ + /** @const */ var a_3 = [ + ["tick", -1, -1], + ["plan", -1, -1], + ["geordn", -1, -1], + ["intern", -1, -1], + ["tr", -1, -1] + ]; + + /** @const */ var a_4 = [ ["en", -1, 1], ["er", -1, 1], + ["et", -1, 3], ["st", -1, 2], - ["est", 2, 1] + ["est", 3, 1] ]; - /** @const */ var a_3 = [ + /** @const */ var a_5 = [ ["ig", -1, 1], ["lich", -1, 1] ]; - /** @const */ var a_4 = [ + /** @const */ var a_6 = [ ["end", -1, 1], ["ig", -1, 2], ["ung", -1, 1], @@ -47,6 +70,8 @@ GermanStemmer = function() { /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8]; + /** @const */ var /** Array */ g_et_ending = [1, 128, 198, 227, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128]; + /** @const */ var /** Array */ g_s_ending = [117, 30, 5]; /** @const */ var /** Array */ g_st_ending = [117, 30, 4]; @@ -58,98 +83,113 @@ GermanStemmer = function() { /** @return {boolean} */ function r_prelude() { - var /** number */ v_1 = base.cursor; + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; while(true) { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab0: { - lab1: { - var /** number */ v_3 = base.cursor; - lab2: { - base.bra = base.cursor; - if (!(base.eq_s("\u00DF"))) - { - break lab2; - } - base.ket = base.cursor; - if (!base.slice_from("ss")) - { - return false; - } - break lab1; - } - base.cursor = v_3; - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; - } - continue; - } - base.cursor = v_2; - break; - } - base.cursor = v_1; - while(true) - { - var /** number */ v_4 = base.cursor; - lab3: { - golab4: while(true) + golab1: while(true) { - var /** number */ v_5 = base.cursor; - lab5: { + /** @const */ var /** number */ v_3 = base.cursor; + lab2: { if (!(base.in_grouping(g_v, 97, 252))) { - break lab5; + break lab2; } base.bra = base.cursor; - lab6: { - var /** number */ v_6 = base.cursor; - lab7: { + lab3: { + /** @const */ var /** number */ v_4 = base.cursor; + lab4: { if (!(base.eq_s("u"))) { - break lab7; + break lab4; } base.ket = base.cursor; if (!(base.in_grouping(g_v, 97, 252))) { - break lab7; + break lab4; } if (!base.slice_from("U")) { return false; } - break lab6; + break lab3; } - base.cursor = v_6; + base.cursor = v_4; if (!(base.eq_s("y"))) { - break lab5; + break lab2; } base.ket = base.cursor; if (!(base.in_grouping(g_v, 97, 252))) { - break lab5; + break lab2; } if (!base.slice_from("Y")) { return false; } } - base.cursor = v_5; - break golab4; + base.cursor = v_3; + break golab1; } - base.cursor = v_5; + base.cursor = v_3; if (base.cursor >= base.limit) { - break lab3; + break lab0; } base.cursor++; } continue; } - base.cursor = v_4; + base.cursor = v_2; + break; + } + base.cursor = v_1; + while(true) + { + /** @const */ var /** number */ v_5 = base.cursor; + lab5: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("ss")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u00E4")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u00F6")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u00FC")) + { + return false; + } + break; + case 5: + if (base.cursor >= base.limit) + { + break lab5; + } + base.cursor++; + break; + } + continue; + } + base.cursor = v_5; break; } return true; @@ -159,9 +199,9 @@ GermanStemmer = function() { function r_mark_regions() { I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; { - var /** number */ c1 = base.cursor + 3; + /** @const */ var /** number */ c1 = base.cursor + 3; if (c1 > base.limit) { return false; @@ -170,74 +210,34 @@ GermanStemmer = function() { } I_x = base.cursor; base.cursor = v_1; - golab0: while(true) + if (!base.go_out_grouping(g_v, 97, 252)) { - lab1: { - if (!(base.in_grouping(g_v, 97, 252))) - { - break lab1; - } - break golab0; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } - golab2: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 252)) { - lab3: { - if (!(base.out_grouping(g_v, 97, 252))) - { - break lab3; - } - break golab2; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } + base.cursor++; I_p1 = base.cursor; - lab4: { - if (!(I_p1 < I_x)) + lab0: { + if (I_p1 >= I_x) { - break lab4; + break lab0; } I_p1 = I_x; } - golab5: while(true) + if (!base.go_out_grouping(g_v, 97, 252)) { - lab6: { - if (!(base.in_grouping(g_v, 97, 252))) - { - break lab6; - } - break golab5; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } - golab7: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 252)) { - lab8: { - if (!(base.out_grouping(g_v, 97, 252))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } + base.cursor++; I_p2 = base.cursor; return true; }; @@ -247,14 +247,10 @@ GermanStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; - among_var = base.find_among(a_0); - if (among_var == 0) - { - break lab0; - } + among_var = base.find_among(a_1); base.ket = base.cursor; switch (among_var) { case 1: @@ -299,29 +295,21 @@ GermanStemmer = function() { /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ function r_standard_suffix() { var /** number */ among_var; - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; - among_var = base.find_among_b(a_1); + among_var = base.find_among_b(a_2); if (among_var == 0) { break lab0; @@ -333,6 +321,17 @@ GermanStemmer = function() { } switch (among_var) { case 1: + { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("syst"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_2; + } if (!base.slice_del()) { return false; @@ -343,19 +342,25 @@ GermanStemmer = function() { { return false; } - var /** number */ v_2 = base.limit - base.cursor; - lab1: { + break; + case 3: + if (!base.slice_del()) + { + return false; + } + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { base.ket = base.cursor; if (!(base.eq_s_b("s"))) { - base.cursor = base.limit - v_2; - break lab1; + base.cursor = base.limit - v_3; + break lab2; } base.bra = base.cursor; if (!(base.eq_s_b("nis"))) { - base.cursor = base.limit - v_2; - break lab1; + base.cursor = base.limit - v_3; + break lab2; } if (!base.slice_del()) { @@ -363,7 +368,7 @@ GermanStemmer = function() { } } break; - case 3: + case 4: if (!(base.in_grouping_b(g_s_ending, 98, 116))) { break lab0; @@ -373,21 +378,27 @@ GermanStemmer = function() { return false; } break; + case 5: + if (!base.slice_from("l")) + { + return false; + } + break; } } base.cursor = base.limit - v_1; - var /** number */ v_3 = base.limit - base.cursor; - lab2: { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab3: { base.ket = base.cursor; - among_var = base.find_among_b(a_2); + among_var = base.find_among_b(a_4); if (among_var == 0) { - break lab2; + break lab3; } base.bra = base.cursor; if (!r_R1()) { - break lab2; + break lab3; } switch (among_var) { case 1: @@ -399,13 +410,13 @@ GermanStemmer = function() { case 2: if (!(base.in_grouping_b(g_st_ending, 98, 116))) { - break lab2; + break lab3; } { - var /** number */ c1 = base.cursor - 3; + /** @const */ var /** number */ c1 = base.cursor - 3; if (c1 < base.limit_backward) { - break lab2; + break lab3; } base.cursor = c1; } @@ -414,21 +425,44 @@ GermanStemmer = function() { return false; } break; + case 3: + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + if (!(base.in_grouping_b(g_et_ending, 85, 228))) + { + break lab3; + } + base.cursor = base.limit - v_5; + { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab4: { + if (base.find_among_b(a_3) == 0) + { + break lab4; + } + break lab3; + } + base.cursor = base.limit - v_6; + } + if (!base.slice_del()) + { + return false; + } + break; } } - base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; - lab3: { + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab5: { base.ket = base.cursor; - among_var = base.find_among_b(a_4); + among_var = base.find_among_b(a_6); if (among_var == 0) { - break lab3; + break lab5; } base.bra = base.cursor; if (!r_R2()) { - break lab3; + break lab5; } switch (among_var) { case 1: @@ -436,31 +470,31 @@ GermanStemmer = function() { { return false; } - var /** number */ v_5 = base.limit - base.cursor; - lab4: { + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab6: { base.ket = base.cursor; if (!(base.eq_s_b("ig"))) { - base.cursor = base.limit - v_5; - break lab4; + base.cursor = base.limit - v_8; + break lab6; } base.bra = base.cursor; { - var /** number */ v_6 = base.limit - base.cursor; - lab5: { + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + lab7: { if (!(base.eq_s_b("e"))) { - break lab5; + break lab7; } - base.cursor = base.limit - v_5; - break lab4; + base.cursor = base.limit - v_8; + break lab6; } - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_9; } if (!r_R2()) { - base.cursor = base.limit - v_5; - break lab4; + base.cursor = base.limit - v_8; + break lab6; } if (!base.slice_del()) { @@ -470,15 +504,15 @@ GermanStemmer = function() { break; case 2: { - var /** number */ v_7 = base.limit - base.cursor; - lab6: { + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + lab8: { if (!(base.eq_s_b("e"))) { - break lab6; + break lab8; } - break lab3; + break lab5; } - base.cursor = base.limit - v_7; + base.cursor = base.limit - v_10; } if (!base.slice_del()) { @@ -490,30 +524,30 @@ GermanStemmer = function() { { return false; } - var /** number */ v_8 = base.limit - base.cursor; - lab7: { + /** @const */ var /** number */ v_11 = base.limit - base.cursor; + lab9: { base.ket = base.cursor; - lab8: { - var /** number */ v_9 = base.limit - base.cursor; - lab9: { + lab10: { + /** @const */ var /** number */ v_12 = base.limit - base.cursor; + lab11: { if (!(base.eq_s_b("er"))) { - break lab9; + break lab11; } - break lab8; + break lab10; } - base.cursor = base.limit - v_9; + base.cursor = base.limit - v_12; if (!(base.eq_s_b("en"))) { - base.cursor = base.limit - v_8; - break lab7; + base.cursor = base.limit - v_11; + break lab9; } } base.bra = base.cursor; if (!r_R1()) { - base.cursor = base.limit - v_8; - break lab7; + base.cursor = base.limit - v_11; + break lab9; } if (!base.slice_del()) { @@ -526,19 +560,19 @@ GermanStemmer = function() { { return false; } - var /** number */ v_10 = base.limit - base.cursor; - lab10: { + /** @const */ var /** number */ v_13 = base.limit - base.cursor; + lab12: { base.ket = base.cursor; - if (base.find_among_b(a_3) == 0) + if (base.find_among_b(a_5) == 0) { - base.cursor = base.limit - v_10; - break lab10; + base.cursor = base.limit - v_13; + break lab12; } base.bra = base.cursor; if (!r_R2()) { - base.cursor = base.limit - v_10; - break lab10; + base.cursor = base.limit - v_13; + break lab12; } if (!base.slice_del()) { @@ -548,23 +582,23 @@ GermanStemmer = function() { break; } } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_7; return true; }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_prelude(); base.cursor = v_1; - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; r_mark_regions(); base.cursor = v_2; base.limit_backward = base.cursor; base.cursor = base.limit; r_standard_suffix(); base.cursor = base.limit_backward; - var /** number */ v_4 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; r_postlude(); - base.cursor = v_4; + base.cursor = v_3; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/greek-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/greek-stemmer.js new file mode 100644 index 000000000..06ad1692f --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/greek-stemmer.js @@ -0,0 +1,2873 @@ +// Generated from greek.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var GreekStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["", -1, 25], + ["\u0386", 0, 1], + ["\u0388", 0, 5], + ["\u0389", 0, 7], + ["\u038A", 0, 9], + ["\u038C", 0, 15], + ["\u038E", 0, 20], + ["\u038F", 0, 24], + ["\u0390", 0, 7], + ["\u0391", 0, 1], + ["\u0392", 0, 2], + ["\u0393", 0, 3], + ["\u0394", 0, 4], + ["\u0395", 0, 5], + ["\u0396", 0, 6], + ["\u0397", 0, 7], + ["\u0398", 0, 8], + ["\u0399", 0, 9], + ["\u039A", 0, 10], + ["\u039B", 0, 11], + ["\u039C", 0, 12], + ["\u039D", 0, 13], + ["\u039E", 0, 14], + ["\u039F", 0, 15], + ["\u03A0", 0, 16], + ["\u03A1", 0, 17], + ["\u03A3", 0, 18], + ["\u03A4", 0, 19], + ["\u03A5", 0, 20], + ["\u03A6", 0, 21], + ["\u03A7", 0, 22], + ["\u03A8", 0, 23], + ["\u03A9", 0, 24], + ["\u03AA", 0, 9], + ["\u03AB", 0, 20], + ["\u03AC", 0, 1], + ["\u03AD", 0, 5], + ["\u03AE", 0, 7], + ["\u03AF", 0, 9], + ["\u03B0", 0, 20], + ["\u03C2", 0, 18], + ["\u03CA", 0, 7], + ["\u03CB", 0, 20], + ["\u03CC", 0, 15], + ["\u03CD", 0, 20], + ["\u03CE", 0, 24] + ]; + + /** @const */ var a_1 = [ + ["\u03C3\u03BA\u03B1\u03B3\u03B9\u03B1", -1, 2], + ["\u03C6\u03B1\u03B3\u03B9\u03B1", -1, 1], + ["\u03BF\u03BB\u03BF\u03B3\u03B9\u03B1", -1, 3], + ["\u03C3\u03BF\u03B3\u03B9\u03B1", -1, 4], + ["\u03C4\u03B1\u03C4\u03BF\u03B3\u03B9\u03B1", -1, 5], + ["\u03BA\u03C1\u03B5\u03B1\u03C4\u03B1", -1, 6], + ["\u03C0\u03B5\u03C1\u03B1\u03C4\u03B1", -1, 7], + ["\u03C4\u03B5\u03C1\u03B1\u03C4\u03B1", -1, 8], + ["\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C4\u03B1", -1, 11], + ["\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C4\u03B1", -1, 10], + ["\u03C6\u03C9\u03C4\u03B1", -1, 9], + ["\u03C0\u03B5\u03C1\u03B1\u03C4\u03B7", -1, 7], + ["\u03C3\u03BA\u03B1\u03B3\u03B9\u03C9\u03BD", -1, 2], + ["\u03C6\u03B1\u03B3\u03B9\u03C9\u03BD", -1, 1], + ["\u03BF\u03BB\u03BF\u03B3\u03B9\u03C9\u03BD", -1, 3], + ["\u03C3\u03BF\u03B3\u03B9\u03C9\u03BD", -1, 4], + ["\u03C4\u03B1\u03C4\u03BF\u03B3\u03B9\u03C9\u03BD", -1, 5], + ["\u03BA\u03C1\u03B5\u03B1\u03C4\u03C9\u03BD", -1, 6], + ["\u03C0\u03B5\u03C1\u03B1\u03C4\u03C9\u03BD", -1, 7], + ["\u03C4\u03B5\u03C1\u03B1\u03C4\u03C9\u03BD", -1, 8], + ["\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C4\u03C9\u03BD", -1, 11], + ["\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C4\u03C9\u03BD", -1, 10], + ["\u03C6\u03C9\u03C4\u03C9\u03BD", -1, 9], + ["\u03BA\u03C1\u03B5\u03B1\u03C3", -1, 6], + ["\u03C0\u03B5\u03C1\u03B1\u03C3", -1, 7], + ["\u03C4\u03B5\u03C1\u03B1\u03C3", -1, 8], + ["\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C3", -1, 11], + ["\u03BA\u03C1\u03B5\u03B1\u03C4\u03BF\u03C3", -1, 6], + ["\u03C0\u03B5\u03C1\u03B1\u03C4\u03BF\u03C3", -1, 7], + ["\u03C4\u03B5\u03C1\u03B1\u03C4\u03BF\u03C3", -1, 8], + ["\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C4\u03BF\u03C3", -1, 11], + ["\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C4\u03BF\u03C3", -1, 10], + ["\u03C6\u03C9\u03C4\u03BF\u03C3", -1, 9], + ["\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C3", -1, 10], + ["\u03C6\u03C9\u03C3", -1, 9], + ["\u03C3\u03BA\u03B1\u03B3\u03B9\u03BF\u03C5", -1, 2], + ["\u03C6\u03B1\u03B3\u03B9\u03BF\u03C5", -1, 1], + ["\u03BF\u03BB\u03BF\u03B3\u03B9\u03BF\u03C5", -1, 3], + ["\u03C3\u03BF\u03B3\u03B9\u03BF\u03C5", -1, 4], + ["\u03C4\u03B1\u03C4\u03BF\u03B3\u03B9\u03BF\u03C5", -1, 5] + ]; + + /** @const */ var a_2 = [ + ["\u03C0\u03B1", -1, 1], + ["\u03BE\u03B1\u03BD\u03B1\u03C0\u03B1", 0, 1], + ["\u03B5\u03C0\u03B1", 0, 1], + ["\u03C0\u03B5\u03C1\u03B9\u03C0\u03B1", 0, 1], + ["\u03B1\u03BD\u03B1\u03BC\u03C0\u03B1", 0, 1], + ["\u03B5\u03BC\u03C0\u03B1", 0, 1], + ["\u03B2", -1, 2], + ["\u03B4\u03B1\u03BD\u03B5", -1, 1], + ["\u03B2\u03B1\u03B8\u03C5\u03C1\u03B9", -1, 2], + ["\u03B2\u03B1\u03C1\u03BA", -1, 2], + ["\u03BC\u03B1\u03C1\u03BA", -1, 2], + ["\u03BB", -1, 2], + ["\u03BC", -1, 2], + ["\u03BA\u03BF\u03C1\u03BD", -1, 2], + ["\u03B1\u03B8\u03C1\u03BF", -1, 1], + ["\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", 14, 1], + ["\u03C0", -1, 2], + ["\u03B9\u03BC\u03C0", 16, 2], + ["\u03C1", -1, 2], + ["\u03BC\u03B1\u03C1", 18, 2], + ["\u03B1\u03BC\u03C0\u03B1\u03C1", 18, 2], + ["\u03B3\u03BA\u03C1", 18, 2], + ["\u03B2\u03BF\u03BB\u03B2\u03BF\u03C1", 18, 2], + ["\u03B3\u03BB\u03C5\u03BA\u03BF\u03C1", 18, 2], + ["\u03C0\u03B9\u03C0\u03B5\u03C1\u03BF\u03C1", 18, 2], + ["\u03C0\u03C1", 18, 2], + ["\u03BC\u03C0\u03C1", 25, 2], + ["\u03B1\u03C1\u03C1", 18, 2], + ["\u03B3\u03BB\u03C5\u03BA\u03C5\u03C1", 18, 2], + ["\u03C0\u03BF\u03BB\u03C5\u03C1", 18, 2], + ["\u03BB\u03BF\u03C5", -1, 2] + ]; + + /** @const */ var a_3 = [ + ["\u03B9\u03B6\u03B1", -1, 1], + ["\u03B9\u03B6\u03B5", -1, 1], + ["\u03B9\u03B6\u03B1\u03BC\u03B5", -1, 1], + ["\u03B9\u03B6\u03BF\u03C5\u03BC\u03B5", -1, 1], + ["\u03B9\u03B6\u03B1\u03BD\u03B5", -1, 1], + ["\u03B9\u03B6\u03BF\u03C5\u03BD\u03B5", -1, 1], + ["\u03B9\u03B6\u03B1\u03C4\u03B5", -1, 1], + ["\u03B9\u03B6\u03B5\u03C4\u03B5", -1, 1], + ["\u03B9\u03B6\u03B5\u03B9", -1, 1], + ["\u03B9\u03B6\u03B1\u03BD", -1, 1], + ["\u03B9\u03B6\u03BF\u03C5\u03BD", -1, 1], + ["\u03B9\u03B6\u03B5\u03C3", -1, 1], + ["\u03B9\u03B6\u03B5\u03B9\u03C3", -1, 1], + ["\u03B9\u03B6\u03C9", -1, 1] + ]; + + /** @const */ var a_4 = [ + ["\u03B2\u03B9", -1, 1], + ["\u03BB\u03B9", -1, 1], + ["\u03B1\u03BB", -1, 1], + ["\u03B5\u03BD", -1, 1], + ["\u03C3", -1, 1], + ["\u03C7", -1, 1], + ["\u03C5\u03C8", -1, 1], + ["\u03B6\u03C9", -1, 1] + ]; + + /** @const */ var a_5 = [ + ["\u03C9\u03B8\u03B7\u03BA\u03B1", -1, 1], + ["\u03C9\u03B8\u03B7\u03BA\u03B5", -1, 1], + ["\u03C9\u03B8\u03B7\u03BA\u03B1\u03BC\u03B5", -1, 1], + ["\u03C9\u03B8\u03B7\u03BA\u03B1\u03BD\u03B5", -1, 1], + ["\u03C9\u03B8\u03B7\u03BA\u03B1\u03C4\u03B5", -1, 1], + ["\u03C9\u03B8\u03B7\u03BA\u03B1\u03BD", -1, 1], + ["\u03C9\u03B8\u03B7\u03BA\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_6 = [ + ["\u03BE\u03B1\u03BD\u03B1\u03C0\u03B1", -1, 1], + ["\u03B5\u03C0\u03B1", -1, 1], + ["\u03C0\u03B5\u03C1\u03B9\u03C0\u03B1", -1, 1], + ["\u03B1\u03BD\u03B1\u03BC\u03C0\u03B1", -1, 1], + ["\u03B5\u03BC\u03C0\u03B1", -1, 1], + ["\u03C7\u03B1\u03C1\u03C4\u03BF\u03C0\u03B1", -1, 1], + ["\u03B5\u03BE\u03B1\u03C1\u03C7\u03B1", -1, 1], + ["\u03B3\u03B5", -1, 2], + ["\u03B3\u03BA\u03B5", -1, 2], + ["\u03BA\u03BB\u03B5", -1, 1], + ["\u03B5\u03BA\u03BB\u03B5", 9, 1], + ["\u03B1\u03C0\u03B5\u03BA\u03BB\u03B5", 10, 1], + ["\u03B1\u03C0\u03BF\u03BA\u03BB\u03B5", 9, 1], + ["\u03B5\u03C3\u03C9\u03BA\u03BB\u03B5", 9, 1], + ["\u03B4\u03B1\u03BD\u03B5", -1, 1], + ["\u03C0\u03B5", -1, 1], + ["\u03B5\u03C0\u03B5", 15, 1], + ["\u03BC\u03B5\u03C4\u03B5\u03C0\u03B5", 16, 1], + ["\u03B5\u03C3\u03B5", -1, 1], + ["\u03B3\u03BA", -1, 2], + ["\u03BC", -1, 2], + ["\u03C0\u03BF\u03C5\u03BA\u03B1\u03BC", 20, 2], + ["\u03BA\u03BF\u03BC", 20, 2], + ["\u03B1\u03BD", -1, 2], + ["\u03BF\u03BB\u03BF", -1, 2], + ["\u03B1\u03B8\u03C1\u03BF", -1, 1], + ["\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", 25, 1], + ["\u03C0", -1, 2], + ["\u03BB\u03B1\u03C1", -1, 2], + ["\u03B4\u03B7\u03BC\u03BF\u03BA\u03C1\u03B1\u03C4", -1, 2], + ["\u03B1\u03C6", -1, 2], + ["\u03B3\u03B9\u03B3\u03B1\u03BD\u03C4\u03BF\u03B1\u03C6", 30, 2] + ]; + + /** @const */ var a_7 = [ + ["\u03B9\u03C3\u03B1", -1, 1], + ["\u03B9\u03C3\u03B1\u03BC\u03B5", -1, 1], + ["\u03B9\u03C3\u03B1\u03BD\u03B5", -1, 1], + ["\u03B9\u03C3\u03B5", -1, 1], + ["\u03B9\u03C3\u03B1\u03C4\u03B5", -1, 1], + ["\u03B9\u03C3\u03B1\u03BD", -1, 1], + ["\u03B9\u03C3\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_8 = [ + ["\u03BE\u03B1\u03BD\u03B1\u03C0\u03B1", -1, 1], + ["\u03B5\u03C0\u03B1", -1, 1], + ["\u03C0\u03B5\u03C1\u03B9\u03C0\u03B1", -1, 1], + ["\u03B1\u03BD\u03B1\u03BC\u03C0\u03B1", -1, 1], + ["\u03B5\u03BC\u03C0\u03B1", -1, 1], + ["\u03C7\u03B1\u03C1\u03C4\u03BF\u03C0\u03B1", -1, 1], + ["\u03B5\u03BE\u03B1\u03C1\u03C7\u03B1", -1, 1], + ["\u03BA\u03BB\u03B5", -1, 1], + ["\u03B5\u03BA\u03BB\u03B5", 7, 1], + ["\u03B1\u03C0\u03B5\u03BA\u03BB\u03B5", 8, 1], + ["\u03B1\u03C0\u03BF\u03BA\u03BB\u03B5", 7, 1], + ["\u03B5\u03C3\u03C9\u03BA\u03BB\u03B5", 7, 1], + ["\u03B4\u03B1\u03BD\u03B5", -1, 1], + ["\u03C0\u03B5", -1, 1], + ["\u03B5\u03C0\u03B5", 13, 1], + ["\u03BC\u03B5\u03C4\u03B5\u03C0\u03B5", 14, 1], + ["\u03B5\u03C3\u03B5", -1, 1], + ["\u03B1\u03B8\u03C1\u03BF", -1, 1], + ["\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", 17, 1] + ]; + + /** @const */ var a_9 = [ + ["\u03B9\u03C3\u03BF\u03C5\u03BC\u03B5", -1, 1], + ["\u03B9\u03C3\u03BF\u03C5\u03BD\u03B5", -1, 1], + ["\u03B9\u03C3\u03B5\u03C4\u03B5", -1, 1], + ["\u03B9\u03C3\u03B5\u03B9", -1, 1], + ["\u03B9\u03C3\u03BF\u03C5\u03BD", -1, 1], + ["\u03B9\u03C3\u03B5\u03B9\u03C3", -1, 1], + ["\u03B9\u03C3\u03C9", -1, 1] + ]; + + /** @const */ var a_10 = [ + ["\u03B1\u03C4\u03B1", -1, 2], + ["\u03C6\u03B1", -1, 2], + ["\u03B7\u03C6\u03B1", 1, 2], + ["\u03BC\u03B5\u03B3", -1, 2], + ["\u03BB\u03C5\u03B3", -1, 2], + ["\u03B7\u03B4", -1, 2], + ["\u03BA\u03BB\u03B5", -1, 1], + ["\u03B5\u03C3\u03C9\u03BA\u03BB\u03B5", 6, 1], + ["\u03C0\u03BB\u03B5", -1, 1], + ["\u03B4\u03B1\u03BD\u03B5", -1, 1], + ["\u03C3\u03B5", -1, 1], + ["\u03B1\u03C3\u03B5", 10, 1], + ["\u03BA\u03B1\u03B8", -1, 2], + ["\u03B5\u03C7\u03B8", -1, 2], + ["\u03BA\u03B1\u03BA", -1, 2], + ["\u03BC\u03B1\u03BA", -1, 2], + ["\u03C3\u03BA", -1, 2], + ["\u03C6\u03B9\u03BB", -1, 2], + ["\u03BA\u03C5\u03BB", -1, 2], + ["\u03BC", -1, 2], + ["\u03B3\u03B5\u03BC", 19, 2], + ["\u03B1\u03C7\u03BD", -1, 2], + ["\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", -1, 1], + ["\u03C0", -1, 2], + ["\u03B1\u03C0", 23, 2], + ["\u03B5\u03BC\u03C0", 23, 2], + ["\u03B5\u03C5\u03C0", 23, 2], + ["\u03B1\u03C1", -1, 2], + ["\u03B1\u03BF\u03C1", -1, 2], + ["\u03B3\u03C5\u03C1", -1, 2], + ["\u03C7\u03C1", -1, 2], + ["\u03C7\u03C9\u03C1", -1, 2], + ["\u03BA\u03C4", -1, 2], + ["\u03B1\u03BA\u03C4", 32, 2], + ["\u03C7\u03C4", -1, 2], + ["\u03B1\u03C7\u03C4", 34, 2], + ["\u03C4\u03B1\u03C7", -1, 2], + ["\u03C3\u03C7", -1, 2], + ["\u03B1\u03C3\u03C7", 37, 2], + ["\u03C5\u03C8", -1, 2] + ]; + + /** @const */ var a_11 = [ + ["\u03B9\u03C3\u03C4\u03B1", -1, 1], + ["\u03B9\u03C3\u03C4\u03B5", -1, 1], + ["\u03B9\u03C3\u03C4\u03B7", -1, 1], + ["\u03B9\u03C3\u03C4\u03BF\u03B9", -1, 1], + ["\u03B9\u03C3\u03C4\u03C9\u03BD", -1, 1], + ["\u03B9\u03C3\u03C4\u03BF", -1, 1], + ["\u03B9\u03C3\u03C4\u03B5\u03C3", -1, 1], + ["\u03B9\u03C3\u03C4\u03B7\u03C3", -1, 1], + ["\u03B9\u03C3\u03C4\u03BF\u03C3", -1, 1], + ["\u03B9\u03C3\u03C4\u03BF\u03C5\u03C3", -1, 1], + ["\u03B9\u03C3\u03C4\u03BF\u03C5", -1, 1] + ]; + + /** @const */ var a_12 = [ + ["\u03B5\u03B3\u03BA\u03BB\u03B5", -1, 1], + ["\u03B1\u03C0\u03BF\u03BA\u03BB\u03B5", -1, 1], + ["\u03B4\u03B1\u03BD\u03B5", -1, 2], + ["\u03B1\u03BD\u03C4\u03B9\u03B4\u03B1\u03BD\u03B5", 2, 2], + ["\u03C3\u03B5", -1, 1], + ["\u03BC\u03B5\u03C4\u03B1\u03C3\u03B5", 4, 1], + ["\u03BC\u03B9\u03BA\u03C1\u03BF\u03C3\u03B5", 4, 1] + ]; + + /** @const */ var a_13 = [ + ["\u03B1\u03C4\u03BF\u03BC\u03B9\u03BA", -1, 2], + ["\u03B5\u03B8\u03BD\u03B9\u03BA", -1, 4], + ["\u03C4\u03BF\u03C0\u03B9\u03BA", -1, 7], + ["\u03B5\u03BA\u03BB\u03B5\u03BA\u03C4\u03B9\u03BA", -1, 5], + ["\u03C3\u03BA\u03B5\u03C0\u03C4\u03B9\u03BA", -1, 6], + ["\u03B3\u03BD\u03C9\u03C3\u03C4\u03B9\u03BA", -1, 3], + ["\u03B1\u03B3\u03BD\u03C9\u03C3\u03C4\u03B9\u03BA", 5, 1], + ["\u03B1\u03BB\u03B5\u03BE\u03B1\u03BD\u03B4\u03C1\u03B9\u03BD", -1, 8], + ["\u03B8\u03B5\u03B1\u03C4\u03C1\u03B9\u03BD", -1, 10], + ["\u03B2\u03C5\u03B6\u03B1\u03BD\u03C4\u03B9\u03BD", -1, 9] + ]; + + /** @const */ var a_14 = [ + ["\u03B9\u03C3\u03BC\u03BF\u03B9", -1, 1], + ["\u03B9\u03C3\u03BC\u03C9\u03BD", -1, 1], + ["\u03B9\u03C3\u03BC\u03BF", -1, 1], + ["\u03B9\u03C3\u03BC\u03BF\u03C3", -1, 1], + ["\u03B9\u03C3\u03BC\u03BF\u03C5\u03C3", -1, 1], + ["\u03B9\u03C3\u03BC\u03BF\u03C5", -1, 1] + ]; + + /** @const */ var a_15 = [ + ["\u03C3", -1, 1], + ["\u03C7", -1, 1] + ]; + + /** @const */ var a_16 = [ + ["\u03BF\u03C5\u03B4\u03B1\u03BA\u03B9\u03B1", -1, 1], + ["\u03B1\u03C1\u03B1\u03BA\u03B9\u03B1", -1, 1], + ["\u03BF\u03C5\u03B4\u03B1\u03BA\u03B9", -1, 1], + ["\u03B1\u03C1\u03B1\u03BA\u03B9", -1, 1] + ]; + + /** @const */ var a_17 = [ + ["\u03B2", -1, 2], + ["\u03B2\u03B1\u03BC\u03B2", 0, 1], + ["\u03C3\u03BB\u03BF\u03B2", 0, 1], + ["\u03C4\u03C3\u03B5\u03C7\u03BF\u03C3\u03BB\u03BF\u03B2", 2, 1], + ["\u03BA\u03B1\u03C1\u03B4", -1, 2], + ["\u03B6", -1, 2], + ["\u03C4\u03B6", 5, 1], + ["\u03BA", -1, 1], + ["\u03BA\u03B1\u03C0\u03B1\u03BA", 7, 1], + ["\u03C3\u03BF\u03BA", 7, 1], + ["\u03C3\u03BA", 7, 1], + ["\u03B2\u03B1\u03BB", -1, 2], + ["\u03BC\u03B1\u03BB", -1, 1], + ["\u03B3\u03BB", -1, 2], + ["\u03C4\u03C1\u03B9\u03C0\u03BF\u03BB", -1, 2], + ["\u03C0\u03BB", -1, 1], + ["\u03BB\u03BF\u03C5\u03BB", -1, 1], + ["\u03C6\u03C5\u03BB", -1, 1], + ["\u03BA\u03B1\u03B9\u03BC", -1, 1], + ["\u03BA\u03BB\u03B9\u03BC", -1, 1], + ["\u03C6\u03B1\u03C1\u03BC", -1, 1], + ["\u03B3\u03B9\u03B1\u03BD", -1, 2], + ["\u03C3\u03C0\u03B1\u03BD", -1, 1], + ["\u03B7\u03B3\u03BF\u03C5\u03BC\u03B5\u03BD", -1, 2], + ["\u03BA\u03BF\u03BD", -1, 1], + ["\u03BC\u03B1\u03BA\u03C1\u03C5\u03BD", -1, 2], + ["\u03C0", -1, 2], + ["\u03BA\u03B1\u03C4\u03C1\u03B1\u03C0", 26, 1], + ["\u03C1", -1, 1], + ["\u03B2\u03C1", 28, 1], + ["\u03BB\u03B1\u03B2\u03C1", 29, 1], + ["\u03B1\u03BC\u03B2\u03C1", 29, 1], + ["\u03BC\u03B5\u03C1", 28, 1], + ["\u03C0\u03B1\u03C4\u03B5\u03C1", 28, 2], + ["\u03B1\u03BD\u03B8\u03C1", 28, 1], + ["\u03BA\u03BF\u03C1", 28, 1], + ["\u03C3", -1, 1], + ["\u03BD\u03B1\u03B3\u03BA\u03B1\u03C3", 36, 1], + ["\u03C4\u03BF\u03C3", 36, 2], + ["\u03BC\u03BF\u03C5\u03C3\u03C4", -1, 1], + ["\u03C1\u03C5", -1, 1], + ["\u03C6", -1, 1], + ["\u03C3\u03C6", 41, 1], + ["\u03B1\u03BB\u03B9\u03C3\u03C6", 42, 1], + ["\u03BD\u03C5\u03C6", 41, 2], + ["\u03C7", -1, 1] + ]; + + /** @const */ var a_18 = [ + ["\u03B1\u03BA\u03B9\u03B1", -1, 1], + ["\u03B1\u03C1\u03B1\u03BA\u03B9\u03B1", 0, 1], + ["\u03B9\u03C4\u03C3\u03B1", -1, 1], + ["\u03B1\u03BA\u03B9", -1, 1], + ["\u03B1\u03C1\u03B1\u03BA\u03B9", 3, 1], + ["\u03B9\u03C4\u03C3\u03C9\u03BD", -1, 1], + ["\u03B9\u03C4\u03C3\u03B1\u03C3", -1, 1], + ["\u03B9\u03C4\u03C3\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_19 = [ + ["\u03C8\u03B1\u03BB", -1, 1], + ["\u03B1\u03B9\u03C6\u03BD", -1, 1], + ["\u03BF\u03BB\u03BF", -1, 1], + ["\u03B9\u03C1", -1, 1] + ]; + + /** @const */ var a_20 = [ + ["\u03B5", -1, 1], + ["\u03C0\u03B1\u03B9\u03C7\u03BD", -1, 1] + ]; + + /** @const */ var a_21 = [ + ["\u03B9\u03B4\u03B9\u03B1", -1, 1], + ["\u03B9\u03B4\u03B9\u03C9\u03BD", -1, 1], + ["\u03B9\u03B4\u03B9\u03BF", -1, 1] + ]; + + /** @const */ var a_22 = [ + ["\u03B9\u03B2", -1, 1], + ["\u03B4", -1, 1], + ["\u03C6\u03C1\u03B1\u03B3\u03BA", -1, 1], + ["\u03BB\u03C5\u03BA", -1, 1], + ["\u03BF\u03B2\u03B5\u03BB", -1, 1], + ["\u03BC\u03B7\u03BD", -1, 1], + ["\u03C1", -1, 1] + ]; + + /** @const */ var a_23 = [ + ["\u03B9\u03C3\u03BA\u03B5", -1, 1], + ["\u03B9\u03C3\u03BA\u03BF", -1, 1], + ["\u03B9\u03C3\u03BA\u03BF\u03C3", -1, 1], + ["\u03B9\u03C3\u03BA\u03BF\u03C5", -1, 1] + ]; + + /** @const */ var a_24 = [ + ["\u03B1\u03B4\u03C9\u03BD", -1, 1], + ["\u03B1\u03B4\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_25 = [ + ["\u03B3\u03B9\u03B1\u03B3\u03B9", -1, -1], + ["\u03B8\u03B5\u03B9", -1, -1], + ["\u03BF\u03BA", -1, -1], + ["\u03BC\u03B1\u03BC", -1, -1], + ["\u03BC\u03B1\u03BD", -1, -1], + ["\u03BC\u03C0\u03B1\u03BC\u03C0", -1, -1], + ["\u03C0\u03B5\u03B8\u03B5\u03C1", -1, -1], + ["\u03C0\u03B1\u03C4\u03B5\u03C1", -1, -1], + ["\u03BA\u03C5\u03C1", -1, -1], + ["\u03BD\u03C4\u03B1\u03BD\u03C4", -1, -1] + ]; + + /** @const */ var a_26 = [ + ["\u03B5\u03B4\u03C9\u03BD", -1, 1], + ["\u03B5\u03B4\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_27 = [ + ["\u03BC\u03B9\u03BB", -1, 1], + ["\u03B4\u03B1\u03C0", -1, 1], + ["\u03B3\u03B7\u03C0", -1, 1], + ["\u03B9\u03C0", -1, 1], + ["\u03B5\u03BC\u03C0", -1, 1], + ["\u03BF\u03C0", -1, 1], + ["\u03BA\u03C1\u03B1\u03C3\u03C0", -1, 1], + ["\u03C5\u03C0", -1, 1] + ]; + + /** @const */ var a_28 = [ + ["\u03BF\u03C5\u03B4\u03C9\u03BD", -1, 1], + ["\u03BF\u03C5\u03B4\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_29 = [ + ["\u03C4\u03C1\u03B1\u03B3", -1, 1], + ["\u03C6\u03B5", -1, 1], + ["\u03BA\u03B1\u03BB\u03B9\u03B1\u03BA", -1, 1], + ["\u03B1\u03C1\u03BA", -1, 1], + ["\u03C3\u03BA", -1, 1], + ["\u03C0\u03B5\u03C4\u03B1\u03BB", -1, 1], + ["\u03B2\u03B5\u03BB", -1, 1], + ["\u03BB\u03BF\u03C5\u03BB", -1, 1], + ["\u03C6\u03BB", -1, 1], + ["\u03C7\u03BD", -1, 1], + ["\u03C0\u03BB\u03B5\u03BE", -1, 1], + ["\u03C3\u03C0", -1, 1], + ["\u03C6\u03C1", -1, 1], + ["\u03C3", -1, 1], + ["\u03BB\u03B9\u03C7", -1, 1] + ]; + + /** @const */ var a_30 = [ + ["\u03B5\u03C9\u03BD", -1, 1], + ["\u03B5\u03C9\u03C3", -1, 1] + ]; + + /** @const */ var a_31 = [ + ["\u03B4", -1, 1], + ["\u03B9\u03B4", 0, 1], + ["\u03B8", -1, 1], + ["\u03B3\u03B1\u03BB", -1, 1], + ["\u03B5\u03BB", -1, 1], + ["\u03BD", -1, 1], + ["\u03C0", -1, 1], + ["\u03C0\u03B1\u03C1", -1, 1] + ]; + + /** @const */ var a_32 = [ + ["\u03B9\u03B1", -1, 1], + ["\u03B9\u03C9\u03BD", -1, 1], + ["\u03B9\u03BF\u03C5", -1, 1] + ]; + + /** @const */ var a_33 = [ + ["\u03B9\u03BA\u03B1", -1, 1], + ["\u03B9\u03BA\u03C9\u03BD", -1, 1], + ["\u03B9\u03BA\u03BF", -1, 1], + ["\u03B9\u03BA\u03BF\u03C5", -1, 1] + ]; + + /** @const */ var a_34 = [ + ["\u03B1\u03B4", -1, 1], + ["\u03C3\u03C5\u03BD\u03B1\u03B4", 0, 1], + ["\u03BA\u03B1\u03C4\u03B1\u03B4", 0, 1], + ["\u03B1\u03BD\u03C4\u03B9\u03B4", -1, 1], + ["\u03B5\u03BD\u03B4", -1, 1], + ["\u03C6\u03C5\u03BB\u03BF\u03B4", -1, 1], + ["\u03C5\u03C0\u03BF\u03B4", -1, 1], + ["\u03C0\u03C1\u03C9\u03C4\u03BF\u03B4", -1, 1], + ["\u03B5\u03BE\u03C9\u03B4", -1, 1], + ["\u03B7\u03B8", -1, 1], + ["\u03B1\u03BD\u03B7\u03B8", 9, 1], + ["\u03BE\u03B9\u03BA", -1, 1], + ["\u03B1\u03BB", -1, 1], + ["\u03B1\u03BC\u03BC\u03BF\u03C7\u03B1\u03BB", 12, 1], + ["\u03C3\u03C5\u03BD\u03BF\u03BC\u03B7\u03BB", -1, 1], + ["\u03BC\u03C0\u03BF\u03BB", -1, 1], + ["\u03BC\u03BF\u03C5\u03BB", -1, 1], + ["\u03C4\u03C3\u03B1\u03BC", -1, 1], + ["\u03B2\u03C1\u03C9\u03BC", -1, 1], + ["\u03B1\u03BC\u03B1\u03BD", -1, 1], + ["\u03BC\u03C0\u03B1\u03BD", -1, 1], + ["\u03BA\u03B1\u03BB\u03BB\u03B9\u03BD", -1, 1], + ["\u03C0\u03BF\u03C3\u03C4\u03B5\u03BB\u03BD", -1, 1], + ["\u03C6\u03B9\u03BB\u03BF\u03BD", -1, 1], + ["\u03BA\u03B1\u03BB\u03C0", -1, 1], + ["\u03B3\u03B5\u03C1", -1, 1], + ["\u03C7\u03B1\u03C3", -1, 1], + ["\u03BC\u03C0\u03BF\u03C3", -1, 1], + ["\u03C0\u03BB\u03B9\u03B1\u03C4\u03C3", -1, 1], + ["\u03C0\u03B5\u03C4\u03C3", -1, 1], + ["\u03C0\u03B9\u03C4\u03C3", -1, 1], + ["\u03C6\u03C5\u03C3", -1, 1], + ["\u03BC\u03C0\u03B1\u03B3\u03B9\u03B1\u03C4", -1, 1], + ["\u03BD\u03B9\u03C4", -1, 1], + ["\u03C0\u03B9\u03BA\u03B1\u03BD\u03C4", -1, 1], + ["\u03C3\u03B5\u03C1\u03C4", -1, 1] + ]; + + /** @const */ var a_35 = [ + ["\u03B1\u03B3\u03B1\u03BC\u03B5", -1, 1], + ["\u03B7\u03BA\u03B1\u03BC\u03B5", -1, 1], + ["\u03B7\u03B8\u03B7\u03BA\u03B1\u03BC\u03B5", 1, 1], + ["\u03B7\u03C3\u03B1\u03BC\u03B5", -1, 1], + ["\u03BF\u03C5\u03C3\u03B1\u03BC\u03B5", -1, 1] + ]; + + /** @const */ var a_36 = [ + ["\u03B2\u03BF\u03C5\u03B2", -1, 1], + ["\u03BE\u03B5\u03B8", -1, 1], + ["\u03C0\u03B5\u03B8", -1, 1], + ["\u03B1\u03C0\u03BF\u03B8", -1, 1], + ["\u03B1\u03C0\u03BF\u03BA", -1, 1], + ["\u03BF\u03C5\u03BB", -1, 1], + ["\u03B1\u03BD\u03B1\u03C0", -1, 1], + ["\u03C0\u03B9\u03BA\u03C1", -1, 1], + ["\u03C0\u03BF\u03C4", -1, 1], + ["\u03B1\u03C0\u03BF\u03C3\u03C4", -1, 1], + ["\u03C7", -1, 1], + ["\u03C3\u03B9\u03C7", 10, 1] + ]; + + /** @const */ var a_37 = [ + ["\u03C4\u03C1", -1, 1], + ["\u03C4\u03C3", -1, 1] + ]; + + /** @const */ var a_38 = [ + ["\u03B1\u03B3\u03B1\u03BD\u03B5", -1, 1], + ["\u03B7\u03BA\u03B1\u03BD\u03B5", -1, 1], + ["\u03B7\u03B8\u03B7\u03BA\u03B1\u03BD\u03B5", 1, 1], + ["\u03B7\u03C3\u03B1\u03BD\u03B5", -1, 1], + ["\u03BF\u03C5\u03C3\u03B1\u03BD\u03B5", -1, 1], + ["\u03BF\u03BD\u03C4\u03B1\u03BD\u03B5", -1, 1], + ["\u03B9\u03BF\u03BD\u03C4\u03B1\u03BD\u03B5", 5, 1], + ["\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD\u03B5", -1, 1], + ["\u03B9\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD\u03B5", 7, 1], + ["\u03BF\u03C4\u03B1\u03BD\u03B5", -1, 1], + ["\u03B9\u03BF\u03C4\u03B1\u03BD\u03B5", 9, 1] + ]; + + /** @const */ var a_39 = [ + ["\u03C4\u03B1\u03B2", -1, 1], + ["\u03BD\u03C4\u03B1\u03B2", 0, 1], + ["\u03C8\u03B7\u03BB\u03BF\u03C4\u03B1\u03B2", 0, 1], + ["\u03BB\u03B9\u03B2", -1, 1], + ["\u03BA\u03BB\u03B9\u03B2", 3, 1], + ["\u03BE\u03B7\u03C1\u03BF\u03BA\u03BB\u03B9\u03B2", 4, 1], + ["\u03B3", -1, 1], + ["\u03B1\u03B3", 6, 1], + ["\u03C4\u03C1\u03B1\u03B3", 7, 1], + ["\u03C4\u03C3\u03B1\u03B3", 7, 1], + ["\u03B1\u03B8\u03B9\u03B3\u03B3", 6, 1], + ["\u03C4\u03C3\u03B9\u03B3\u03B3", 6, 1], + ["\u03B1\u03C4\u03C3\u03B9\u03B3\u03B3", 11, 1], + ["\u03C3\u03C4\u03B5\u03B3", 6, 1], + ["\u03B1\u03C0\u03B7\u03B3", 6, 1], + ["\u03C3\u03B9\u03B3", 6, 1], + ["\u03B1\u03BD\u03BF\u03C1\u03B3", 6, 1], + ["\u03B5\u03BD\u03BF\u03C1\u03B3", 6, 1], + ["\u03BA\u03B1\u03BB\u03C0\u03BF\u03C5\u03B6", -1, 1], + ["\u03B8", -1, 1], + ["\u03BC\u03C9\u03B1\u03BC\u03B5\u03B8", 19, 1], + ["\u03C0\u03B9\u03B8", 19, 1], + ["\u03B1\u03C0\u03B9\u03B8", 21, 1], + ["\u03B4\u03B5\u03BA", -1, 1], + ["\u03C0\u03B5\u03BB\u03B5\u03BA", -1, 1], + ["\u03B9\u03BA", -1, 1], + ["\u03B1\u03BD\u03B9\u03BA", 25, 1], + ["\u03B2\u03BF\u03C5\u03BB\u03BA", -1, 1], + ["\u03B2\u03B1\u03C3\u03BA", -1, 1], + ["\u03B2\u03C1\u03B1\u03C7\u03C5\u03BA", -1, 1], + ["\u03B3\u03B1\u03BB", -1, 1], + ["\u03BA\u03B1\u03C4\u03B1\u03B3\u03B1\u03BB", 30, 1], + ["\u03BF\u03BB\u03BF\u03B3\u03B1\u03BB", 30, 1], + ["\u03B2\u03B1\u03B8\u03C5\u03B3\u03B1\u03BB", 30, 1], + ["\u03BC\u03B5\u03BB", -1, 1], + ["\u03BA\u03B1\u03C3\u03C4\u03B5\u03BB", -1, 1], + ["\u03C0\u03BF\u03C1\u03C4\u03BF\u03BB", -1, 1], + ["\u03C0\u03BB", -1, 1], + ["\u03B4\u03B9\u03C0\u03BB", 37, 1], + ["\u03BB\u03B1\u03BF\u03C0\u03BB", 37, 1], + ["\u03C8\u03C5\u03C7\u03BF\u03C0\u03BB", 37, 1], + ["\u03BF\u03C5\u03BB", -1, 1], + ["\u03BC", -1, 1], + ["\u03BF\u03BB\u03B9\u03B3\u03BF\u03B4\u03B1\u03BC", 42, 1], + ["\u03BC\u03BF\u03C5\u03C3\u03BF\u03C5\u03BB\u03BC", 42, 1], + ["\u03B4\u03C1\u03B1\u03B4\u03BF\u03C5\u03BC", 42, 1], + ["\u03B2\u03C1\u03B1\u03C7\u03BC", 42, 1], + ["\u03BD", -1, 1], + ["\u03B1\u03BC\u03B5\u03C1\u03B9\u03BA\u03B1\u03BD", 47, 1], + ["\u03C0", -1, 1], + ["\u03B1\u03B4\u03B1\u03C0", 49, 1], + ["\u03C7\u03B1\u03BC\u03B7\u03BB\u03BF\u03B4\u03B1\u03C0", 49, 1], + ["\u03C0\u03BF\u03BB\u03C5\u03B4\u03B1\u03C0", 49, 1], + ["\u03BA\u03BF\u03C0", 49, 1], + ["\u03C5\u03C0\u03BF\u03BA\u03BF\u03C0", 53, 1], + ["\u03C4\u03C3\u03BF\u03C0", 49, 1], + ["\u03C3\u03C0", 49, 1], + ["\u03B5\u03C1", -1, 1], + ["\u03B3\u03B5\u03C1", 57, 1], + ["\u03B2\u03B5\u03C4\u03B5\u03C1", 57, 1], + ["\u03BB\u03BF\u03C5\u03B8\u03B7\u03C1", -1, 1], + ["\u03BA\u03BF\u03C1\u03BC\u03BF\u03C1", -1, 1], + ["\u03C0\u03B5\u03C1\u03B9\u03C4\u03C1", -1, 1], + ["\u03BF\u03C5\u03C1", -1, 1], + ["\u03C3", -1, 1], + ["\u03B2\u03B1\u03C3", 64, 1], + ["\u03C0\u03BF\u03BB\u03B9\u03C3", 64, 1], + ["\u03C3\u03B1\u03C1\u03B1\u03BA\u03B1\u03C4\u03C3", 64, 1], + ["\u03B8\u03C5\u03C3", 64, 1], + ["\u03B4\u03B9\u03B1\u03C4", -1, 1], + ["\u03C0\u03BB\u03B1\u03C4", -1, 1], + ["\u03C4\u03C3\u03B1\u03C1\u03BB\u03B1\u03C4", -1, 1], + ["\u03C4\u03B5\u03C4", -1, 1], + ["\u03C0\u03BF\u03C5\u03C1\u03B9\u03C4", -1, 1], + ["\u03C3\u03BF\u03C5\u03BB\u03C4", -1, 1], + ["\u03BC\u03B1\u03B9\u03BD\u03C4", -1, 1], + ["\u03B6\u03C9\u03BD\u03C4", -1, 1], + ["\u03BA\u03B1\u03C3\u03C4", -1, 1], + ["\u03C6", -1, 1], + ["\u03B4\u03B9\u03B1\u03C6", 78, 1], + ["\u03C3\u03C4\u03B5\u03C6", 78, 1], + ["\u03C6\u03C9\u03C4\u03BF\u03C3\u03C4\u03B5\u03C6", 80, 1], + ["\u03C0\u03B5\u03C1\u03B7\u03C6", 78, 1], + ["\u03C5\u03C0\u03B5\u03C1\u03B7\u03C6", 82, 1], + ["\u03BA\u03BF\u03B9\u03BB\u03B1\u03C1\u03C6", 78, 1], + ["\u03C0\u03B5\u03BD\u03C4\u03B1\u03C1\u03C6", 78, 1], + ["\u03BF\u03C1\u03C6", 78, 1], + ["\u03C7", -1, 1], + ["\u03B1\u03BC\u03B7\u03C7", 87, 1], + ["\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 87, 1], + ["\u03BC\u03B5\u03B3\u03BB\u03BF\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 89, 1], + ["\u03BA\u03B1\u03C0\u03BD\u03BF\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 89, 1], + ["\u03BC\u03B9\u03BA\u03C1\u03BF\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 89, 1], + ["\u03C0\u03BF\u03BB\u03C5\u03BC\u03B7\u03C7", 87, 1], + ["\u03BB\u03B9\u03C7", 87, 1] + ]; + + /** @const */ var a_40 = [ + ["\u03B7\u03C3\u03B5\u03C4\u03B5", -1, 1] + ]; + + /** @const */ var a_41 = [ + ["\u03B5\u03BD\u03B4", -1, 1], + ["\u03C3\u03C5\u03BD\u03B4", -1, 1], + ["\u03BF\u03B4", -1, 1], + ["\u03B4\u03B9\u03B1\u03B8", -1, 1], + ["\u03BA\u03B1\u03B8", -1, 1], + ["\u03C1\u03B1\u03B8", -1, 1], + ["\u03C4\u03B1\u03B8", -1, 1], + ["\u03C4\u03B9\u03B8", -1, 1], + ["\u03B5\u03BA\u03B8", -1, 1], + ["\u03B5\u03BD\u03B8", -1, 1], + ["\u03C3\u03C5\u03BD\u03B8", -1, 1], + ["\u03C1\u03BF\u03B8", -1, 1], + ["\u03C5\u03C0\u03B5\u03C1\u03B8", -1, 1], + ["\u03C3\u03B8", -1, 1], + ["\u03B5\u03C5\u03B8", -1, 1], + ["\u03B1\u03C1\u03BA", -1, 1], + ["\u03C9\u03C6\u03B5\u03BB", -1, 1], + ["\u03B2\u03BF\u03BB", -1, 1], + ["\u03B1\u03B9\u03BD", -1, 1], + ["\u03C0\u03BF\u03BD", -1, 1], + ["\u03C1\u03BF\u03BD", -1, 1], + ["\u03C3\u03C5\u03BD", -1, 1], + ["\u03B2\u03B1\u03C1", -1, 1], + ["\u03B2\u03C1", -1, 1], + ["\u03B1\u03B9\u03C1", -1, 1], + ["\u03C6\u03BF\u03C1", -1, 1], + ["\u03B5\u03C5\u03C1", -1, 1], + ["\u03C0\u03C5\u03C1", -1, 1], + ["\u03C7\u03C9\u03C1", -1, 1], + ["\u03BD\u03B5\u03C4", -1, 1], + ["\u03C3\u03C7", -1, 1] + ]; + + /** @const */ var a_42 = [ + ["\u03C0\u03B1\u03B3", -1, 1], + ["\u03B4", -1, 1], + ["\u03B1\u03B4", 1, 1], + ["\u03B8", -1, 1], + ["\u03B1\u03B8", 3, 1], + ["\u03C4\u03BF\u03BA", -1, 1], + ["\u03C3\u03BA", -1, 1], + ["\u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB", -1, 1], + ["\u03C3\u03BA\u03B5\u03BB", -1, 1], + ["\u03B1\u03C0\u03BB", -1, 1], + ["\u03B5\u03BC", -1, 1], + ["\u03B1\u03BD", -1, 1], + ["\u03B2\u03B5\u03BD", -1, 1], + ["\u03B2\u03B1\u03C1\u03BF\u03BD", -1, 1], + ["\u03BA\u03BF\u03C0", -1, 1], + ["\u03C3\u03B5\u03C1\u03C0", -1, 1], + ["\u03B1\u03B2\u03B1\u03C1", -1, 1], + ["\u03B5\u03BD\u03B1\u03C1", -1, 1], + ["\u03B1\u03B2\u03C1", -1, 1], + ["\u03BC\u03C0\u03BF\u03C1", -1, 1], + ["\u03B8\u03B1\u03C1\u03C1", -1, 1], + ["\u03BD\u03C4\u03C1", -1, 1], + ["\u03C5", -1, 1], + ["\u03BD\u03B9\u03C6", -1, 1], + ["\u03C3\u03C5\u03C1\u03C6", -1, 1] + ]; + + /** @const */ var a_43 = [ + ["\u03BF\u03BD\u03C4\u03B1\u03C3", -1, 1], + ["\u03C9\u03BD\u03C4\u03B1\u03C3", -1, 1] + ]; + + /** @const */ var a_44 = [ + ["\u03BF\u03BC\u03B1\u03C3\u03C4\u03B5", -1, 1], + ["\u03B9\u03BF\u03BC\u03B1\u03C3\u03C4\u03B5", 0, 1] + ]; + + /** @const */ var a_45 = [ + ["\u03C0", -1, 1], + ["\u03B1\u03C0", 0, 1], + ["\u03B1\u03BA\u03B1\u03C4\u03B1\u03C0", 1, 1], + ["\u03C3\u03C5\u03BC\u03C0", 0, 1], + ["\u03B1\u03C3\u03C5\u03BC\u03C0", 3, 1], + ["\u03B1\u03BC\u03B5\u03C4\u03B1\u03BC\u03C6", -1, 1] + ]; + + /** @const */ var a_46 = [ + ["\u03B6", -1, 1], + ["\u03B1\u03BB", -1, 1], + ["\u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB", 1, 1], + ["\u03B5\u03BA\u03C4\u03B5\u03BB", -1, 1], + ["\u03BC", -1, 1], + ["\u03BE", -1, 1], + ["\u03C0\u03C1\u03BF", -1, 1], + ["\u03B1\u03C1", -1, 1], + ["\u03BD\u03B9\u03C3", -1, 1] + ]; + + /** @const */ var a_47 = [ + ["\u03B7\u03B8\u03B7\u03BA\u03B1", -1, 1], + ["\u03B7\u03B8\u03B7\u03BA\u03B5", -1, 1], + ["\u03B7\u03B8\u03B7\u03BA\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_48 = [ + ["\u03C0\u03B9\u03B8", -1, 1], + ["\u03BF\u03B8", -1, 1], + ["\u03BD\u03B1\u03C1\u03B8", -1, 1], + ["\u03C3\u03BA\u03BF\u03C5\u03BB", -1, 1], + ["\u03C3\u03BA\u03C9\u03BB", -1, 1], + ["\u03C3\u03C6", -1, 1] + ]; + + /** @const */ var a_49 = [ + ["\u03B8", -1, 1], + ["\u03B4\u03B9\u03B1\u03B8", 0, 1], + ["\u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03C4\u03B1\u03B8", 0, 1], + ["\u03C3\u03C5\u03BD\u03B8", 0, 1], + ["\u03C0\u03C1\u03BF\u03C3\u03B8", 0, 1] + ]; + + /** @const */ var a_50 = [ + ["\u03B7\u03BA\u03B1", -1, 1], + ["\u03B7\u03BA\u03B5", -1, 1], + ["\u03B7\u03BA\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_51 = [ + ["\u03C6\u03B1\u03B3", -1, 1], + ["\u03BB\u03B7\u03B3", -1, 1], + ["\u03C6\u03C1\u03C5\u03B4", -1, 1], + ["\u03BC\u03B1\u03BD\u03C4\u03B9\u03BB", -1, 1], + ["\u03BC\u03B1\u03BB\u03BB", -1, 1], + ["\u03BF\u03BC", -1, 1], + ["\u03B2\u03BB\u03B5\u03C0", -1, 1], + ["\u03C0\u03BF\u03B4\u03B1\u03C1", -1, 1], + ["\u03BA\u03C5\u03BC\u03B1\u03C4", -1, 1], + ["\u03C0\u03C1\u03C9\u03C4", -1, 1], + ["\u03BB\u03B1\u03C7", -1, 1], + ["\u03C0\u03B1\u03BD\u03C4\u03B1\u03C7", -1, 1] + ]; + + /** @const */ var a_52 = [ + ["\u03C4\u03C3\u03B1", -1, 1], + ["\u03C7\u03B1\u03B4", -1, 1], + ["\u03BC\u03B5\u03B4", -1, 1], + ["\u03BB\u03B1\u03BC\u03C0\u03B9\u03B4", -1, 1], + ["\u03B4\u03B5", -1, 1], + ["\u03C0\u03BB\u03B5", -1, 1], + ["\u03BC\u03B5\u03C3\u03B1\u03B6", -1, 1], + ["\u03B4\u03B5\u03C3\u03C0\u03BF\u03B6", -1, 1], + ["\u03B1\u03B9\u03B8", -1, 1], + ["\u03C6\u03B1\u03C1\u03BC\u03B1\u03BA", -1, 1], + ["\u03B1\u03B3\u03BA", -1, 1], + ["\u03B1\u03BD\u03B7\u03BA", -1, 1], + ["\u03BB", -1, 1], + ["\u03BC", -1, 1], + ["\u03B1\u03BC", 13, 1], + ["\u03B2\u03C1\u03BF\u03BC", 13, 1], + ["\u03C5\u03C0\u03BF\u03C4\u03B5\u03B9\u03BD", -1, 1], + ["\u03B5\u03BA\u03BB\u03B9\u03C0", -1, 1], + ["\u03C1", -1, 1], + ["\u03B5\u03BD\u03B4\u03B9\u03B1\u03C6\u03B5\u03C1", 18, 1], + ["\u03B1\u03BD\u03B1\u03C1\u03C1", 18, 1], + ["\u03C0\u03B1\u03C4", -1, 1], + ["\u03BA\u03B1\u03B8\u03B1\u03C1\u03B5\u03C5", -1, 1], + ["\u03B4\u03B5\u03C5\u03C4\u03B5\u03C1\u03B5\u03C5", -1, 1], + ["\u03BB\u03B5\u03C7", -1, 1] + ]; + + /** @const */ var a_53 = [ + ["\u03BF\u03C5\u03C3\u03B1", -1, 1], + ["\u03BF\u03C5\u03C3\u03B5", -1, 1], + ["\u03BF\u03C5\u03C3\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_54 = [ + ["\u03C0\u03B5\u03BB", -1, 1], + ["\u03BB\u03BB", -1, 1], + ["\u03C3\u03BC\u03B7\u03BD", -1, 1], + ["\u03C1\u03C0", -1, 1], + ["\u03C0\u03C1", -1, 1], + ["\u03C6\u03C1", -1, 1], + ["\u03C7\u03BF\u03C1\u03C4", -1, 1], + ["\u03BF\u03C6", -1, 1], + ["\u03C8\u03BF\u03C6", 7, -1], + ["\u03C3\u03C6", -1, 1], + ["\u03BB\u03BF\u03C7", -1, 1], + ["\u03BD\u03B1\u03C5\u03BB\u03BF\u03C7", 10, -1] + ]; + + /** @const */ var a_55 = [ + ["\u03B1\u03BC\u03B1\u03BB\u03BB\u03B9", -1, 1], + ["\u03BB", -1, 1], + ["\u03B1\u03BC\u03B1\u03BB", 1, 1], + ["\u03BC", -1, 1], + ["\u03BF\u03C5\u03BB\u03B1\u03BC", 3, 1], + ["\u03B5\u03BD", -1, 1], + ["\u03B4\u03B5\u03C1\u03B2\u03B5\u03BD", 5, 1], + ["\u03C0", -1, 1], + ["\u03B1\u03B5\u03B9\u03C0", 7, 1], + ["\u03B1\u03C1\u03C4\u03B9\u03C0", 7, 1], + ["\u03C3\u03C5\u03BC\u03C0", 7, 1], + ["\u03BD\u03B5\u03BF\u03C0", 7, 1], + ["\u03BA\u03C1\u03BF\u03BA\u03B1\u03BB\u03BF\u03C0", 7, 1], + ["\u03BF\u03BB\u03BF\u03C0", 7, 1], + ["\u03C0\u03C1\u03BF\u03C3\u03C9\u03C0\u03BF\u03C0", 7, 1], + ["\u03C3\u03B9\u03B4\u03B7\u03C1\u03BF\u03C0", 7, 1], + ["\u03B4\u03C1\u03BF\u03C3\u03BF\u03C0", 7, 1], + ["\u03B1\u03C3\u03C0", 7, 1], + ["\u03B1\u03BD\u03C5\u03C0", 7, 1], + ["\u03C1", -1, 1], + ["\u03B1\u03C3\u03C0\u03B1\u03C1", 19, 1], + ["\u03C7\u03B1\u03C1", 19, 1], + ["\u03B1\u03C7\u03B1\u03C1", 21, 1], + ["\u03B1\u03C0\u03B5\u03C1", 19, 1], + ["\u03C4\u03C1", 19, 1], + ["\u03BF\u03C5\u03C1", 19, 1], + ["\u03C4", -1, 1], + ["\u03B4\u03B9\u03B1\u03C4", 26, 1], + ["\u03B5\u03C0\u03B9\u03C4", 26, 1], + ["\u03C3\u03C5\u03BD\u03C4", 26, 1], + ["\u03BF\u03BC\u03BF\u03C4", 26, 1], + ["\u03BD\u03BF\u03BC\u03BF\u03C4", 30, 1], + ["\u03B1\u03C0\u03BF\u03C4", 26, 1], + ["\u03C5\u03C0\u03BF\u03C4", 26, 1], + ["\u03B1\u03B2\u03B1\u03C3\u03C4", 26, 1], + ["\u03B1\u03B9\u03BC\u03BF\u03C3\u03C4", 26, 1], + ["\u03C0\u03C1\u03BF\u03C3\u03C4", 26, 1], + ["\u03B1\u03BD\u03C5\u03C3\u03C4", 26, 1], + ["\u03BD\u03B1\u03C5", -1, 1], + ["\u03B1\u03C6", -1, 1], + ["\u03BE\u03B5\u03C6", -1, 1], + ["\u03B1\u03B4\u03B7\u03C6", -1, 1], + ["\u03C0\u03B1\u03BC\u03C6", -1, 1], + ["\u03C0\u03BF\u03BB\u03C5\u03C6", -1, 1] + ]; + + /** @const */ var a_56 = [ + ["\u03B1\u03B3\u03B1", -1, 1], + ["\u03B1\u03B3\u03B5", -1, 1], + ["\u03B1\u03B3\u03B5\u03C3", -1, 1] + ]; + + /** @const */ var a_57 = [ + ["\u03B7\u03C3\u03B1", -1, 1], + ["\u03B7\u03C3\u03B5", -1, 1], + ["\u03B7\u03C3\u03BF\u03C5", -1, 1] + ]; + + /** @const */ var a_58 = [ + ["\u03BD", -1, 1], + ["\u03B4\u03C9\u03B4\u03B5\u03BA\u03B1\u03BD", 0, 1], + ["\u03B5\u03C0\u03C4\u03B1\u03BD", 0, 1], + ["\u03BC\u03B5\u03B3\u03B1\u03BB\u03BF\u03BD", 0, 1], + ["\u03B5\u03C1\u03B7\u03BC\u03BF\u03BD", 0, 1], + ["\u03C7\u03B5\u03C1\u03C3\u03BF\u03BD", 0, 1] + ]; + + /** @const */ var a_59 = [ + ["\u03B7\u03C3\u03C4\u03B5", -1, 1] + ]; + + /** @const */ var a_60 = [ + ["\u03C3\u03B2", -1, 1], + ["\u03B1\u03C3\u03B2", 0, 1], + ["\u03B1\u03C0\u03BB", -1, 1], + ["\u03B1\u03B5\u03B9\u03BC\u03BD", -1, 1], + ["\u03C7\u03C1", -1, 1], + ["\u03B1\u03C7\u03C1", 4, 1], + ["\u03BA\u03BF\u03B9\u03BD\u03BF\u03C7\u03C1", 4, 1], + ["\u03B4\u03C5\u03C3\u03C7\u03C1", 4, 1], + ["\u03B5\u03C5\u03C7\u03C1", 4, 1], + ["\u03C0\u03B1\u03BB\u03B9\u03BC\u03C8", -1, 1] + ]; + + /** @const */ var a_61 = [ + ["\u03BF\u03C5\u03BD\u03B5", -1, 1], + ["\u03B7\u03B8\u03BF\u03C5\u03BD\u03B5", 0, 1], + ["\u03B7\u03C3\u03BF\u03C5\u03BD\u03B5", 0, 1] + ]; + + /** @const */ var a_62 = [ + ["\u03C3\u03C0\u03B9", -1, 1], + ["\u03BD", -1, 1], + ["\u03B5\u03BE\u03C9\u03BD", 1, 1], + ["\u03C1", -1, 1], + ["\u03C3\u03C4\u03C1\u03B1\u03B2\u03BF\u03BC\u03BF\u03C5\u03C4\u03C3", -1, 1], + ["\u03BA\u03B1\u03BA\u03BF\u03BC\u03BF\u03C5\u03C4\u03C3", -1, 1] + ]; + + /** @const */ var a_63 = [ + ["\u03BF\u03C5\u03BC\u03B5", -1, 1], + ["\u03B7\u03B8\u03BF\u03C5\u03BC\u03B5", 0, 1], + ["\u03B7\u03C3\u03BF\u03C5\u03BC\u03B5", 0, 1] + ]; + + /** @const */ var a_64 = [ + ["\u03B1\u03B6", -1, 1], + ["\u03C9\u03C1\u03B9\u03BF\u03C0\u03BB", -1, 1], + ["\u03B1\u03C3\u03BF\u03C5\u03C3", -1, 1], + ["\u03C0\u03B1\u03C1\u03B1\u03C3\u03BF\u03C5\u03C3", 2, 1], + ["\u03B1\u03BB\u03BB\u03BF\u03C3\u03BF\u03C5\u03C3", -1, 1], + ["\u03C6", -1, 1], + ["\u03C7", -1, 1] + ]; + + /** @const */ var a_65 = [ + ["\u03BC\u03B1\u03C4\u03B1", -1, 1], + ["\u03BC\u03B1\u03C4\u03C9\u03BD", -1, 1], + ["\u03BC\u03B1\u03C4\u03BF\u03C3", -1, 1] + ]; + + /** @const */ var a_66 = [ + ["\u03B1", -1, 1], + ["\u03B9\u03BF\u03C5\u03BC\u03B1", 0, 1], + ["\u03BF\u03BC\u03BF\u03C5\u03BD\u03B1", 0, 1], + ["\u03B9\u03BF\u03BC\u03BF\u03C5\u03BD\u03B1", 2, 1], + ["\u03BF\u03C3\u03BF\u03C5\u03BD\u03B1", 0, 1], + ["\u03B9\u03BF\u03C3\u03BF\u03C5\u03BD\u03B1", 4, 1], + ["\u03B5", -1, 1], + ["\u03B1\u03B3\u03B1\u03C4\u03B5", 6, 1], + ["\u03B7\u03BA\u03B1\u03C4\u03B5", 6, 1], + ["\u03B7\u03B8\u03B7\u03BA\u03B1\u03C4\u03B5", 8, 1], + ["\u03B7\u03C3\u03B1\u03C4\u03B5", 6, 1], + ["\u03BF\u03C5\u03C3\u03B1\u03C4\u03B5", 6, 1], + ["\u03B5\u03B9\u03C4\u03B5", 6, 1], + ["\u03B7\u03B8\u03B5\u03B9\u03C4\u03B5", 12, 1], + ["\u03B9\u03B5\u03BC\u03B1\u03C3\u03C4\u03B5", 6, 1], + ["\u03BF\u03C5\u03BC\u03B1\u03C3\u03C4\u03B5", 6, 1], + ["\u03B9\u03BF\u03C5\u03BC\u03B1\u03C3\u03C4\u03B5", 15, 1], + ["\u03B9\u03B5\u03C3\u03B1\u03C3\u03C4\u03B5", 6, 1], + ["\u03BF\u03C3\u03B1\u03C3\u03C4\u03B5", 6, 1], + ["\u03B9\u03BF\u03C3\u03B1\u03C3\u03C4\u03B5", 18, 1], + ["\u03B7", -1, 1], + ["\u03B9", -1, 1], + ["\u03B1\u03BC\u03B1\u03B9", 21, 1], + ["\u03B9\u03B5\u03BC\u03B1\u03B9", 21, 1], + ["\u03BF\u03BC\u03B1\u03B9", 21, 1], + ["\u03BF\u03C5\u03BC\u03B1\u03B9", 21, 1], + ["\u03B1\u03C3\u03B1\u03B9", 21, 1], + ["\u03B5\u03C3\u03B1\u03B9", 21, 1], + ["\u03B9\u03B5\u03C3\u03B1\u03B9", 27, 1], + ["\u03B1\u03C4\u03B1\u03B9", 21, 1], + ["\u03B5\u03C4\u03B1\u03B9", 21, 1], + ["\u03B9\u03B5\u03C4\u03B1\u03B9", 30, 1], + ["\u03BF\u03BD\u03C4\u03B1\u03B9", 21, 1], + ["\u03BF\u03C5\u03BD\u03C4\u03B1\u03B9", 21, 1], + ["\u03B9\u03BF\u03C5\u03BD\u03C4\u03B1\u03B9", 33, 1], + ["\u03B5\u03B9", 21, 1], + ["\u03B1\u03B5\u03B9", 35, 1], + ["\u03B7\u03B8\u03B5\u03B9", 35, 1], + ["\u03B7\u03C3\u03B5\u03B9", 35, 1], + ["\u03BF\u03B9", 21, 1], + ["\u03B1\u03BD", -1, 1], + ["\u03B1\u03B3\u03B1\u03BD", 40, 1], + ["\u03B7\u03BA\u03B1\u03BD", 40, 1], + ["\u03B7\u03B8\u03B7\u03BA\u03B1\u03BD", 42, 1], + ["\u03B7\u03C3\u03B1\u03BD", 40, 1], + ["\u03BF\u03C5\u03C3\u03B1\u03BD", 40, 1], + ["\u03BF\u03BD\u03C4\u03BF\u03C5\u03C3\u03B1\u03BD", 45, 1], + ["\u03B9\u03BF\u03BD\u03C4\u03BF\u03C5\u03C3\u03B1\u03BD", 46, 1], + ["\u03BF\u03BD\u03C4\u03B1\u03BD", 40, 1], + ["\u03B9\u03BF\u03BD\u03C4\u03B1\u03BD", 48, 1], + ["\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD", 40, 1], + ["\u03B9\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD", 50, 1], + ["\u03BF\u03C4\u03B1\u03BD", 40, 1], + ["\u03B9\u03BF\u03C4\u03B1\u03BD", 52, 1], + ["\u03BF\u03BC\u03B1\u03C3\u03C4\u03B1\u03BD", 40, 1], + ["\u03B9\u03BF\u03BC\u03B1\u03C3\u03C4\u03B1\u03BD", 54, 1], + ["\u03BF\u03C3\u03B1\u03C3\u03C4\u03B1\u03BD", 40, 1], + ["\u03B9\u03BF\u03C3\u03B1\u03C3\u03C4\u03B1\u03BD", 56, 1], + ["\u03BF\u03C5\u03BD", -1, 1], + ["\u03B7\u03B8\u03BF\u03C5\u03BD", 58, 1], + ["\u03BF\u03BC\u03BF\u03C5\u03BD", 58, 1], + ["\u03B9\u03BF\u03BC\u03BF\u03C5\u03BD", 60, 1], + ["\u03B7\u03C3\u03BF\u03C5\u03BD", 58, 1], + ["\u03BF\u03C3\u03BF\u03C5\u03BD", 58, 1], + ["\u03B9\u03BF\u03C3\u03BF\u03C5\u03BD", 63, 1], + ["\u03C9\u03BD", -1, 1], + ["\u03B7\u03B4\u03C9\u03BD", 65, 1], + ["\u03BF", -1, 1], + ["\u03B1\u03C3", -1, 1], + ["\u03B5\u03C3", -1, 1], + ["\u03B7\u03B4\u03B5\u03C3", 69, 1], + ["\u03B7\u03C3\u03B5\u03C3", 69, 1], + ["\u03B7\u03C3", -1, 1], + ["\u03B5\u03B9\u03C3", -1, 1], + ["\u03B7\u03B8\u03B5\u03B9\u03C3", 73, 1], + ["\u03BF\u03C3", -1, 1], + ["\u03C5\u03C3", -1, 1], + ["\u03BF\u03C5\u03C3", 76, 1], + ["\u03C5", -1, 1], + ["\u03BF\u03C5", 78, 1], + ["\u03C9", -1, 1], + ["\u03B1\u03C9", 80, 1], + ["\u03B7\u03B8\u03C9", 80, 1], + ["\u03B7\u03C3\u03C9", 80, 1] + ]; + + /** @const */ var a_67 = [ + ["\u03BF\u03C4\u03B5\u03C1", -1, 1], + ["\u03B5\u03C3\u03C4\u03B5\u03C1", -1, 1], + ["\u03C5\u03C4\u03B5\u03C1", -1, 1], + ["\u03C9\u03C4\u03B5\u03C1", -1, 1], + ["\u03BF\u03C4\u03B1\u03C4", -1, 1], + ["\u03B5\u03C3\u03C4\u03B1\u03C4", -1, 1], + ["\u03C5\u03C4\u03B1\u03C4", -1, 1], + ["\u03C9\u03C4\u03B1\u03C4", -1, 1] + ]; + + /** @const */ var /** Array */ g_v = [81, 65, 16, 1]; + + /** @const */ var /** Array */ g_v2 = [81, 65, 0, 1]; + + var /** boolean */ B_test1 = false; + + + /** @return {boolean} */ + function r_has_min_length() { + return base.current.length >= 3; + }; + + /** @return {boolean} */ + function r_tolower() { + var /** number */ among_var; + while(true) + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + among_var = base.find_among_b(a_0); + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u03B1")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B2")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u03B3")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u03B4")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u03B5")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u03B6")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u03B7")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u03B8")) + { + return false; + } + break; + case 9: + if (!base.slice_from("\u03B9")) + { + return false; + } + break; + case 10: + if (!base.slice_from("\u03BA")) + { + return false; + } + break; + case 11: + if (!base.slice_from("\u03BB")) + { + return false; + } + break; + case 12: + if (!base.slice_from("\u03BC")) + { + return false; + } + break; + case 13: + if (!base.slice_from("\u03BD")) + { + return false; + } + break; + case 14: + if (!base.slice_from("\u03BE")) + { + return false; + } + break; + case 15: + if (!base.slice_from("\u03BF")) + { + return false; + } + break; + case 16: + if (!base.slice_from("\u03C0")) + { + return false; + } + break; + case 17: + if (!base.slice_from("\u03C1")) + { + return false; + } + break; + case 18: + if (!base.slice_from("\u03C3")) + { + return false; + } + break; + case 19: + if (!base.slice_from("\u03C4")) + { + return false; + } + break; + case 20: + if (!base.slice_from("\u03C5")) + { + return false; + } + break; + case 21: + if (!base.slice_from("\u03C6")) + { + return false; + } + break; + case 22: + if (!base.slice_from("\u03C7")) + { + return false; + } + break; + case 23: + if (!base.slice_from("\u03C8")) + { + return false; + } + break; + case 24: + if (!base.slice_from("\u03C9")) + { + return false; + } + break; + case 25: + if (base.cursor <= base.limit_backward) + { + break lab0; + } + base.cursor--; + break; + } + continue; + } + base.cursor = base.limit - v_1; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_step_1() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u03C6\u03B1")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03C3\u03BA\u03B1")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u03BF\u03BB\u03BF")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u03C3\u03BF")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u03C4\u03B1\u03C4\u03BF")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u03BA\u03C1\u03B5")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u03C0\u03B5\u03C1")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u03C4\u03B5\u03C1")) + { + return false; + } + break; + case 9: + if (!base.slice_from("\u03C6\u03C9")) + { + return false; + } + break; + case 10: + if (!base.slice_from("\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4")) + { + return false; + } + break; + case 11: + if (!base.slice_from("\u03B3\u03B5\u03B3\u03BF\u03BD")) + { + return false; + } + break; + } + B_test1 = false; + return true; + }; + + /** @return {boolean} */ + function r_step_s1() { + var /** number */ among_var; + base.ket = base.cursor; + if (base.find_among_b(a_3) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("\u03B9")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B9\u03B6")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_step_s2() { + base.ket = base.cursor; + if (base.find_among_b(a_5) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_4) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03C9\u03BD")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_s3() { + var /** number */ among_var; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B9\u03C3\u03B1"))) + { + break lab1; + } + base.bra = base.cursor; + if (base.cursor > base.limit_backward) + { + break lab1; + } + if (!base.slice_from("\u03B9\u03C3")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + } + if (base.find_among_b(a_7) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + among_var = base.find_among_b(a_6); + if (among_var == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("\u03B9")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B9\u03C3")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_step_s4() { + base.ket = base.cursor; + if (base.find_among_b(a_9) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_8) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B9")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_s5() { + var /** number */ among_var; + base.ket = base.cursor; + if (base.find_among_b(a_11) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + among_var = base.find_among_b(a_10); + if (among_var == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("\u03B9")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B9\u03C3\u03C4")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_step_s6() { + var /** number */ among_var; + base.ket = base.cursor; + if (base.find_among_b(a_14) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + among_var = base.find_among_b(a_12); + if (among_var == 0) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + switch (among_var) { + case 1: + if (!base.slice_from("\u03B9\u03C3\u03BC")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B9")) + { + return false; + } + break; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + among_var = base.find_among_b(a_13); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u03B1\u03B3\u03BD\u03C9\u03C3\u03C4")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B1\u03C4\u03BF\u03BC")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u03B3\u03BD\u03C9\u03C3\u03C4")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u03B5\u03B8\u03BD")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u03B5\u03BA\u03BB\u03B5\u03BA\u03C4")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u03C3\u03BA\u03B5\u03C0\u03C4")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u03C4\u03BF\u03C0")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u03B1\u03BB\u03B5\u03BE\u03B1\u03BD\u03B4\u03C1")) + { + return false; + } + break; + case 9: + if (!base.slice_from("\u03B2\u03C5\u03B6\u03B1\u03BD\u03C4")) + { + return false; + } + break; + case 10: + if (!base.slice_from("\u03B8\u03B5\u03B1\u03C4\u03C1")) + { + return false; + } + break; + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_s7() { + base.ket = base.cursor; + if (base.find_among_b(a_16) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_15) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B1\u03C1\u03B1\u03BA")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_s8() { + var /** number */ among_var; + base.ket = base.cursor; + if (base.find_among_b(a_18) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + among_var = base.find_among_b(a_17); + if (among_var == 0) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + switch (among_var) { + case 1: + if (!base.slice_from("\u03B1\u03BA")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u03B9\u03C4\u03C3")) + { + return false; + } + break; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.eq_s_b("\u03BA\u03BF\u03C1"))) + { + return false; + } + if (!base.slice_from("\u03B9\u03C4\u03C3")) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_s9() { + base.ket = base.cursor; + if (base.find_among_b(a_21) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_19) == 0) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + if (!base.slice_from("\u03B9\u03B4")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_20) == 0) + { + return false; + } + if (!base.slice_from("\u03B9\u03B4")) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_s10() { + base.ket = base.cursor; + if (base.find_among_b(a_23) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_22) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B9\u03C3\u03BA")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_2a() { + base.ket = base.cursor; + if (base.find_among_b(a_24) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (base.find_among_b(a_25) == 0) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_1; + } + { + /** @const */ var /** number */ c1 = base.cursor; + base.insert(base.cursor, base.cursor, "\u03B1\u03B4"); + base.cursor = c1; + } + return true; + }; + + /** @return {boolean} */ + function r_step_2b() { + base.ket = base.cursor; + if (base.find_among_b(a_26) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_27) == 0) + { + return false; + } + if (!base.slice_from("\u03B5\u03B4")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_2c() { + base.ket = base.cursor; + if (base.find_among_b(a_28) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_29) == 0) + { + return false; + } + if (!base.slice_from("\u03BF\u03C5\u03B4")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_2d() { + base.ket = base.cursor; + if (base.find_among_b(a_30) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_31) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B5")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_3() { + base.ket = base.cursor; + if (base.find_among_b(a_32) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.in_grouping_b(g_v, 945, 969))) + { + return false; + } + if (!base.slice_from("\u03B9")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_4() { + base.ket = base.cursor; + if (base.find_among_b(a_33) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.in_grouping_b(g_v, 945, 969))) + { + break lab1; + } + if (!base.slice_from("\u03B9\u03BA")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + } + base.bra = base.cursor; + if (base.find_among_b(a_34) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B9\u03BA")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5a() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B1\u03B3\u03B1\u03BC\u03B5"))) + { + break lab0; + } + base.bra = base.cursor; + if (base.cursor > base.limit_backward) + { + break lab0; + } + if (!base.slice_from("\u03B1\u03B3\u03B1\u03BC")) + { + return false; + } + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + if (base.find_among_b(a_35) == 0) + { + break lab1; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + } + base.cursor = base.limit - v_2; + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B1\u03BC\u03B5"))) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_36) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B1\u03BC")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5b() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_38) == 0) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_37) == 0) + { + break lab0; + } + if (base.cursor > base.limit_backward) + { + break lab0; + } + if (!base.slice_from("\u03B1\u03B3\u03B1\u03BD")) + { + return false; + } + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B1\u03BD\u03B5"))) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.in_grouping_b(g_v2, 945, 969))) + { + break lab2; + } + if (!base.slice_from("\u03B1\u03BD")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + base.ket = base.cursor; + } + base.bra = base.cursor; + if (base.find_among_b(a_39) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B1\u03BD")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5c() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_40) == 0) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B5\u03C4\u03B5"))) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.in_grouping_b(g_v2, 945, 969))) + { + break lab2; + } + if (!base.slice_from("\u03B5\u03C4")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + lab3: { + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_41) == 0) + { + break lab3; + } + if (!base.slice_from("\u03B5\u03C4")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + base.ket = base.cursor; + } + base.bra = base.cursor; + if (base.find_among_b(a_42) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B5\u03C4")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5d() { + base.ket = base.cursor; + if (base.find_among_b(a_43) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.eq_s_b("\u03B1\u03C1\u03C7"))) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + if (!base.slice_from("\u03BF\u03BD\u03C4")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.eq_s_b("\u03BA\u03C1\u03B5"))) + { + return false; + } + if (!base.slice_from("\u03C9\u03BD\u03C4")) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_5e() { + base.ket = base.cursor; + if (base.find_among_b(a_44) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.eq_s_b("\u03BF\u03BD"))) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03BF\u03BC\u03B1\u03C3\u03C4")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5f() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B9\u03B5\u03C3\u03C4\u03B5"))) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_45) == 0) + { + break lab0; + } + if (base.cursor > base.limit_backward) + { + break lab0; + } + if (!base.slice_from("\u03B9\u03B5\u03C3\u03C4")) + { + return false; + } + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (!(base.eq_s_b("\u03B5\u03C3\u03C4\u03B5"))) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_46) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B9\u03B5\u03C3\u03C4")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5g() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_47) == 0) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (base.find_among_b(a_50) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_48) == 0) + { + break lab2; + } + if (!base.slice_from("\u03B7\u03BA")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_49) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B7\u03BA")) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_5h() { + base.ket = base.cursor; + if (base.find_among_b(a_53) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_51) == 0) + { + break lab1; + } + if (!base.slice_from("\u03BF\u03C5\u03C3")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_52) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03BF\u03C5\u03C3")) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_5i() { + var /** number */ among_var; + base.ket = base.cursor; + if (base.find_among_b(a_56) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + base.bra = base.cursor; + if (!(base.eq_s_b("\u03BA\u03BF\u03BB\u03BB"))) + { + break lab1; + } + if (!base.slice_from("\u03B1\u03B3")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab3: { + base.ket = base.cursor; + base.bra = base.cursor; + among_var = base.find_among_b(a_54); + if (among_var == 0) + { + break lab3; + } + switch (among_var) { + case 1: + if (!base.slice_from("\u03B1\u03B3")) + { + return false; + } + break; + } + break lab2; + } + base.cursor = base.limit - v_2; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_55) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B1\u03B3")) + { + return false; + } + } + } + return true; + }; + + /** @return {boolean} */ + function r_step_5j() { + base.ket = base.cursor; + if (base.find_among_b(a_57) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_58) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B7\u03C3")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5k() { + base.ket = base.cursor; + if (base.find_among_b(a_59) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_60) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03B7\u03C3\u03C4")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5l() { + base.ket = base.cursor; + if (base.find_among_b(a_61) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_62) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03BF\u03C5\u03BD")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_5m() { + base.ket = base.cursor; + if (base.find_among_b(a_63) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_test1 = false; + base.ket = base.cursor; + base.bra = base.cursor; + if (base.find_among_b(a_64) == 0) + { + return false; + } + if (base.cursor > base.limit_backward) + { + return false; + } + if (!base.slice_from("\u03BF\u03C5\u03BC")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_6() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_65) == 0) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_from("\u03BC\u03B1")) + { + return false; + } + } + base.cursor = base.limit - v_1; + if (!B_test1) + { + return false; + } + base.ket = base.cursor; + if (base.find_among_b(a_66) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step_7() { + base.ket = base.cursor; + if (base.find_among_b(a_67) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + r_tolower(); + base.cursor = base.limit - v_1; + if (!r_has_min_length()) + { + return false; + } + B_test1 = true; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + r_step_1(); + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_step_s1(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_step_s2(); + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + r_step_s3(); + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + r_step_s4(); + base.cursor = base.limit - v_6; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + r_step_s5(); + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + r_step_s6(); + base.cursor = base.limit - v_8; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + r_step_s7(); + base.cursor = base.limit - v_9; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + r_step_s8(); + base.cursor = base.limit - v_10; + /** @const */ var /** number */ v_11 = base.limit - base.cursor; + r_step_s9(); + base.cursor = base.limit - v_11; + /** @const */ var /** number */ v_12 = base.limit - base.cursor; + r_step_s10(); + base.cursor = base.limit - v_12; + /** @const */ var /** number */ v_13 = base.limit - base.cursor; + r_step_2a(); + base.cursor = base.limit - v_13; + /** @const */ var /** number */ v_14 = base.limit - base.cursor; + r_step_2b(); + base.cursor = base.limit - v_14; + /** @const */ var /** number */ v_15 = base.limit - base.cursor; + r_step_2c(); + base.cursor = base.limit - v_15; + /** @const */ var /** number */ v_16 = base.limit - base.cursor; + r_step_2d(); + base.cursor = base.limit - v_16; + /** @const */ var /** number */ v_17 = base.limit - base.cursor; + r_step_3(); + base.cursor = base.limit - v_17; + /** @const */ var /** number */ v_18 = base.limit - base.cursor; + r_step_4(); + base.cursor = base.limit - v_18; + /** @const */ var /** number */ v_19 = base.limit - base.cursor; + r_step_5a(); + base.cursor = base.limit - v_19; + /** @const */ var /** number */ v_20 = base.limit - base.cursor; + r_step_5b(); + base.cursor = base.limit - v_20; + /** @const */ var /** number */ v_21 = base.limit - base.cursor; + r_step_5c(); + base.cursor = base.limit - v_21; + /** @const */ var /** number */ v_22 = base.limit - base.cursor; + r_step_5d(); + base.cursor = base.limit - v_22; + /** @const */ var /** number */ v_23 = base.limit - base.cursor; + r_step_5e(); + base.cursor = base.limit - v_23; + /** @const */ var /** number */ v_24 = base.limit - base.cursor; + r_step_5f(); + base.cursor = base.limit - v_24; + /** @const */ var /** number */ v_25 = base.limit - base.cursor; + r_step_5g(); + base.cursor = base.limit - v_25; + /** @const */ var /** number */ v_26 = base.limit - base.cursor; + r_step_5h(); + base.cursor = base.limit - v_26; + /** @const */ var /** number */ v_27 = base.limit - base.cursor; + r_step_5j(); + base.cursor = base.limit - v_27; + /** @const */ var /** number */ v_28 = base.limit - base.cursor; + r_step_5i(); + base.cursor = base.limit - v_28; + /** @const */ var /** number */ v_29 = base.limit - base.cursor; + r_step_5k(); + base.cursor = base.limit - v_29; + /** @const */ var /** number */ v_30 = base.limit - base.cursor; + r_step_5l(); + base.cursor = base.limit - v_30; + /** @const */ var /** number */ v_31 = base.limit - base.cursor; + r_step_5m(); + base.cursor = base.limit - v_31; + /** @const */ var /** number */ v_32 = base.limit - base.cursor; + r_step_6(); + base.cursor = base.limit - v_32; + /** @const */ var /** number */ v_33 = base.limit - base.cursor; + r_step_7(); + base.cursor = base.limit - v_33; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hindi-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hindi-stemmer.js new file mode 100644 index 000000000..26a715e7e --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hindi-stemmer.js @@ -0,0 +1,181 @@ +// Generated from hindi.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var HindiStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u0906\u0901", -1, -1], + ["\u093E\u0901", -1, -1], + ["\u0907\u092F\u093E\u0901", 1, -1], + ["\u0906\u0907\u092F\u093E\u0901", 2, -1], + ["\u093E\u0907\u092F\u093E\u0901", 2, -1], + ["\u093F\u092F\u093E\u0901", 1, -1], + ["\u0906\u0902", -1, -1], + ["\u0909\u0906\u0902", 6, -1], + ["\u0941\u0906\u0902", 6, -1], + ["\u0908\u0902", -1, -1], + ["\u0906\u0908\u0902", 9, -1], + ["\u093E\u0908\u0902", 9, -1], + ["\u090F\u0902", -1, -1], + ["\u0906\u090F\u0902", 12, -1], + ["\u0909\u090F\u0902", 12, -1], + ["\u093E\u090F\u0902", 12, -1], + ["\u0924\u093E\u090F\u0902", 15, -1, r_CONSONANT], + ["\u0905\u0924\u093E\u090F\u0902", 16, -1], + ["\u0928\u093E\u090F\u0902", 15, -1, r_CONSONANT], + ["\u0905\u0928\u093E\u090F\u0902", 18, -1], + ["\u0941\u090F\u0902", 12, -1], + ["\u0913\u0902", -1, -1], + ["\u0906\u0913\u0902", 21, -1], + ["\u0909\u0913\u0902", 21, -1], + ["\u093E\u0913\u0902", 21, -1], + ["\u0924\u093E\u0913\u0902", 24, -1, r_CONSONANT], + ["\u0905\u0924\u093E\u0913\u0902", 25, -1], + ["\u0928\u093E\u0913\u0902", 24, -1, r_CONSONANT], + ["\u0905\u0928\u093E\u0913\u0902", 27, -1], + ["\u0941\u0913\u0902", 21, -1], + ["\u093E\u0902", -1, -1], + ["\u0907\u092F\u093E\u0902", 30, -1], + ["\u0906\u0907\u092F\u093E\u0902", 31, -1], + ["\u093E\u0907\u092F\u093E\u0902", 31, -1], + ["\u093F\u092F\u093E\u0902", 30, -1], + ["\u0940\u0902", -1, -1], + ["\u0924\u0940\u0902", 35, -1, r_CONSONANT], + ["\u0905\u0924\u0940\u0902", 36, -1], + ["\u0906\u0924\u0940\u0902", 36, -1], + ["\u093E\u0924\u0940\u0902", 36, -1], + ["\u0947\u0902", -1, -1], + ["\u094B\u0902", -1, -1], + ["\u0907\u092F\u094B\u0902", 41, -1], + ["\u0906\u0907\u092F\u094B\u0902", 42, -1], + ["\u093E\u0907\u092F\u094B\u0902", 42, -1], + ["\u093F\u092F\u094B\u0902", 41, -1], + ["\u0905", -1, -1], + ["\u0906", -1, -1], + ["\u0907", -1, -1], + ["\u0908", -1, -1], + ["\u0906\u0908", 49, -1], + ["\u093E\u0908", 49, -1], + ["\u0909", -1, -1], + ["\u090A", -1, -1], + ["\u090F", -1, -1], + ["\u0906\u090F", 54, -1], + ["\u0907\u090F", 54, -1], + ["\u0906\u0907\u090F", 56, -1], + ["\u093E\u0907\u090F", 56, -1], + ["\u093E\u090F", 54, -1], + ["\u093F\u090F", 54, -1], + ["\u0913", -1, -1], + ["\u0906\u0913", 61, -1], + ["\u093E\u0913", 61, -1], + ["\u0915\u0930", -1, -1, r_CONSONANT], + ["\u0905\u0915\u0930", 64, -1], + ["\u0906\u0915\u0930", 64, -1], + ["\u093E\u0915\u0930", 64, -1], + ["\u093E", -1, -1], + ["\u090A\u0902\u0917\u093E", 68, -1], + ["\u0906\u090A\u0902\u0917\u093E", 69, -1], + ["\u093E\u090A\u0902\u0917\u093E", 69, -1], + ["\u0942\u0902\u0917\u093E", 68, -1], + ["\u090F\u0917\u093E", 68, -1], + ["\u0906\u090F\u0917\u093E", 73, -1], + ["\u093E\u090F\u0917\u093E", 73, -1], + ["\u0947\u0917\u093E", 68, -1], + ["\u0924\u093E", 68, -1, r_CONSONANT], + ["\u0905\u0924\u093E", 77, -1], + ["\u0906\u0924\u093E", 77, -1], + ["\u093E\u0924\u093E", 77, -1], + ["\u0928\u093E", 68, -1, r_CONSONANT], + ["\u0905\u0928\u093E", 81, -1], + ["\u0906\u0928\u093E", 81, -1], + ["\u093E\u0928\u093E", 81, -1], + ["\u0906\u092F\u093E", 68, -1], + ["\u093E\u092F\u093E", 68, -1], + ["\u093F", -1, -1], + ["\u0940", -1, -1], + ["\u090A\u0902\u0917\u0940", 88, -1], + ["\u0906\u090A\u0902\u0917\u0940", 89, -1], + ["\u093E\u090A\u0902\u0917\u0940", 89, -1], + ["\u090F\u0902\u0917\u0940", 88, -1], + ["\u0906\u090F\u0902\u0917\u0940", 92, -1], + ["\u093E\u090F\u0902\u0917\u0940", 92, -1], + ["\u0942\u0902\u0917\u0940", 88, -1], + ["\u0947\u0902\u0917\u0940", 88, -1], + ["\u090F\u0917\u0940", 88, -1], + ["\u0906\u090F\u0917\u0940", 97, -1], + ["\u093E\u090F\u0917\u0940", 97, -1], + ["\u0913\u0917\u0940", 88, -1], + ["\u0906\u0913\u0917\u0940", 100, -1], + ["\u093E\u0913\u0917\u0940", 100, -1], + ["\u0947\u0917\u0940", 88, -1], + ["\u094B\u0917\u0940", 88, -1], + ["\u0924\u0940", 88, -1, r_CONSONANT], + ["\u0905\u0924\u0940", 105, -1], + ["\u0906\u0924\u0940", 105, -1], + ["\u093E\u0924\u0940", 105, -1], + ["\u0928\u0940", 88, -1, r_CONSONANT], + ["\u0905\u0928\u0940", 109, -1], + ["\u0941", -1, -1], + ["\u0942", -1, -1], + ["\u0947", -1, -1], + ["\u090F\u0902\u0917\u0947", 113, -1], + ["\u0906\u090F\u0902\u0917\u0947", 114, -1], + ["\u093E\u090F\u0902\u0917\u0947", 114, -1], + ["\u0947\u0902\u0917\u0947", 113, -1], + ["\u0913\u0917\u0947", 113, -1], + ["\u0906\u0913\u0917\u0947", 118, -1], + ["\u093E\u0913\u0917\u0947", 118, -1], + ["\u094B\u0917\u0947", 113, -1], + ["\u0924\u0947", 113, -1, r_CONSONANT], + ["\u0905\u0924\u0947", 122, -1], + ["\u0906\u0924\u0947", 122, -1], + ["\u093E\u0924\u0947", 122, -1], + ["\u0928\u0947", 113, -1, r_CONSONANT], + ["\u0905\u0928\u0947", 126, -1], + ["\u0906\u0928\u0947", 126, -1], + ["\u093E\u0928\u0947", 126, -1], + ["\u094B", -1, -1], + ["\u094D", -1, -1] + ]; + + /** @const */ var /** Array */ g_consonant = [255, 255, 255, 255, 159, 0, 0, 0, 248, 7]; + + + /** @return {boolean} */ + function r_CONSONANT() { + if (!(base.in_grouping_b(g_consonant, 2325, 2399))) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + if (base.cursor >= base.limit) + { + return false; + } + base.cursor++; + base.limit_backward = base.cursor; base.cursor = base.limit; + base.ket = base.cursor; + if (base.find_among_b(a_0) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hungarian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hungarian-stemmer.js index 2c550ac0d..886e1cf39 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hungarian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/hungarian-stemmer.js @@ -1,25 +1,15 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from hungarian.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -HungarianStemmer = function() { +var HungarianStemmer = function() { var base = new BaseStemmer(); - /** @const */ var a_0 = [ - ["cs", -1, -1], - ["dzs", -1, -1], - ["gy", -1, -1], - ["ly", -1, -1], - ["ny", -1, -1], - ["sz", -1, -1], - ["ty", -1, -1], - ["zs", -1, -1] - ]; - /** @const */ var a_1 = [ + /** @const */ var a_0 = [ ["\u00E1", -1, 1], ["\u00E9", -1, 2] ]; - /** @const */ var a_2 = [ + /** @const */ var a_1 = [ ["bb", -1, -1], ["cc", -1, -1], ["dd", -1, -1], @@ -45,12 +35,12 @@ HungarianStemmer = function() { ["zz", -1, -1] ]; - /** @const */ var a_3 = [ + /** @const */ var a_2 = [ ["al", -1, 1], ["el", -1, 1] ]; - /** @const */ var a_4 = [ + /** @const */ var a_3 = [ ["ba", -1, -1], ["ra", -1, -1], ["be", -1, -1], @@ -97,13 +87,13 @@ HungarianStemmer = function() { ["v\u00E9", -1, -1] ]; - /** @const */ var a_5 = [ + /** @const */ var a_4 = [ ["\u00E1n", -1, 2], ["\u00E9n", -1, 1], ["\u00E1nk\u00E9nt", -1, 2] ]; - /** @const */ var a_6 = [ + /** @const */ var a_5 = [ ["stul", -1, 1], ["astul", 0, 1], ["\u00E1stul", 0, 2], @@ -112,12 +102,12 @@ HungarianStemmer = function() { ["\u00E9st\u00FCl", 3, 3] ]; - /** @const */ var a_7 = [ + /** @const */ var a_6 = [ ["\u00E1", -1, 1], ["\u00E9", -1, 1] ]; - /** @const */ var a_8 = [ + /** @const */ var a_7 = [ ["k", -1, 3], ["ak", 0, 3], ["ek", 0, 3], @@ -127,7 +117,7 @@ HungarianStemmer = function() { ["\u00F6k", 0, 3] ]; - /** @const */ var a_9 = [ + /** @const */ var a_8 = [ ["\u00E9i", -1, 1], ["\u00E1\u00E9i", 0, 3], ["\u00E9\u00E9i", 0, 2], @@ -142,7 +132,7 @@ HungarianStemmer = function() { ["\u00E9\u00E9", 3, 2] ]; - /** @const */ var a_10 = [ + /** @const */ var a_9 = [ ["a", -1, 1], ["ja", 0, 1], ["d", -1, 1], @@ -176,7 +166,7 @@ HungarianStemmer = function() { ["\u00E9", -1, 3] ]; - /** @const */ var a_11 = [ + /** @const */ var a_10 = [ ["id", -1, 1], ["aid", 0, 1], ["jaid", 1, 1], @@ -230,69 +220,30 @@ HungarianStemmer = function() { function r_mark_regions() { I_p1 = base.limit; lab0: { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab1: { if (!(base.in_grouping(g_v, 97, 369))) { break lab1; } - golab2: while(true) - { - var /** number */ v_2 = base.cursor; - lab3: { - if (!(base.out_grouping(g_v, 97, 369))) - { - break lab3; - } - base.cursor = v_2; - break golab2; - } - base.cursor = v_2; - if (base.cursor >= base.limit) - { - break lab1; - } - base.cursor++; - } - lab4: { - var /** number */ v_3 = base.cursor; - lab5: { - if (base.find_among(a_0) == 0) - { - break lab5; - } - break lab4; - } - base.cursor = v_3; - if (base.cursor >= base.limit) + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { + if (!base.go_in_grouping(g_v, 97, 369)) { - break lab1; + break lab2; } base.cursor++; + I_p1 = base.cursor; } - I_p1 = base.cursor; + base.cursor = v_2; break lab0; } base.cursor = v_1; - if (!(base.out_grouping(g_v, 97, 369))) + if (!base.go_out_grouping(g_v, 97, 369)) { return false; } - golab6: while(true) - { - lab7: { - if (!(base.in_grouping(g_v, 97, 369))) - { - break lab7; - } - break golab6; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; - } + base.cursor++; I_p1 = base.cursor; } return true; @@ -300,18 +251,14 @@ HungarianStemmer = function() { /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_v_ending() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_1); + among_var = base.find_among_b(a_0); if (among_var == 0) { return false; @@ -340,8 +287,8 @@ HungarianStemmer = function() { /** @return {boolean} */ function r_double() { - var /** number */ v_1 = base.limit - base.cursor; - if (base.find_among_b(a_2) == 0) + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (base.find_among_b(a_1) == 0) { return false; } @@ -357,14 +304,11 @@ HungarianStemmer = function() { } base.cursor--; base.ket = base.cursor; + if (base.cursor <= base.limit_backward) { - var /** number */ c1 = base.cursor - 1; - if (c1 < base.limit_backward) - { - return false; - } - base.cursor = c1; + return false; } + base.cursor--; base.bra = base.cursor; if (!base.slice_del()) { @@ -376,7 +320,7 @@ HungarianStemmer = function() { /** @return {boolean} */ function r_instrum() { base.ket = base.cursor; - if (base.find_among_b(a_3) == 0) + if (base.find_among_b(a_2) == 0) { return false; } @@ -403,7 +347,7 @@ HungarianStemmer = function() { /** @return {boolean} */ function r_case() { base.ket = base.cursor; - if (base.find_among_b(a_4) == 0) + if (base.find_among_b(a_3) == 0) { return false; } @@ -427,7 +371,7 @@ HungarianStemmer = function() { function r_case_special() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_5); + among_var = base.find_among_b(a_4); if (among_var == 0) { return false; @@ -458,7 +402,7 @@ HungarianStemmer = function() { function r_case_other() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_6); + among_var = base.find_among_b(a_5); if (among_var == 0) { return false; @@ -494,7 +438,7 @@ HungarianStemmer = function() { /** @return {boolean} */ function r_factive() { base.ket = base.cursor; - if (base.find_among_b(a_7) == 0) + if (base.find_among_b(a_6) == 0) { return false; } @@ -522,7 +466,7 @@ HungarianStemmer = function() { function r_plural() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_8); + among_var = base.find_among_b(a_7); if (among_var == 0) { return false; @@ -559,7 +503,7 @@ HungarianStemmer = function() { function r_owned() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_9); + among_var = base.find_among_b(a_8); if (among_var == 0) { return false; @@ -596,7 +540,7 @@ HungarianStemmer = function() { function r_sing_owner() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_10); + among_var = base.find_among_b(a_9); if (among_var == 0) { return false; @@ -633,7 +577,7 @@ HungarianStemmer = function() { function r_plur_owner() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_11); + among_var = base.find_among_b(a_10); if (among_var == 0) { return false; @@ -667,35 +611,35 @@ HungarianStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_mark_regions(); base.cursor = v_1; base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_instrum(); base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_case(); base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; r_case_special(); base.cursor = base.limit - v_4; - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; r_case_other(); base.cursor = base.limit - v_5; - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; r_factive(); base.cursor = base.limit - v_6; - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; r_owned(); base.cursor = base.limit - v_7; - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; r_sing_owner(); base.cursor = base.limit - v_8; - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; r_plur_owner(); base.cursor = base.limit - v_9; - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; r_plural(); base.cursor = base.limit - v_10; base.cursor = base.limit_backward; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/indonesian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/indonesian-stemmer.js new file mode 100644 index 000000000..714c410e7 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/indonesian-stemmer.js @@ -0,0 +1,409 @@ +// Generated from indonesian.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var IndonesianStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["kah", -1, 1], + ["lah", -1, 1], + ["pun", -1, 1] + ]; + + /** @const */ var a_1 = [ + ["nya", -1, 1], + ["ku", -1, 1], + ["mu", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["i", -1, 1, r_SUFFIX_I_OK], + ["an", -1, 1, r_SUFFIX_AN_OK], + ["kan", 1, 1, r_SUFFIX_KAN_OK] + ]; + + /** @const */ var a_3 = [ + ["di", -1, 1], + ["ke", -1, 2], + ["me", -1, 1], + ["mem", 2, 5], + ["men", 2, 1], + ["meng", 4, 1], + ["meny", 4, 3, r_VOWEL], + ["pem", -1, 6], + ["pen", -1, 2], + ["peng", 8, 2], + ["peny", 8, 4, r_VOWEL], + ["ter", -1, 1] + ]; + + /** @const */ var a_4 = [ + ["be", -1, 3, r_KER], + ["belajar", 0, 4], + ["ber", 0, 3], + ["pe", -1, 1], + ["pelajar", 3, 2], + ["per", 3, 1] + ]; + + /** @const */ var /** Array */ g_vowel = [17, 65, 16]; + + var /** number */ I_prefix = 0; + var /** number */ I_measure = 0; + + + /** @return {boolean} */ + function r_remove_particle() { + base.ket = base.cursor; + if (base.find_among_b(a_0) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + I_measure -= 1; + return true; + }; + + /** @return {boolean} */ + function r_remove_possessive_pronoun() { + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + I_measure -= 1; + return true; + }; + + /** @return {boolean} */ + function r_SUFFIX_KAN_OK() { + if (I_prefix == 3) + { + return false; + } + if (I_prefix == 2) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_SUFFIX_AN_OK() { + return I_prefix != 1; + }; + + /** @return {boolean} */ + function r_SUFFIX_I_OK() { + if (I_prefix > 2) + { + return false; + } + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (!(base.eq_s_b("s"))) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_1; + } + return true; + }; + + /** @return {boolean} */ + function r_remove_suffix() { + base.ket = base.cursor; + if (base.find_among_b(a_2) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + I_measure -= 1; + return true; + }; + + /** @return {boolean} */ + function r_VOWEL() { + if (!(base.in_grouping(g_vowel, 97, 117))) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_KER() { + if (!(base.out_grouping(g_vowel, 97, 117))) + { + return false; + } + if (!(base.eq_s("er"))) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_remove_first_order_prefix() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_3); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + I_prefix = 1; + I_measure -= 1; + break; + case 2: + if (!base.slice_del()) + { + return false; + } + I_prefix = 3; + I_measure -= 1; + break; + case 3: + I_prefix = 1; + if (!base.slice_from("s")) + { + return false; + } + I_measure -= 1; + break; + case 4: + I_prefix = 3; + if (!base.slice_from("s")) + { + return false; + } + I_measure -= 1; + break; + case 5: + I_prefix = 1; + I_measure -= 1; + lab0: { + /** @const */ var /** number */ v_1 = base.cursor; + lab1: { + /** @const */ var /** number */ v_2 = base.cursor; + if (!(base.in_grouping(g_vowel, 97, 117))) + { + break lab1; + } + base.cursor = v_2; + if (!base.slice_from("p")) + { + return false; + } + break lab0; + } + base.cursor = v_1; + if (!base.slice_del()) + { + return false; + } + } + break; + case 6: + I_prefix = 3; + I_measure -= 1; + lab2: { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + /** @const */ var /** number */ v_4 = base.cursor; + if (!(base.in_grouping(g_vowel, 97, 117))) + { + break lab3; + } + base.cursor = v_4; + if (!base.slice_from("p")) + { + return false; + } + break lab2; + } + base.cursor = v_3; + if (!base.slice_del()) + { + return false; + } + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_remove_second_order_prefix() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_4); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + I_prefix = 2; + I_measure -= 1; + break; + case 2: + if (!base.slice_from("ajar")) + { + return false; + } + I_measure -= 1; + break; + case 3: + if (!base.slice_del()) + { + return false; + } + I_prefix = 4; + I_measure -= 1; + break; + case 4: + if (!base.slice_from("ajar")) + { + return false; + } + I_prefix = 4; + I_measure -= 1; + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + I_measure = 0; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + lab1: { + if (!base.go_out_grouping(g_vowel, 97, 117)) + { + break lab1; + } + base.cursor++; + I_measure += 1; + continue; + } + break; + } + } + base.cursor = v_1; + if (I_measure <= 2) + { + return false; + } + I_prefix = 0; + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + r_remove_particle(); + base.cursor = base.limit - v_2; + if (I_measure <= 2) + { + return false; + } + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_remove_possessive_pronoun(); + base.cursor = base.limit - v_3; + base.cursor = base.limit_backward; + if (I_measure <= 2) + { + return false; + } + lab2: { + /** @const */ var /** number */ v_4 = base.cursor; + lab3: { + /** @const */ var /** number */ v_5 = base.cursor; + if (!r_remove_first_order_prefix()) + { + break lab3; + } + /** @const */ var /** number */ v_6 = base.cursor; + lab4: { + /** @const */ var /** number */ v_7 = base.cursor; + if (I_measure <= 2) + { + break lab4; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + if (!r_remove_suffix()) + { + break lab4; + } + base.cursor = base.limit_backward; + base.cursor = v_7; + if (I_measure <= 2) + { + break lab4; + } + if (!r_remove_second_order_prefix()) + { + break lab4; + } + } + base.cursor = v_6; + base.cursor = v_5; + break lab2; + } + base.cursor = v_4; + /** @const */ var /** number */ v_8 = base.cursor; + r_remove_second_order_prefix(); + base.cursor = v_8; + /** @const */ var /** number */ v_9 = base.cursor; + lab5: { + if (I_measure <= 2) + { + break lab5; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + if (!r_remove_suffix()) + { + break lab5; + } + base.cursor = base.limit_backward; + } + base.cursor = v_9; + } + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/irish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/irish-stemmer.js new file mode 100644 index 000000000..ec6601efb --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/irish-stemmer.js @@ -0,0 +1,378 @@ +// Generated from irish.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var IrishStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["b'", -1, 1], + ["bh", -1, 4], + ["bhf", 1, 2], + ["bp", -1, 8], + ["ch", -1, 5], + ["d'", -1, 1], + ["d'fh", 5, 2], + ["dh", -1, 6], + ["dt", -1, 9], + ["fh", -1, 2], + ["gc", -1, 5], + ["gh", -1, 7], + ["h-", -1, 1], + ["m'", -1, 1], + ["mb", -1, 4], + ["mh", -1, 10], + ["n-", -1, 1], + ["nd", -1, 6], + ["ng", -1, 7], + ["ph", -1, 8], + ["sh", -1, 3], + ["t-", -1, 1], + ["th", -1, 9], + ["ts", -1, 3] + ]; + + /** @const */ var a_1 = [ + ["\u00EDochta", -1, 1], + ["a\u00EDochta", 0, 1], + ["ire", -1, 2], + ["aire", 2, 2], + ["abh", -1, 1], + ["eabh", 4, 1], + ["ibh", -1, 1], + ["aibh", 6, 1], + ["amh", -1, 1], + ["eamh", 8, 1], + ["imh", -1, 1], + ["aimh", 10, 1], + ["\u00EDocht", -1, 1], + ["a\u00EDocht", 12, 1], + ["ir\u00ED", -1, 2], + ["air\u00ED", 14, 2] + ]; + + /** @const */ var a_2 = [ + ["\u00F3ideacha", -1, 6], + ["patacha", -1, 5], + ["achta", -1, 1], + ["arcachta", 2, 2], + ["eachta", 2, 1], + ["grafa\u00EDochta", -1, 4], + ["paite", -1, 5], + ["ach", -1, 1], + ["each", 7, 1], + ["\u00F3ideach", 8, 6], + ["gineach", 8, 3], + ["patach", 7, 5], + ["grafa\u00EDoch", -1, 4], + ["pataigh", -1, 5], + ["\u00F3idigh", -1, 6], + ["acht\u00FAil", -1, 1], + ["eacht\u00FAil", 15, 1], + ["gineas", -1, 3], + ["ginis", -1, 3], + ["acht", -1, 1], + ["arcacht", 19, 2], + ["eacht", 19, 1], + ["grafa\u00EDocht", -1, 4], + ["arcachta\u00ED", -1, 2], + ["grafa\u00EDochta\u00ED", -1, 4] + ]; + + /** @const */ var a_3 = [ + ["imid", -1, 1], + ["aimid", 0, 1], + ["\u00EDmid", -1, 1], + ["a\u00EDmid", 2, 1], + ["adh", -1, 2], + ["eadh", 4, 2], + ["faidh", -1, 1], + ["fidh", -1, 1], + ["\u00E1il", -1, 2], + ["ain", -1, 2], + ["tear", -1, 2], + ["tar", -1, 2] + ]; + + /** @const */ var /** Array */ g_v = [17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 2]; + + var /** number */ I_p2 = 0; + var /** number */ I_p1 = 0; + var /** number */ I_pV = 0; + + + /** @return {boolean} */ + function r_mark_regions() { + I_pV = base.limit; + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!base.go_out_grouping(g_v, 97, 250)) + { + break lab0; + } + base.cursor++; + I_pV = base.cursor; + if (!base.go_in_grouping(g_v, 97, 250)) + { + break lab0; + } + base.cursor++; + I_p1 = base.cursor; + if (!base.go_out_grouping(g_v, 97, 250)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 250)) + { + break lab0; + } + base.cursor++; + I_p2 = base.cursor; + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_initial_morph() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_0); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("f")) + { + return false; + } + break; + case 3: + if (!base.slice_from("s")) + { + return false; + } + break; + case 4: + if (!base.slice_from("b")) + { + return false; + } + break; + case 5: + if (!base.slice_from("c")) + { + return false; + } + break; + case 6: + if (!base.slice_from("d")) + { + return false; + } + break; + case 7: + if (!base.slice_from("g")) + { + return false; + } + break; + case 8: + if (!base.slice_from("p")) + { + return false; + } + break; + case 9: + if (!base.slice_from("t")) + { + return false; + } + break; + case 10: + if (!base.slice_from("m")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_RV() { + return I_pV <= base.cursor; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_noun_sfx() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_deriv() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("arc")) + { + return false; + } + break; + case 3: + if (!base.slice_from("gin")) + { + return false; + } + break; + case 4: + if (!base.slice_from("graf")) + { + return false; + } + break; + case 5: + if (!base.slice_from("paite")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u00F3id")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_verb_sfx() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_3); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_RV()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R1()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + /** @const */ var /** number */ v_1 = base.cursor; + r_initial_morph(); + base.cursor = v_1; + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + r_noun_sfx(); + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_deriv(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_verb_sfx(); + base.cursor = base.limit - v_4; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/italian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/italian-stemmer.js index df6ddfd33..f5ab55ecc 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/italian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/italian-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from italian.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -ItalianStemmer = function() { +var ItalianStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["", -1, 7], ["qu", 0, 6], @@ -238,17 +239,13 @@ ItalianStemmer = function() { /** @return {boolean} */ function r_prelude() { var /** number */ among_var; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; while(true) { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab0: { base.bra = base.cursor; among_var = base.find_among(a_0); - if (among_var == 0) - { - break lab0; - } base.ket = base.cursor; switch (among_var) { case 1: @@ -303,11 +300,11 @@ ItalianStemmer = function() { base.cursor = v_1; while(true) { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab1: { golab2: while(true) { - var /** number */ v_4 = base.cursor; + /** @const */ var /** number */ v_4 = base.cursor; lab3: { if (!(base.in_grouping(g_v, 97, 249))) { @@ -315,7 +312,7 @@ ItalianStemmer = function() { } base.bra = base.cursor; lab4: { - var /** number */ v_5 = base.cursor; + /** @const */ var /** number */ v_5 = base.cursor; lab5: { if (!(base.eq_s("u"))) { @@ -370,37 +367,27 @@ ItalianStemmer = function() { I_pV = base.limit; I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { lab1: { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { if (!(base.in_grouping(g_v, 97, 249))) { break lab2; } lab3: { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab4: { if (!(base.out_grouping(g_v, 97, 249))) { break lab4; } - golab5: while(true) + if (!base.go_out_grouping(g_v, 97, 249)) { - lab6: { - if (!(base.in_grouping(g_v, 97, 249))) - { - break lab6; - } - break golab5; - } - if (base.cursor >= base.limit) - { - break lab4; - } - base.cursor++; + break lab4; } + base.cursor++; break lab3; } base.cursor = v_3; @@ -408,21 +395,19 @@ ItalianStemmer = function() { { break lab2; } - golab7: while(true) + if (!base.go_in_grouping(g_v, 97, 249)) { - lab8: { - if (!(base.out_grouping(g_v, 97, 249))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - break lab2; - } - base.cursor++; + break lab2; } + base.cursor++; + } + break lab1; + } + base.cursor = v_2; + lab5: { + if (!(base.eq_s("divan"))) + { + break lab5; } break lab1; } @@ -431,31 +416,21 @@ ItalianStemmer = function() { { break lab0; } - lab9: { - var /** number */ v_6 = base.cursor; - lab10: { + lab6: { + /** @const */ var /** number */ v_4 = base.cursor; + lab7: { if (!(base.out_grouping(g_v, 97, 249))) { - break lab10; + break lab7; } - golab11: while(true) + if (!base.go_out_grouping(g_v, 97, 249)) { - lab12: { - if (!(base.in_grouping(g_v, 97, 249))) - { - break lab12; - } - break golab11; - } - if (base.cursor >= base.limit) - { - break lab10; - } - base.cursor++; + break lab7; } - break lab9; + base.cursor++; + break lab6; } - base.cursor = v_6; + base.cursor = v_4; if (!(base.in_grouping(g_v, 97, 249))) { break lab0; @@ -470,72 +445,32 @@ ItalianStemmer = function() { I_pV = base.cursor; } base.cursor = v_1; - var /** number */ v_8 = base.cursor; - lab13: { - golab14: while(true) + /** @const */ var /** number */ v_5 = base.cursor; + lab8: { + if (!base.go_out_grouping(g_v, 97, 249)) { - lab15: { - if (!(base.in_grouping(g_v, 97, 249))) - { - break lab15; - } - break golab14; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab8; } - golab16: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 249)) { - lab17: { - if (!(base.out_grouping(g_v, 97, 249))) - { - break lab17; - } - break golab16; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab8; } + base.cursor++; I_p1 = base.cursor; - golab18: while(true) + if (!base.go_out_grouping(g_v, 97, 249)) { - lab19: { - if (!(base.in_grouping(g_v, 97, 249))) - { - break lab19; - } - break golab18; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab8; } - golab20: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 249)) { - lab21: { - if (!(base.out_grouping(g_v, 97, 249))) - { - break lab21; - } - break golab20; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab8; } + base.cursor++; I_p2 = base.cursor; } - base.cursor = v_8; + base.cursor = v_5; return true; }; @@ -544,14 +479,10 @@ ItalianStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; among_var = base.find_among(a_1); - if (among_var == 0) - { - break lab0; - } base.ket = base.cursor; switch (among_var) { case 1: @@ -584,29 +515,17 @@ ItalianStemmer = function() { /** @return {boolean} */ function r_RV() { - if (!(I_pV <= base.cursor)) - { - return false; - } - return true; + return I_pV <= base.cursor; }; /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -674,7 +593,7 @@ ItalianStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.eq_s_b("ic"))) @@ -743,7 +662,7 @@ ItalianStemmer = function() { { return false; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { base.ket = base.cursor; among_var = base.find_among_b(a_4); @@ -793,7 +712,7 @@ ItalianStemmer = function() { { return false; } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { base.ket = base.cursor; if (base.find_among_b(a_5) == 0) @@ -822,7 +741,7 @@ ItalianStemmer = function() { { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab3: { base.ket = base.cursor; if (!(base.eq_s_b("at"))) @@ -868,12 +787,12 @@ ItalianStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; if (base.find_among_b(a_7) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; @@ -881,13 +800,13 @@ ItalianStemmer = function() { { return false; } - base.limit_backward = v_2; + base.limit_backward = v_1; return true; }; /** @return {boolean} */ function r_vowel_suffix() { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.in_grouping_b(g_AEIO, 97, 242))) @@ -922,7 +841,7 @@ ItalianStemmer = function() { return false; } } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { base.ket = base.cursor; if (!(base.eq_s_b("h"))) @@ -950,18 +869,18 @@ ItalianStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_prelude(); base.cursor = v_1; r_mark_regions(); base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_attached_pronoun(); - base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab0: { lab1: { - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab2: { if (!r_standard_suffix()) { @@ -969,21 +888,21 @@ ItalianStemmer = function() { } break lab1; } - base.cursor = base.limit - v_5; + base.cursor = base.limit - v_4; if (!r_verb_suffix()) { break lab0; } } } - base.cursor = base.limit - v_4; - var /** number */ v_6 = base.limit - base.cursor; + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; r_vowel_suffix(); - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_5; base.cursor = base.limit_backward; - var /** number */ v_7 = base.cursor; + /** @const */ var /** number */ v_6 = base.cursor; r_postlude(); - base.cursor = v_7; + base.cursor = v_6; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/lithuanian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/lithuanian-stemmer.js new file mode 100644 index 000000000..213ff5979 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/lithuanian-stemmer.js @@ -0,0 +1,534 @@ +// Generated from lithuanian.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var LithuanianStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["a", -1, -1], + ["ia", 0, -1], + ["eria", 1, -1], + ["osna", 0, -1], + ["iosna", 3, -1], + ["uosna", 3, -1], + ["iuosna", 5, -1], + ["ysna", 0, -1], + ["\u0117sna", 0, -1], + ["e", -1, -1], + ["ie", 9, -1], + ["enie", 10, -1], + ["erie", 10, -1], + ["oje", 9, -1], + ["ioje", 13, -1], + ["uje", 9, -1], + ["iuje", 15, -1], + ["yje", 9, -1], + ["enyje", 17, -1], + ["eryje", 17, -1], + ["\u0117je", 9, -1], + ["ame", 9, -1], + ["iame", 21, -1], + ["sime", 9, -1], + ["ome", 9, -1], + ["\u0117me", 9, -1], + ["tum\u0117me", 25, -1], + ["ose", 9, -1], + ["iose", 27, -1], + ["uose", 27, -1], + ["iuose", 29, -1], + ["yse", 9, -1], + ["enyse", 31, -1], + ["eryse", 31, -1], + ["\u0117se", 9, -1], + ["ate", 9, -1], + ["iate", 35, -1], + ["ite", 9, -1], + ["kite", 37, -1], + ["site", 37, -1], + ["ote", 9, -1], + ["tute", 9, -1], + ["\u0117te", 9, -1], + ["tum\u0117te", 42, -1], + ["i", -1, -1], + ["ai", 44, -1], + ["iai", 45, -1], + ["eriai", 46, -1], + ["ei", 44, -1], + ["tumei", 48, -1], + ["ki", 44, -1], + ["imi", 44, -1], + ["erimi", 51, -1], + ["umi", 44, -1], + ["iumi", 53, -1], + ["si", 44, -1], + ["asi", 55, -1], + ["iasi", 56, -1], + ["esi", 55, -1], + ["iesi", 58, -1], + ["siesi", 59, -1], + ["isi", 55, -1], + ["aisi", 61, -1], + ["eisi", 61, -1], + ["tumeisi", 63, -1], + ["uisi", 61, -1], + ["osi", 55, -1], + ["\u0117josi", 66, -1], + ["uosi", 66, -1], + ["iuosi", 68, -1], + ["siuosi", 69, -1], + ["usi", 55, -1], + ["ausi", 71, -1], + ["\u010Diausi", 72, -1], + ["\u0105si", 55, -1], + ["\u0117si", 55, -1], + ["\u0173si", 55, -1], + ["t\u0173si", 76, -1], + ["ti", 44, -1], + ["enti", 78, -1], + ["inti", 78, -1], + ["oti", 78, -1], + ["ioti", 81, -1], + ["uoti", 81, -1], + ["iuoti", 83, -1], + ["auti", 78, -1], + ["iauti", 85, -1], + ["yti", 78, -1], + ["\u0117ti", 78, -1], + ["tel\u0117ti", 88, -1], + ["in\u0117ti", 88, -1], + ["ter\u0117ti", 88, -1], + ["ui", 44, -1], + ["iui", 92, -1], + ["eniui", 93, -1], + ["oj", -1, -1], + ["\u0117j", -1, -1], + ["k", -1, -1], + ["am", -1, -1], + ["iam", 98, -1], + ["iem", -1, -1], + ["im", -1, -1], + ["sim", 101, -1], + ["om", -1, -1], + ["tum", -1, -1], + ["\u0117m", -1, -1], + ["tum\u0117m", 105, -1], + ["an", -1, -1], + ["on", -1, -1], + ["ion", 108, -1], + ["un", -1, -1], + ["iun", 110, -1], + ["\u0117n", -1, -1], + ["o", -1, -1], + ["io", 113, -1], + ["enio", 114, -1], + ["\u0117jo", 113, -1], + ["uo", 113, -1], + ["s", -1, -1], + ["as", 118, -1], + ["ias", 119, -1], + ["es", 118, -1], + ["ies", 121, -1], + ["is", 118, -1], + ["ais", 123, -1], + ["iais", 124, -1], + ["tumeis", 123, -1], + ["imis", 123, -1], + ["enimis", 127, -1], + ["omis", 123, -1], + ["iomis", 129, -1], + ["umis", 123, -1], + ["\u0117mis", 123, -1], + ["enis", 123, -1], + ["asis", 123, -1], + ["ysis", 123, -1], + ["ams", 118, -1], + ["iams", 136, -1], + ["iems", 118, -1], + ["ims", 118, -1], + ["enims", 139, -1], + ["erims", 139, -1], + ["oms", 118, -1], + ["ioms", 142, -1], + ["ums", 118, -1], + ["\u0117ms", 118, -1], + ["ens", 118, -1], + ["os", 118, -1], + ["ios", 147, -1], + ["uos", 147, -1], + ["iuos", 149, -1], + ["ers", 118, -1], + ["us", 118, -1], + ["aus", 152, -1], + ["iaus", 153, -1], + ["ius", 152, -1], + ["ys", 118, -1], + ["enys", 156, -1], + ["erys", 156, -1], + ["\u0105s", 118, -1], + ["i\u0105s", 159, -1], + ["\u0117s", 118, -1], + ["am\u0117s", 161, -1], + ["iam\u0117s", 162, -1], + ["im\u0117s", 161, -1], + ["kim\u0117s", 164, -1], + ["sim\u0117s", 164, -1], + ["om\u0117s", 161, -1], + ["\u0117m\u0117s", 161, -1], + ["tum\u0117m\u0117s", 168, -1], + ["at\u0117s", 161, -1], + ["iat\u0117s", 170, -1], + ["sit\u0117s", 161, -1], + ["ot\u0117s", 161, -1], + ["\u0117t\u0117s", 161, -1], + ["tum\u0117t\u0117s", 174, -1], + ["\u012Fs", 118, -1], + ["\u016Bs", 118, -1], + ["t\u0173s", 118, -1], + ["at", -1, -1], + ["iat", 179, -1], + ["it", -1, -1], + ["sit", 181, -1], + ["ot", -1, -1], + ["\u0117t", -1, -1], + ["tum\u0117t", 184, -1], + ["u", -1, -1], + ["au", 186, -1], + ["iau", 187, -1], + ["\u010Diau", 188, -1], + ["iu", 186, -1], + ["eniu", 190, -1], + ["siu", 190, -1], + ["y", -1, -1], + ["\u0105", -1, -1], + ["i\u0105", 194, -1], + ["\u0117", -1, -1], + ["\u0119", -1, -1], + ["\u012F", -1, -1], + ["en\u012F", 198, -1], + ["er\u012F", 198, -1], + ["\u0173", -1, -1], + ["i\u0173", 201, -1], + ["er\u0173", 201, -1] + ]; + + /** @const */ var a_1 = [ + ["ing", -1, -1], + ["aj", -1, -1], + ["iaj", 1, -1], + ["iej", -1, -1], + ["oj", -1, -1], + ["ioj", 4, -1], + ["uoj", 4, -1], + ["iuoj", 6, -1], + ["auj", -1, -1], + ["\u0105j", -1, -1], + ["i\u0105j", 9, -1], + ["\u0117j", -1, -1], + ["\u0173j", -1, -1], + ["i\u0173j", 12, -1], + ["ok", -1, -1], + ["iok", 14, -1], + ["iuk", -1, -1], + ["uliuk", 16, -1], + ["u\u010Diuk", 16, -1], + ["i\u0161k", -1, -1], + ["iul", -1, -1], + ["yl", -1, -1], + ["\u0117l", -1, -1], + ["am", -1, -1], + ["dam", 23, -1], + ["jam", 23, -1], + ["zgan", -1, -1], + ["ain", -1, -1], + ["esn", -1, -1], + ["op", -1, -1], + ["iop", 29, -1], + ["ias", -1, -1], + ["ies", -1, -1], + ["ais", -1, -1], + ["iais", 33, -1], + ["os", -1, -1], + ["ios", 35, -1], + ["uos", 35, -1], + ["iuos", 37, -1], + ["aus", -1, -1], + ["iaus", 39, -1], + ["\u0105s", -1, -1], + ["i\u0105s", 41, -1], + ["\u0119s", -1, -1], + ["ut\u0117ait", -1, -1], + ["ant", -1, -1], + ["iant", 45, -1], + ["siant", 46, -1], + ["int", -1, -1], + ["ot", -1, -1], + ["uot", 49, -1], + ["iuot", 50, -1], + ["yt", -1, -1], + ["\u0117t", -1, -1], + ["yk\u0161t", -1, -1], + ["iau", -1, -1], + ["dav", -1, -1], + ["sv", -1, -1], + ["\u0161v", -1, -1], + ["yk\u0161\u010D", -1, -1], + ["\u0119", -1, -1], + ["\u0117j\u0119", 60, -1] + ]; + + /** @const */ var a_2 = [ + ["ojime", -1, 7], + ["\u0117jime", -1, 3], + ["avime", -1, 6], + ["okate", -1, 8], + ["aite", -1, 1], + ["uote", -1, 2], + ["asius", -1, 5], + ["okat\u0117s", -1, 8], + ["ait\u0117s", -1, 1], + ["uot\u0117s", -1, 2], + ["esiu", -1, 4] + ]; + + /** @const */ var a_3 = [ + ["\u010D", -1, 1], + ["d\u017E", -1, 2] + ]; + + /** @const */ var a_4 = [ + ["gd", -1, 1] + ]; + + /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 64, 1, 0, 64, 0, 0, 0, 0, 0, 0, 0, 4, 4]; + + var /** number */ I_p1 = 0; + + + /** @return {boolean} */ + function r_step1() { + if (base.cursor < I_p1) + { + return false; + } + /** @const */ var /** number */ v_1 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + if (base.find_among_b(a_0) == 0) + { + base.limit_backward = v_1; + return false; + } + base.bra = base.cursor; + base.limit_backward = v_1; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_step2() { + while(true) + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (base.cursor < I_p1) + { + break lab0; + } + /** @const */ var /** number */ v_2 = base.limit_backward; + base.limit_backward = I_p1; + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + base.limit_backward = v_2; + break lab0; + } + base.bra = base.cursor; + base.limit_backward = v_2; + if (!base.slice_del()) + { + return false; + } + continue; + } + base.cursor = base.limit - v_1; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_fix_conflicts() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("ait\u0117")) + { + return false; + } + break; + case 2: + if (!base.slice_from("uot\u0117")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u0117jimas")) + { + return false; + } + break; + case 4: + if (!base.slice_from("esys")) + { + return false; + } + break; + case 5: + if (!base.slice_from("asys")) + { + return false; + } + break; + case 6: + if (!base.slice_from("avimas")) + { + return false; + } + break; + case 7: + if (!base.slice_from("ojimas")) + { + return false; + } + break; + case 8: + if (!base.slice_from("okat\u0117")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_fix_chdz() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_3); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("t")) + { + return false; + } + break; + case 2: + if (!base.slice_from("d")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_fix_gd() { + base.ket = base.cursor; + if (base.find_among_b(a_4) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_from("g")) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + I_p1 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + /** @const */ var /** number */ v_3 = base.cursor; + if (!(base.eq_s("a"))) + { + base.cursor = v_2; + break lab1; + } + base.cursor = v_3; + if (base.current.length <= 6) + { + base.cursor = v_2; + break lab1; + } + if (base.cursor >= base.limit) + { + base.cursor = v_2; + break lab1; + } + base.cursor++; + } + if (!base.go_out_grouping(g_v, 97, 371)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 371)) + { + break lab0; + } + base.cursor++; + I_p1 = base.cursor; + } + base.cursor = v_1; + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_fix_conflicts(); + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + r_step1(); + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + r_fix_chdz(); + base.cursor = base.limit - v_6; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + r_step2(); + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + r_fix_chdz(); + base.cursor = base.limit - v_8; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + r_fix_gd(); + base.cursor = base.limit - v_9; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/nepali-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/nepali-stemmer.js new file mode 100644 index 000000000..d6352d00a --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/nepali-stemmer.js @@ -0,0 +1,282 @@ +// Generated from nepali.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var NepaliStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u0932\u093E\u0907", -1, 1], + ["\u0932\u093E\u0908", -1, 1], + ["\u0938\u0901\u0917", -1, 1], + ["\u0938\u0902\u0917", -1, 1], + ["\u092E\u093E\u0930\u094D\u092B\u0924", -1, 1], + ["\u0930\u0924", -1, 1], + ["\u0915\u093E", -1, 2], + ["\u092E\u093E", -1, 1], + ["\u0926\u094D\u0935\u093E\u0930\u093E", -1, 1], + ["\u0915\u093F", -1, 2], + ["\u092A\u091B\u093F", -1, 1], + ["\u0915\u0940", -1, 2], + ["\u0932\u0947", -1, 1], + ["\u0915\u0948", -1, 2], + ["\u0938\u0901\u0917\u0948", -1, 1], + ["\u092E\u0948", -1, 1], + ["\u0915\u094B", -1, 2] + ]; + + /** @const */ var a_1 = [ + ["\u0901", -1, 1], + ["\u0902", -1, 1], + ["\u0948", -1, 2] + ]; + + /** @const */ var a_2 = [ + ["\u0925\u093F\u090F", -1, 1], + ["\u091B", -1, 1], + ["\u0907\u091B", 1, 1], + ["\u090F\u091B", 1, 1], + ["\u093F\u091B", 1, 1], + ["\u0947\u091B", 1, 1], + ["\u0928\u0947\u091B", 5, 1], + ["\u0939\u0941\u0928\u0947\u091B", 6, 1], + ["\u0907\u0928\u094D\u091B", 1, 1], + ["\u093F\u0928\u094D\u091B", 1, 1], + ["\u0939\u0941\u0928\u094D\u091B", 1, 1], + ["\u090F\u0915\u093E", -1, 1], + ["\u0907\u090F\u0915\u093E", 11, 1], + ["\u093F\u090F\u0915\u093E", 11, 1], + ["\u0947\u0915\u093E", -1, 1], + ["\u0928\u0947\u0915\u093E", 14, 1], + ["\u0926\u093E", -1, 1], + ["\u0907\u0926\u093E", 16, 1], + ["\u093F\u0926\u093E", 16, 1], + ["\u0926\u0947\u0916\u093F", -1, 1], + ["\u092E\u093E\u0925\u093F", -1, 1], + ["\u090F\u0915\u0940", -1, 1], + ["\u0907\u090F\u0915\u0940", 21, 1], + ["\u093F\u090F\u0915\u0940", 21, 1], + ["\u0947\u0915\u0940", -1, 1], + ["\u0926\u0947\u0916\u0940", -1, 1], + ["\u0925\u0940", -1, 1], + ["\u0926\u0940", -1, 1], + ["\u091B\u0941", -1, 1], + ["\u090F\u091B\u0941", 28, 1], + ["\u0947\u091B\u0941", 28, 1], + ["\u0928\u0947\u091B\u0941", 30, 1], + ["\u0928\u0941", -1, 1], + ["\u0939\u0930\u0941", -1, 1], + ["\u0939\u0930\u0942", -1, 1], + ["\u091B\u0947", -1, 1], + ["\u0925\u0947", -1, 1], + ["\u0928\u0947", -1, 1], + ["\u090F\u0915\u0948", -1, 1], + ["\u0947\u0915\u0948", -1, 1], + ["\u0928\u0947\u0915\u0948", 39, 1], + ["\u0926\u0948", -1, 1], + ["\u0907\u0926\u0948", 41, 1], + ["\u093F\u0926\u0948", 41, 1], + ["\u090F\u0915\u094B", -1, 1], + ["\u0907\u090F\u0915\u094B", 44, 1], + ["\u093F\u090F\u0915\u094B", 44, 1], + ["\u0947\u0915\u094B", -1, 1], + ["\u0928\u0947\u0915\u094B", 47, 1], + ["\u0926\u094B", -1, 1], + ["\u0907\u0926\u094B", 49, 1], + ["\u093F\u0926\u094B", 49, 1], + ["\u092F\u094B", -1, 1], + ["\u0907\u092F\u094B", 52, 1], + ["\u092D\u092F\u094B", 52, 1], + ["\u093F\u092F\u094B", 52, 1], + ["\u0925\u093F\u092F\u094B", 55, 1], + ["\u0926\u093F\u092F\u094B", 55, 1], + ["\u0925\u094D\u092F\u094B", 52, 1], + ["\u091B\u094C", -1, 1], + ["\u0907\u091B\u094C", 59, 1], + ["\u090F\u091B\u094C", 59, 1], + ["\u093F\u091B\u094C", 59, 1], + ["\u0947\u091B\u094C", 59, 1], + ["\u0928\u0947\u091B\u094C", 63, 1], + ["\u092F\u094C", -1, 1], + ["\u0925\u093F\u092F\u094C", 65, 1], + ["\u091B\u094D\u092F\u094C", 65, 1], + ["\u0925\u094D\u092F\u094C", 65, 1], + ["\u091B\u0928\u094D", -1, 1], + ["\u0907\u091B\u0928\u094D", 69, 1], + ["\u090F\u091B\u0928\u094D", 69, 1], + ["\u093F\u091B\u0928\u094D", 69, 1], + ["\u0947\u091B\u0928\u094D", 69, 1], + ["\u0928\u0947\u091B\u0928\u094D", 73, 1], + ["\u0932\u093E\u0928\u094D", -1, 1], + ["\u091B\u093F\u0928\u094D", -1, 1], + ["\u0925\u093F\u0928\u094D", -1, 1], + ["\u092A\u0930\u094D", -1, 1], + ["\u0907\u0938\u094D", -1, 1], + ["\u0925\u093F\u0907\u0938\u094D", 79, 1], + ["\u091B\u0938\u094D", -1, 1], + ["\u0907\u091B\u0938\u094D", 81, 1], + ["\u090F\u091B\u0938\u094D", 81, 1], + ["\u093F\u091B\u0938\u094D", 81, 1], + ["\u0947\u091B\u0938\u094D", 81, 1], + ["\u0928\u0947\u091B\u0938\u094D", 85, 1], + ["\u093F\u0938\u094D", -1, 1], + ["\u0925\u093F\u0938\u094D", 87, 1], + ["\u091B\u0947\u0938\u094D", -1, 1], + ["\u0939\u094B\u0938\u094D", -1, 1] + ]; + + + /** @return {boolean} */ + function r_remove_category_1() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_0); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("\u090F"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + if (!(base.eq_s_b("\u0947"))) + { + break lab2; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!base.slice_del()) + { + return false; + } + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_remove_category_2() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("\u092F\u094C"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + if (!(base.eq_s_b("\u091B\u094C"))) + { + break lab2; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab3: { + if (!(base.eq_s_b("\u0928\u094C"))) + { + break lab3; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("\u0925\u0947"))) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!(base.eq_s_b("\u0924\u094D\u0930"))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_remove_category_3() { + base.ket = base.cursor; + if (base.find_among_b(a_2) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + r_remove_category_1(); + base.cursor = base.limit - v_1; + while(true) + { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab0: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_remove_category_2(); + base.cursor = base.limit - v_3; + if (!r_remove_category_3()) + { + break lab0; + } + continue; + } + base.cursor = base.limit - v_2; + break; + } + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/norwegian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/norwegian-stemmer.js index e1760631a..149e63c1a 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/norwegian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/norwegian-stemmer.js @@ -1,9 +1,28 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from norwegian.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -NorwegianStemmer = function() { +var NorwegianStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ + ["", -1, 1], + ["ind", 0, -1], + ["kk", 0, -1], + ["nk", 0, -1], + ["amm", 0, -1], + ["omm", 0, -1], + ["kap", 0, -1], + ["skap", 6, 1], + ["pp", 0, -1], + ["lt", 0, -1], + ["ast", 0, -1], + ["\u00F8st", 0, -1], + ["v", 0, -1], + ["hav", 12, 1], + ["giv", 12, 1] + ]; + + /** @const */ var a_1 = [ ["a", -1, 1], ["e", -1, 1], ["ede", 1, 1], @@ -12,13 +31,13 @@ NorwegianStemmer = function() { ["ane", 1, 1], ["ene", 1, 1], ["hetene", 6, 1], - ["erte", 1, 3], + ["erte", 1, 4], ["en", -1, 1], ["heten", 9, 1], ["ar", -1, 1], ["er", -1, 1], ["heter", 12, 1], - ["s", -1, 2], + ["s", -1, 3], ["as", 14, 1], ["es", 14, 1], ["edes", 16, 1], @@ -27,20 +46,20 @@ NorwegianStemmer = function() { ["hetenes", 19, 1], ["ens", 14, 1], ["hetens", 21, 1], - ["ers", 14, 1], + ["ers", 14, 2], ["ets", 14, 1], ["et", -1, 1], ["het", 25, 1], - ["ert", -1, 3], + ["ert", -1, 4], ["ast", -1, 1] ]; - /** @const */ var a_1 = [ + /** @const */ var a_2 = [ ["dt", -1, -1], ["vt", -1, -1] ]; - /** @const */ var a_2 = [ + /** @const */ var a_3 = [ ["leg", -1, 1], ["eleg", 0, 1], ["ig", -1, 1], @@ -54,9 +73,9 @@ NorwegianStemmer = function() { ["hetslov", 9, 1] ]; - /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128]; + /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 2, 142]; - /** @const */ var /** Array */ g_s_ending = [119, 125, 149, 1]; + /** @const */ var /** Array */ g_s_ending = [119, 125, 148, 1]; var /** number */ I_x = 0; var /** number */ I_p1 = 0; @@ -65,9 +84,9 @@ NorwegianStemmer = function() { /** @return {boolean} */ function r_mark_regions() { I_p1 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; { - var /** number */ c1 = base.cursor + 3; + /** @const */ var /** number */ c1 = base.cursor + 3; if (c1 > base.limit) { return false; @@ -76,44 +95,21 @@ NorwegianStemmer = function() { } I_x = base.cursor; base.cursor = v_1; - golab0: while(true) + if (!base.go_out_grouping(g_v, 97, 248)) { - var /** number */ v_2 = base.cursor; - lab1: { - if (!(base.in_grouping(g_v, 97, 248))) - { - break lab1; - } - base.cursor = v_2; - break golab0; - } - base.cursor = v_2; - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } - golab2: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 248)) { - lab3: { - if (!(base.out_grouping(g_v, 97, 248))) - { - break lab3; - } - break golab2; - } - if (base.cursor >= base.limit) - { - return false; - } - base.cursor++; + return false; } + base.cursor++; I_p1 = base.cursor; - lab4: { - if (!(I_p1 < I_x)) + lab0: { + if (I_p1 >= I_x) { - break lab4; + break lab0; } I_p1 = I_x; } @@ -127,17 +123,17 @@ NorwegianStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; - among_var = base.find_among_b(a_0); + among_var = base.find_among_b(a_1); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: if (!base.slice_del()) @@ -146,8 +142,19 @@ NorwegianStemmer = function() { } break; case 2: + among_var = base.find_among_b(a_0); + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + } + break; + case 3: lab0: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { if (!(base.in_grouping_b(g_s_ending, 98, 122))) { @@ -155,7 +162,26 @@ NorwegianStemmer = function() { } break lab0; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; + lab2: { + if (!(base.eq_s_b("r"))) + { + break lab2; + } + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab3: { + if (!(base.eq_s_b("e"))) + { + break lab3; + } + break lab2; + } + base.cursor = base.limit - v_3; + } + break lab0; + } + base.cursor = base.limit - v_2; if (!(base.eq_s_b("k"))) { return false; @@ -170,7 +196,7 @@ NorwegianStemmer = function() { return false; } break; - case 3: + case 4: if (!base.slice_from("er")) { return false; @@ -182,21 +208,21 @@ NorwegianStemmer = function() { /** @return {boolean} */ function r_consonant_pair() { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; if (base.cursor < I_p1) { return false; } - var /** number */ v_3 = base.limit_backward; + /** @const */ var /** number */ v_2 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; - if (base.find_among_b(a_1) == 0) + if (base.find_among_b(a_2) == 0) { - base.limit_backward = v_3; + base.limit_backward = v_2; return false; } base.bra = base.cursor; - base.limit_backward = v_3; + base.limit_backward = v_2; base.cursor = base.limit - v_1; if (base.cursor <= base.limit_backward) { @@ -217,16 +243,16 @@ NorwegianStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; - if (base.find_among_b(a_2) == 0) + if (base.find_among_b(a_3) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; if (!base.slice_del()) { return false; @@ -235,17 +261,17 @@ NorwegianStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_mark_regions(); base.cursor = v_1; base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_main_suffix(); base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_consonant_pair(); base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; r_other_suffix(); base.cursor = base.limit - v_4; base.cursor = base.limit_backward; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/porter-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/porter-stemmer.js index 0747d2cf3..182b9d5ed 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/porter-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/porter-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from porter.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -PorterStemmer = function() { +var PorterStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["s", -1, 3], ["ies", 0, 2], @@ -115,20 +116,12 @@ PorterStemmer = function() { /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -186,38 +179,24 @@ PorterStemmer = function() { } break; case 2: - var /** number */ v_1 = base.limit - base.cursor; - golab0: while(true) + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (!base.go_out_grouping_b(g_v, 97, 121)) { - lab1: { - if (!(base.in_grouping_b(g_v, 97, 121))) - { - break lab1; - } - break golab0; - } - if (base.cursor <= base.limit_backward) - { - return false; - } - base.cursor--; + return false; } + base.cursor--; base.cursor = base.limit - v_1; if (!base.slice_del()) { return false; } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; among_var = base.find_among_b(a_1); - if (among_var == 0) - { - return false; - } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; switch (among_var) { case 1: { - var /** number */ c1 = base.cursor; + /** @const */ var /** number */ c1 = base.cursor; base.insert(base.cursor, base.cursor, "e"); base.cursor = c1; } @@ -240,14 +219,14 @@ PorterStemmer = function() { { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; if (!r_shortv()) { return false; } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; { - var /** number */ c2 = base.cursor; + /** @const */ var /** number */ c2 = base.cursor; base.insert(base.cursor, base.cursor, "e"); base.cursor = c2; } @@ -262,7 +241,7 @@ PorterStemmer = function() { function r_Step_1c() { base.ket = base.cursor; lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("y"))) { @@ -277,21 +256,11 @@ PorterStemmer = function() { } } base.bra = base.cursor; - golab2: while(true) + if (!base.go_out_grouping_b(g_v, 97, 121)) { - lab3: { - if (!(base.in_grouping_b(g_v, 97, 121))) - { - break lab3; - } - break golab2; - } - if (base.cursor <= base.limit_backward) - { - return false; - } - base.cursor--; + return false; } + base.cursor--; if (!base.slice_from("i")) { return false; @@ -456,7 +425,7 @@ PorterStemmer = function() { break; case 2: lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("s"))) { @@ -488,7 +457,6 @@ PorterStemmer = function() { } base.bra = base.cursor; lab0: { - var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!r_R2()) { @@ -496,13 +464,12 @@ PorterStemmer = function() { } break lab0; } - base.cursor = base.limit - v_1; if (!r_R1()) { return false; } { - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab2: { if (!r_shortv()) { @@ -510,7 +477,7 @@ PorterStemmer = function() { } return false; } - base.cursor = base.limit - v_2; + base.cursor = base.limit - v_1; } } if (!base.slice_del()) @@ -545,7 +512,7 @@ PorterStemmer = function() { this.stem = /** @return {boolean} */ function() { B_Y_found = false; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; if (!(base.eq_s("y"))) @@ -560,15 +527,15 @@ PorterStemmer = function() { B_Y_found = true; } base.cursor = v_1; - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab1: { while(true) { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab2: { golab3: while(true) { - var /** number */ v_4 = base.cursor; + /** @const */ var /** number */ v_4 = base.cursor; lab4: { if (!(base.in_grouping(g_v, 97, 121))) { @@ -604,125 +571,85 @@ PorterStemmer = function() { base.cursor = v_2; I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_5 = base.cursor; + /** @const */ var /** number */ v_5 = base.cursor; lab5: { - golab6: while(true) + if (!base.go_out_grouping(g_v, 97, 121)) { - lab7: { - if (!(base.in_grouping(g_v, 97, 121))) - { - break lab7; - } - break golab6; - } - if (base.cursor >= base.limit) - { - break lab5; - } - base.cursor++; + break lab5; } - golab8: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 121)) { - lab9: { - if (!(base.out_grouping(g_v, 97, 121))) - { - break lab9; - } - break golab8; - } - if (base.cursor >= base.limit) - { - break lab5; - } - base.cursor++; + break lab5; } + base.cursor++; I_p1 = base.cursor; - golab10: while(true) + if (!base.go_out_grouping(g_v, 97, 121)) { - lab11: { - if (!(base.in_grouping(g_v, 97, 121))) - { - break lab11; - } - break golab10; - } - if (base.cursor >= base.limit) - { - break lab5; - } - base.cursor++; + break lab5; } - golab12: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 121)) { - lab13: { - if (!(base.out_grouping(g_v, 97, 121))) - { - break lab13; - } - break golab12; - } - if (base.cursor >= base.limit) - { - break lab5; - } - base.cursor++; + break lab5; } + base.cursor++; I_p2 = base.cursor; } base.cursor = v_5; base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; r_Step_1a(); - base.cursor = base.limit - v_10; - var /** number */ v_11 = base.limit - base.cursor; + base.cursor = base.limit - v_6; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; r_Step_1b(); - base.cursor = base.limit - v_11; - var /** number */ v_12 = base.limit - base.cursor; + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; r_Step_1c(); - base.cursor = base.limit - v_12; - var /** number */ v_13 = base.limit - base.cursor; + base.cursor = base.limit - v_8; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; r_Step_2(); - base.cursor = base.limit - v_13; - var /** number */ v_14 = base.limit - base.cursor; + base.cursor = base.limit - v_9; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; r_Step_3(); - base.cursor = base.limit - v_14; - var /** number */ v_15 = base.limit - base.cursor; + base.cursor = base.limit - v_10; + /** @const */ var /** number */ v_11 = base.limit - base.cursor; r_Step_4(); - base.cursor = base.limit - v_15; - var /** number */ v_16 = base.limit - base.cursor; + base.cursor = base.limit - v_11; + /** @const */ var /** number */ v_12 = base.limit - base.cursor; r_Step_5a(); - base.cursor = base.limit - v_16; - var /** number */ v_17 = base.limit - base.cursor; + base.cursor = base.limit - v_12; + /** @const */ var /** number */ v_13 = base.limit - base.cursor; r_Step_5b(); - base.cursor = base.limit - v_17; + base.cursor = base.limit - v_13; base.cursor = base.limit_backward; - var /** number */ v_18 = base.cursor; - lab14: { + /** @const */ var /** number */ v_14 = base.cursor; + lab6: { if (!B_Y_found) { - break lab14; + break lab6; } while(true) { - var /** number */ v_19 = base.cursor; - lab15: { - golab16: while(true) + /** @const */ var /** number */ v_15 = base.cursor; + lab7: { + golab8: while(true) { - var /** number */ v_20 = base.cursor; - lab17: { + /** @const */ var /** number */ v_16 = base.cursor; + lab9: { base.bra = base.cursor; if (!(base.eq_s("Y"))) { - break lab17; + break lab9; } base.ket = base.cursor; - base.cursor = v_20; - break golab16; + base.cursor = v_16; + break golab8; } - base.cursor = v_20; + base.cursor = v_16; if (base.cursor >= base.limit) { - break lab15; + break lab7; } base.cursor++; } @@ -732,11 +659,11 @@ PorterStemmer = function() { } continue; } - base.cursor = v_19; + base.cursor = v_15; break; } } - base.cursor = v_18; + base.cursor = v_14; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/portuguese-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/portuguese-stemmer.js index 662b97656..2b4a63faf 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/portuguese-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/portuguese-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from portuguese.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -PortugueseStemmer = function() { +var PortugueseStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["", -1, 3], ["\u00E3", 0, 1], @@ -234,14 +235,10 @@ PortugueseStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; among_var = base.find_among(a_0); - if (among_var == 0) - { - break lab0; - } base.ket = base.cursor; switch (among_var) { case 1: @@ -277,37 +274,27 @@ PortugueseStemmer = function() { I_pV = base.limit; I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { lab1: { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { if (!(base.in_grouping(g_v, 97, 250))) { break lab2; } lab3: { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab4: { if (!(base.out_grouping(g_v, 97, 250))) { break lab4; } - golab5: while(true) + if (!base.go_out_grouping(g_v, 97, 250)) { - lab6: { - if (!(base.in_grouping(g_v, 97, 250))) - { - break lab6; - } - break golab5; - } - if (base.cursor >= base.limit) - { - break lab4; - } - base.cursor++; + break lab4; } + base.cursor++; break lab3; } base.cursor = v_3; @@ -315,21 +302,11 @@ PortugueseStemmer = function() { { break lab2; } - golab7: while(true) + if (!base.go_in_grouping(g_v, 97, 250)) { - lab8: { - if (!(base.out_grouping(g_v, 97, 250))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - break lab2; - } - base.cursor++; + break lab2; } + base.cursor++; } break lab1; } @@ -338,31 +315,21 @@ PortugueseStemmer = function() { { break lab0; } - lab9: { - var /** number */ v_6 = base.cursor; - lab10: { + lab5: { + /** @const */ var /** number */ v_4 = base.cursor; + lab6: { if (!(base.out_grouping(g_v, 97, 250))) { - break lab10; + break lab6; } - golab11: while(true) + if (!base.go_out_grouping(g_v, 97, 250)) { - lab12: { - if (!(base.in_grouping(g_v, 97, 250))) - { - break lab12; - } - break golab11; - } - if (base.cursor >= base.limit) - { - break lab10; - } - base.cursor++; + break lab6; } - break lab9; + base.cursor++; + break lab5; } - base.cursor = v_6; + base.cursor = v_4; if (!(base.in_grouping(g_v, 97, 250))) { break lab0; @@ -377,72 +344,32 @@ PortugueseStemmer = function() { I_pV = base.cursor; } base.cursor = v_1; - var /** number */ v_8 = base.cursor; - lab13: { - golab14: while(true) + /** @const */ var /** number */ v_5 = base.cursor; + lab7: { + if (!base.go_out_grouping(g_v, 97, 250)) { - lab15: { - if (!(base.in_grouping(g_v, 97, 250))) - { - break lab15; - } - break golab14; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } - golab16: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 250)) { - lab17: { - if (!(base.out_grouping(g_v, 97, 250))) - { - break lab17; - } - break golab16; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } + base.cursor++; I_p1 = base.cursor; - golab18: while(true) + if (!base.go_out_grouping(g_v, 97, 250)) { - lab19: { - if (!(base.in_grouping(g_v, 97, 250))) - { - break lab19; - } - break golab18; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } - golab20: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 250)) { - lab21: { - if (!(base.out_grouping(g_v, 97, 250))) - { - break lab21; - } - break golab20; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } + base.cursor++; I_p2 = base.cursor; } - base.cursor = v_8; + base.cursor = v_5; return true; }; @@ -451,14 +378,10 @@ PortugueseStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; among_var = base.find_among(a_1); - if (among_var == 0) - { - break lab0; - } base.ket = base.cursor; switch (among_var) { case 1: @@ -491,29 +414,17 @@ PortugueseStemmer = function() { /** @return {boolean} */ function r_RV() { - if (!(I_pV <= base.cursor)) - { - return false; - } - return true; + return I_pV <= base.cursor; }; /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -576,7 +487,7 @@ PortugueseStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; among_var = base.find_among_b(a_2); @@ -626,7 +537,7 @@ PortugueseStemmer = function() { { return false; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { base.ket = base.cursor; if (base.find_among_b(a_3) == 0) @@ -655,7 +566,7 @@ PortugueseStemmer = function() { { return false; } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { base.ket = base.cursor; if (base.find_among_b(a_4) == 0) @@ -684,7 +595,7 @@ PortugueseStemmer = function() { { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab3: { base.ket = base.cursor; if (!(base.eq_s_b("at"))) @@ -728,12 +639,12 @@ PortugueseStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; if (base.find_among_b(a_6) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; @@ -741,7 +652,7 @@ PortugueseStemmer = function() { { return false; } - base.limit_backward = v_2; + base.limit_backward = v_1; return true; }; @@ -786,14 +697,14 @@ PortugueseStemmer = function() { } base.ket = base.cursor; lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("u"))) { break lab1; } base.bra = base.cursor; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.eq_s_b("g"))) { break lab1; @@ -807,7 +718,7 @@ PortugueseStemmer = function() { return false; } base.bra = base.cursor; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; if (!(base.eq_s_b("c"))) { return false; @@ -834,19 +745,19 @@ PortugueseStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_prelude(); base.cursor = v_1; r_mark_regions(); base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { lab1: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab3: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab4: { if (!r_standard_suffix()) { @@ -854,14 +765,14 @@ PortugueseStemmer = function() { } break lab3; } - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_5; if (!r_verb_suffix()) { break lab2; } } - base.cursor = base.limit - v_5; - var /** number */ v_7 = base.limit - base.cursor; + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab5: { base.ket = base.cursor; if (!(base.eq_s_b("i"))) @@ -869,12 +780,12 @@ PortugueseStemmer = function() { break lab5; } base.bra = base.cursor; - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; if (!(base.eq_s_b("c"))) { break lab5; } - base.cursor = base.limit - v_8; + base.cursor = base.limit - v_7; if (!r_RV()) { break lab5; @@ -884,24 +795,24 @@ PortugueseStemmer = function() { return false; } } - base.cursor = base.limit - v_7; + base.cursor = base.limit - v_6; break lab1; } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; if (!r_residual_suffix()) { break lab0; } } } - base.cursor = base.limit - v_3; - var /** number */ v_9 = base.limit - base.cursor; + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; r_residual_form(); - base.cursor = base.limit - v_9; + base.cursor = base.limit - v_8; base.cursor = base.limit_backward; - var /** number */ v_10 = base.cursor; + /** @const */ var /** number */ v_9 = base.cursor; r_postlude(); - base.cursor = v_10; + base.cursor = v_9; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/romanian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/romanian-stemmer.js index 67538f1c0..4c58e819e 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/romanian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/romanian-stemmer.js @@ -1,20 +1,26 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from romanian.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -RomanianStemmer = function() { +var RomanianStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ + ["\u015F", -1, 1], + ["\u0163", -1, 2] + ]; + + /** @const */ var a_1 = [ ["", -1, 3], ["I", 0, 1], ["U", 0, 2] ]; - /** @const */ var a_1 = [ + /** @const */ var a_2 = [ ["ea", -1, 3], - ["a\u0163ia", -1, 7], + ["a\u021Bia", -1, 7], ["aua", -1, 2], ["iua", -1, 4], - ["a\u0163ie", -1, 7], + ["a\u021Bie", -1, 7], ["ele", -1, 3], ["ile", -1, 5], ["iile", 6, 4], @@ -28,14 +34,14 @@ RomanianStemmer = function() { ["iilor", 14, 4] ]; - /** @const */ var a_2 = [ + /** @const */ var a_3 = [ ["icala", -1, 4], ["iciva", -1, 4], ["ativa", -1, 5], ["itiva", -1, 6], ["icale", -1, 4], - ["a\u0163iune", -1, 5], - ["i\u0163iune", -1, 6], + ["a\u021Biune", -1, 5], + ["i\u021Biune", -1, 6], ["atoare", -1, 5], ["itoare", -1, 6], ["\u0103toare", -1, 5], @@ -60,9 +66,9 @@ RomanianStemmer = function() { ["icit\u0103i", -1, 4], ["abilit\u0103i", -1, 1], ["ivit\u0103i", -1, 3], - ["icit\u0103\u0163i", -1, 4], - ["abilit\u0103\u0163i", -1, 1], - ["ivit\u0103\u0163i", -1, 3], + ["icit\u0103\u021Bi", -1, 4], + ["abilit\u0103\u021Bi", -1, 1], + ["ivit\u0103\u021Bi", -1, 3], ["ical", -1, 4], ["ator", -1, 5], ["icator", 35, 4], @@ -77,7 +83,7 @@ RomanianStemmer = function() { ["itiv\u0103", -1, 6] ]; - /** @const */ var a_3 = [ + /** @const */ var a_4 = [ ["ica", -1, 1], ["abila", -1, 1], ["ibila", -1, 1], @@ -114,11 +120,11 @@ RomanianStemmer = function() { ["anti", -1, 1], ["isti", -1, 3], ["uti", -1, 1], - ["i\u015Fti", -1, 3], + ["i\u0219ti", -1, 3], ["ivi", -1, 1], ["it\u0103i", -1, 1], - ["o\u015Fi", -1, 1], - ["it\u0103\u0163i", -1, 1], + ["o\u0219i", -1, 1], + ["it\u0103\u021Bi", -1, 1], ["abil", -1, 1], ["ibil", -1, 1], ["ism", -1, 3], @@ -142,7 +148,7 @@ RomanianStemmer = function() { ["iv\u0103", -1, 1] ]; - /** @const */ var a_4 = [ + /** @const */ var a_5 = [ ["ea", -1, 1], ["ia", -1, 1], ["esc", -1, 1], @@ -159,44 +165,44 @@ RomanianStemmer = function() { ["ise", 10, 1], ["use", 10, 1], ["\u00E2se", 10, 1], - ["e\u015Fte", -1, 1], - ["\u0103\u015Fte", -1, 1], + ["e\u0219te", -1, 1], + ["\u0103\u0219te", -1, 1], ["eze", -1, 1], ["ai", -1, 1], ["eai", 19, 1], ["iai", 19, 1], ["sei", -1, 2], - ["e\u015Fti", -1, 1], - ["\u0103\u015Fti", -1, 1], + ["e\u0219ti", -1, 1], + ["\u0103\u0219ti", -1, 1], ["ui", -1, 1], ["ezi", -1, 1], ["\u00E2i", -1, 1], - ["a\u015Fi", -1, 1], - ["se\u015Fi", -1, 2], - ["ase\u015Fi", 29, 1], - ["sese\u015Fi", 29, 2], - ["ise\u015Fi", 29, 1], - ["use\u015Fi", 29, 1], - ["\u00E2se\u015Fi", 29, 1], - ["i\u015Fi", -1, 1], - ["u\u015Fi", -1, 1], - ["\u00E2\u015Fi", -1, 1], - ["a\u0163i", -1, 2], - ["ea\u0163i", 38, 1], - ["ia\u0163i", 38, 1], - ["e\u0163i", -1, 2], - ["i\u0163i", -1, 2], - ["\u00E2\u0163i", -1, 2], - ["ar\u0103\u0163i", -1, 1], - ["ser\u0103\u0163i", -1, 2], - ["aser\u0103\u0163i", 45, 1], - ["seser\u0103\u0163i", 45, 2], - ["iser\u0103\u0163i", 45, 1], - ["user\u0103\u0163i", 45, 1], - ["\u00E2ser\u0103\u0163i", 45, 1], - ["ir\u0103\u0163i", -1, 1], - ["ur\u0103\u0163i", -1, 1], - ["\u00E2r\u0103\u0163i", -1, 1], + ["a\u0219i", -1, 1], + ["se\u0219i", -1, 2], + ["ase\u0219i", 29, 1], + ["sese\u0219i", 29, 2], + ["ise\u0219i", 29, 1], + ["use\u0219i", 29, 1], + ["\u00E2se\u0219i", 29, 1], + ["i\u0219i", -1, 1], + ["u\u0219i", -1, 1], + ["\u00E2\u0219i", -1, 1], + ["a\u021Bi", -1, 2], + ["ea\u021Bi", 38, 1], + ["ia\u021Bi", 38, 1], + ["e\u021Bi", -1, 2], + ["i\u021Bi", -1, 2], + ["\u00E2\u021Bi", -1, 2], + ["ar\u0103\u021Bi", -1, 1], + ["ser\u0103\u021Bi", -1, 2], + ["aser\u0103\u021Bi", 45, 1], + ["seser\u0103\u021Bi", 45, 2], + ["iser\u0103\u021Bi", 45, 1], + ["user\u0103\u021Bi", 45, 1], + ["\u00E2ser\u0103\u021Bi", 45, 1], + ["ir\u0103\u021Bi", -1, 1], + ["ur\u0103\u021Bi", -1, 1], + ["\u00E2r\u0103\u021Bi", -1, 1], ["am", -1, 1], ["eam", 54, 1], ["iam", 54, 1], @@ -239,7 +245,7 @@ RomanianStemmer = function() { ["eaz\u0103", -1, 1] ]; - /** @const */ var a_5 = [ + /** @const */ var a_6 = [ ["a", -1, 1], ["e", -1, 1], ["ie", 1, 1], @@ -255,15 +261,69 @@ RomanianStemmer = function() { var /** number */ I_pV = 0; + /** @return {boolean} */ + function r_norm() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + golab2: while(true) + { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + if (among_var == 0) + { + break lab3; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u0219")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u021B")) + { + return false; + } + break; + } + base.cursor = v_3; + break golab2; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { + break lab1; + } + base.cursor++; + } + continue; + } + base.cursor = v_2; + break; + } + } + base.cursor = v_1; + return true; + }; + /** @return {boolean} */ function r_prelude() { while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { golab1: while(true) { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { if (!(base.in_grouping(g_v, 97, 259))) { @@ -271,7 +331,7 @@ RomanianStemmer = function() { } base.bra = base.cursor; lab3: { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab4: { if (!(base.eq_s("u"))) { @@ -326,37 +386,27 @@ RomanianStemmer = function() { I_pV = base.limit; I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { lab1: { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { if (!(base.in_grouping(g_v, 97, 259))) { break lab2; } lab3: { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab4: { if (!(base.out_grouping(g_v, 97, 259))) { break lab4; } - golab5: while(true) + if (!base.go_out_grouping(g_v, 97, 259)) { - lab6: { - if (!(base.in_grouping(g_v, 97, 259))) - { - break lab6; - } - break golab5; - } - if (base.cursor >= base.limit) - { - break lab4; - } - base.cursor++; + break lab4; } + base.cursor++; break lab3; } base.cursor = v_3; @@ -364,21 +414,11 @@ RomanianStemmer = function() { { break lab2; } - golab7: while(true) + if (!base.go_in_grouping(g_v, 97, 259)) { - lab8: { - if (!(base.out_grouping(g_v, 97, 259))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - break lab2; - } - base.cursor++; + break lab2; } + base.cursor++; } break lab1; } @@ -387,31 +427,21 @@ RomanianStemmer = function() { { break lab0; } - lab9: { - var /** number */ v_6 = base.cursor; - lab10: { + lab5: { + /** @const */ var /** number */ v_4 = base.cursor; + lab6: { if (!(base.out_grouping(g_v, 97, 259))) { - break lab10; + break lab6; } - golab11: while(true) + if (!base.go_out_grouping(g_v, 97, 259)) { - lab12: { - if (!(base.in_grouping(g_v, 97, 259))) - { - break lab12; - } - break golab11; - } - if (base.cursor >= base.limit) - { - break lab10; - } - base.cursor++; + break lab6; } - break lab9; + base.cursor++; + break lab5; } - base.cursor = v_6; + base.cursor = v_4; if (!(base.in_grouping(g_v, 97, 259))) { break lab0; @@ -426,72 +456,32 @@ RomanianStemmer = function() { I_pV = base.cursor; } base.cursor = v_1; - var /** number */ v_8 = base.cursor; - lab13: { - golab14: while(true) + /** @const */ var /** number */ v_5 = base.cursor; + lab7: { + if (!base.go_out_grouping(g_v, 97, 259)) { - lab15: { - if (!(base.in_grouping(g_v, 97, 259))) - { - break lab15; - } - break golab14; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } - golab16: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 259)) { - lab17: { - if (!(base.out_grouping(g_v, 97, 259))) - { - break lab17; - } - break golab16; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } + base.cursor++; I_p1 = base.cursor; - golab18: while(true) + if (!base.go_out_grouping(g_v, 97, 259)) { - lab19: { - if (!(base.in_grouping(g_v, 97, 259))) - { - break lab19; - } - break golab18; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } - golab20: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 259)) { - lab21: { - if (!(base.out_grouping(g_v, 97, 259))) - { - break lab21; - } - break golab20; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } + base.cursor++; I_p2 = base.cursor; } - base.cursor = v_8; + base.cursor = v_5; return true; }; @@ -500,14 +490,10 @@ RomanianStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; - among_var = base.find_among(a_0); - if (among_var == 0) - { - break lab0; - } + among_var = base.find_among(a_1); base.ket = base.cursor; switch (among_var) { case 1: @@ -540,36 +526,24 @@ RomanianStemmer = function() { /** @return {boolean} */ function r_RV() { - if (!(I_pV <= base.cursor)) - { - return false; - } - return true; + return I_pV <= base.cursor; }; /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ function r_step_0() { var /** number */ among_var; base.ket = base.cursor; - among_var = base.find_among_b(a_1); + among_var = base.find_among_b(a_2); if (among_var == 0) { return false; @@ -606,7 +580,7 @@ RomanianStemmer = function() { break; case 5: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("ab"))) { @@ -628,7 +602,7 @@ RomanianStemmer = function() { } break; case 7: - if (!base.slice_from("a\u0163i")) + if (!base.slice_from("a\u021Bi")) { return false; } @@ -640,9 +614,9 @@ RomanianStemmer = function() { /** @return {boolean} */ function r_combo_suffix() { var /** number */ among_var; - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; base.ket = base.cursor; - among_var = base.find_among_b(a_2); + among_var = base.find_among_b(a_3); if (among_var == 0) { return false; @@ -701,7 +675,7 @@ RomanianStemmer = function() { B_standard_suffix_removed = false; while(true) { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { if (!r_combo_suffix()) { @@ -713,7 +687,7 @@ RomanianStemmer = function() { break; } base.ket = base.cursor; - among_var = base.find_among_b(a_3); + among_var = base.find_among_b(a_4); if (among_var == 0) { return false; @@ -731,7 +705,7 @@ RomanianStemmer = function() { } break; case 2: - if (!(base.eq_s_b("\u0163"))) + if (!(base.eq_s_b("\u021B"))) { return false; } @@ -759,20 +733,20 @@ RomanianStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; - among_var = base.find_among_b(a_4); + among_var = base.find_among_b(a_5); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; switch (among_var) { case 1: lab0: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { if (!(base.out_grouping_b(g_v, 97, 259))) { @@ -780,10 +754,10 @@ RomanianStemmer = function() { } break lab0; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; if (!(base.eq_s_b("u"))) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } } @@ -799,14 +773,14 @@ RomanianStemmer = function() { } break; } - base.limit_backward = v_2; + base.limit_backward = v_1; return true; }; /** @return {boolean} */ function r_vowel_suffix() { base.ket = base.cursor; - if (base.find_among_b(a_5) == 0) + if (base.find_among_b(a_6) == 0) { return false; } @@ -823,21 +797,22 @@ RomanianStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + r_norm(); + /** @const */ var /** number */ v_1 = base.cursor; r_prelude(); base.cursor = v_1; r_mark_regions(); base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_step_0(); - base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_standard_suffix(); - base.cursor = base.limit - v_4; - var /** number */ v_5 = base.limit - base.cursor; + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab0: { lab1: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab2: { if (!B_standard_suffix_removed) { @@ -845,21 +820,21 @@ RomanianStemmer = function() { } break lab1; } - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_5; if (!r_verb_suffix()) { break lab0; } } } - base.cursor = base.limit - v_5; - var /** number */ v_7 = base.limit - base.cursor; + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; r_vowel_suffix(); - base.cursor = base.limit - v_7; + base.cursor = base.limit - v_6; base.cursor = base.limit_backward; - var /** number */ v_8 = base.cursor; + /** @const */ var /** number */ v_7 = base.cursor; r_postlude(); - base.cursor = v_8; + base.cursor = v_7; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/russian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/russian-stemmer.js index 28ded5fc8..36c655d6b 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/russian-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/russian-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from russian.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -RussianStemmer = function() { +var RussianStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["\u0432", -1, 1], ["\u0438\u0432", 0, 2], @@ -170,69 +171,29 @@ RussianStemmer = function() { function r_mark_regions() { I_pV = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { - golab1: while(true) + if (!base.go_out_grouping(g_v, 1072, 1103)) { - lab2: { - if (!(base.in_grouping(g_v, 1072, 1103))) - { - break lab2; - } - break golab1; - } - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; + break lab0; } + base.cursor++; I_pV = base.cursor; - golab3: while(true) + if (!base.go_in_grouping(g_v, 1072, 1103)) { - lab4: { - if (!(base.out_grouping(g_v, 1072, 1103))) - { - break lab4; - } - break golab3; - } - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; + break lab0; } - golab5: while(true) + base.cursor++; + if (!base.go_out_grouping(g_v, 1072, 1103)) { - lab6: { - if (!(base.in_grouping(g_v, 1072, 1103))) - { - break lab6; - } - break golab5; - } - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; + break lab0; } - golab7: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 1072, 1103)) { - lab8: { - if (!(base.out_grouping(g_v, 1072, 1103))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - break lab0; - } - base.cursor++; + break lab0; } + base.cursor++; I_p2 = base.cursor; } base.cursor = v_1; @@ -241,11 +202,7 @@ RussianStemmer = function() { /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -261,7 +218,7 @@ RussianStemmer = function() { switch (among_var) { case 1: lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("\u0430"))) { @@ -312,7 +269,7 @@ RussianStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; among_var = base.find_among_b(a_2); @@ -325,7 +282,7 @@ RussianStemmer = function() { switch (among_var) { case 1: lab1: { - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab2: { if (!(base.eq_s_b("\u0430"))) { @@ -384,7 +341,7 @@ RussianStemmer = function() { switch (among_var) { case 1: lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("\u0430"))) { @@ -499,15 +456,15 @@ RussianStemmer = function() { }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { while(true) { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab1: { golab2: while(true) { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab3: { base.bra = base.cursor; if (!(base.eq_s("\u0451"))) @@ -542,12 +499,12 @@ RussianStemmer = function() { { return false; } - var /** number */ v_6 = base.limit_backward; + /** @const */ var /** number */ v_4 = base.limit_backward; base.limit_backward = I_pV; - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab4: { lab5: { - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab6: { if (!r_perfective_gerund()) { @@ -555,17 +512,17 @@ RussianStemmer = function() { } break lab5; } - base.cursor = base.limit - v_8; - var /** number */ v_9 = base.limit - base.cursor; + base.cursor = base.limit - v_6; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab7: { if (!r_reflexive()) { - base.cursor = base.limit - v_9; + base.cursor = base.limit - v_7; break lab7; } } lab8: { - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; lab9: { if (!r_adjectival()) { @@ -573,7 +530,7 @@ RussianStemmer = function() { } break lab8; } - base.cursor = base.limit - v_10; + base.cursor = base.limit - v_8; lab10: { if (!r_verb()) { @@ -581,7 +538,7 @@ RussianStemmer = function() { } break lab8; } - base.cursor = base.limit - v_10; + base.cursor = base.limit - v_8; if (!r_noun()) { break lab4; @@ -589,13 +546,13 @@ RussianStemmer = function() { } } } - base.cursor = base.limit - v_7; - var /** number */ v_11 = base.limit - base.cursor; + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; lab11: { base.ket = base.cursor; if (!(base.eq_s_b("\u0438"))) { - base.cursor = base.limit - v_11; + base.cursor = base.limit - v_9; break lab11; } base.bra = base.cursor; @@ -604,13 +561,13 @@ RussianStemmer = function() { return false; } } - var /** number */ v_12 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; r_derivational(); - base.cursor = base.limit - v_12; - var /** number */ v_13 = base.limit - base.cursor; + base.cursor = base.limit - v_10; + /** @const */ var /** number */ v_11 = base.limit - base.cursor; r_tidy_up(); - base.cursor = base.limit - v_13; - base.limit_backward = v_6; + base.cursor = base.limit - v_11; + base.limit_backward = v_4; base.cursor = base.limit_backward; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/serbian-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/serbian-stemmer.js new file mode 100644 index 000000000..7d6d0ce32 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/serbian-stemmer.js @@ -0,0 +1,4516 @@ +// Generated from serbian.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var SerbianStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u0430", -1, 1], + ["\u0431", -1, 2], + ["\u0432", -1, 3], + ["\u0433", -1, 4], + ["\u0434", -1, 5], + ["\u0435", -1, 7], + ["\u0436", -1, 8], + ["\u0437", -1, 9], + ["\u0438", -1, 10], + ["\u043A", -1, 12], + ["\u043B", -1, 13], + ["\u043C", -1, 15], + ["\u043D", -1, 16], + ["\u043E", -1, 18], + ["\u043F", -1, 19], + ["\u0440", -1, 20], + ["\u0441", -1, 21], + ["\u0442", -1, 22], + ["\u0443", -1, 24], + ["\u0444", -1, 25], + ["\u0445", -1, 26], + ["\u0446", -1, 27], + ["\u0447", -1, 28], + ["\u0448", -1, 30], + ["\u0452", -1, 6], + ["\u0458", -1, 11], + ["\u0459", -1, 14], + ["\u045A", -1, 17], + ["\u045B", -1, 23], + ["\u045F", -1, 29] + ]; + + /** @const */ var a_1 = [ + ["daba", -1, 73], + ["ajaca", -1, 12], + ["ejaca", -1, 14], + ["ljaca", -1, 13], + ["njaca", -1, 85], + ["ojaca", -1, 15], + ["alaca", -1, 82], + ["elaca", -1, 83], + ["olaca", -1, 84], + ["maca", -1, 75], + ["naca", -1, 76], + ["raca", -1, 81], + ["saca", -1, 80], + ["vaca", -1, 79], + ["\u0161aca", -1, 18], + ["aoca", -1, 82], + ["acaka", -1, 55], + ["ajaka", -1, 16], + ["ojaka", -1, 17], + ["anaka", -1, 78], + ["ataka", -1, 58], + ["etaka", -1, 59], + ["itaka", -1, 60], + ["otaka", -1, 61], + ["utaka", -1, 62], + ["a\u010Daka", -1, 54], + ["esama", -1, 67], + ["izama", -1, 87], + ["jacima", -1, 5], + ["nicima", -1, 23], + ["ticima", -1, 24], + ["teticima", 30, 21], + ["zicima", -1, 25], + ["atcima", -1, 58], + ["utcima", -1, 62], + ["\u010Dcima", -1, 74], + ["pesima", -1, 2], + ["inzima", -1, 19], + ["lozima", -1, 1], + ["metara", -1, 68], + ["centara", -1, 69], + ["istara", -1, 70], + ["ekata", -1, 86], + ["anata", -1, 53], + ["nstava", -1, 22], + ["kustava", -1, 29], + ["ajac", -1, 12], + ["ejac", -1, 14], + ["ljac", -1, 13], + ["njac", -1, 85], + ["anjac", 49, 11], + ["ojac", -1, 15], + ["alac", -1, 82], + ["elac", -1, 83], + ["olac", -1, 84], + ["mac", -1, 75], + ["nac", -1, 76], + ["rac", -1, 81], + ["sac", -1, 80], + ["vac", -1, 79], + ["\u0161ac", -1, 18], + ["jebe", -1, 88], + ["olce", -1, 84], + ["kuse", -1, 27], + ["rave", -1, 42], + ["save", -1, 52], + ["\u0161ave", -1, 51], + ["baci", -1, 89], + ["jaci", -1, 5], + ["tvenici", -1, 20], + ["snici", -1, 26], + ["tetici", -1, 21], + ["bojci", -1, 4], + ["vojci", -1, 3], + ["ojsci", -1, 66], + ["atci", -1, 58], + ["itci", -1, 60], + ["utci", -1, 62], + ["\u010Dci", -1, 74], + ["pesi", -1, 2], + ["inzi", -1, 19], + ["lozi", -1, 1], + ["acak", -1, 55], + ["usak", -1, 57], + ["atak", -1, 58], + ["etak", -1, 59], + ["itak", -1, 60], + ["otak", -1, 61], + ["utak", -1, 62], + ["a\u010Dak", -1, 54], + ["u\u0161ak", -1, 56], + ["izam", -1, 87], + ["tican", -1, 65], + ["cajan", -1, 7], + ["\u010Dajan", -1, 6], + ["voljan", -1, 77], + ["eskan", -1, 63], + ["alan", -1, 40], + ["bilan", -1, 33], + ["gilan", -1, 37], + ["nilan", -1, 39], + ["rilan", -1, 38], + ["silan", -1, 36], + ["tilan", -1, 34], + ["avilan", -1, 35], + ["laran", -1, 9], + ["eran", -1, 8], + ["asan", -1, 91], + ["esan", -1, 10], + ["dusan", -1, 31], + ["kusan", -1, 28], + ["atan", -1, 47], + ["pletan", -1, 50], + ["tetan", -1, 49], + ["antan", -1, 32], + ["pravan", -1, 44], + ["stavan", -1, 43], + ["sivan", -1, 46], + ["tivan", -1, 45], + ["ozan", -1, 41], + ["ti\u010Dan", -1, 64], + ["a\u0161an", -1, 90], + ["du\u0161an", -1, 30], + ["metar", -1, 68], + ["centar", -1, 69], + ["istar", -1, 70], + ["ekat", -1, 86], + ["enat", -1, 48], + ["oscu", -1, 72], + ["o\u0161\u0107u", -1, 71] + ]; + + /** @const */ var a_2 = [ + ["aca", -1, 124], + ["eca", -1, 125], + ["uca", -1, 126], + ["ga", -1, 20], + ["acega", 3, 124], + ["ecega", 3, 125], + ["ucega", 3, 126], + ["anjijega", 3, 84], + ["enjijega", 3, 85], + ["snjijega", 3, 122], + ["\u0161njijega", 3, 86], + ["kijega", 3, 95], + ["skijega", 11, 1], + ["\u0161kijega", 11, 2], + ["elijega", 3, 83], + ["nijega", 3, 13], + ["osijega", 3, 123], + ["atijega", 3, 120], + ["evitijega", 3, 92], + ["ovitijega", 3, 93], + ["astijega", 3, 94], + ["avijega", 3, 77], + ["evijega", 3, 78], + ["ivijega", 3, 79], + ["ovijega", 3, 80], + ["o\u0161ijega", 3, 91], + ["anjega", 3, 84], + ["enjega", 3, 85], + ["snjega", 3, 122], + ["\u0161njega", 3, 86], + ["kega", 3, 95], + ["skega", 30, 1], + ["\u0161kega", 30, 2], + ["elega", 3, 83], + ["nega", 3, 13], + ["anega", 34, 10], + ["enega", 34, 87], + ["snega", 34, 159], + ["\u0161nega", 34, 88], + ["osega", 3, 123], + ["atega", 3, 120], + ["evitega", 3, 92], + ["ovitega", 3, 93], + ["astega", 3, 94], + ["avega", 3, 77], + ["evega", 3, 78], + ["ivega", 3, 79], + ["ovega", 3, 80], + ["a\u0107ega", 3, 14], + ["e\u0107ega", 3, 15], + ["u\u0107ega", 3, 16], + ["o\u0161ega", 3, 91], + ["acoga", 3, 124], + ["ecoga", 3, 125], + ["ucoga", 3, 126], + ["anjoga", 3, 84], + ["enjoga", 3, 85], + ["snjoga", 3, 122], + ["\u0161njoga", 3, 86], + ["koga", 3, 95], + ["skoga", 59, 1], + ["\u0161koga", 59, 2], + ["loga", 3, 19], + ["eloga", 62, 83], + ["noga", 3, 13], + ["cinoga", 64, 137], + ["\u010Dinoga", 64, 89], + ["osoga", 3, 123], + ["atoga", 3, 120], + ["evitoga", 3, 92], + ["ovitoga", 3, 93], + ["astoga", 3, 94], + ["avoga", 3, 77], + ["evoga", 3, 78], + ["ivoga", 3, 79], + ["ovoga", 3, 80], + ["a\u0107oga", 3, 14], + ["e\u0107oga", 3, 15], + ["u\u0107oga", 3, 16], + ["o\u0161oga", 3, 91], + ["uga", 3, 18], + ["aja", -1, 109], + ["caja", 81, 26], + ["laja", 81, 30], + ["raja", 81, 31], + ["\u0107aja", 81, 28], + ["\u010Daja", 81, 27], + ["\u0111aja", 81, 29], + ["bija", -1, 32], + ["cija", -1, 33], + ["dija", -1, 34], + ["fija", -1, 40], + ["gija", -1, 39], + ["anjija", -1, 84], + ["enjija", -1, 85], + ["snjija", -1, 122], + ["\u0161njija", -1, 86], + ["kija", -1, 95], + ["skija", 97, 1], + ["\u0161kija", 97, 2], + ["lija", -1, 24], + ["elija", 100, 83], + ["mija", -1, 37], + ["nija", -1, 13], + ["ganija", 103, 9], + ["manija", 103, 6], + ["panija", 103, 7], + ["ranija", 103, 8], + ["tanija", 103, 5], + ["pija", -1, 41], + ["rija", -1, 42], + ["rarija", 110, 21], + ["sija", -1, 23], + ["osija", 112, 123], + ["tija", -1, 44], + ["atija", 114, 120], + ["evitija", 114, 92], + ["ovitija", 114, 93], + ["otija", 114, 22], + ["astija", 114, 94], + ["avija", -1, 77], + ["evija", -1, 78], + ["ivija", -1, 79], + ["ovija", -1, 80], + ["zija", -1, 45], + ["o\u0161ija", -1, 91], + ["\u017Eija", -1, 38], + ["anja", -1, 84], + ["enja", -1, 85], + ["snja", -1, 122], + ["\u0161nja", -1, 86], + ["ka", -1, 95], + ["ska", 131, 1], + ["\u0161ka", 131, 2], + ["ala", -1, 104], + ["acala", 134, 128], + ["astajala", 134, 106], + ["istajala", 134, 107], + ["ostajala", 134, 108], + ["ijala", 134, 47], + ["injala", 134, 114], + ["nala", 134, 46], + ["irala", 134, 100], + ["urala", 134, 105], + ["tala", 134, 113], + ["astala", 144, 110], + ["istala", 144, 111], + ["ostala", 144, 112], + ["avala", 134, 97], + ["evala", 134, 96], + ["ivala", 134, 98], + ["ovala", 134, 76], + ["uvala", 134, 99], + ["a\u010Dala", 134, 102], + ["ela", -1, 83], + ["ila", -1, 116], + ["acila", 155, 124], + ["lucila", 155, 121], + ["nila", 155, 103], + ["astanila", 158, 110], + ["istanila", 158, 111], + ["ostanila", 158, 112], + ["rosila", 155, 127], + ["jetila", 155, 118], + ["ozila", 155, 48], + ["a\u010Dila", 155, 101], + ["lu\u010Dila", 155, 117], + ["ro\u0161ila", 155, 90], + ["ola", -1, 50], + ["asla", -1, 115], + ["nula", -1, 13], + ["gama", -1, 20], + ["logama", 171, 19], + ["ugama", 171, 18], + ["ajama", -1, 109], + ["cajama", 174, 26], + ["lajama", 174, 30], + ["rajama", 174, 31], + ["\u0107ajama", 174, 28], + ["\u010Dajama", 174, 27], + ["\u0111ajama", 174, 29], + ["bijama", -1, 32], + ["cijama", -1, 33], + ["dijama", -1, 34], + ["fijama", -1, 40], + ["gijama", -1, 39], + ["lijama", -1, 35], + ["mijama", -1, 37], + ["nijama", -1, 36], + ["ganijama", 188, 9], + ["manijama", 188, 6], + ["panijama", 188, 7], + ["ranijama", 188, 8], + ["tanijama", 188, 5], + ["pijama", -1, 41], + ["rijama", -1, 42], + ["sijama", -1, 43], + ["tijama", -1, 44], + ["zijama", -1, 45], + ["\u017Eijama", -1, 38], + ["alama", -1, 104], + ["ijalama", 200, 47], + ["nalama", 200, 46], + ["elama", -1, 119], + ["ilama", -1, 116], + ["ramama", -1, 52], + ["lemama", -1, 51], + ["inama", -1, 11], + ["cinama", 207, 137], + ["\u010Dinama", 207, 89], + ["rama", -1, 52], + ["arama", 210, 53], + ["drama", 210, 54], + ["erama", 210, 55], + ["orama", 210, 56], + ["basama", -1, 135], + ["gasama", -1, 131], + ["jasama", -1, 129], + ["kasama", -1, 133], + ["nasama", -1, 132], + ["tasama", -1, 130], + ["vasama", -1, 134], + ["esama", -1, 152], + ["isama", -1, 154], + ["etama", -1, 70], + ["estama", -1, 71], + ["istama", -1, 72], + ["kstama", -1, 73], + ["ostama", -1, 74], + ["avama", -1, 77], + ["evama", -1, 78], + ["ivama", -1, 79], + ["ba\u0161ama", -1, 63], + ["ga\u0161ama", -1, 64], + ["ja\u0161ama", -1, 61], + ["ka\u0161ama", -1, 62], + ["na\u0161ama", -1, 60], + ["ta\u0161ama", -1, 59], + ["va\u0161ama", -1, 65], + ["e\u0161ama", -1, 66], + ["i\u0161ama", -1, 67], + ["lema", -1, 51], + ["acima", -1, 124], + ["ecima", -1, 125], + ["ucima", -1, 126], + ["ajima", -1, 109], + ["cajima", 245, 26], + ["lajima", 245, 30], + ["rajima", 245, 31], + ["\u0107ajima", 245, 28], + ["\u010Dajima", 245, 27], + ["\u0111ajima", 245, 29], + ["bijima", -1, 32], + ["cijima", -1, 33], + ["dijima", -1, 34], + ["fijima", -1, 40], + ["gijima", -1, 39], + ["anjijima", -1, 84], + ["enjijima", -1, 85], + ["snjijima", -1, 122], + ["\u0161njijima", -1, 86], + ["kijima", -1, 95], + ["skijima", 261, 1], + ["\u0161kijima", 261, 2], + ["lijima", -1, 35], + ["elijima", 264, 83], + ["mijima", -1, 37], + ["nijima", -1, 13], + ["ganijima", 267, 9], + ["manijima", 267, 6], + ["panijima", 267, 7], + ["ranijima", 267, 8], + ["tanijima", 267, 5], + ["pijima", -1, 41], + ["rijima", -1, 42], + ["sijima", -1, 43], + ["osijima", 275, 123], + ["tijima", -1, 44], + ["atijima", 277, 120], + ["evitijima", 277, 92], + ["ovitijima", 277, 93], + ["astijima", 277, 94], + ["avijima", -1, 77], + ["evijima", -1, 78], + ["ivijima", -1, 79], + ["ovijima", -1, 80], + ["zijima", -1, 45], + ["o\u0161ijima", -1, 91], + ["\u017Eijima", -1, 38], + ["anjima", -1, 84], + ["enjima", -1, 85], + ["snjima", -1, 122], + ["\u0161njima", -1, 86], + ["kima", -1, 95], + ["skima", 293, 1], + ["\u0161kima", 293, 2], + ["alima", -1, 104], + ["ijalima", 296, 47], + ["nalima", 296, 46], + ["elima", -1, 83], + ["ilima", -1, 116], + ["ozilima", 300, 48], + ["olima", -1, 50], + ["lemima", -1, 51], + ["nima", -1, 13], + ["anima", 304, 10], + ["inima", 304, 11], + ["cinima", 306, 137], + ["\u010Dinima", 306, 89], + ["onima", 304, 12], + ["arima", -1, 53], + ["drima", -1, 54], + ["erima", -1, 55], + ["orima", -1, 56], + ["basima", -1, 135], + ["gasima", -1, 131], + ["jasima", -1, 129], + ["kasima", -1, 133], + ["nasima", -1, 132], + ["tasima", -1, 130], + ["vasima", -1, 134], + ["esima", -1, 57], + ["isima", -1, 58], + ["osima", -1, 123], + ["atima", -1, 120], + ["ikatima", 324, 68], + ["latima", 324, 69], + ["etima", -1, 70], + ["evitima", -1, 92], + ["ovitima", -1, 93], + ["astima", -1, 94], + ["estima", -1, 71], + ["istima", -1, 72], + ["kstima", -1, 73], + ["ostima", -1, 74], + ["i\u0161tima", -1, 75], + ["avima", -1, 77], + ["evima", -1, 78], + ["ajevima", 337, 109], + ["cajevima", 338, 26], + ["lajevima", 338, 30], + ["rajevima", 338, 31], + ["\u0107ajevima", 338, 28], + ["\u010Dajevima", 338, 27], + ["\u0111ajevima", 338, 29], + ["ivima", -1, 79], + ["ovima", -1, 80], + ["govima", 346, 20], + ["ugovima", 347, 17], + ["lovima", 346, 82], + ["olovima", 349, 49], + ["movima", 346, 81], + ["onovima", 346, 12], + ["stvima", -1, 3], + ["\u0161tvima", -1, 4], + ["a\u0107ima", -1, 14], + ["e\u0107ima", -1, 15], + ["u\u0107ima", -1, 16], + ["ba\u0161ima", -1, 63], + ["ga\u0161ima", -1, 64], + ["ja\u0161ima", -1, 61], + ["ka\u0161ima", -1, 62], + ["na\u0161ima", -1, 60], + ["ta\u0161ima", -1, 59], + ["va\u0161ima", -1, 65], + ["e\u0161ima", -1, 66], + ["i\u0161ima", -1, 67], + ["o\u0161ima", -1, 91], + ["na", -1, 13], + ["ana", 368, 10], + ["acana", 369, 128], + ["urana", 369, 105], + ["tana", 369, 113], + ["avana", 369, 97], + ["evana", 369, 96], + ["ivana", 369, 98], + ["uvana", 369, 99], + ["a\u010Dana", 369, 102], + ["acena", 368, 124], + ["lucena", 368, 121], + ["a\u010Dena", 368, 101], + ["lu\u010Dena", 368, 117], + ["ina", 368, 11], + ["cina", 382, 137], + ["anina", 382, 10], + ["\u010Dina", 382, 89], + ["ona", 368, 12], + ["ara", -1, 53], + ["dra", -1, 54], + ["era", -1, 55], + ["ora", -1, 56], + ["basa", -1, 135], + ["gasa", -1, 131], + ["jasa", -1, 129], + ["kasa", -1, 133], + ["nasa", -1, 132], + ["tasa", -1, 130], + ["vasa", -1, 134], + ["esa", -1, 57], + ["isa", -1, 58], + ["osa", -1, 123], + ["ata", -1, 120], + ["ikata", 401, 68], + ["lata", 401, 69], + ["eta", -1, 70], + ["evita", -1, 92], + ["ovita", -1, 93], + ["asta", -1, 94], + ["esta", -1, 71], + ["ista", -1, 72], + ["ksta", -1, 73], + ["osta", -1, 74], + ["nuta", -1, 13], + ["i\u0161ta", -1, 75], + ["ava", -1, 77], + ["eva", -1, 78], + ["ajeva", 415, 109], + ["cajeva", 416, 26], + ["lajeva", 416, 30], + ["rajeva", 416, 31], + ["\u0107ajeva", 416, 28], + ["\u010Dajeva", 416, 27], + ["\u0111ajeva", 416, 29], + ["iva", -1, 79], + ["ova", -1, 80], + ["gova", 424, 20], + ["ugova", 425, 17], + ["lova", 424, 82], + ["olova", 427, 49], + ["mova", 424, 81], + ["onova", 424, 12], + ["stva", -1, 3], + ["\u0161tva", -1, 4], + ["a\u0107a", -1, 14], + ["e\u0107a", -1, 15], + ["u\u0107a", -1, 16], + ["ba\u0161a", -1, 63], + ["ga\u0161a", -1, 64], + ["ja\u0161a", -1, 61], + ["ka\u0161a", -1, 62], + ["na\u0161a", -1, 60], + ["ta\u0161a", -1, 59], + ["va\u0161a", -1, 65], + ["e\u0161a", -1, 66], + ["i\u0161a", -1, 67], + ["o\u0161a", -1, 91], + ["ace", -1, 124], + ["ece", -1, 125], + ["uce", -1, 126], + ["luce", 448, 121], + ["astade", -1, 110], + ["istade", -1, 111], + ["ostade", -1, 112], + ["ge", -1, 20], + ["loge", 453, 19], + ["uge", 453, 18], + ["aje", -1, 104], + ["caje", 456, 26], + ["laje", 456, 30], + ["raje", 456, 31], + ["astaje", 456, 106], + ["istaje", 456, 107], + ["ostaje", 456, 108], + ["\u0107aje", 456, 28], + ["\u010Daje", 456, 27], + ["\u0111aje", 456, 29], + ["ije", -1, 116], + ["bije", 466, 32], + ["cije", 466, 33], + ["dije", 466, 34], + ["fije", 466, 40], + ["gije", 466, 39], + ["anjije", 466, 84], + ["enjije", 466, 85], + ["snjije", 466, 122], + ["\u0161njije", 466, 86], + ["kije", 466, 95], + ["skije", 476, 1], + ["\u0161kije", 476, 2], + ["lije", 466, 35], + ["elije", 479, 83], + ["mije", 466, 37], + ["nije", 466, 13], + ["ganije", 482, 9], + ["manije", 482, 6], + ["panije", 482, 7], + ["ranije", 482, 8], + ["tanije", 482, 5], + ["pije", 466, 41], + ["rije", 466, 42], + ["sije", 466, 43], + ["osije", 490, 123], + ["tije", 466, 44], + ["atije", 492, 120], + ["evitije", 492, 92], + ["ovitije", 492, 93], + ["astije", 492, 94], + ["avije", 466, 77], + ["evije", 466, 78], + ["ivije", 466, 79], + ["ovije", 466, 80], + ["zije", 466, 45], + ["o\u0161ije", 466, 91], + ["\u017Eije", 466, 38], + ["anje", -1, 84], + ["enje", -1, 85], + ["snje", -1, 122], + ["\u0161nje", -1, 86], + ["uje", -1, 25], + ["lucuje", 508, 121], + ["iruje", 508, 100], + ["lu\u010Duje", 508, 117], + ["ke", -1, 95], + ["ske", 512, 1], + ["\u0161ke", 512, 2], + ["ale", -1, 104], + ["acale", 515, 128], + ["astajale", 515, 106], + ["istajale", 515, 107], + ["ostajale", 515, 108], + ["ijale", 515, 47], + ["injale", 515, 114], + ["nale", 515, 46], + ["irale", 515, 100], + ["urale", 515, 105], + ["tale", 515, 113], + ["astale", 525, 110], + ["istale", 525, 111], + ["ostale", 525, 112], + ["avale", 515, 97], + ["evale", 515, 96], + ["ivale", 515, 98], + ["ovale", 515, 76], + ["uvale", 515, 99], + ["a\u010Dale", 515, 102], + ["ele", -1, 83], + ["ile", -1, 116], + ["acile", 536, 124], + ["lucile", 536, 121], + ["nile", 536, 103], + ["rosile", 536, 127], + ["jetile", 536, 118], + ["ozile", 536, 48], + ["a\u010Dile", 536, 101], + ["lu\u010Dile", 536, 117], + ["ro\u0161ile", 536, 90], + ["ole", -1, 50], + ["asle", -1, 115], + ["nule", -1, 13], + ["rame", -1, 52], + ["leme", -1, 51], + ["acome", -1, 124], + ["ecome", -1, 125], + ["ucome", -1, 126], + ["anjome", -1, 84], + ["enjome", -1, 85], + ["snjome", -1, 122], + ["\u0161njome", -1, 86], + ["kome", -1, 95], + ["skome", 558, 1], + ["\u0161kome", 558, 2], + ["elome", -1, 83], + ["nome", -1, 13], + ["cinome", 562, 137], + ["\u010Dinome", 562, 89], + ["osome", -1, 123], + ["atome", -1, 120], + ["evitome", -1, 92], + ["ovitome", -1, 93], + ["astome", -1, 94], + ["avome", -1, 77], + ["evome", -1, 78], + ["ivome", -1, 79], + ["ovome", -1, 80], + ["a\u0107ome", -1, 14], + ["e\u0107ome", -1, 15], + ["u\u0107ome", -1, 16], + ["o\u0161ome", -1, 91], + ["ne", -1, 13], + ["ane", 578, 10], + ["acane", 579, 128], + ["urane", 579, 105], + ["tane", 579, 113], + ["astane", 582, 110], + ["istane", 582, 111], + ["ostane", 582, 112], + ["avane", 579, 97], + ["evane", 579, 96], + ["ivane", 579, 98], + ["uvane", 579, 99], + ["a\u010Dane", 579, 102], + ["acene", 578, 124], + ["lucene", 578, 121], + ["a\u010Dene", 578, 101], + ["lu\u010Dene", 578, 117], + ["ine", 578, 11], + ["cine", 595, 137], + ["anine", 595, 10], + ["\u010Dine", 595, 89], + ["one", 578, 12], + ["are", -1, 53], + ["dre", -1, 54], + ["ere", -1, 55], + ["ore", -1, 56], + ["ase", -1, 161], + ["base", 604, 135], + ["acase", 604, 128], + ["gase", 604, 131], + ["jase", 604, 129], + ["astajase", 608, 138], + ["istajase", 608, 139], + ["ostajase", 608, 140], + ["injase", 608, 150], + ["kase", 604, 133], + ["nase", 604, 132], + ["irase", 604, 155], + ["urase", 604, 156], + ["tase", 604, 130], + ["vase", 604, 134], + ["avase", 618, 144], + ["evase", 618, 145], + ["ivase", 618, 146], + ["ovase", 618, 148], + ["uvase", 618, 147], + ["ese", -1, 57], + ["ise", -1, 58], + ["acise", 625, 124], + ["lucise", 625, 121], + ["rosise", 625, 127], + ["jetise", 625, 149], + ["ose", -1, 123], + ["astadose", 630, 141], + ["istadose", 630, 142], + ["ostadose", 630, 143], + ["ate", -1, 104], + ["acate", 634, 128], + ["ikate", 634, 68], + ["late", 634, 69], + ["irate", 634, 100], + ["urate", 634, 105], + ["tate", 634, 113], + ["avate", 634, 97], + ["evate", 634, 96], + ["ivate", 634, 98], + ["uvate", 634, 99], + ["a\u010Date", 634, 102], + ["ete", -1, 70], + ["astadete", 646, 110], + ["istadete", 646, 111], + ["ostadete", 646, 112], + ["astajete", 646, 106], + ["istajete", 646, 107], + ["ostajete", 646, 108], + ["ijete", 646, 116], + ["injete", 646, 114], + ["ujete", 646, 25], + ["lucujete", 655, 121], + ["irujete", 655, 100], + ["lu\u010Dujete", 655, 117], + ["nete", 646, 13], + ["astanete", 659, 110], + ["istanete", 659, 111], + ["ostanete", 659, 112], + ["astete", 646, 115], + ["ite", -1, 116], + ["acite", 664, 124], + ["lucite", 664, 121], + ["nite", 664, 13], + ["astanite", 667, 110], + ["istanite", 667, 111], + ["ostanite", 667, 112], + ["rosite", 664, 127], + ["jetite", 664, 118], + ["astite", 664, 115], + ["evite", 664, 92], + ["ovite", 664, 93], + ["a\u010Dite", 664, 101], + ["lu\u010Dite", 664, 117], + ["ro\u0161ite", 664, 90], + ["ajte", -1, 104], + ["urajte", 679, 105], + ["tajte", 679, 113], + ["astajte", 681, 106], + ["istajte", 681, 107], + ["ostajte", 681, 108], + ["avajte", 679, 97], + ["evajte", 679, 96], + ["ivajte", 679, 98], + ["uvajte", 679, 99], + ["ijte", -1, 116], + ["lucujte", -1, 121], + ["irujte", -1, 100], + ["lu\u010Dujte", -1, 117], + ["aste", -1, 94], + ["acaste", 693, 128], + ["astajaste", 693, 106], + ["istajaste", 693, 107], + ["ostajaste", 693, 108], + ["injaste", 693, 114], + ["iraste", 693, 100], + ["uraste", 693, 105], + ["taste", 693, 113], + ["avaste", 693, 97], + ["evaste", 693, 96], + ["ivaste", 693, 98], + ["ovaste", 693, 76], + ["uvaste", 693, 99], + ["a\u010Daste", 693, 102], + ["este", -1, 71], + ["iste", -1, 72], + ["aciste", 709, 124], + ["luciste", 709, 121], + ["niste", 709, 103], + ["rosiste", 709, 127], + ["jetiste", 709, 118], + ["a\u010Diste", 709, 101], + ["lu\u010Diste", 709, 117], + ["ro\u0161iste", 709, 90], + ["kste", -1, 73], + ["oste", -1, 74], + ["astadoste", 719, 110], + ["istadoste", 719, 111], + ["ostadoste", 719, 112], + ["nuste", -1, 13], + ["i\u0161te", -1, 75], + ["ave", -1, 77], + ["eve", -1, 78], + ["ajeve", 726, 109], + ["cajeve", 727, 26], + ["lajeve", 727, 30], + ["rajeve", 727, 31], + ["\u0107ajeve", 727, 28], + ["\u010Dajeve", 727, 27], + ["\u0111ajeve", 727, 29], + ["ive", -1, 79], + ["ove", -1, 80], + ["gove", 735, 20], + ["ugove", 736, 17], + ["love", 735, 82], + ["olove", 738, 49], + ["move", 735, 81], + ["onove", 735, 12], + ["a\u0107e", -1, 14], + ["e\u0107e", -1, 15], + ["u\u0107e", -1, 16], + ["a\u010De", -1, 101], + ["lu\u010De", -1, 117], + ["a\u0161e", -1, 104], + ["ba\u0161e", 747, 63], + ["ga\u0161e", 747, 64], + ["ja\u0161e", 747, 61], + ["astaja\u0161e", 750, 106], + ["istaja\u0161e", 750, 107], + ["ostaja\u0161e", 750, 108], + ["inja\u0161e", 750, 114], + ["ka\u0161e", 747, 62], + ["na\u0161e", 747, 60], + ["ira\u0161e", 747, 100], + ["ura\u0161e", 747, 105], + ["ta\u0161e", 747, 59], + ["va\u0161e", 747, 65], + ["ava\u0161e", 760, 97], + ["eva\u0161e", 760, 96], + ["iva\u0161e", 760, 98], + ["ova\u0161e", 760, 76], + ["uva\u0161e", 760, 99], + ["a\u010Da\u0161e", 747, 102], + ["e\u0161e", -1, 66], + ["i\u0161e", -1, 67], + ["jeti\u0161e", 768, 118], + ["a\u010Di\u0161e", 768, 101], + ["lu\u010Di\u0161e", 768, 117], + ["ro\u0161i\u0161e", 768, 90], + ["o\u0161e", -1, 91], + ["astado\u0161e", 773, 110], + ["istado\u0161e", 773, 111], + ["ostado\u0161e", 773, 112], + ["aceg", -1, 124], + ["eceg", -1, 125], + ["uceg", -1, 126], + ["anjijeg", -1, 84], + ["enjijeg", -1, 85], + ["snjijeg", -1, 122], + ["\u0161njijeg", -1, 86], + ["kijeg", -1, 95], + ["skijeg", 784, 1], + ["\u0161kijeg", 784, 2], + ["elijeg", -1, 83], + ["nijeg", -1, 13], + ["osijeg", -1, 123], + ["atijeg", -1, 120], + ["evitijeg", -1, 92], + ["ovitijeg", -1, 93], + ["astijeg", -1, 94], + ["avijeg", -1, 77], + ["evijeg", -1, 78], + ["ivijeg", -1, 79], + ["ovijeg", -1, 80], + ["o\u0161ijeg", -1, 91], + ["anjeg", -1, 84], + ["enjeg", -1, 85], + ["snjeg", -1, 122], + ["\u0161njeg", -1, 86], + ["keg", -1, 95], + ["eleg", -1, 83], + ["neg", -1, 13], + ["aneg", 805, 10], + ["eneg", 805, 87], + ["sneg", 805, 159], + ["\u0161neg", 805, 88], + ["oseg", -1, 123], + ["ateg", -1, 120], + ["aveg", -1, 77], + ["eveg", -1, 78], + ["iveg", -1, 79], + ["oveg", -1, 80], + ["a\u0107eg", -1, 14], + ["e\u0107eg", -1, 15], + ["u\u0107eg", -1, 16], + ["o\u0161eg", -1, 91], + ["acog", -1, 124], + ["ecog", -1, 125], + ["ucog", -1, 126], + ["anjog", -1, 84], + ["enjog", -1, 85], + ["snjog", -1, 122], + ["\u0161njog", -1, 86], + ["kog", -1, 95], + ["skog", 827, 1], + ["\u0161kog", 827, 2], + ["elog", -1, 83], + ["nog", -1, 13], + ["cinog", 831, 137], + ["\u010Dinog", 831, 89], + ["osog", -1, 123], + ["atog", -1, 120], + ["evitog", -1, 92], + ["ovitog", -1, 93], + ["astog", -1, 94], + ["avog", -1, 77], + ["evog", -1, 78], + ["ivog", -1, 79], + ["ovog", -1, 80], + ["a\u0107og", -1, 14], + ["e\u0107og", -1, 15], + ["u\u0107og", -1, 16], + ["o\u0161og", -1, 91], + ["ah", -1, 104], + ["acah", 847, 128], + ["astajah", 847, 106], + ["istajah", 847, 107], + ["ostajah", 847, 108], + ["injah", 847, 114], + ["irah", 847, 100], + ["urah", 847, 105], + ["tah", 847, 113], + ["avah", 847, 97], + ["evah", 847, 96], + ["ivah", 847, 98], + ["ovah", 847, 76], + ["uvah", 847, 99], + ["a\u010Dah", 847, 102], + ["ih", -1, 116], + ["acih", 862, 124], + ["ecih", 862, 125], + ["ucih", 862, 126], + ["lucih", 865, 121], + ["anjijih", 862, 84], + ["enjijih", 862, 85], + ["snjijih", 862, 122], + ["\u0161njijih", 862, 86], + ["kijih", 862, 95], + ["skijih", 871, 1], + ["\u0161kijih", 871, 2], + ["elijih", 862, 83], + ["nijih", 862, 13], + ["osijih", 862, 123], + ["atijih", 862, 120], + ["evitijih", 862, 92], + ["ovitijih", 862, 93], + ["astijih", 862, 94], + ["avijih", 862, 77], + ["evijih", 862, 78], + ["ivijih", 862, 79], + ["ovijih", 862, 80], + ["o\u0161ijih", 862, 91], + ["anjih", 862, 84], + ["enjih", 862, 85], + ["snjih", 862, 122], + ["\u0161njih", 862, 86], + ["kih", 862, 95], + ["skih", 890, 1], + ["\u0161kih", 890, 2], + ["elih", 862, 83], + ["nih", 862, 13], + ["cinih", 894, 137], + ["\u010Dinih", 894, 89], + ["osih", 862, 123], + ["rosih", 897, 127], + ["atih", 862, 120], + ["jetih", 862, 118], + ["evitih", 862, 92], + ["ovitih", 862, 93], + ["astih", 862, 94], + ["avih", 862, 77], + ["evih", 862, 78], + ["ivih", 862, 79], + ["ovih", 862, 80], + ["a\u0107ih", 862, 14], + ["e\u0107ih", 862, 15], + ["u\u0107ih", 862, 16], + ["a\u010Dih", 862, 101], + ["lu\u010Dih", 862, 117], + ["o\u0161ih", 862, 91], + ["ro\u0161ih", 913, 90], + ["astadoh", -1, 110], + ["istadoh", -1, 111], + ["ostadoh", -1, 112], + ["acuh", -1, 124], + ["ecuh", -1, 125], + ["ucuh", -1, 126], + ["a\u0107uh", -1, 14], + ["e\u0107uh", -1, 15], + ["u\u0107uh", -1, 16], + ["aci", -1, 124], + ["aceci", -1, 124], + ["ieci", -1, 162], + ["ajuci", -1, 161], + ["irajuci", 927, 155], + ["urajuci", 927, 156], + ["astajuci", 927, 138], + ["istajuci", 927, 139], + ["ostajuci", 927, 140], + ["avajuci", 927, 144], + ["evajuci", 927, 145], + ["ivajuci", 927, 146], + ["uvajuci", 927, 147], + ["ujuci", -1, 157], + ["lucujuci", 937, 121], + ["irujuci", 937, 155], + ["luci", -1, 121], + ["nuci", -1, 164], + ["etuci", -1, 153], + ["astuci", -1, 136], + ["gi", -1, 20], + ["ugi", 944, 18], + ["aji", -1, 109], + ["caji", 946, 26], + ["laji", 946, 30], + ["raji", 946, 31], + ["\u0107aji", 946, 28], + ["\u010Daji", 946, 27], + ["\u0111aji", 946, 29], + ["biji", -1, 32], + ["ciji", -1, 33], + ["diji", -1, 34], + ["fiji", -1, 40], + ["giji", -1, 39], + ["anjiji", -1, 84], + ["enjiji", -1, 85], + ["snjiji", -1, 122], + ["\u0161njiji", -1, 86], + ["kiji", -1, 95], + ["skiji", 962, 1], + ["\u0161kiji", 962, 2], + ["liji", -1, 35], + ["eliji", 965, 83], + ["miji", -1, 37], + ["niji", -1, 13], + ["ganiji", 968, 9], + ["maniji", 968, 6], + ["paniji", 968, 7], + ["raniji", 968, 8], + ["taniji", 968, 5], + ["piji", -1, 41], + ["riji", -1, 42], + ["siji", -1, 43], + ["osiji", 976, 123], + ["tiji", -1, 44], + ["atiji", 978, 120], + ["evitiji", 978, 92], + ["ovitiji", 978, 93], + ["astiji", 978, 94], + ["aviji", -1, 77], + ["eviji", -1, 78], + ["iviji", -1, 79], + ["oviji", -1, 80], + ["ziji", -1, 45], + ["o\u0161iji", -1, 91], + ["\u017Eiji", -1, 38], + ["anji", -1, 84], + ["enji", -1, 85], + ["snji", -1, 122], + ["\u0161nji", -1, 86], + ["ki", -1, 95], + ["ski", 994, 1], + ["\u0161ki", 994, 2], + ["ali", -1, 104], + ["acali", 997, 128], + ["astajali", 997, 106], + ["istajali", 997, 107], + ["ostajali", 997, 108], + ["ijali", 997, 47], + ["injali", 997, 114], + ["nali", 997, 46], + ["irali", 997, 100], + ["urali", 997, 105], + ["tali", 997, 113], + ["astali", 1007, 110], + ["istali", 1007, 111], + ["ostali", 1007, 112], + ["avali", 997, 97], + ["evali", 997, 96], + ["ivali", 997, 98], + ["ovali", 997, 76], + ["uvali", 997, 99], + ["a\u010Dali", 997, 102], + ["eli", -1, 83], + ["ili", -1, 116], + ["acili", 1018, 124], + ["lucili", 1018, 121], + ["nili", 1018, 103], + ["rosili", 1018, 127], + ["jetili", 1018, 118], + ["ozili", 1018, 48], + ["a\u010Dili", 1018, 101], + ["lu\u010Dili", 1018, 117], + ["ro\u0161ili", 1018, 90], + ["oli", -1, 50], + ["asli", -1, 115], + ["nuli", -1, 13], + ["rami", -1, 52], + ["lemi", -1, 51], + ["ni", -1, 13], + ["ani", 1033, 10], + ["acani", 1034, 128], + ["urani", 1034, 105], + ["tani", 1034, 113], + ["avani", 1034, 97], + ["evani", 1034, 96], + ["ivani", 1034, 98], + ["uvani", 1034, 99], + ["a\u010Dani", 1034, 102], + ["aceni", 1033, 124], + ["luceni", 1033, 121], + ["a\u010Deni", 1033, 101], + ["lu\u010Deni", 1033, 117], + ["ini", 1033, 11], + ["cini", 1047, 137], + ["\u010Dini", 1047, 89], + ["oni", 1033, 12], + ["ari", -1, 53], + ["dri", -1, 54], + ["eri", -1, 55], + ["ori", -1, 56], + ["basi", -1, 135], + ["gasi", -1, 131], + ["jasi", -1, 129], + ["kasi", -1, 133], + ["nasi", -1, 132], + ["tasi", -1, 130], + ["vasi", -1, 134], + ["esi", -1, 152], + ["isi", -1, 154], + ["osi", -1, 123], + ["avsi", -1, 161], + ["acavsi", 1065, 128], + ["iravsi", 1065, 155], + ["tavsi", 1065, 160], + ["etavsi", 1068, 153], + ["astavsi", 1068, 141], + ["istavsi", 1068, 142], + ["ostavsi", 1068, 143], + ["ivsi", -1, 162], + ["nivsi", 1073, 158], + ["rosivsi", 1073, 127], + ["nuvsi", -1, 164], + ["ati", -1, 104], + ["acati", 1077, 128], + ["astajati", 1077, 106], + ["istajati", 1077, 107], + ["ostajati", 1077, 108], + ["injati", 1077, 114], + ["ikati", 1077, 68], + ["lati", 1077, 69], + ["irati", 1077, 100], + ["urati", 1077, 105], + ["tati", 1077, 113], + ["astati", 1087, 110], + ["istati", 1087, 111], + ["ostati", 1087, 112], + ["avati", 1077, 97], + ["evati", 1077, 96], + ["ivati", 1077, 98], + ["ovati", 1077, 76], + ["uvati", 1077, 99], + ["a\u010Dati", 1077, 102], + ["eti", -1, 70], + ["iti", -1, 116], + ["aciti", 1098, 124], + ["luciti", 1098, 121], + ["niti", 1098, 103], + ["rositi", 1098, 127], + ["jetiti", 1098, 118], + ["eviti", 1098, 92], + ["oviti", 1098, 93], + ["a\u010Diti", 1098, 101], + ["lu\u010Diti", 1098, 117], + ["ro\u0161iti", 1098, 90], + ["asti", -1, 94], + ["esti", -1, 71], + ["isti", -1, 72], + ["ksti", -1, 73], + ["osti", -1, 74], + ["nuti", -1, 13], + ["avi", -1, 77], + ["evi", -1, 78], + ["ajevi", 1116, 109], + ["cajevi", 1117, 26], + ["lajevi", 1117, 30], + ["rajevi", 1117, 31], + ["\u0107ajevi", 1117, 28], + ["\u010Dajevi", 1117, 27], + ["\u0111ajevi", 1117, 29], + ["ivi", -1, 79], + ["ovi", -1, 80], + ["govi", 1125, 20], + ["ugovi", 1126, 17], + ["lovi", 1125, 82], + ["olovi", 1128, 49], + ["movi", 1125, 81], + ["onovi", 1125, 12], + ["ie\u0107i", -1, 116], + ["a\u010De\u0107i", -1, 101], + ["aju\u0107i", -1, 104], + ["iraju\u0107i", 1134, 100], + ["uraju\u0107i", 1134, 105], + ["astaju\u0107i", 1134, 106], + ["istaju\u0107i", 1134, 107], + ["ostaju\u0107i", 1134, 108], + ["avaju\u0107i", 1134, 97], + ["evaju\u0107i", 1134, 96], + ["ivaju\u0107i", 1134, 98], + ["uvaju\u0107i", 1134, 99], + ["uju\u0107i", -1, 25], + ["iruju\u0107i", 1144, 100], + ["lu\u010Duju\u0107i", 1144, 117], + ["nu\u0107i", -1, 13], + ["etu\u0107i", -1, 70], + ["astu\u0107i", -1, 115], + ["a\u010Di", -1, 101], + ["lu\u010Di", -1, 117], + ["ba\u0161i", -1, 63], + ["ga\u0161i", -1, 64], + ["ja\u0161i", -1, 61], + ["ka\u0161i", -1, 62], + ["na\u0161i", -1, 60], + ["ta\u0161i", -1, 59], + ["va\u0161i", -1, 65], + ["e\u0161i", -1, 66], + ["i\u0161i", -1, 67], + ["o\u0161i", -1, 91], + ["av\u0161i", -1, 104], + ["irav\u0161i", 1162, 100], + ["tav\u0161i", 1162, 113], + ["etav\u0161i", 1164, 70], + ["astav\u0161i", 1164, 110], + ["istav\u0161i", 1164, 111], + ["ostav\u0161i", 1164, 112], + ["a\u010Dav\u0161i", 1162, 102], + ["iv\u0161i", -1, 116], + ["niv\u0161i", 1170, 103], + ["ro\u0161iv\u0161i", 1170, 90], + ["nuv\u0161i", -1, 13], + ["aj", -1, 104], + ["uraj", 1174, 105], + ["taj", 1174, 113], + ["avaj", 1174, 97], + ["evaj", 1174, 96], + ["ivaj", 1174, 98], + ["uvaj", 1174, 99], + ["ij", -1, 116], + ["acoj", -1, 124], + ["ecoj", -1, 125], + ["ucoj", -1, 126], + ["anjijoj", -1, 84], + ["enjijoj", -1, 85], + ["snjijoj", -1, 122], + ["\u0161njijoj", -1, 86], + ["kijoj", -1, 95], + ["skijoj", 1189, 1], + ["\u0161kijoj", 1189, 2], + ["elijoj", -1, 83], + ["nijoj", -1, 13], + ["osijoj", -1, 123], + ["evitijoj", -1, 92], + ["ovitijoj", -1, 93], + ["astijoj", -1, 94], + ["avijoj", -1, 77], + ["evijoj", -1, 78], + ["ivijoj", -1, 79], + ["ovijoj", -1, 80], + ["o\u0161ijoj", -1, 91], + ["anjoj", -1, 84], + ["enjoj", -1, 85], + ["snjoj", -1, 122], + ["\u0161njoj", -1, 86], + ["koj", -1, 95], + ["skoj", 1207, 1], + ["\u0161koj", 1207, 2], + ["aloj", -1, 104], + ["eloj", -1, 83], + ["noj", -1, 13], + ["cinoj", 1212, 137], + ["\u010Dinoj", 1212, 89], + ["osoj", -1, 123], + ["atoj", -1, 120], + ["evitoj", -1, 92], + ["ovitoj", -1, 93], + ["astoj", -1, 94], + ["avoj", -1, 77], + ["evoj", -1, 78], + ["ivoj", -1, 79], + ["ovoj", -1, 80], + ["a\u0107oj", -1, 14], + ["e\u0107oj", -1, 15], + ["u\u0107oj", -1, 16], + ["o\u0161oj", -1, 91], + ["lucuj", -1, 121], + ["iruj", -1, 100], + ["lu\u010Duj", -1, 117], + ["al", -1, 104], + ["iral", 1231, 100], + ["ural", 1231, 105], + ["el", -1, 119], + ["il", -1, 116], + ["am", -1, 104], + ["acam", 1236, 128], + ["iram", 1236, 100], + ["uram", 1236, 105], + ["tam", 1236, 113], + ["avam", 1236, 97], + ["evam", 1236, 96], + ["ivam", 1236, 98], + ["uvam", 1236, 99], + ["a\u010Dam", 1236, 102], + ["em", -1, 119], + ["acem", 1246, 124], + ["ecem", 1246, 125], + ["ucem", 1246, 126], + ["astadem", 1246, 110], + ["istadem", 1246, 111], + ["ostadem", 1246, 112], + ["ajem", 1246, 104], + ["cajem", 1253, 26], + ["lajem", 1253, 30], + ["rajem", 1253, 31], + ["astajem", 1253, 106], + ["istajem", 1253, 107], + ["ostajem", 1253, 108], + ["\u0107ajem", 1253, 28], + ["\u010Dajem", 1253, 27], + ["\u0111ajem", 1253, 29], + ["ijem", 1246, 116], + ["anjijem", 1263, 84], + ["enjijem", 1263, 85], + ["snjijem", 1263, 123], + ["\u0161njijem", 1263, 86], + ["kijem", 1263, 95], + ["skijem", 1268, 1], + ["\u0161kijem", 1268, 2], + ["lijem", 1263, 24], + ["elijem", 1271, 83], + ["nijem", 1263, 13], + ["rarijem", 1263, 21], + ["sijem", 1263, 23], + ["osijem", 1275, 123], + ["atijem", 1263, 120], + ["evitijem", 1263, 92], + ["ovitijem", 1263, 93], + ["otijem", 1263, 22], + ["astijem", 1263, 94], + ["avijem", 1263, 77], + ["evijem", 1263, 78], + ["ivijem", 1263, 79], + ["ovijem", 1263, 80], + ["o\u0161ijem", 1263, 91], + ["anjem", 1246, 84], + ["enjem", 1246, 85], + ["injem", 1246, 114], + ["snjem", 1246, 122], + ["\u0161njem", 1246, 86], + ["ujem", 1246, 25], + ["lucujem", 1292, 121], + ["irujem", 1292, 100], + ["lu\u010Dujem", 1292, 117], + ["kem", 1246, 95], + ["skem", 1296, 1], + ["\u0161kem", 1296, 2], + ["elem", 1246, 83], + ["nem", 1246, 13], + ["anem", 1300, 10], + ["astanem", 1301, 110], + ["istanem", 1301, 111], + ["ostanem", 1301, 112], + ["enem", 1300, 87], + ["snem", 1300, 159], + ["\u0161nem", 1300, 88], + ["basem", 1246, 135], + ["gasem", 1246, 131], + ["jasem", 1246, 129], + ["kasem", 1246, 133], + ["nasem", 1246, 132], + ["tasem", 1246, 130], + ["vasem", 1246, 134], + ["esem", 1246, 152], + ["isem", 1246, 154], + ["osem", 1246, 123], + ["atem", 1246, 120], + ["etem", 1246, 70], + ["evitem", 1246, 92], + ["ovitem", 1246, 93], + ["astem", 1246, 94], + ["istem", 1246, 151], + ["i\u0161tem", 1246, 75], + ["avem", 1246, 77], + ["evem", 1246, 78], + ["ivem", 1246, 79], + ["a\u0107em", 1246, 14], + ["e\u0107em", 1246, 15], + ["u\u0107em", 1246, 16], + ["ba\u0161em", 1246, 63], + ["ga\u0161em", 1246, 64], + ["ja\u0161em", 1246, 61], + ["ka\u0161em", 1246, 62], + ["na\u0161em", 1246, 60], + ["ta\u0161em", 1246, 59], + ["va\u0161em", 1246, 65], + ["e\u0161em", 1246, 66], + ["i\u0161em", 1246, 67], + ["o\u0161em", 1246, 91], + ["im", -1, 116], + ["acim", 1341, 124], + ["ecim", 1341, 125], + ["ucim", 1341, 126], + ["lucim", 1344, 121], + ["anjijim", 1341, 84], + ["enjijim", 1341, 85], + ["snjijim", 1341, 122], + ["\u0161njijim", 1341, 86], + ["kijim", 1341, 95], + ["skijim", 1350, 1], + ["\u0161kijim", 1350, 2], + ["elijim", 1341, 83], + ["nijim", 1341, 13], + ["osijim", 1341, 123], + ["atijim", 1341, 120], + ["evitijim", 1341, 92], + ["ovitijim", 1341, 93], + ["astijim", 1341, 94], + ["avijim", 1341, 77], + ["evijim", 1341, 78], + ["ivijim", 1341, 79], + ["ovijim", 1341, 80], + ["o\u0161ijim", 1341, 91], + ["anjim", 1341, 84], + ["enjim", 1341, 85], + ["snjim", 1341, 122], + ["\u0161njim", 1341, 86], + ["kim", 1341, 95], + ["skim", 1369, 1], + ["\u0161kim", 1369, 2], + ["elim", 1341, 83], + ["nim", 1341, 13], + ["cinim", 1373, 137], + ["\u010Dinim", 1373, 89], + ["osim", 1341, 123], + ["rosim", 1376, 127], + ["atim", 1341, 120], + ["jetim", 1341, 118], + ["evitim", 1341, 92], + ["ovitim", 1341, 93], + ["astim", 1341, 94], + ["avim", 1341, 77], + ["evim", 1341, 78], + ["ivim", 1341, 79], + ["ovim", 1341, 80], + ["a\u0107im", 1341, 14], + ["e\u0107im", 1341, 15], + ["u\u0107im", 1341, 16], + ["a\u010Dim", 1341, 101], + ["lu\u010Dim", 1341, 117], + ["o\u0161im", 1341, 91], + ["ro\u0161im", 1392, 90], + ["acom", -1, 124], + ["ecom", -1, 125], + ["ucom", -1, 126], + ["gom", -1, 20], + ["logom", 1397, 19], + ["ugom", 1397, 18], + ["bijom", -1, 32], + ["cijom", -1, 33], + ["dijom", -1, 34], + ["fijom", -1, 40], + ["gijom", -1, 39], + ["lijom", -1, 35], + ["mijom", -1, 37], + ["nijom", -1, 36], + ["ganijom", 1407, 9], + ["manijom", 1407, 6], + ["panijom", 1407, 7], + ["ranijom", 1407, 8], + ["tanijom", 1407, 5], + ["pijom", -1, 41], + ["rijom", -1, 42], + ["sijom", -1, 43], + ["tijom", -1, 44], + ["zijom", -1, 45], + ["\u017Eijom", -1, 38], + ["anjom", -1, 84], + ["enjom", -1, 85], + ["snjom", -1, 122], + ["\u0161njom", -1, 86], + ["kom", -1, 95], + ["skom", 1423, 1], + ["\u0161kom", 1423, 2], + ["alom", -1, 104], + ["ijalom", 1426, 47], + ["nalom", 1426, 46], + ["elom", -1, 83], + ["ilom", -1, 116], + ["ozilom", 1430, 48], + ["olom", -1, 50], + ["ramom", -1, 52], + ["lemom", -1, 51], + ["nom", -1, 13], + ["anom", 1435, 10], + ["inom", 1435, 11], + ["cinom", 1437, 137], + ["aninom", 1437, 10], + ["\u010Dinom", 1437, 89], + ["onom", 1435, 12], + ["arom", -1, 53], + ["drom", -1, 54], + ["erom", -1, 55], + ["orom", -1, 56], + ["basom", -1, 135], + ["gasom", -1, 131], + ["jasom", -1, 129], + ["kasom", -1, 133], + ["nasom", -1, 132], + ["tasom", -1, 130], + ["vasom", -1, 134], + ["esom", -1, 57], + ["isom", -1, 58], + ["osom", -1, 123], + ["atom", -1, 120], + ["ikatom", 1456, 68], + ["latom", 1456, 69], + ["etom", -1, 70], + ["evitom", -1, 92], + ["ovitom", -1, 93], + ["astom", -1, 94], + ["estom", -1, 71], + ["istom", -1, 72], + ["kstom", -1, 73], + ["ostom", -1, 74], + ["avom", -1, 77], + ["evom", -1, 78], + ["ivom", -1, 79], + ["ovom", -1, 80], + ["lovom", 1470, 82], + ["movom", 1470, 81], + ["stvom", -1, 3], + ["\u0161tvom", -1, 4], + ["a\u0107om", -1, 14], + ["e\u0107om", -1, 15], + ["u\u0107om", -1, 16], + ["ba\u0161om", -1, 63], + ["ga\u0161om", -1, 64], + ["ja\u0161om", -1, 61], + ["ka\u0161om", -1, 62], + ["na\u0161om", -1, 60], + ["ta\u0161om", -1, 59], + ["va\u0161om", -1, 65], + ["e\u0161om", -1, 66], + ["i\u0161om", -1, 67], + ["o\u0161om", -1, 91], + ["an", -1, 104], + ["acan", 1488, 128], + ["iran", 1488, 100], + ["uran", 1488, 105], + ["tan", 1488, 113], + ["avan", 1488, 97], + ["evan", 1488, 96], + ["ivan", 1488, 98], + ["uvan", 1488, 99], + ["a\u010Dan", 1488, 102], + ["acen", -1, 124], + ["lucen", -1, 121], + ["a\u010Den", -1, 101], + ["lu\u010Den", -1, 117], + ["anin", -1, 10], + ["ao", -1, 104], + ["acao", 1503, 128], + ["astajao", 1503, 106], + ["istajao", 1503, 107], + ["ostajao", 1503, 108], + ["injao", 1503, 114], + ["irao", 1503, 100], + ["urao", 1503, 105], + ["tao", 1503, 113], + ["astao", 1511, 110], + ["istao", 1511, 111], + ["ostao", 1511, 112], + ["avao", 1503, 97], + ["evao", 1503, 96], + ["ivao", 1503, 98], + ["ovao", 1503, 76], + ["uvao", 1503, 99], + ["a\u010Dao", 1503, 102], + ["go", -1, 20], + ["ugo", 1521, 18], + ["io", -1, 116], + ["acio", 1523, 124], + ["lucio", 1523, 121], + ["lio", 1523, 24], + ["nio", 1523, 103], + ["rario", 1523, 21], + ["sio", 1523, 23], + ["rosio", 1529, 127], + ["jetio", 1523, 118], + ["otio", 1523, 22], + ["a\u010Dio", 1523, 101], + ["lu\u010Dio", 1523, 117], + ["ro\u0161io", 1523, 90], + ["bijo", -1, 32], + ["cijo", -1, 33], + ["dijo", -1, 34], + ["fijo", -1, 40], + ["gijo", -1, 39], + ["lijo", -1, 35], + ["mijo", -1, 37], + ["nijo", -1, 36], + ["pijo", -1, 41], + ["rijo", -1, 42], + ["sijo", -1, 43], + ["tijo", -1, 44], + ["zijo", -1, 45], + ["\u017Eijo", -1, 38], + ["anjo", -1, 84], + ["enjo", -1, 85], + ["snjo", -1, 122], + ["\u0161njo", -1, 86], + ["ko", -1, 95], + ["sko", 1554, 1], + ["\u0161ko", 1554, 2], + ["alo", -1, 104], + ["acalo", 1557, 128], + ["astajalo", 1557, 106], + ["istajalo", 1557, 107], + ["ostajalo", 1557, 108], + ["ijalo", 1557, 47], + ["injalo", 1557, 114], + ["nalo", 1557, 46], + ["iralo", 1557, 100], + ["uralo", 1557, 105], + ["talo", 1557, 113], + ["astalo", 1567, 110], + ["istalo", 1567, 111], + ["ostalo", 1567, 112], + ["avalo", 1557, 97], + ["evalo", 1557, 96], + ["ivalo", 1557, 98], + ["ovalo", 1557, 76], + ["uvalo", 1557, 99], + ["a\u010Dalo", 1557, 102], + ["elo", -1, 83], + ["ilo", -1, 116], + ["acilo", 1578, 124], + ["lucilo", 1578, 121], + ["nilo", 1578, 103], + ["rosilo", 1578, 127], + ["jetilo", 1578, 118], + ["a\u010Dilo", 1578, 101], + ["lu\u010Dilo", 1578, 117], + ["ro\u0161ilo", 1578, 90], + ["aslo", -1, 115], + ["nulo", -1, 13], + ["amo", -1, 104], + ["acamo", 1589, 128], + ["ramo", 1589, 52], + ["iramo", 1591, 100], + ["uramo", 1591, 105], + ["tamo", 1589, 113], + ["avamo", 1589, 97], + ["evamo", 1589, 96], + ["ivamo", 1589, 98], + ["uvamo", 1589, 99], + ["a\u010Damo", 1589, 102], + ["emo", -1, 119], + ["astademo", 1600, 110], + ["istademo", 1600, 111], + ["ostademo", 1600, 112], + ["astajemo", 1600, 106], + ["istajemo", 1600, 107], + ["ostajemo", 1600, 108], + ["ijemo", 1600, 116], + ["injemo", 1600, 114], + ["ujemo", 1600, 25], + ["lucujemo", 1609, 121], + ["irujemo", 1609, 100], + ["lu\u010Dujemo", 1609, 117], + ["lemo", 1600, 51], + ["nemo", 1600, 13], + ["astanemo", 1614, 110], + ["istanemo", 1614, 111], + ["ostanemo", 1614, 112], + ["etemo", 1600, 70], + ["astemo", 1600, 115], + ["imo", -1, 116], + ["acimo", 1620, 124], + ["lucimo", 1620, 121], + ["nimo", 1620, 13], + ["astanimo", 1623, 110], + ["istanimo", 1623, 111], + ["ostanimo", 1623, 112], + ["rosimo", 1620, 127], + ["etimo", 1620, 70], + ["jetimo", 1628, 118], + ["astimo", 1620, 115], + ["a\u010Dimo", 1620, 101], + ["lu\u010Dimo", 1620, 117], + ["ro\u0161imo", 1620, 90], + ["ajmo", -1, 104], + ["urajmo", 1634, 105], + ["tajmo", 1634, 113], + ["astajmo", 1636, 106], + ["istajmo", 1636, 107], + ["ostajmo", 1636, 108], + ["avajmo", 1634, 97], + ["evajmo", 1634, 96], + ["ivajmo", 1634, 98], + ["uvajmo", 1634, 99], + ["ijmo", -1, 116], + ["ujmo", -1, 25], + ["lucujmo", 1645, 121], + ["irujmo", 1645, 100], + ["lu\u010Dujmo", 1645, 117], + ["asmo", -1, 104], + ["acasmo", 1649, 128], + ["astajasmo", 1649, 106], + ["istajasmo", 1649, 107], + ["ostajasmo", 1649, 108], + ["injasmo", 1649, 114], + ["irasmo", 1649, 100], + ["urasmo", 1649, 105], + ["tasmo", 1649, 113], + ["avasmo", 1649, 97], + ["evasmo", 1649, 96], + ["ivasmo", 1649, 98], + ["ovasmo", 1649, 76], + ["uvasmo", 1649, 99], + ["a\u010Dasmo", 1649, 102], + ["ismo", -1, 116], + ["acismo", 1664, 124], + ["lucismo", 1664, 121], + ["nismo", 1664, 103], + ["rosismo", 1664, 127], + ["jetismo", 1664, 118], + ["a\u010Dismo", 1664, 101], + ["lu\u010Dismo", 1664, 117], + ["ro\u0161ismo", 1664, 90], + ["astadosmo", -1, 110], + ["istadosmo", -1, 111], + ["ostadosmo", -1, 112], + ["nusmo", -1, 13], + ["no", -1, 13], + ["ano", 1677, 104], + ["acano", 1678, 128], + ["urano", 1678, 105], + ["tano", 1678, 113], + ["avano", 1678, 97], + ["evano", 1678, 96], + ["ivano", 1678, 98], + ["uvano", 1678, 99], + ["a\u010Dano", 1678, 102], + ["aceno", 1677, 124], + ["luceno", 1677, 121], + ["a\u010Deno", 1677, 101], + ["lu\u010Deno", 1677, 117], + ["ino", 1677, 11], + ["cino", 1691, 137], + ["\u010Dino", 1691, 89], + ["ato", -1, 120], + ["ikato", 1694, 68], + ["lato", 1694, 69], + ["eto", -1, 70], + ["evito", -1, 92], + ["ovito", -1, 93], + ["asto", -1, 94], + ["esto", -1, 71], + ["isto", -1, 72], + ["ksto", -1, 73], + ["osto", -1, 74], + ["nuto", -1, 13], + ["nuo", -1, 13], + ["avo", -1, 77], + ["evo", -1, 78], + ["ivo", -1, 79], + ["ovo", -1, 80], + ["stvo", -1, 3], + ["\u0161tvo", -1, 4], + ["as", -1, 161], + ["acas", 1713, 128], + ["iras", 1713, 155], + ["uras", 1713, 156], + ["tas", 1713, 160], + ["avas", 1713, 144], + ["evas", 1713, 145], + ["ivas", 1713, 146], + ["uvas", 1713, 147], + ["es", -1, 163], + ["astades", 1722, 141], + ["istades", 1722, 142], + ["ostades", 1722, 143], + ["astajes", 1722, 138], + ["istajes", 1722, 139], + ["ostajes", 1722, 140], + ["ijes", 1722, 162], + ["injes", 1722, 150], + ["ujes", 1722, 157], + ["lucujes", 1731, 121], + ["irujes", 1731, 155], + ["nes", 1722, 164], + ["astanes", 1734, 141], + ["istanes", 1734, 142], + ["ostanes", 1734, 143], + ["etes", 1722, 153], + ["astes", 1722, 136], + ["is", -1, 162], + ["acis", 1740, 124], + ["lucis", 1740, 121], + ["nis", 1740, 158], + ["rosis", 1740, 127], + ["jetis", 1740, 149], + ["at", -1, 104], + ["acat", 1746, 128], + ["astajat", 1746, 106], + ["istajat", 1746, 107], + ["ostajat", 1746, 108], + ["injat", 1746, 114], + ["irat", 1746, 100], + ["urat", 1746, 105], + ["tat", 1746, 113], + ["astat", 1754, 110], + ["istat", 1754, 111], + ["ostat", 1754, 112], + ["avat", 1746, 97], + ["evat", 1746, 96], + ["ivat", 1746, 98], + ["irivat", 1760, 100], + ["ovat", 1746, 76], + ["uvat", 1746, 99], + ["a\u010Dat", 1746, 102], + ["it", -1, 116], + ["acit", 1765, 124], + ["lucit", 1765, 121], + ["rosit", 1765, 127], + ["jetit", 1765, 118], + ["a\u010Dit", 1765, 101], + ["lu\u010Dit", 1765, 117], + ["ro\u0161it", 1765, 90], + ["nut", -1, 13], + ["astadu", -1, 110], + ["istadu", -1, 111], + ["ostadu", -1, 112], + ["gu", -1, 20], + ["logu", 1777, 19], + ["ugu", 1777, 18], + ["ahu", -1, 104], + ["acahu", 1780, 128], + ["astajahu", 1780, 106], + ["istajahu", 1780, 107], + ["ostajahu", 1780, 108], + ["injahu", 1780, 114], + ["irahu", 1780, 100], + ["urahu", 1780, 105], + ["avahu", 1780, 97], + ["evahu", 1780, 96], + ["ivahu", 1780, 98], + ["ovahu", 1780, 76], + ["uvahu", 1780, 99], + ["a\u010Dahu", 1780, 102], + ["aju", -1, 104], + ["caju", 1794, 26], + ["acaju", 1795, 128], + ["laju", 1794, 30], + ["raju", 1794, 31], + ["iraju", 1798, 100], + ["uraju", 1798, 105], + ["taju", 1794, 113], + ["astaju", 1801, 106], + ["istaju", 1801, 107], + ["ostaju", 1801, 108], + ["avaju", 1794, 97], + ["evaju", 1794, 96], + ["ivaju", 1794, 98], + ["uvaju", 1794, 99], + ["\u0107aju", 1794, 28], + ["\u010Daju", 1794, 27], + ["a\u010Daju", 1810, 102], + ["\u0111aju", 1794, 29], + ["iju", -1, 116], + ["biju", 1813, 32], + ["ciju", 1813, 33], + ["diju", 1813, 34], + ["fiju", 1813, 40], + ["giju", 1813, 39], + ["anjiju", 1813, 84], + ["enjiju", 1813, 85], + ["snjiju", 1813, 122], + ["\u0161njiju", 1813, 86], + ["kiju", 1813, 95], + ["liju", 1813, 24], + ["eliju", 1824, 83], + ["miju", 1813, 37], + ["niju", 1813, 13], + ["ganiju", 1827, 9], + ["maniju", 1827, 6], + ["paniju", 1827, 7], + ["raniju", 1827, 8], + ["taniju", 1827, 5], + ["piju", 1813, 41], + ["riju", 1813, 42], + ["rariju", 1834, 21], + ["siju", 1813, 23], + ["osiju", 1836, 123], + ["tiju", 1813, 44], + ["atiju", 1838, 120], + ["otiju", 1838, 22], + ["aviju", 1813, 77], + ["eviju", 1813, 78], + ["iviju", 1813, 79], + ["oviju", 1813, 80], + ["ziju", 1813, 45], + ["o\u0161iju", 1813, 91], + ["\u017Eiju", 1813, 38], + ["anju", -1, 84], + ["enju", -1, 85], + ["snju", -1, 122], + ["\u0161nju", -1, 86], + ["uju", -1, 25], + ["lucuju", 1852, 121], + ["iruju", 1852, 100], + ["lu\u010Duju", 1852, 117], + ["ku", -1, 95], + ["sku", 1856, 1], + ["\u0161ku", 1856, 2], + ["alu", -1, 104], + ["ijalu", 1859, 47], + ["nalu", 1859, 46], + ["elu", -1, 83], + ["ilu", -1, 116], + ["ozilu", 1863, 48], + ["olu", -1, 50], + ["ramu", -1, 52], + ["acemu", -1, 124], + ["ecemu", -1, 125], + ["ucemu", -1, 126], + ["anjijemu", -1, 84], + ["enjijemu", -1, 85], + ["snjijemu", -1, 122], + ["\u0161njijemu", -1, 86], + ["kijemu", -1, 95], + ["skijemu", 1874, 1], + ["\u0161kijemu", 1874, 2], + ["elijemu", -1, 83], + ["nijemu", -1, 13], + ["osijemu", -1, 123], + ["atijemu", -1, 120], + ["evitijemu", -1, 92], + ["ovitijemu", -1, 93], + ["astijemu", -1, 94], + ["avijemu", -1, 77], + ["evijemu", -1, 78], + ["ivijemu", -1, 79], + ["ovijemu", -1, 80], + ["o\u0161ijemu", -1, 91], + ["anjemu", -1, 84], + ["enjemu", -1, 85], + ["snjemu", -1, 122], + ["\u0161njemu", -1, 86], + ["kemu", -1, 95], + ["skemu", 1893, 1], + ["\u0161kemu", 1893, 2], + ["lemu", -1, 51], + ["elemu", 1896, 83], + ["nemu", -1, 13], + ["anemu", 1898, 10], + ["enemu", 1898, 87], + ["snemu", 1898, 159], + ["\u0161nemu", 1898, 88], + ["osemu", -1, 123], + ["atemu", -1, 120], + ["evitemu", -1, 92], + ["ovitemu", -1, 93], + ["astemu", -1, 94], + ["avemu", -1, 77], + ["evemu", -1, 78], + ["ivemu", -1, 79], + ["ovemu", -1, 80], + ["a\u0107emu", -1, 14], + ["e\u0107emu", -1, 15], + ["u\u0107emu", -1, 16], + ["o\u0161emu", -1, 91], + ["acomu", -1, 124], + ["ecomu", -1, 125], + ["ucomu", -1, 126], + ["anjomu", -1, 84], + ["enjomu", -1, 85], + ["snjomu", -1, 122], + ["\u0161njomu", -1, 86], + ["komu", -1, 95], + ["skomu", 1923, 1], + ["\u0161komu", 1923, 2], + ["elomu", -1, 83], + ["nomu", -1, 13], + ["cinomu", 1927, 137], + ["\u010Dinomu", 1927, 89], + ["osomu", -1, 123], + ["atomu", -1, 120], + ["evitomu", -1, 92], + ["ovitomu", -1, 93], + ["astomu", -1, 94], + ["avomu", -1, 77], + ["evomu", -1, 78], + ["ivomu", -1, 79], + ["ovomu", -1, 80], + ["a\u0107omu", -1, 14], + ["e\u0107omu", -1, 15], + ["u\u0107omu", -1, 16], + ["o\u0161omu", -1, 91], + ["nu", -1, 13], + ["anu", 1943, 10], + ["astanu", 1944, 110], + ["istanu", 1944, 111], + ["ostanu", 1944, 112], + ["inu", 1943, 11], + ["cinu", 1948, 137], + ["aninu", 1948, 10], + ["\u010Dinu", 1948, 89], + ["onu", 1943, 12], + ["aru", -1, 53], + ["dru", -1, 54], + ["eru", -1, 55], + ["oru", -1, 56], + ["basu", -1, 135], + ["gasu", -1, 131], + ["jasu", -1, 129], + ["kasu", -1, 133], + ["nasu", -1, 132], + ["tasu", -1, 130], + ["vasu", -1, 134], + ["esu", -1, 57], + ["isu", -1, 58], + ["osu", -1, 123], + ["atu", -1, 120], + ["ikatu", 1967, 68], + ["latu", 1967, 69], + ["etu", -1, 70], + ["evitu", -1, 92], + ["ovitu", -1, 93], + ["astu", -1, 94], + ["estu", -1, 71], + ["istu", -1, 72], + ["kstu", -1, 73], + ["ostu", -1, 74], + ["i\u0161tu", -1, 75], + ["avu", -1, 77], + ["evu", -1, 78], + ["ivu", -1, 79], + ["ovu", -1, 80], + ["lovu", 1982, 82], + ["movu", 1982, 81], + ["stvu", -1, 3], + ["\u0161tvu", -1, 4], + ["ba\u0161u", -1, 63], + ["ga\u0161u", -1, 64], + ["ja\u0161u", -1, 61], + ["ka\u0161u", -1, 62], + ["na\u0161u", -1, 60], + ["ta\u0161u", -1, 59], + ["va\u0161u", -1, 65], + ["e\u0161u", -1, 66], + ["i\u0161u", -1, 67], + ["o\u0161u", -1, 91], + ["avav", -1, 97], + ["evav", -1, 96], + ["ivav", -1, 98], + ["uvav", -1, 99], + ["kov", -1, 95], + ["a\u0161", -1, 104], + ["ira\u0161", 2002, 100], + ["ura\u0161", 2002, 105], + ["ta\u0161", 2002, 113], + ["ava\u0161", 2002, 97], + ["eva\u0161", 2002, 96], + ["iva\u0161", 2002, 98], + ["uva\u0161", 2002, 99], + ["a\u010Da\u0161", 2002, 102], + ["e\u0161", -1, 119], + ["astade\u0161", 2011, 110], + ["istade\u0161", 2011, 111], + ["ostade\u0161", 2011, 112], + ["astaje\u0161", 2011, 106], + ["istaje\u0161", 2011, 107], + ["ostaje\u0161", 2011, 108], + ["ije\u0161", 2011, 116], + ["inje\u0161", 2011, 114], + ["uje\u0161", 2011, 25], + ["iruje\u0161", 2020, 100], + ["lu\u010Duje\u0161", 2020, 117], + ["ne\u0161", 2011, 13], + ["astane\u0161", 2023, 110], + ["istane\u0161", 2023, 111], + ["ostane\u0161", 2023, 112], + ["ete\u0161", 2011, 70], + ["aste\u0161", 2011, 115], + ["i\u0161", -1, 116], + ["ni\u0161", 2029, 103], + ["jeti\u0161", 2029, 118], + ["a\u010Di\u0161", 2029, 101], + ["lu\u010Di\u0161", 2029, 117], + ["ro\u0161i\u0161", 2029, 90] + ]; + + /** @const */ var a_3 = [ + ["a", -1, 1], + ["oga", 0, 1], + ["ama", 0, 1], + ["ima", 0, 1], + ["ena", 0, 1], + ["e", -1, 1], + ["og", -1, 1], + ["anog", 6, 1], + ["enog", 6, 1], + ["anih", -1, 1], + ["enih", -1, 1], + ["i", -1, 1], + ["ani", 11, 1], + ["eni", 11, 1], + ["anoj", -1, 1], + ["enoj", -1, 1], + ["anim", -1, 1], + ["enim", -1, 1], + ["om", -1, 1], + ["enom", 18, 1], + ["o", -1, 1], + ["ano", 20, 1], + ["eno", 20, 1], + ["ost", -1, 1], + ["u", -1, 1], + ["enu", 24, 1] + ]; + + /** @const */ var /** Array */ g_v = [17, 65, 16]; + + /** @const */ var /** Array */ g_sa = [65, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 128]; + + /** @const */ var /** Array */ g_ca = [119, 95, 23, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 16]; + + /** @const */ var /** Array */ g_rg = [1]; + + var /** number */ I_p1 = 0; + var /** boolean */ B_no_diacritics = false; + + + /** @return {boolean} */ + function r_cyr_to_lat() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + golab2: while(true) + { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + if (among_var == 0) + { + break lab3; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("a")) + { + return false; + } + break; + case 2: + if (!base.slice_from("b")) + { + return false; + } + break; + case 3: + if (!base.slice_from("v")) + { + return false; + } + break; + case 4: + if (!base.slice_from("g")) + { + return false; + } + break; + case 5: + if (!base.slice_from("d")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u0111")) + { + return false; + } + break; + case 7: + if (!base.slice_from("e")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u017E")) + { + return false; + } + break; + case 9: + if (!base.slice_from("z")) + { + return false; + } + break; + case 10: + if (!base.slice_from("i")) + { + return false; + } + break; + case 11: + if (!base.slice_from("j")) + { + return false; + } + break; + case 12: + if (!base.slice_from("k")) + { + return false; + } + break; + case 13: + if (!base.slice_from("l")) + { + return false; + } + break; + case 14: + if (!base.slice_from("lj")) + { + return false; + } + break; + case 15: + if (!base.slice_from("m")) + { + return false; + } + break; + case 16: + if (!base.slice_from("n")) + { + return false; + } + break; + case 17: + if (!base.slice_from("nj")) + { + return false; + } + break; + case 18: + if (!base.slice_from("o")) + { + return false; + } + break; + case 19: + if (!base.slice_from("p")) + { + return false; + } + break; + case 20: + if (!base.slice_from("r")) + { + return false; + } + break; + case 21: + if (!base.slice_from("s")) + { + return false; + } + break; + case 22: + if (!base.slice_from("t")) + { + return false; + } + break; + case 23: + if (!base.slice_from("\u0107")) + { + return false; + } + break; + case 24: + if (!base.slice_from("u")) + { + return false; + } + break; + case 25: + if (!base.slice_from("f")) + { + return false; + } + break; + case 26: + if (!base.slice_from("h")) + { + return false; + } + break; + case 27: + if (!base.slice_from("c")) + { + return false; + } + break; + case 28: + if (!base.slice_from("\u010D")) + { + return false; + } + break; + case 29: + if (!base.slice_from("d\u017E")) + { + return false; + } + break; + case 30: + if (!base.slice_from("\u0161")) + { + return false; + } + break; + } + base.cursor = v_3; + break golab2; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { + break lab1; + } + base.cursor++; + } + continue; + } + base.cursor = v_2; + break; + } + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_prelude() { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + golab2: while(true) + { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + if (!(base.in_grouping(g_ca, 98, 382))) + { + break lab3; + } + base.bra = base.cursor; + if (!(base.eq_s("ije"))) + { + break lab3; + } + base.ket = base.cursor; + if (!(base.in_grouping(g_ca, 98, 382))) + { + break lab3; + } + if (!base.slice_from("e")) + { + return false; + } + base.cursor = v_3; + break golab2; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { + break lab1; + } + base.cursor++; + } + continue; + } + base.cursor = v_2; + break; + } + } + base.cursor = v_1; + /** @const */ var /** number */ v_4 = base.cursor; + lab4: { + while(true) + { + /** @const */ var /** number */ v_5 = base.cursor; + lab5: { + golab6: while(true) + { + /** @const */ var /** number */ v_6 = base.cursor; + lab7: { + if (!(base.in_grouping(g_ca, 98, 382))) + { + break lab7; + } + base.bra = base.cursor; + if (!(base.eq_s("je"))) + { + break lab7; + } + base.ket = base.cursor; + if (!(base.in_grouping(g_ca, 98, 382))) + { + break lab7; + } + if (!base.slice_from("e")) + { + return false; + } + base.cursor = v_6; + break golab6; + } + base.cursor = v_6; + if (base.cursor >= base.limit) + { + break lab5; + } + base.cursor++; + } + continue; + } + base.cursor = v_5; + break; + } + } + base.cursor = v_4; + /** @const */ var /** number */ v_7 = base.cursor; + lab8: { + while(true) + { + /** @const */ var /** number */ v_8 = base.cursor; + lab9: { + golab10: while(true) + { + /** @const */ var /** number */ v_9 = base.cursor; + lab11: { + base.bra = base.cursor; + if (!(base.eq_s("dj"))) + { + break lab11; + } + base.ket = base.cursor; + if (!base.slice_from("\u0111")) + { + return false; + } + base.cursor = v_9; + break golab10; + } + base.cursor = v_9; + if (base.cursor >= base.limit) + { + break lab9; + } + base.cursor++; + } + continue; + } + base.cursor = v_8; + break; + } + } + base.cursor = v_7; + return true; + }; + + /** @return {boolean} */ + function r_mark_regions() { + B_no_diacritics = true; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!base.go_out_grouping(g_sa, 263, 382)) + { + break lab0; + } + base.cursor++; + B_no_diacritics = false; + } + base.cursor = v_1; + I_p1 = base.limit; + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + if (!base.go_out_grouping(g_v, 97, 117)) + { + break lab1; + } + base.cursor++; + I_p1 = base.cursor; + if (I_p1 >= 2) + { + break lab1; + } + if (!base.go_in_grouping(g_v, 97, 117)) + { + break lab1; + } + base.cursor++; + I_p1 = base.cursor; + } + base.cursor = v_2; + /** @const */ var /** number */ v_3 = base.cursor; + lab2: { + golab3: while(true) + { + lab4: { + if (!(base.eq_s("r"))) + { + break lab4; + } + break golab3; + } + if (base.cursor >= base.limit) + { + break lab2; + } + base.cursor++; + } + lab5: { + /** @const */ var /** number */ v_4 = base.cursor; + lab6: { + if (base.cursor < 2) + { + break lab6; + } + break lab5; + } + base.cursor = v_4; + if (!base.go_in_grouping(g_rg, 114, 114)) + { + break lab2; + } + base.cursor++; + } + if ((I_p1 - base.cursor) <= 1) + { + break lab2; + } + I_p1 = base.cursor; + } + base.cursor = v_3; + return true; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_Step_1() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_1); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("loga")) + { + return false; + } + break; + case 2: + if (!base.slice_from("peh")) + { + return false; + } + break; + case 3: + if (!base.slice_from("vojka")) + { + return false; + } + break; + case 4: + if (!base.slice_from("bojka")) + { + return false; + } + break; + case 5: + if (!base.slice_from("jak")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u010Dajni")) + { + return false; + } + break; + case 7: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("cajni")) + { + return false; + } + break; + case 8: + if (!base.slice_from("erni")) + { + return false; + } + break; + case 9: + if (!base.slice_from("larni")) + { + return false; + } + break; + case 10: + if (!base.slice_from("esni")) + { + return false; + } + break; + case 11: + if (!base.slice_from("anjca")) + { + return false; + } + break; + case 12: + if (!base.slice_from("ajca")) + { + return false; + } + break; + case 13: + if (!base.slice_from("ljca")) + { + return false; + } + break; + case 14: + if (!base.slice_from("ejca")) + { + return false; + } + break; + case 15: + if (!base.slice_from("ojca")) + { + return false; + } + break; + case 16: + if (!base.slice_from("ajka")) + { + return false; + } + break; + case 17: + if (!base.slice_from("ojka")) + { + return false; + } + break; + case 18: + if (!base.slice_from("\u0161ca")) + { + return false; + } + break; + case 19: + if (!base.slice_from("ing")) + { + return false; + } + break; + case 20: + if (!base.slice_from("tvenik")) + { + return false; + } + break; + case 21: + if (!base.slice_from("tetika")) + { + return false; + } + break; + case 22: + if (!base.slice_from("nstva")) + { + return false; + } + break; + case 23: + if (!base.slice_from("nik")) + { + return false; + } + break; + case 24: + if (!base.slice_from("tik")) + { + return false; + } + break; + case 25: + if (!base.slice_from("zik")) + { + return false; + } + break; + case 26: + if (!base.slice_from("snik")) + { + return false; + } + break; + case 27: + if (!base.slice_from("kusi")) + { + return false; + } + break; + case 28: + if (!base.slice_from("kusni")) + { + return false; + } + break; + case 29: + if (!base.slice_from("kustva")) + { + return false; + } + break; + case 30: + if (!base.slice_from("du\u0161ni")) + { + return false; + } + break; + case 31: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("dusni")) + { + return false; + } + break; + case 32: + if (!base.slice_from("antni")) + { + return false; + } + break; + case 33: + if (!base.slice_from("bilni")) + { + return false; + } + break; + case 34: + if (!base.slice_from("tilni")) + { + return false; + } + break; + case 35: + if (!base.slice_from("avilni")) + { + return false; + } + break; + case 36: + if (!base.slice_from("silni")) + { + return false; + } + break; + case 37: + if (!base.slice_from("gilni")) + { + return false; + } + break; + case 38: + if (!base.slice_from("rilni")) + { + return false; + } + break; + case 39: + if (!base.slice_from("nilni")) + { + return false; + } + break; + case 40: + if (!base.slice_from("alni")) + { + return false; + } + break; + case 41: + if (!base.slice_from("ozni")) + { + return false; + } + break; + case 42: + if (!base.slice_from("ravi")) + { + return false; + } + break; + case 43: + if (!base.slice_from("stavni")) + { + return false; + } + break; + case 44: + if (!base.slice_from("pravni")) + { + return false; + } + break; + case 45: + if (!base.slice_from("tivni")) + { + return false; + } + break; + case 46: + if (!base.slice_from("sivni")) + { + return false; + } + break; + case 47: + if (!base.slice_from("atni")) + { + return false; + } + break; + case 48: + if (!base.slice_from("enta")) + { + return false; + } + break; + case 49: + if (!base.slice_from("tetni")) + { + return false; + } + break; + case 50: + if (!base.slice_from("pletni")) + { + return false; + } + break; + case 51: + if (!base.slice_from("\u0161avi")) + { + return false; + } + break; + case 52: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("savi")) + { + return false; + } + break; + case 53: + if (!base.slice_from("anta")) + { + return false; + } + break; + case 54: + if (!base.slice_from("a\u010Dka")) + { + return false; + } + break; + case 55: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("acka")) + { + return false; + } + break; + case 56: + if (!base.slice_from("u\u0161ka")) + { + return false; + } + break; + case 57: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("uska")) + { + return false; + } + break; + case 58: + if (!base.slice_from("atka")) + { + return false; + } + break; + case 59: + if (!base.slice_from("etka")) + { + return false; + } + break; + case 60: + if (!base.slice_from("itka")) + { + return false; + } + break; + case 61: + if (!base.slice_from("otka")) + { + return false; + } + break; + case 62: + if (!base.slice_from("utka")) + { + return false; + } + break; + case 63: + if (!base.slice_from("eskna")) + { + return false; + } + break; + case 64: + if (!base.slice_from("ti\u010Dni")) + { + return false; + } + break; + case 65: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ticni")) + { + return false; + } + break; + case 66: + if (!base.slice_from("ojska")) + { + return false; + } + break; + case 67: + if (!base.slice_from("esma")) + { + return false; + } + break; + case 68: + if (!base.slice_from("metra")) + { + return false; + } + break; + case 69: + if (!base.slice_from("centra")) + { + return false; + } + break; + case 70: + if (!base.slice_from("istra")) + { + return false; + } + break; + case 71: + if (!base.slice_from("osti")) + { + return false; + } + break; + case 72: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("osti")) + { + return false; + } + break; + case 73: + if (!base.slice_from("dba")) + { + return false; + } + break; + case 74: + if (!base.slice_from("\u010Dka")) + { + return false; + } + break; + case 75: + if (!base.slice_from("mca")) + { + return false; + } + break; + case 76: + if (!base.slice_from("nca")) + { + return false; + } + break; + case 77: + if (!base.slice_from("voljni")) + { + return false; + } + break; + case 78: + if (!base.slice_from("anki")) + { + return false; + } + break; + case 79: + if (!base.slice_from("vca")) + { + return false; + } + break; + case 80: + if (!base.slice_from("sca")) + { + return false; + } + break; + case 81: + if (!base.slice_from("rca")) + { + return false; + } + break; + case 82: + if (!base.slice_from("alca")) + { + return false; + } + break; + case 83: + if (!base.slice_from("elca")) + { + return false; + } + break; + case 84: + if (!base.slice_from("olca")) + { + return false; + } + break; + case 85: + if (!base.slice_from("njca")) + { + return false; + } + break; + case 86: + if (!base.slice_from("ekta")) + { + return false; + } + break; + case 87: + if (!base.slice_from("izma")) + { + return false; + } + break; + case 88: + if (!base.slice_from("jebi")) + { + return false; + } + break; + case 89: + if (!base.slice_from("baci")) + { + return false; + } + break; + case 90: + if (!base.slice_from("a\u0161ni")) + { + return false; + } + break; + case 91: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("asni")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_2() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("sk")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u0161k")) + { + return false; + } + break; + case 3: + if (!base.slice_from("stv")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u0161tv")) + { + return false; + } + break; + case 5: + if (!base.slice_from("tanij")) + { + return false; + } + break; + case 6: + if (!base.slice_from("manij")) + { + return false; + } + break; + case 7: + if (!base.slice_from("panij")) + { + return false; + } + break; + case 8: + if (!base.slice_from("ranij")) + { + return false; + } + break; + case 9: + if (!base.slice_from("ganij")) + { + return false; + } + break; + case 10: + if (!base.slice_from("an")) + { + return false; + } + break; + case 11: + if (!base.slice_from("in")) + { + return false; + } + break; + case 12: + if (!base.slice_from("on")) + { + return false; + } + break; + case 13: + if (!base.slice_from("n")) + { + return false; + } + break; + case 14: + if (!base.slice_from("a\u0107")) + { + return false; + } + break; + case 15: + if (!base.slice_from("e\u0107")) + { + return false; + } + break; + case 16: + if (!base.slice_from("u\u0107")) + { + return false; + } + break; + case 17: + if (!base.slice_from("ugov")) + { + return false; + } + break; + case 18: + if (!base.slice_from("ug")) + { + return false; + } + break; + case 19: + if (!base.slice_from("log")) + { + return false; + } + break; + case 20: + if (!base.slice_from("g")) + { + return false; + } + break; + case 21: + if (!base.slice_from("rari")) + { + return false; + } + break; + case 22: + if (!base.slice_from("oti")) + { + return false; + } + break; + case 23: + if (!base.slice_from("si")) + { + return false; + } + break; + case 24: + if (!base.slice_from("li")) + { + return false; + } + break; + case 25: + if (!base.slice_from("uj")) + { + return false; + } + break; + case 26: + if (!base.slice_from("caj")) + { + return false; + } + break; + case 27: + if (!base.slice_from("\u010Daj")) + { + return false; + } + break; + case 28: + if (!base.slice_from("\u0107aj")) + { + return false; + } + break; + case 29: + if (!base.slice_from("\u0111aj")) + { + return false; + } + break; + case 30: + if (!base.slice_from("laj")) + { + return false; + } + break; + case 31: + if (!base.slice_from("raj")) + { + return false; + } + break; + case 32: + if (!base.slice_from("bij")) + { + return false; + } + break; + case 33: + if (!base.slice_from("cij")) + { + return false; + } + break; + case 34: + if (!base.slice_from("dij")) + { + return false; + } + break; + case 35: + if (!base.slice_from("lij")) + { + return false; + } + break; + case 36: + if (!base.slice_from("nij")) + { + return false; + } + break; + case 37: + if (!base.slice_from("mij")) + { + return false; + } + break; + case 38: + if (!base.slice_from("\u017Eij")) + { + return false; + } + break; + case 39: + if (!base.slice_from("gij")) + { + return false; + } + break; + case 40: + if (!base.slice_from("fij")) + { + return false; + } + break; + case 41: + if (!base.slice_from("pij")) + { + return false; + } + break; + case 42: + if (!base.slice_from("rij")) + { + return false; + } + break; + case 43: + if (!base.slice_from("sij")) + { + return false; + } + break; + case 44: + if (!base.slice_from("tij")) + { + return false; + } + break; + case 45: + if (!base.slice_from("zij")) + { + return false; + } + break; + case 46: + if (!base.slice_from("nal")) + { + return false; + } + break; + case 47: + if (!base.slice_from("ijal")) + { + return false; + } + break; + case 48: + if (!base.slice_from("ozil")) + { + return false; + } + break; + case 49: + if (!base.slice_from("olov")) + { + return false; + } + break; + case 50: + if (!base.slice_from("ol")) + { + return false; + } + break; + case 51: + if (!base.slice_from("lem")) + { + return false; + } + break; + case 52: + if (!base.slice_from("ram")) + { + return false; + } + break; + case 53: + if (!base.slice_from("ar")) + { + return false; + } + break; + case 54: + if (!base.slice_from("dr")) + { + return false; + } + break; + case 55: + if (!base.slice_from("er")) + { + return false; + } + break; + case 56: + if (!base.slice_from("or")) + { + return false; + } + break; + case 57: + if (!base.slice_from("es")) + { + return false; + } + break; + case 58: + if (!base.slice_from("is")) + { + return false; + } + break; + case 59: + if (!base.slice_from("ta\u0161")) + { + return false; + } + break; + case 60: + if (!base.slice_from("na\u0161")) + { + return false; + } + break; + case 61: + if (!base.slice_from("ja\u0161")) + { + return false; + } + break; + case 62: + if (!base.slice_from("ka\u0161")) + { + return false; + } + break; + case 63: + if (!base.slice_from("ba\u0161")) + { + return false; + } + break; + case 64: + if (!base.slice_from("ga\u0161")) + { + return false; + } + break; + case 65: + if (!base.slice_from("va\u0161")) + { + return false; + } + break; + case 66: + if (!base.slice_from("e\u0161")) + { + return false; + } + break; + case 67: + if (!base.slice_from("i\u0161")) + { + return false; + } + break; + case 68: + if (!base.slice_from("ikat")) + { + return false; + } + break; + case 69: + if (!base.slice_from("lat")) + { + return false; + } + break; + case 70: + if (!base.slice_from("et")) + { + return false; + } + break; + case 71: + if (!base.slice_from("est")) + { + return false; + } + break; + case 72: + if (!base.slice_from("ist")) + { + return false; + } + break; + case 73: + if (!base.slice_from("kst")) + { + return false; + } + break; + case 74: + if (!base.slice_from("ost")) + { + return false; + } + break; + case 75: + if (!base.slice_from("i\u0161t")) + { + return false; + } + break; + case 76: + if (!base.slice_from("ova")) + { + return false; + } + break; + case 77: + if (!base.slice_from("av")) + { + return false; + } + break; + case 78: + if (!base.slice_from("ev")) + { + return false; + } + break; + case 79: + if (!base.slice_from("iv")) + { + return false; + } + break; + case 80: + if (!base.slice_from("ov")) + { + return false; + } + break; + case 81: + if (!base.slice_from("mov")) + { + return false; + } + break; + case 82: + if (!base.slice_from("lov")) + { + return false; + } + break; + case 83: + if (!base.slice_from("el")) + { + return false; + } + break; + case 84: + if (!base.slice_from("anj")) + { + return false; + } + break; + case 85: + if (!base.slice_from("enj")) + { + return false; + } + break; + case 86: + if (!base.slice_from("\u0161nj")) + { + return false; + } + break; + case 87: + if (!base.slice_from("en")) + { + return false; + } + break; + case 88: + if (!base.slice_from("\u0161n")) + { + return false; + } + break; + case 89: + if (!base.slice_from("\u010Din")) + { + return false; + } + break; + case 90: + if (!base.slice_from("ro\u0161i")) + { + return false; + } + break; + case 91: + if (!base.slice_from("o\u0161")) + { + return false; + } + break; + case 92: + if (!base.slice_from("evit")) + { + return false; + } + break; + case 93: + if (!base.slice_from("ovit")) + { + return false; + } + break; + case 94: + if (!base.slice_from("ast")) + { + return false; + } + break; + case 95: + if (!base.slice_from("k")) + { + return false; + } + break; + case 96: + if (!base.slice_from("eva")) + { + return false; + } + break; + case 97: + if (!base.slice_from("ava")) + { + return false; + } + break; + case 98: + if (!base.slice_from("iva")) + { + return false; + } + break; + case 99: + if (!base.slice_from("uva")) + { + return false; + } + break; + case 100: + if (!base.slice_from("ir")) + { + return false; + } + break; + case 101: + if (!base.slice_from("a\u010D")) + { + return false; + } + break; + case 102: + if (!base.slice_from("a\u010Da")) + { + return false; + } + break; + case 103: + if (!base.slice_from("ni")) + { + return false; + } + break; + case 104: + if (!base.slice_from("a")) + { + return false; + } + break; + case 105: + if (!base.slice_from("ur")) + { + return false; + } + break; + case 106: + if (!base.slice_from("astaj")) + { + return false; + } + break; + case 107: + if (!base.slice_from("istaj")) + { + return false; + } + break; + case 108: + if (!base.slice_from("ostaj")) + { + return false; + } + break; + case 109: + if (!base.slice_from("aj")) + { + return false; + } + break; + case 110: + if (!base.slice_from("asta")) + { + return false; + } + break; + case 111: + if (!base.slice_from("ista")) + { + return false; + } + break; + case 112: + if (!base.slice_from("osta")) + { + return false; + } + break; + case 113: + if (!base.slice_from("ta")) + { + return false; + } + break; + case 114: + if (!base.slice_from("inj")) + { + return false; + } + break; + case 115: + if (!base.slice_from("as")) + { + return false; + } + break; + case 116: + if (!base.slice_from("i")) + { + return false; + } + break; + case 117: + if (!base.slice_from("lu\u010D")) + { + return false; + } + break; + case 118: + if (!base.slice_from("jeti")) + { + return false; + } + break; + case 119: + if (!base.slice_from("e")) + { + return false; + } + break; + case 120: + if (!base.slice_from("at")) + { + return false; + } + break; + case 121: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("luc")) + { + return false; + } + break; + case 122: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("snj")) + { + return false; + } + break; + case 123: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("os")) + { + return false; + } + break; + case 124: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ac")) + { + return false; + } + break; + case 125: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ec")) + { + return false; + } + break; + case 126: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("uc")) + { + return false; + } + break; + case 127: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("rosi")) + { + return false; + } + break; + case 128: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("aca")) + { + return false; + } + break; + case 129: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("jas")) + { + return false; + } + break; + case 130: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("tas")) + { + return false; + } + break; + case 131: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("gas")) + { + return false; + } + break; + case 132: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("nas")) + { + return false; + } + break; + case 133: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("kas")) + { + return false; + } + break; + case 134: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("vas")) + { + return false; + } + break; + case 135: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("bas")) + { + return false; + } + break; + case 136: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("as")) + { + return false; + } + break; + case 137: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("cin")) + { + return false; + } + break; + case 138: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("astaj")) + { + return false; + } + break; + case 139: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("istaj")) + { + return false; + } + break; + case 140: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ostaj")) + { + return false; + } + break; + case 141: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("asta")) + { + return false; + } + break; + case 142: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ista")) + { + return false; + } + break; + case 143: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("osta")) + { + return false; + } + break; + case 144: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ava")) + { + return false; + } + break; + case 145: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("eva")) + { + return false; + } + break; + case 146: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("iva")) + { + return false; + } + break; + case 147: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("uva")) + { + return false; + } + break; + case 148: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ova")) + { + return false; + } + break; + case 149: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("jeti")) + { + return false; + } + break; + case 150: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("inj")) + { + return false; + } + break; + case 151: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ist")) + { + return false; + } + break; + case 152: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("es")) + { + return false; + } + break; + case 153: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("et")) + { + return false; + } + break; + case 154: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("is")) + { + return false; + } + break; + case 155: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ir")) + { + return false; + } + break; + case 156: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ur")) + { + return false; + } + break; + case 157: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("uj")) + { + return false; + } + break; + case 158: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ni")) + { + return false; + } + break; + case 159: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("sn")) + { + return false; + } + break; + case 160: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("ta")) + { + return false; + } + break; + case 161: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("a")) + { + return false; + } + break; + case 162: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("i")) + { + return false; + } + break; + case 163: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("e")) + { + return false; + } + break; + case 164: + if (!B_no_diacritics) + { + return false; + } + if (!base.slice_from("n")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_3() { + base.ket = base.cursor; + if (base.find_among_b(a_3) == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + if (!base.slice_from("")) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + r_cyr_to_lat(); + r_prelude(); + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + r_Step_1(); + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab0: { + lab1: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!r_Step_2()) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_3; + if (!r_Step_3()) + { + break lab0; + } + } + } + base.cursor = base.limit - v_2; + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/spanish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/spanish-stemmer.js index fffd6160b..f800db746 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/spanish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/spanish-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from spanish.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -SpanishStemmer = function() { +var SpanishStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["", -1, 6], ["\u00E1", 0, 1], @@ -77,6 +78,8 @@ SpanishStemmer = function() { ["ante", -1, 2], ["mente", -1, 7], ["amente", 13, 6], + ["acion", -1, 2], + ["ucion", -1, 4], ["aci\u00F3n", -1, 2], ["uci\u00F3n", -1, 4], ["ico", -1, 1], @@ -247,37 +250,27 @@ SpanishStemmer = function() { I_pV = base.limit; I_p1 = base.limit; I_p2 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { lab1: { - var /** number */ v_2 = base.cursor; + /** @const */ var /** number */ v_2 = base.cursor; lab2: { if (!(base.in_grouping(g_v, 97, 252))) { break lab2; } lab3: { - var /** number */ v_3 = base.cursor; + /** @const */ var /** number */ v_3 = base.cursor; lab4: { if (!(base.out_grouping(g_v, 97, 252))) { break lab4; } - golab5: while(true) + if (!base.go_out_grouping(g_v, 97, 252)) { - lab6: { - if (!(base.in_grouping(g_v, 97, 252))) - { - break lab6; - } - break golab5; - } - if (base.cursor >= base.limit) - { - break lab4; - } - base.cursor++; + break lab4; } + base.cursor++; break lab3; } base.cursor = v_3; @@ -285,21 +278,11 @@ SpanishStemmer = function() { { break lab2; } - golab7: while(true) + if (!base.go_in_grouping(g_v, 97, 252)) { - lab8: { - if (!(base.out_grouping(g_v, 97, 252))) - { - break lab8; - } - break golab7; - } - if (base.cursor >= base.limit) - { - break lab2; - } - base.cursor++; + break lab2; } + base.cursor++; } break lab1; } @@ -308,31 +291,21 @@ SpanishStemmer = function() { { break lab0; } - lab9: { - var /** number */ v_6 = base.cursor; - lab10: { + lab5: { + /** @const */ var /** number */ v_4 = base.cursor; + lab6: { if (!(base.out_grouping(g_v, 97, 252))) { - break lab10; + break lab6; } - golab11: while(true) + if (!base.go_out_grouping(g_v, 97, 252)) { - lab12: { - if (!(base.in_grouping(g_v, 97, 252))) - { - break lab12; - } - break golab11; - } - if (base.cursor >= base.limit) - { - break lab10; - } - base.cursor++; + break lab6; } - break lab9; + base.cursor++; + break lab5; } - base.cursor = v_6; + base.cursor = v_4; if (!(base.in_grouping(g_v, 97, 252))) { break lab0; @@ -347,72 +320,32 @@ SpanishStemmer = function() { I_pV = base.cursor; } base.cursor = v_1; - var /** number */ v_8 = base.cursor; - lab13: { - golab14: while(true) + /** @const */ var /** number */ v_5 = base.cursor; + lab7: { + if (!base.go_out_grouping(g_v, 97, 252)) { - lab15: { - if (!(base.in_grouping(g_v, 97, 252))) - { - break lab15; - } - break golab14; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } - golab16: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 252)) { - lab17: { - if (!(base.out_grouping(g_v, 97, 252))) - { - break lab17; - } - break golab16; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } + base.cursor++; I_p1 = base.cursor; - golab18: while(true) + if (!base.go_out_grouping(g_v, 97, 252)) { - lab19: { - if (!(base.in_grouping(g_v, 97, 252))) - { - break lab19; - } - break golab18; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } - golab20: while(true) + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 252)) { - lab21: { - if (!(base.out_grouping(g_v, 97, 252))) - { - break lab21; - } - break golab20; - } - if (base.cursor >= base.limit) - { - break lab13; - } - base.cursor++; + break lab7; } + base.cursor++; I_p2 = base.cursor; } - base.cursor = v_8; + base.cursor = v_5; return true; }; @@ -421,14 +354,10 @@ SpanishStemmer = function() { var /** number */ among_var; while(true) { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; lab0: { base.bra = base.cursor; among_var = base.find_among(a_0); - if (among_var == 0) - { - break lab0; - } base.ket = base.cursor; switch (among_var) { case 1: @@ -479,29 +408,17 @@ SpanishStemmer = function() { /** @return {boolean} */ function r_RV() { - if (!(I_pV <= base.cursor)) - { - return false; - } - return true; + return I_pV <= base.cursor; }; /** @return {boolean} */ function r_R1() { - if (!(I_p1 <= base.cursor)) - { - return false; - } - return true; + return I_p1 <= base.cursor; }; /** @return {boolean} */ function r_R2() { - if (!(I_p2 <= base.cursor)) - { - return false; - } - return true; + return I_p2 <= base.cursor; }; /** @return {boolean} */ @@ -608,7 +525,7 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.eq_s_b("ic"))) @@ -667,7 +584,7 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab1: { base.ket = base.cursor; among_var = base.find_among_b(a_3); @@ -717,7 +634,7 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { base.ket = base.cursor; if (base.find_among_b(a_4) == 0) @@ -746,7 +663,7 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab3: { base.ket = base.cursor; if (base.find_among_b(a_5) == 0) @@ -775,7 +692,7 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab4: { base.ket = base.cursor; if (!(base.eq_s_b("at"))) @@ -805,16 +722,16 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; if (base.find_among_b(a_7) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; if (!(base.eq_s_b("u"))) { return false; @@ -833,33 +750,33 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_pV; base.ket = base.cursor; among_var = base.find_among_b(a_8); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("u"))) { - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; break lab0; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; if (!(base.eq_s_b("g"))) { - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; break lab0; } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; } base.bra = base.cursor; if (!base.slice_del()) @@ -907,7 +824,7 @@ SpanishStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { base.ket = base.cursor; if (!(base.eq_s_b("u"))) @@ -916,7 +833,7 @@ SpanishStemmer = function() { break lab0; } base.bra = base.cursor; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.eq_s_b("g"))) { base.cursor = base.limit - v_1; @@ -941,13 +858,13 @@ SpanishStemmer = function() { this.stem = /** @return {boolean} */ function() { r_mark_regions(); base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; r_attached_pronoun(); - base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab0: { lab1: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { if (!r_standard_suffix()) { @@ -955,7 +872,7 @@ SpanishStemmer = function() { } break lab1; } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; lab3: { if (!r_y_verb_suffix()) { @@ -963,21 +880,21 @@ SpanishStemmer = function() { } break lab1; } - base.cursor = base.limit - v_4; + base.cursor = base.limit - v_3; if (!r_verb_suffix()) { break lab0; } } } - base.cursor = base.limit - v_3; - var /** number */ v_5 = base.limit - base.cursor; + base.cursor = base.limit - v_2; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; r_residual_suffix(); - base.cursor = base.limit - v_5; + base.cursor = base.limit - v_4; base.cursor = base.limit_backward; - var /** number */ v_6 = base.cursor; + /** @const */ var /** number */ v_5 = base.cursor; r_postlude(); - base.cursor = v_6; + base.cursor = v_5; return true; }; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/swedish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/swedish-stemmer.js index 4d7d49fc0..bf1a64268 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/swedish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/swedish-stemmer.js @@ -1,9 +1,34 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from swedish.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -SwedishStemmer = function() { +var SwedishStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ + ["fab", -1, -1], + ["h", -1, -1], + ["pak", -1, -1], + ["rak", -1, -1], + ["stak", -1, -1], + ["kom", -1, -1], + ["iet", -1, -1], + ["cit", -1, -1], + ["dit", -1, -1], + ["alit", -1, -1], + ["ilit", -1, -1], + ["mit", -1, -1], + ["nit", -1, -1], + ["pit", -1, -1], + ["rit", -1, -1], + ["sit", -1, -1], + ["tit", -1, -1], + ["uit", -1, -1], + ["ivit", -1, -1], + ["kvit", -1, -1], + ["xit", -1, -1] + ]; + + /** @const */ var a_1 = [ ["a", -1, 1], ["arna", 0, 1], ["erna", 0, 1], @@ -38,12 +63,13 @@ SwedishStemmer = function() { ["hetens", 29, 1], ["erns", 21, 1], ["at", -1, 1], - ["andet", -1, 1], - ["het", -1, 1], + ["et", -1, 3], + ["andet", 34, 1], + ["het", 34, 1], ["ast", -1, 1] ]; - /** @const */ var a_1 = [ + /** @const */ var a_2 = [ ["dd", -1, -1], ["gd", -1, -1], ["nn", -1, -1], @@ -53,18 +79,20 @@ SwedishStemmer = function() { ["tt", -1, -1] ]; - /** @const */ var a_2 = [ + /** @const */ var a_3 = [ ["ig", -1, 1], ["lig", 0, 1], ["els", -1, 1], ["fullt", -1, 3], - ["l\u00F6st", -1, 2] + ["\u00F6st", -1, 2] ]; /** @const */ var /** Array */ g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 32]; /** @const */ var /** Array */ g_s_ending = [119, 127, 149]; + /** @const */ var /** Array */ g_ost_ending = [173, 58]; + var /** number */ I_x = 0; var /** number */ I_p1 = 0; @@ -72,9 +100,9 @@ SwedishStemmer = function() { /** @return {boolean} */ function r_mark_regions() { I_p1 = base.limit; - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; { - var /** number */ c1 = base.cursor + 3; + /** @const */ var /** number */ c1 = base.cursor + 3; if (c1 > base.limit) { return false; @@ -83,46 +111,56 @@ SwedishStemmer = function() { } I_x = base.cursor; base.cursor = v_1; - golab0: while(true) + if (!base.go_out_grouping(g_v, 97, 246)) { - var /** number */ v_2 = base.cursor; - lab1: { - if (!(base.in_grouping(g_v, 97, 246))) - { - break lab1; - } - base.cursor = v_2; - break golab0; + return false; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 246)) + { + return false; + } + base.cursor++; + I_p1 = base.cursor; + lab0: { + if (I_p1 >= I_x) + { + break lab0; } - base.cursor = v_2; - if (base.cursor >= base.limit) + I_p1 = I_x; + } + return true; + }; + + /** @return {boolean} */ + function r_et_condition() { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (!(base.out_grouping_b(g_v, 97, 246))) + { + return false; + } + if (!(base.in_grouping_b(g_v, 97, 246))) + { + return false; + } + lab0: { + if (base.cursor > base.limit_backward) { - return false; + break lab0; } - base.cursor++; + return false; } - golab2: while(true) + base.cursor = base.limit - v_1; { - lab3: { - if (!(base.out_grouping(g_v, 97, 246))) + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (base.find_among_b(a_0) == 0) { - break lab3; + break lab1; } - break golab2; - } - if (base.cursor >= base.limit) - { return false; } - base.cursor++; - } - I_p1 = base.cursor; - lab4: { - if (!(I_p1 < I_x)) - { - break lab4; - } - I_p1 = I_x; + base.cursor = base.limit - v_2; } return true; }; @@ -134,17 +172,17 @@ SwedishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; - among_var = base.find_among_b(a_0); + among_var = base.find_among_b(a_1); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; - base.limit_backward = v_2; + base.limit_backward = v_1; switch (among_var) { case 1: if (!base.slice_del()) @@ -153,7 +191,33 @@ SwedishStemmer = function() { } break; case 2: - if (!(base.in_grouping_b(g_s_ending, 98, 121))) + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("et"))) + { + break lab1; + } + if (!r_et_condition()) + { + break lab1; + } + base.bra = base.cursor; + break lab0; + } + base.cursor = base.limit - v_2; + if (!(base.in_grouping_b(g_s_ending, 98, 121))) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (!r_et_condition()) { return false; } @@ -172,19 +236,19 @@ SwedishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; - var /** number */ v_3 = base.limit - base.cursor; - if (base.find_among_b(a_1) == 0) + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + if (base.find_among_b(a_2) == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; base.ket = base.cursor; if (base.cursor <= base.limit_backward) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.cursor--; @@ -193,7 +257,7 @@ SwedishStemmer = function() { { return false; } - base.limit_backward = v_2; + base.limit_backward = v_1; return true; }; @@ -204,16 +268,17 @@ SwedishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit_backward; + /** @const */ var /** number */ v_1 = base.limit_backward; base.limit_backward = I_p1; base.ket = base.cursor; - among_var = base.find_among_b(a_2); + among_var = base.find_among_b(a_3); if (among_var == 0) { - base.limit_backward = v_2; + base.limit_backward = v_1; return false; } base.bra = base.cursor; + base.limit_backward = v_1; switch (among_var) { case 1: if (!base.slice_del()) @@ -222,7 +287,11 @@ SwedishStemmer = function() { } break; case 2: - if (!base.slice_from("l\u00F6s")) + if (!(base.in_grouping_b(g_ost_ending, 105, 118))) + { + return false; + } + if (!base.slice_from("\u00F6s")) { return false; } @@ -234,22 +303,21 @@ SwedishStemmer = function() { } break; } - base.limit_backward = v_2; return true; }; this.stem = /** @return {boolean} */ function() { - var /** number */ v_1 = base.cursor; + /** @const */ var /** number */ v_1 = base.cursor; r_mark_regions(); base.cursor = v_1; base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_main_suffix(); base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_consonant_pair(); base.cursor = base.limit - v_3; - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; r_other_suffix(); base.cursor = base.limit - v_4; base.cursor = base.limit_backward; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/tamil-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/tamil-stemmer.js new file mode 100644 index 000000000..2ae474784 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/tamil-stemmer.js @@ -0,0 +1,1189 @@ +// Generated from tamil.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var TamilStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u0BB5\u0BC1", -1, 3], + ["\u0BB5\u0BC2", -1, 4], + ["\u0BB5\u0BCA", -1, 2], + ["\u0BB5\u0BCB", -1, 1] + ]; + + /** @const */ var a_1 = [ + ["\u0B95", -1, -1], + ["\u0B99", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9E", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BA8", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BAE", -1, -1], + ["\u0BAF", -1, -1], + ["\u0BB5", -1, -1] + ]; + + /** @const */ var a_2 = [ + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC8", -1, -1] + ]; + + /** @const */ var a_3 = [ + ["\u0BBE", -1, -1], + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC1", -1, -1], + ["\u0BC2", -1, -1], + ["\u0BC6", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BC8", -1, -1] + ]; + + /** @const */ var a_4 = [ + ["", -1, 2], + ["\u0BC8", 0, 1], + ["\u0BCD", 0, 1] + ]; + + /** @const */ var a_5 = [ + ["\u0BA8\u0BCD\u0BA4", -1, 1], + ["\u0BAF", -1, 1], + ["\u0BB5", -1, 1], + ["\u0BA9\u0BC1", -1, 8], + ["\u0BC1\u0B95\u0BCD", -1, 7], + ["\u0BC1\u0B95\u0BCD\u0B95\u0BCD", -1, 7], + ["\u0B9F\u0BCD\u0B95\u0BCD", -1, 3], + ["\u0BB1\u0BCD\u0B95\u0BCD", -1, 4], + ["\u0B99\u0BCD", -1, 9], + ["\u0B9F\u0BCD\u0B9F\u0BCD", -1, 5], + ["\u0BA4\u0BCD\u0BA4\u0BCD", -1, 6], + ["\u0BA8\u0BCD\u0BA4\u0BCD", -1, 1], + ["\u0BA8\u0BCD", -1, 1], + ["\u0B9F\u0BCD\u0BAA\u0BCD", -1, 3], + ["\u0BAF\u0BCD", -1, 2], + ["\u0BA9\u0BCD\u0BB1\u0BCD", -1, 4], + ["\u0BB5\u0BCD", -1, 1] + ]; + + /** @const */ var a_6 = [ + ["\u0B95", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9F", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BB1", -1, -1] + ]; + + /** @const */ var a_7 = [ + ["\u0B95", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9F", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BB1", -1, -1] + ]; + + /** @const */ var a_8 = [ + ["\u0B9E", -1, -1], + ["\u0BA3", -1, -1], + ["\u0BA8", -1, -1], + ["\u0BA9", -1, -1], + ["\u0BAE", -1, -1], + ["\u0BAF", -1, -1], + ["\u0BB0", -1, -1], + ["\u0BB2", -1, -1], + ["\u0BB3", -1, -1], + ["\u0BB4", -1, -1], + ["\u0BB5", -1, -1] + ]; + + /** @const */ var a_9 = [ + ["\u0BBE", -1, -1], + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC1", -1, -1], + ["\u0BC2", -1, -1], + ["\u0BC6", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BC8", -1, -1], + ["\u0BCD", -1, -1] + ]; + + /** @const */ var a_10 = [ + ["\u0B85", -1, -1], + ["\u0B87", -1, -1], + ["\u0B89", -1, -1] + ]; + + /** @const */ var a_11 = [ + ["\u0B95", -1, -1], + ["\u0B99", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9E", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BA8", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BAE", -1, -1], + ["\u0BAF", -1, -1], + ["\u0BB5", -1, -1] + ]; + + /** @const */ var a_12 = [ + ["\u0B95", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9F", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BB1", -1, -1] + ]; + + /** @const */ var a_13 = [ + ["\u0B95\u0BB3\u0BCD", -1, 4], + ["\u0BC1\u0B99\u0BCD\u0B95\u0BB3\u0BCD", 0, 1], + ["\u0B9F\u0BCD\u0B95\u0BB3\u0BCD", 0, 3], + ["\u0BB1\u0BCD\u0B95\u0BB3\u0BCD", 0, 2] + ]; + + /** @const */ var a_14 = [ + ["\u0BBE", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BCB", -1, -1] + ]; + + /** @const */ var a_15 = [ + ["\u0BAA\u0BBF", -1, -1], + ["\u0BB5\u0BBF", -1, -1] + ]; + + /** @const */ var a_16 = [ + ["\u0BBE", -1, -1], + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC1", -1, -1], + ["\u0BC2", -1, -1], + ["\u0BC6", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BC8", -1, -1] + ]; + + /** @const */ var a_17 = [ + ["\u0BAA\u0B9F\u0BCD\u0B9F", -1, 3], + ["\u0BAA\u0B9F\u0BCD\u0B9F\u0BA3", -1, 3], + ["\u0BA4\u0BBE\u0BA9", -1, 3], + ["\u0BAA\u0B9F\u0BBF\u0BA4\u0BBE\u0BA9", 2, 3], + ["\u0BC6\u0BA9", -1, 1], + ["\u0BBE\u0B95\u0BBF\u0BAF", -1, 1], + ["\u0B95\u0BC1\u0BB0\u0BBF\u0BAF", -1, 3], + ["\u0BC1\u0B9F\u0BC8\u0BAF", -1, 1], + ["\u0BB2\u0BCD\u0BB2", -1, 2], + ["\u0BC1\u0BB3\u0BCD\u0BB3", -1, 1], + ["\u0BBE\u0B95\u0BBF", -1, 1], + ["\u0BAA\u0B9F\u0BBF", -1, 3], + ["\u0BBF\u0BA9\u0BCD\u0BB1\u0BBF", -1, 1], + ["\u0BAA\u0BB1\u0BCD\u0BB1\u0BBF", -1, 3], + ["\u0BAA\u0B9F\u0BC1", -1, 3], + ["\u0BB5\u0BBF\u0B9F\u0BC1", -1, 3], + ["\u0BAA\u0B9F\u0BCD\u0B9F\u0BC1", -1, 3], + ["\u0BB5\u0BBF\u0B9F\u0BCD\u0B9F\u0BC1", -1, 3], + ["\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1", -1, 3], + ["\u0BC6\u0BA9\u0BCD\u0BB1\u0BC1", -1, 1], + ["\u0BC1\u0B9F\u0BC8", -1, 1], + ["\u0BBF\u0BB2\u0BCD\u0BB2\u0BC8", -1, 1], + ["\u0BC1\u0B9F\u0BA9\u0BCD", -1, 1], + ["\u0BBF\u0B9F\u0BAE\u0BCD", -1, 1], + ["\u0BC6\u0BB2\u0BCD\u0BB2\u0BBE\u0BAE\u0BCD", -1, 3], + ["\u0BC6\u0BA9\u0BC1\u0BAE\u0BCD", -1, 1] + ]; + + /** @const */ var a_18 = [ + ["\u0BBE", -1, -1], + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC1", -1, -1], + ["\u0BC2", -1, -1], + ["\u0BC6", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BC8", -1, -1] + ]; + + /** @const */ var a_19 = [ + ["\u0BBE", -1, -1], + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC1", -1, -1], + ["\u0BC2", -1, -1], + ["\u0BC6", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BC8", -1, -1] + ]; + + /** @const */ var a_20 = [ + ["\u0BB5\u0BBF\u0B9F", -1, 2], + ["\u0BC0", -1, 7], + ["\u0BCA\u0B9F\u0BC1", -1, 2], + ["\u0BCB\u0B9F\u0BC1", -1, 2], + ["\u0BA4\u0BC1", -1, 6], + ["\u0BBF\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4\u0BC1", 4, 2], + ["\u0BBF\u0BA9\u0BCD\u0BB1\u0BC1", -1, 2], + ["\u0BC1\u0B9F\u0BC8", -1, 2], + ["\u0BA9\u0BC8", -1, 1], + ["\u0B95\u0BA3\u0BCD", -1, 1], + ["\u0BBF\u0BA9\u0BCD", -1, 3], + ["\u0BAE\u0BC1\u0BA9\u0BCD", -1, 1], + ["\u0BBF\u0B9F\u0BAE\u0BCD", -1, 4], + ["\u0BBF\u0BB1\u0BCD", -1, 2], + ["\u0BAE\u0BC7\u0BB1\u0BCD", -1, 1], + ["\u0BB2\u0BCD", -1, 5], + ["\u0BBE\u0BAE\u0BB2\u0BCD", 15, 2], + ["\u0BBE\u0BB2\u0BCD", 15, 2], + ["\u0BBF\u0BB2\u0BCD", 15, 2], + ["\u0BAE\u0BC7\u0BB2\u0BCD", 15, 1], + ["\u0BC1\u0BB3\u0BCD", -1, 2], + ["\u0B95\u0BC0\u0BB4\u0BCD", -1, 1] + ]; + + /** @const */ var a_21 = [ + ["\u0B95", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9F", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BB1", -1, -1] + ]; + + /** @const */ var a_22 = [ + ["\u0B95", -1, -1], + ["\u0B9A", -1, -1], + ["\u0B9F", -1, -1], + ["\u0BA4", -1, -1], + ["\u0BAA", -1, -1], + ["\u0BB1", -1, -1] + ]; + + /** @const */ var a_23 = [ + ["\u0B85", -1, -1], + ["\u0B86", -1, -1], + ["\u0B87", -1, -1], + ["\u0B88", -1, -1], + ["\u0B89", -1, -1], + ["\u0B8A", -1, -1], + ["\u0B8E", -1, -1], + ["\u0B8F", -1, -1], + ["\u0B90", -1, -1], + ["\u0B92", -1, -1], + ["\u0B93", -1, -1], + ["\u0B94", -1, -1] + ]; + + /** @const */ var a_24 = [ + ["\u0BBE", -1, -1], + ["\u0BBF", -1, -1], + ["\u0BC0", -1, -1], + ["\u0BC1", -1, -1], + ["\u0BC2", -1, -1], + ["\u0BC6", -1, -1], + ["\u0BC7", -1, -1], + ["\u0BC8", -1, -1] + ]; + + /** @const */ var a_25 = [ + ["\u0B95", -1, 1], + ["\u0BA4", -1, 1], + ["\u0BA9", -1, 1], + ["\u0BAA", -1, 1], + ["\u0BAF", -1, 1], + ["\u0BBE", -1, 5], + ["\u0B95\u0BC1", -1, 6], + ["\u0BAA\u0B9F\u0BC1", -1, 1], + ["\u0BA4\u0BC1", -1, 3], + ["\u0BBF\u0BB1\u0BCD\u0BB1\u0BC1", -1, 1], + ["\u0BA9\u0BC8", -1, 1], + ["\u0BB5\u0BC8", -1, 1], + ["\u0BA9\u0BA9\u0BCD", -1, 1], + ["\u0BAA\u0BA9\u0BCD", -1, 1], + ["\u0BB5\u0BA9\u0BCD", -1, 2], + ["\u0BBE\u0BA9\u0BCD", -1, 4], + ["\u0BA9\u0BBE\u0BA9\u0BCD", 15, 1], + ["\u0BAE\u0BBF\u0BA9\u0BCD", -1, 1], + ["\u0BA9\u0BC6\u0BA9\u0BCD", -1, 1], + ["\u0BC7\u0BA9\u0BCD", -1, 5], + ["\u0BA9\u0BAE\u0BCD", -1, 1], + ["\u0BAA\u0BAE\u0BCD", -1, 1], + ["\u0BBE\u0BAE\u0BCD", -1, 5], + ["\u0B95\u0BC1\u0BAE\u0BCD", -1, 1], + ["\u0B9F\u0BC1\u0BAE\u0BCD", -1, 5], + ["\u0BA4\u0BC1\u0BAE\u0BCD", -1, 1], + ["\u0BB1\u0BC1\u0BAE\u0BCD", -1, 1], + ["\u0BC6\u0BAE\u0BCD", -1, 5], + ["\u0BC7\u0BAE\u0BCD", -1, 5], + ["\u0BCB\u0BAE\u0BCD", -1, 5], + ["\u0BBE\u0BAF\u0BCD", -1, 5], + ["\u0BA9\u0BB0\u0BCD", -1, 1], + ["\u0BAA\u0BB0\u0BCD", -1, 1], + ["\u0BC0\u0BAF\u0BB0\u0BCD", -1, 5], + ["\u0BB5\u0BB0\u0BCD", -1, 1], + ["\u0BBE\u0BB0\u0BCD", -1, 5], + ["\u0BA9\u0BBE\u0BB0\u0BCD", 35, 1], + ["\u0BAE\u0BBE\u0BB0\u0BCD", 35, 1], + ["\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BCD", -1, 1], + ["\u0BA9\u0BBF\u0BB0\u0BCD", -1, 5], + ["\u0BC0\u0BB0\u0BCD", -1, 5], + ["\u0BA9\u0BB3\u0BCD", -1, 1], + ["\u0BAA\u0BB3\u0BCD", -1, 1], + ["\u0BB5\u0BB3\u0BCD", -1, 1], + ["\u0BBE\u0BB3\u0BCD", -1, 5], + ["\u0BA9\u0BBE\u0BB3\u0BCD", 44, 1] + ]; + + /** @const */ var a_26 = [ + ["\u0B95\u0BBF\u0BB1", -1, -1], + ["\u0B95\u0BBF\u0BA9\u0BCD\u0BB1", -1, -1], + ["\u0BBE\u0BA8\u0BBF\u0BA9\u0BCD\u0BB1", -1, -1], + ["\u0B95\u0BBF\u0BB1\u0BCD", -1, -1], + ["\u0B95\u0BBF\u0BA9\u0BCD\u0BB1\u0BCD", -1, -1], + ["\u0BBE\u0BA8\u0BBF\u0BA9\u0BCD\u0BB1\u0BCD", -1, -1] + ]; + + var /** boolean */ B_found_vetrumai_urupu = false; + var /** boolean */ B_found_a_match = false; + + + /** @return {boolean} */ + function r_has_min_length() { + return base.current.length > 4; + }; + + /** @return {boolean} */ + function r_fix_va_start() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_0); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u0B93")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u0B92")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u0B89")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u0B8A")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_fix_endings() { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + if (!r_fix_ending()) + { + break lab1; + } + continue; + } + base.cursor = v_2; + break; + } + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_remove_question_prefixes() { + base.bra = base.cursor; + if (!(base.eq_s("\u0B8E"))) + { + return false; + } + if (base.find_among(a_1) == 0) + { + return false; + } + if (!(base.eq_s("\u0BCD"))) + { + return false; + } + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + /** @const */ var /** number */ v_1 = base.cursor; + r_fix_va_start(); + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_fix_ending() { + var /** number */ among_var; + if (base.current.length <= 3) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + base.ket = base.cursor; + among_var = base.find_among_b(a_5); + if (among_var == 0) + { + break lab1; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + if (base.find_among_b(a_2) == 0) + { + break lab1; + } + base.cursor = base.limit - v_2; + if (!base.slice_del()) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u0BB3\u0BCD")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u0BB2\u0BCD")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u0B9F\u0BC1")) + { + return false; + } + break; + case 6: + if (!B_found_vetrumai_urupu) + { + break lab1; + } + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!(base.eq_s_b("\u0BC8"))) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_3; + } + if (!base.slice_from("\u0BAE\u0BCD")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 8: + { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab3: { + if (base.find_among_b(a_3) == 0) + { + break lab3; + } + break lab1; + } + base.cursor = base.limit - v_4; + } + if (!base.slice_del()) + { + return false; + } + break; + case 9: + among_var = base.find_among_b(a_4); + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u0BAE\u0BCD")) + { + return false; + } + break; + } + break; + } + break lab0; + } + base.cursor = base.limit - v_1; + base.ket = base.cursor; + if (!(base.eq_s_b("\u0BCD"))) + { + return false; + } + lab4: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab5: { + if (base.find_among_b(a_6) == 0) + { + break lab5; + } + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab6: { + if (!(base.eq_s_b("\u0BCD"))) + { + base.cursor = base.limit - v_6; + break lab6; + } + if (base.find_among_b(a_7) == 0) + { + base.cursor = base.limit - v_6; + break lab6; + } + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_5; + lab7: { + if (base.find_among_b(a_8) == 0) + { + break lab7; + } + base.bra = base.cursor; + if (!(base.eq_s_b("\u0BCD"))) + { + break lab7; + } + if (!base.slice_del()) + { + return false; + } + break lab4; + } + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + if (base.find_among_b(a_9) == 0) + { + return false; + } + base.cursor = base.limit - v_7; + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + } + base.cursor = base.limit_backward; + return true; + }; + + /** @return {boolean} */ + function r_remove_pronoun_prefixes() { + base.bra = base.cursor; + if (base.find_among(a_10) == 0) + { + return false; + } + if (base.find_among(a_11) == 0) + { + return false; + } + if (!(base.eq_s("\u0BCD"))) + { + return false; + } + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + /** @const */ var /** number */ v_1 = base.cursor; + r_fix_va_start(); + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_remove_plural_suffix() { + var /** number */ among_var; + base.limit_backward = base.cursor; base.cursor = base.limit; + base.ket = base.cursor; + among_var = base.find_among_b(a_13); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (base.find_among_b(a_12) == 0) + { + break lab1; + } + if (!base.slice_from("\u0BC1\u0B99\u0BCD")) + { + return false; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!base.slice_from("\u0BCD")) + { + return false; + } + } + break; + case 2: + if (!base.slice_from("\u0BB2\u0BCD")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u0BB3\u0BCD")) + { + return false; + } + break; + case 4: + if (!base.slice_del()) + { + return false; + } + break; + } + base.cursor = base.limit_backward; + return true; + }; + + /** @return {boolean} */ + function r_remove_question_suffixes() { + if (!r_has_min_length()) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_14) == 0) + { + break lab0; + } + base.bra = base.cursor; + if (!base.slice_from("\u0BCD")) + { + return false; + } + } + base.cursor = base.limit - v_1; + base.cursor = base.limit_backward; + r_fix_endings(); + return true; + }; + + /** @return {boolean} */ + function r_remove_command_suffixes() { + if (!r_has_min_length()) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + base.ket = base.cursor; + if (base.find_among_b(a_15) == 0) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + base.cursor = base.limit_backward; + return true; + }; + + /** @return {boolean} */ + function r_remove_um() { + if (!r_has_min_length()) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + base.ket = base.cursor; + if (!(base.eq_s_b("\u0BC1\u0BAE\u0BCD"))) + { + return false; + } + base.bra = base.cursor; + if (!base.slice_from("\u0BCD")) + { + return false; + } + base.cursor = base.limit_backward; + /** @const */ var /** number */ v_1 = base.cursor; + r_fix_ending(); + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_remove_common_word_endings() { + var /** number */ among_var; + if (!r_has_min_length()) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + base.ket = base.cursor; + among_var = base.find_among_b(a_17); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 2: + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + if (base.find_among_b(a_16) == 0) + { + break lab0; + } + return false; + } + base.cursor = base.limit - v_1; + } + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 3: + if (!base.slice_del()) + { + return false; + } + break; + } + base.cursor = base.limit_backward; + r_fix_endings(); + return true; + }; + + /** @return {boolean} */ + function r_remove_vetrumai_urupukal() { + var /** number */ among_var; + B_found_vetrumai_urupu = false; + if (!r_has_min_length()) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + base.ket = base.cursor; + among_var = base.find_among_b(a_20); + if (among_var == 0) + { + break lab1; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 3: + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab2: { + if (!(base.eq_s_b("\u0BAE"))) + { + break lab2; + } + break lab1; + } + base.cursor = base.limit - v_3; + } + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 4: + if (base.current.length < 7) + { + break lab1; + } + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 5: + { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab3: { + if (base.find_among_b(a_18) == 0) + { + break lab3; + } + break lab1; + } + base.cursor = base.limit - v_4; + } + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 6: + { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab4: { + if (base.find_among_b(a_19) == 0) + { + break lab4; + } + break lab1; + } + base.cursor = base.limit - v_5; + } + if (!base.slice_del()) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u0BBF")) + { + return false; + } + break; + } + base.cursor = base.limit - v_2; + break lab0; + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + base.ket = base.cursor; + if (!(base.eq_s_b("\u0BC8"))) + { + return false; + } + lab5: { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab6: { + { + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab7: { + if (base.find_among_b(a_21) == 0) + { + break lab7; + } + break lab6; + } + base.cursor = base.limit - v_8; + } + break lab5; + } + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + if (base.find_among_b(a_22) == 0) + { + return false; + } + if (!(base.eq_s_b("\u0BCD"))) + { + return false; + } + base.cursor = base.limit - v_9; + } + base.bra = base.cursor; + if (!base.slice_from("\u0BCD")) + { + return false; + } + base.cursor = base.limit - v_6; + } + B_found_vetrumai_urupu = true; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + lab8: { + base.ket = base.cursor; + if (!(base.eq_s_b("\u0BBF\u0BA9\u0BCD"))) + { + break lab8; + } + base.bra = base.cursor; + if (!base.slice_from("\u0BCD")) + { + return false; + } + } + base.cursor = base.limit - v_10; + base.cursor = base.limit_backward; + r_fix_endings(); + return true; + }; + + /** @return {boolean} */ + function r_remove_tense_suffixes() { + while(true) + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + if (!r_remove_tense_suffix()) + { + break lab0; + } + continue; + } + base.cursor = v_1; + break; + } + return true; + }; + + /** @return {boolean} */ + function r_remove_tense_suffix() { + var /** number */ among_var; + B_found_a_match = false; + if (!r_has_min_length()) + { + return false; + } + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + base.ket = base.cursor; + among_var = base.find_among_b(a_25); + if (among_var == 0) + { + break lab0; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab1: { + if (base.find_among_b(a_23) == 0) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_3; + } + if (!base.slice_del()) + { + return false; + } + break; + case 3: + { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab2: { + if (base.find_among_b(a_24) == 0) + { + break lab2; + } + break lab0; + } + base.cursor = base.limit - v_4; + } + if (!base.slice_del()) + { + return false; + } + break; + case 4: + { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab3: { + if (!(base.eq_s_b("\u0B9A"))) + { + break lab3; + } + break lab0; + } + base.cursor = base.limit - v_5; + } + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u0BCD")) + { + return false; + } + break; + case 6: + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + if (!(base.eq_s_b("\u0BCD"))) + { + break lab0; + } + base.cursor = base.limit - v_6; + if (!base.slice_del()) + { + return false; + } + break; + } + B_found_a_match = true; + base.cursor = base.limit - v_2; + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab4: { + base.ket = base.cursor; + if (base.find_among_b(a_26) == 0) + { + break lab4; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + B_found_a_match = true; + } + base.cursor = base.limit - v_7; + base.cursor = base.limit_backward; + r_fix_endings(); + if (!B_found_a_match) + { + return false; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + B_found_vetrumai_urupu = false; + /** @const */ var /** number */ v_1 = base.cursor; + r_fix_ending(); + base.cursor = v_1; + if (!r_has_min_length()) + { + return false; + } + /** @const */ var /** number */ v_2 = base.cursor; + r_remove_question_prefixes(); + base.cursor = v_2; + /** @const */ var /** number */ v_3 = base.cursor; + r_remove_pronoun_prefixes(); + base.cursor = v_3; + /** @const */ var /** number */ v_4 = base.cursor; + r_remove_question_suffixes(); + base.cursor = v_4; + /** @const */ var /** number */ v_5 = base.cursor; + r_remove_um(); + base.cursor = v_5; + /** @const */ var /** number */ v_6 = base.cursor; + r_remove_common_word_endings(); + base.cursor = v_6; + /** @const */ var /** number */ v_7 = base.cursor; + r_remove_vetrumai_urupukal(); + base.cursor = v_7; + /** @const */ var /** number */ v_8 = base.cursor; + r_remove_plural_suffix(); + base.cursor = v_8; + /** @const */ var /** number */ v_9 = base.cursor; + r_remove_command_suffixes(); + base.cursor = v_9; + /** @const */ var /** number */ v_10 = base.cursor; + r_remove_tense_suffixes(); + base.cursor = v_10; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/turkish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/turkish-stemmer.js index 8ba74b921..c57ba7980 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/turkish-stemmer.js +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/turkish-stemmer.js @@ -1,8 +1,9 @@ -// Generated by Snowball 2.1.0 - https://snowballstem.org/ +// Generated from turkish.sbl by Snowball 3.0.1 - https://snowballstem.org/ /**@constructor*/ -TurkishStemmer = function() { +var TurkishStemmer = function() { var base = new BaseStemmer(); + /** @const */ var a_0 = [ ["m", -1, -1], ["n", -1, -1], @@ -216,230 +217,104 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_check_vowel_harmony() { - var /** number */ v_1 = base.limit - base.cursor; - golab0: while(true) + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + if (!base.go_out_grouping_b(g_vowel, 97, 305)) { - var /** number */ v_2 = base.limit - base.cursor; - lab1: { - if (!(base.in_grouping_b(g_vowel, 97, 305))) - { - break lab1; - } - base.cursor = base.limit - v_2; - break golab0; - } - base.cursor = base.limit - v_2; - if (base.cursor <= base.limit_backward) - { - return false; - } - base.cursor--; + return false; } - lab2: { - var /** number */ v_3 = base.limit - base.cursor; - lab3: { + lab0: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab1: { if (!(base.eq_s_b("a"))) { - break lab3; + break lab1; } - golab4: while(true) + if (!base.go_out_grouping_b(g_vowel1, 97, 305)) { - var /** number */ v_4 = base.limit - base.cursor; - lab5: { - if (!(base.in_grouping_b(g_vowel1, 97, 305))) - { - break lab5; - } - base.cursor = base.limit - v_4; - break golab4; - } - base.cursor = base.limit - v_4; - if (base.cursor <= base.limit_backward) - { - break lab3; - } - base.cursor--; + break lab1; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; - lab6: { + base.cursor = base.limit - v_2; + lab2: { if (!(base.eq_s_b("e"))) { - break lab6; + break lab2; } - golab7: while(true) + if (!base.go_out_grouping_b(g_vowel2, 101, 252)) { - var /** number */ v_5 = base.limit - base.cursor; - lab8: { - if (!(base.in_grouping_b(g_vowel2, 101, 252))) - { - break lab8; - } - base.cursor = base.limit - v_5; - break golab7; - } - base.cursor = base.limit - v_5; - if (base.cursor <= base.limit_backward) - { - break lab6; - } - base.cursor--; + break lab2; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; - lab9: { + base.cursor = base.limit - v_2; + lab3: { if (!(base.eq_s_b("\u0131"))) { - break lab9; + break lab3; } - golab10: while(true) + if (!base.go_out_grouping_b(g_vowel3, 97, 305)) { - var /** number */ v_6 = base.limit - base.cursor; - lab11: { - if (!(base.in_grouping_b(g_vowel3, 97, 305))) - { - break lab11; - } - base.cursor = base.limit - v_6; - break golab10; - } - base.cursor = base.limit - v_6; - if (base.cursor <= base.limit_backward) - { - break lab9; - } - base.cursor--; + break lab3; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; - lab12: { + base.cursor = base.limit - v_2; + lab4: { if (!(base.eq_s_b("i"))) { - break lab12; + break lab4; } - golab13: while(true) + if (!base.go_out_grouping_b(g_vowel4, 101, 105)) { - var /** number */ v_7 = base.limit - base.cursor; - lab14: { - if (!(base.in_grouping_b(g_vowel4, 101, 105))) - { - break lab14; - } - base.cursor = base.limit - v_7; - break golab13; - } - base.cursor = base.limit - v_7; - if (base.cursor <= base.limit_backward) - { - break lab12; - } - base.cursor--; + break lab4; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; - lab15: { + base.cursor = base.limit - v_2; + lab5: { if (!(base.eq_s_b("o"))) { - break lab15; + break lab5; } - golab16: while(true) + if (!base.go_out_grouping_b(g_vowel5, 111, 117)) { - var /** number */ v_8 = base.limit - base.cursor; - lab17: { - if (!(base.in_grouping_b(g_vowel5, 111, 117))) - { - break lab17; - } - base.cursor = base.limit - v_8; - break golab16; - } - base.cursor = base.limit - v_8; - if (base.cursor <= base.limit_backward) - { - break lab15; - } - base.cursor--; + break lab5; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; - lab18: { + base.cursor = base.limit - v_2; + lab6: { if (!(base.eq_s_b("\u00F6"))) { - break lab18; + break lab6; } - golab19: while(true) + if (!base.go_out_grouping_b(g_vowel6, 246, 252)) { - var /** number */ v_9 = base.limit - base.cursor; - lab20: { - if (!(base.in_grouping_b(g_vowel6, 246, 252))) - { - break lab20; - } - base.cursor = base.limit - v_9; - break golab19; - } - base.cursor = base.limit - v_9; - if (base.cursor <= base.limit_backward) - { - break lab18; - } - base.cursor--; + break lab6; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; - lab21: { + base.cursor = base.limit - v_2; + lab7: { if (!(base.eq_s_b("u"))) { - break lab21; + break lab7; } - golab22: while(true) + if (!base.go_out_grouping_b(g_vowel5, 111, 117)) { - var /** number */ v_10 = base.limit - base.cursor; - lab23: { - if (!(base.in_grouping_b(g_vowel5, 111, 117))) - { - break lab23; - } - base.cursor = base.limit - v_10; - break golab22; - } - base.cursor = base.limit - v_10; - if (base.cursor <= base.limit_backward) - { - break lab21; - } - base.cursor--; + break lab7; } - break lab2; + break lab0; } - base.cursor = base.limit - v_3; + base.cursor = base.limit - v_2; if (!(base.eq_s_b("\u00FC"))) { return false; } - golab24: while(true) + if (!base.go_out_grouping_b(g_vowel6, 246, 252)) { - var /** number */ v_11 = base.limit - base.cursor; - lab25: { - if (!(base.in_grouping_b(g_vowel6, 246, 252))) - { - break lab25; - } - base.cursor = base.limit - v_11; - break golab24; - } - base.cursor = base.limit - v_11; - if (base.cursor <= base.limit_backward) - { - return false; - } - base.cursor--; + return false; } } base.cursor = base.limit - v_1; @@ -449,13 +324,13 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_mark_suffix_with_optional_n_consonant() { lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("n"))) { break lab1; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.in_grouping_b(g_vowel, 97, 305))) { break lab1; @@ -465,9 +340,9 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_1; { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; if (!(base.eq_s_b("n"))) { break lab2; @@ -477,7 +352,7 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_3; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; if (base.cursor <= base.limit_backward) { return false; @@ -495,13 +370,13 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_mark_suffix_with_optional_s_consonant() { lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("s"))) { break lab1; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.in_grouping_b(g_vowel, 97, 305))) { break lab1; @@ -511,9 +386,9 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_1; { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; if (!(base.eq_s_b("s"))) { break lab2; @@ -523,7 +398,7 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_3; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; if (base.cursor <= base.limit_backward) { return false; @@ -541,13 +416,13 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_mark_suffix_with_optional_y_consonant() { lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("y"))) { break lab1; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.in_grouping_b(g_vowel, 97, 305))) { break lab1; @@ -557,9 +432,9 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_1; { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; if (!(base.eq_s_b("y"))) { break lab2; @@ -569,7 +444,7 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_3; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; if (base.cursor <= base.limit_backward) { return false; @@ -587,13 +462,13 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_mark_suffix_with_optional_U_vowel() { lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.in_grouping_b(g_U, 105, 305))) { break lab1; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; if (!(base.out_grouping_b(g_vowel, 97, 305))) { break lab1; @@ -603,9 +478,9 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_1; { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab2: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; if (!(base.in_grouping_b(g_U, 105, 305))) { break lab2; @@ -615,7 +490,7 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_3; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; if (base.cursor <= base.limit_backward) { return false; @@ -1010,10 +885,10 @@ TurkishStemmer = function() { base.ket = base.cursor; B_continue_stemming_noun_suffixes = true; lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { lab2: { - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab3: { if (!r_mark_ymUs_()) { @@ -1052,7 +927,7 @@ TurkishStemmer = function() { break lab6; } lab7: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab8: { if (!r_mark_sUnUz()) { @@ -1111,11 +986,11 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab14: { base.ket = base.cursor; lab15: { - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab16: { if (!r_mark_DUr()) { @@ -1157,7 +1032,7 @@ TurkishStemmer = function() { break lab19; } lab20: { - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab21: { if (!r_mark_yDU()) { @@ -1176,7 +1051,7 @@ TurkishStemmer = function() { base.cursor = base.limit - v_1; lab22: { lab23: { - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab24: { if (!r_mark_sUnUz()) { @@ -1211,7 +1086,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; lab27: { base.ket = base.cursor; if (!r_mark_ymUs_()) @@ -1232,11 +1107,11 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; lab28: { base.ket = base.cursor; lab29: { - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; lab30: { if (!r_mark_sUnUz()) { @@ -1301,7 +1176,7 @@ TurkishStemmer = function() { return false; } lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!r_mark_DA()) { @@ -1312,11 +1187,11 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab2: { base.ket = base.cursor; lab3: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab4: { if (!r_mark_lAr()) { @@ -1327,7 +1202,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab5: { if (!r_stem_suffix_chain_before_ki()) { @@ -1348,7 +1223,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab6: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1382,11 +1257,11 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab8: { base.ket = base.cursor; lab9: { - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab10: { if (!r_mark_lArI()) { @@ -1403,7 +1278,7 @@ TurkishStemmer = function() { lab11: { base.ket = base.cursor; lab12: { - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; lab13: { if (!r_mark_possessives()) { @@ -1422,7 +1297,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; lab14: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1459,7 +1334,7 @@ TurkishStemmer = function() { return false; } lab15: { - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; lab16: { if (!r_mark_lArI()) { @@ -1483,7 +1358,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_11 = base.limit - base.cursor; + /** @const */ var /** number */ v_11 = base.limit - base.cursor; lab18: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1517,7 +1392,7 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_stem_noun_suffixes() { lab0: { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1529,7 +1404,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab2: { if (!r_stem_suffix_chain_before_ki()) { @@ -1551,10 +1426,10 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab4: { lab5: { - var /** number */ v_4 = base.limit - base.cursor; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; lab6: { base.ket = base.cursor; if (!r_mark_lArI()) @@ -1572,7 +1447,7 @@ TurkishStemmer = function() { lab7: { base.ket = base.cursor; lab8: { - var /** number */ v_5 = base.limit - base.cursor; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; lab9: { if (!r_mark_possessives()) { @@ -1591,7 +1466,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_6 = base.limit - base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; lab10: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1637,7 +1512,7 @@ TurkishStemmer = function() { lab11: { base.ket = base.cursor; lab12: { - var /** number */ v_7 = base.limit - base.cursor; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; lab13: { if (!r_mark_ndA()) { @@ -1652,7 +1527,7 @@ TurkishStemmer = function() { } } lab14: { - var /** number */ v_8 = base.limit - base.cursor; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; lab15: { if (!r_mark_lArI()) { @@ -1676,7 +1551,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_9 = base.limit - base.cursor; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; lab17: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1709,7 +1584,7 @@ TurkishStemmer = function() { lab18: { base.ket = base.cursor; lab19: { - var /** number */ v_10 = base.limit - base.cursor; + /** @const */ var /** number */ v_10 = base.limit - base.cursor; lab20: { if (!r_mark_ndAn()) { @@ -1724,7 +1599,7 @@ TurkishStemmer = function() { } } lab21: { - var /** number */ v_11 = base.limit - base.cursor; + /** @const */ var /** number */ v_11 = base.limit - base.cursor; lab22: { if (!r_mark_sU()) { @@ -1735,7 +1610,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_12 = base.limit - base.cursor; + /** @const */ var /** number */ v_12 = base.limit - base.cursor; lab23: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1776,11 +1651,11 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_13 = base.limit - base.cursor; + /** @const */ var /** number */ v_13 = base.limit - base.cursor; lab25: { base.ket = base.cursor; lab26: { - var /** number */ v_14 = base.limit - base.cursor; + /** @const */ var /** number */ v_14 = base.limit - base.cursor; lab27: { if (!r_mark_possessives()) { @@ -1791,7 +1666,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_15 = base.limit - base.cursor; + /** @const */ var /** number */ v_15 = base.limit - base.cursor; lab28: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1823,7 +1698,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_16 = base.limit - base.cursor; + /** @const */ var /** number */ v_16 = base.limit - base.cursor; lab30: { if (!r_stem_suffix_chain_before_ki()) { @@ -1847,7 +1722,7 @@ TurkishStemmer = function() { lab31: { base.ket = base.cursor; lab32: { - var /** number */ v_17 = base.limit - base.cursor; + /** @const */ var /** number */ v_17 = base.limit - base.cursor; lab33: { if (!r_mark_nUn()) { @@ -1866,10 +1741,10 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_18 = base.limit - base.cursor; + /** @const */ var /** number */ v_18 = base.limit - base.cursor; lab34: { lab35: { - var /** number */ v_19 = base.limit - base.cursor; + /** @const */ var /** number */ v_19 = base.limit - base.cursor; lab36: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1891,7 +1766,7 @@ TurkishStemmer = function() { lab37: { base.ket = base.cursor; lab38: { - var /** number */ v_20 = base.limit - base.cursor; + /** @const */ var /** number */ v_20 = base.limit - base.cursor; lab39: { if (!r_mark_possessives()) { @@ -1910,7 +1785,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_21 = base.limit - base.cursor; + /** @const */ var /** number */ v_21 = base.limit - base.cursor; lab40: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -1967,7 +1842,7 @@ TurkishStemmer = function() { lab43: { base.ket = base.cursor; lab44: { - var /** number */ v_22 = base.limit - base.cursor; + /** @const */ var /** number */ v_22 = base.limit - base.cursor; lab45: { if (!r_mark_DA()) { @@ -1994,11 +1869,11 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_23 = base.limit - base.cursor; + /** @const */ var /** number */ v_23 = base.limit - base.cursor; lab47: { base.ket = base.cursor; lab48: { - var /** number */ v_24 = base.limit - base.cursor; + /** @const */ var /** number */ v_24 = base.limit - base.cursor; lab49: { if (!r_mark_possessives()) { @@ -2009,7 +1884,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_25 = base.limit - base.cursor; + /** @const */ var /** number */ v_25 = base.limit - base.cursor; lab50: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -2044,7 +1919,7 @@ TurkishStemmer = function() { base.cursor = base.limit - v_1; base.ket = base.cursor; lab51: { - var /** number */ v_26 = base.limit - base.cursor; + /** @const */ var /** number */ v_26 = base.limit - base.cursor; lab52: { if (!r_mark_possessives()) { @@ -2063,7 +1938,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_27 = base.limit - base.cursor; + /** @const */ var /** number */ v_27 = base.limit - base.cursor; lab53: { base.ket = base.cursor; if (!r_mark_lAr()) @@ -2127,9 +2002,10 @@ TurkishStemmer = function() { /** @return {boolean} */ function r_append_U_to_stems_ending_with_d_or_g() { - var /** number */ v_1 = base.limit - base.cursor; + base.ket = base.cursor; + base.bra = base.cursor; lab0: { - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab1: { if (!(base.eq_s_b("d"))) { @@ -2137,186 +2013,105 @@ TurkishStemmer = function() { } break lab0; } - base.cursor = base.limit - v_2; + base.cursor = base.limit - v_1; if (!(base.eq_s_b("g"))) { return false; } } - base.cursor = base.limit - v_1; + if (!base.go_out_grouping_b(g_vowel, 97, 305)) + { + return false; + } lab2: { - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; lab3: { - var /** number */ v_4 = base.limit - base.cursor; - golab4: while(true) - { - var /** number */ v_5 = base.limit - base.cursor; + lab4: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; lab5: { - if (!(base.in_grouping_b(g_vowel, 97, 305))) - { - break lab5; - } - base.cursor = base.limit - v_5; - break golab4; - } - base.cursor = base.limit - v_5; - if (base.cursor <= base.limit_backward) - { - break lab3; - } - base.cursor--; - } - lab6: { - var /** number */ v_6 = base.limit - base.cursor; - lab7: { if (!(base.eq_s_b("a"))) { - break lab7; + break lab5; } - break lab6; + break lab4; } - base.cursor = base.limit - v_6; + base.cursor = base.limit - v_3; if (!(base.eq_s_b("\u0131"))) { break lab3; } } - base.cursor = base.limit - v_4; + if (!base.slice_from("\u0131")) { - var /** number */ c1 = base.cursor; - base.insert(base.cursor, base.cursor, "\u0131"); - base.cursor = c1; + return false; } break lab2; } - base.cursor = base.limit - v_3; - lab8: { - var /** number */ v_7 = base.limit - base.cursor; - golab9: while(true) - { - var /** number */ v_8 = base.limit - base.cursor; - lab10: { - if (!(base.in_grouping_b(g_vowel, 97, 305))) - { - break lab10; - } - base.cursor = base.limit - v_8; - break golab9; - } - base.cursor = base.limit - v_8; - if (base.cursor <= base.limit_backward) - { - break lab8; - } - base.cursor--; - } - lab11: { - var /** number */ v_9 = base.limit - base.cursor; - lab12: { + base.cursor = base.limit - v_2; + lab6: { + lab7: { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab8: { if (!(base.eq_s_b("e"))) { - break lab12; + break lab8; } - break lab11; + break lab7; } - base.cursor = base.limit - v_9; + base.cursor = base.limit - v_4; if (!(base.eq_s_b("i"))) { - break lab8; + break lab6; } } - base.cursor = base.limit - v_7; + if (!base.slice_from("i")) { - var /** number */ c2 = base.cursor; - base.insert(base.cursor, base.cursor, "i"); - base.cursor = c2; + return false; } break lab2; } - base.cursor = base.limit - v_3; - lab13: { - var /** number */ v_10 = base.limit - base.cursor; - golab14: while(true) - { - var /** number */ v_11 = base.limit - base.cursor; - lab15: { - if (!(base.in_grouping_b(g_vowel, 97, 305))) - { - break lab15; - } - base.cursor = base.limit - v_11; - break golab14; - } - base.cursor = base.limit - v_11; - if (base.cursor <= base.limit_backward) - { - break lab13; - } - base.cursor--; - } - lab16: { - var /** number */ v_12 = base.limit - base.cursor; - lab17: { + base.cursor = base.limit - v_2; + lab9: { + lab10: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab11: { if (!(base.eq_s_b("o"))) { - break lab17; + break lab11; } - break lab16; + break lab10; } - base.cursor = base.limit - v_12; + base.cursor = base.limit - v_5; if (!(base.eq_s_b("u"))) { - break lab13; - } - } - base.cursor = base.limit - v_10; - { - var /** number */ c3 = base.cursor; - base.insert(base.cursor, base.cursor, "u"); - base.cursor = c3; - } - break lab2; - } - base.cursor = base.limit - v_3; - var /** number */ v_13 = base.limit - base.cursor; - golab18: while(true) - { - var /** number */ v_14 = base.limit - base.cursor; - lab19: { - if (!(base.in_grouping_b(g_vowel, 97, 305))) - { - break lab19; + break lab9; } - base.cursor = base.limit - v_14; - break golab18; } - base.cursor = base.limit - v_14; - if (base.cursor <= base.limit_backward) + if (!base.slice_from("u")) { return false; } - base.cursor--; + break lab2; } - lab20: { - var /** number */ v_15 = base.limit - base.cursor; - lab21: { + base.cursor = base.limit - v_2; + lab12: { + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab13: { if (!(base.eq_s_b("\u00F6"))) { - break lab21; + break lab13; } - break lab20; + break lab12; } - base.cursor = base.limit - v_15; + base.cursor = base.limit - v_6; if (!(base.eq_s_b("\u00FC"))) { return false; } } - base.cursor = base.limit - v_13; + if (!base.slice_from("\u00FC")) { - var /** number */ c4 = base.cursor; - base.insert(base.cursor, base.cursor, "\u00FC"); - base.cursor = c4; + return false; } } return true; @@ -2328,7 +2123,7 @@ TurkishStemmer = function() { { return false; } - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { if (!(base.eq_s_b("soy"))) { @@ -2344,39 +2139,92 @@ TurkishStemmer = function() { }; /** @return {boolean} */ - function r_more_than_one_syllable_word() { - var /** number */ v_1 = base.cursor; - { - var v_2 = 2; - while(true) + function r_remove_proper_noun_suffix() { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + golab1: while(true) { - var /** number */ v_3 = base.cursor; - lab0: { - golab1: while(true) + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { { - lab2: { - if (!(base.in_grouping(g_vowel, 97, 305))) + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + if (!(base.eq_s("'"))) { - break lab2; + break lab3; } - break golab1; - } - if (base.cursor >= base.limit) - { - break lab0; + break lab2; } - base.cursor++; + base.cursor = v_3; } - v_2--; - continue; + base.cursor = v_2; + break golab1; } - base.cursor = v_3; - break; + base.cursor = v_2; + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; } - if (v_2 > 0) + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.cursor = v_1; + /** @const */ var /** number */ v_4 = base.cursor; + lab4: { + { + /** @const */ var /** number */ c1 = base.cursor + 2; + if (c1 > base.limit) + { + break lab4; + } + base.cursor = c1; + } + golab5: while(true) + { + /** @const */ var /** number */ v_5 = base.cursor; + lab6: { + if (!(base.eq_s("'"))) + { + break lab6; + } + base.cursor = v_5; + break golab5; + } + base.cursor = v_5; + if (base.cursor >= base.limit) + { + break lab4; + } + base.cursor++; + } + base.bra = base.cursor; + base.cursor = base.limit; + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.cursor = v_4; + return true; + }; + + /** @return {boolean} */ + function r_more_than_one_syllable_word() { + /** @const */ var /** number */ v_1 = base.cursor; + for (var /** number */ v_2 = 2; v_2 > 0; v_2--) + { + if (!base.go_out_grouping(g_vowel, 97, 305)) { return false; } + base.cursor++; } base.cursor = v_1; return true; @@ -2386,7 +2234,7 @@ TurkishStemmer = function() { function r_postlude() { base.limit_backward = base.cursor; base.cursor = base.limit; { - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; lab0: { if (!r_is_reserved_word()) { @@ -2396,10 +2244,10 @@ TurkishStemmer = function() { } base.cursor = base.limit - v_1; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_append_U_to_stems_ending_with_d_or_g(); base.cursor = base.limit - v_2; - var /** number */ v_3 = base.limit - base.cursor; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; r_post_process_last_consonants(); base.cursor = base.limit - v_3; base.cursor = base.limit_backward; @@ -2407,19 +2255,20 @@ TurkishStemmer = function() { }; this.stem = /** @return {boolean} */ function() { + r_remove_proper_noun_suffix(); if (!r_more_than_one_syllable_word()) { return false; } base.limit_backward = base.cursor; base.cursor = base.limit; - var /** number */ v_1 = base.limit - base.cursor; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; r_stem_nominal_verb_suffixes(); base.cursor = base.limit - v_1; if (!B_continue_stemming_noun_suffixes) { return false; } - var /** number */ v_2 = base.limit - base.cursor; + /** @const */ var /** number */ v_2 = base.limit - base.cursor; r_stem_noun_suffixes(); base.cursor = base.limit - v_2; base.cursor = base.limit_backward; diff --git a/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/yiddish-stemmer.js b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/yiddish-stemmer.js new file mode 100644 index 000000000..b9a7ddb41 --- /dev/null +++ b/addons/source-python/packages/site-packages/sphinx/search/non-minified-js/yiddish-stemmer.js @@ -0,0 +1,1160 @@ +// Generated from yiddish.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var YiddishStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["\u05D5\u05D5", -1, 1], + ["\u05D5\u05D9", -1, 2], + ["\u05D9\u05D9", -1, 3], + ["\u05DA", -1, 4], + ["\u05DD", -1, 5], + ["\u05DF", -1, 6], + ["\u05E3", -1, 7], + ["\u05E5", -1, 8] + ]; + + /** @const */ var a_1 = [ + ["\u05D0\u05D3\u05D5\u05E8\u05DB", -1, 1], + ["\u05D0\u05D4\u05D9\u05E0", -1, 1], + ["\u05D0\u05D4\u05E2\u05E8", -1, 1], + ["\u05D0\u05D4\u05F2\u05DE", -1, 1], + ["\u05D0\u05D5\u05DE", -1, 1], + ["\u05D0\u05D5\u05E0\u05D8\u05E2\u05E8", -1, 1], + ["\u05D0\u05D9\u05D1\u05E2\u05E8", -1, 1], + ["\u05D0\u05E0", -1, 1], + ["\u05D0\u05E0\u05D8", 7, 1], + ["\u05D0\u05E0\u05D8\u05E7\u05E2\u05D2\u05E0", 8, 1], + ["\u05D0\u05E0\u05D9\u05D3\u05E2\u05E8", 7, 1], + ["\u05D0\u05E4", -1, 1], + ["\u05D0\u05E4\u05D9\u05E8", 11, 1], + ["\u05D0\u05E7\u05E2\u05D2\u05E0", -1, 1], + ["\u05D0\u05E8\u05D0\u05E4", -1, 1], + ["\u05D0\u05E8\u05D5\u05DE", -1, 1], + ["\u05D0\u05E8\u05D5\u05E0\u05D8\u05E2\u05E8", -1, 1], + ["\u05D0\u05E8\u05D9\u05D1\u05E2\u05E8", -1, 1], + ["\u05D0\u05E8\u05F1\u05E1", -1, 1], + ["\u05D0\u05E8\u05F1\u05E4", -1, 1], + ["\u05D0\u05E8\u05F2\u05E0", -1, 1], + ["\u05D0\u05F0\u05E2\u05E7", -1, 1], + ["\u05D0\u05F1\u05E1", -1, 1], + ["\u05D0\u05F1\u05E4", -1, 1], + ["\u05D0\u05F2\u05E0", -1, 1], + ["\u05D1\u05D0", -1, 1], + ["\u05D1\u05F2", -1, 1], + ["\u05D3\u05D5\u05E8\u05DB", -1, 1], + ["\u05D3\u05E2\u05E8", -1, 1], + ["\u05DE\u05D9\u05D8", -1, 1], + ["\u05E0\u05D0\u05DB", -1, 1], + ["\u05E4\u05D0\u05E8", -1, 1], + ["\u05E4\u05D0\u05E8\u05D1\u05F2", 31, 1], + ["\u05E4\u05D0\u05E8\u05F1\u05E1", 31, 1], + ["\u05E4\u05D5\u05E0\u05D0\u05E0\u05D3\u05E2\u05E8", -1, 1], + ["\u05E6\u05D5", -1, 1], + ["\u05E6\u05D5\u05D6\u05D0\u05DE\u05E2\u05E0", 35, 1], + ["\u05E6\u05D5\u05E0\u05F1\u05E4", 35, 1], + ["\u05E6\u05D5\u05E8\u05D9\u05E7", 35, 1], + ["\u05E6\u05E2", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["\u05D3\u05D6\u05E9", -1, -1], + ["\u05E9\u05D8\u05E8", -1, -1], + ["\u05E9\u05D8\u05E9", -1, -1], + ["\u05E9\u05E4\u05E8", -1, -1] + ]; + + /** @const */ var a_3 = [ + ["\u05E7\u05DC\u05D9\u05D1", -1, 9], + ["\u05E8\u05D9\u05D1", -1, 10], + ["\u05D8\u05E8\u05D9\u05D1", 1, 7], + ["\u05E9\u05E8\u05D9\u05D1", 1, 15], + ["\u05D4\u05F1\u05D1", -1, 23], + ["\u05E9\u05F0\u05D9\u05D2", -1, 12], + ["\u05D2\u05D0\u05E0\u05D2", -1, 1], + ["\u05D6\u05D5\u05E0\u05D2", -1, 18], + ["\u05E9\u05DC\u05D5\u05E0\u05D2", -1, 21], + ["\u05E6\u05F0\u05D5\u05E0\u05D2", -1, 20], + ["\u05D1\u05F1\u05D2", -1, 22], + ["\u05D1\u05D5\u05E0\u05D3", -1, 16], + ["\u05F0\u05D9\u05D6", -1, 6], + ["\u05D1\u05D9\u05D8", -1, 4], + ["\u05DC\u05D9\u05D8", -1, 8], + ["\u05DE\u05D9\u05D8", -1, 3], + ["\u05E9\u05E0\u05D9\u05D8", -1, 14], + ["\u05E0\u05D5\u05DE", -1, 2], + ["\u05E9\u05D8\u05D0\u05E0", -1, 25], + ["\u05D1\u05D9\u05E1", -1, 5], + ["\u05E9\u05DE\u05D9\u05E1", -1, 13], + ["\u05E8\u05D9\u05E1", -1, 11], + ["\u05D8\u05E8\u05D5\u05E0\u05E7", -1, 19], + ["\u05E4\u05D0\u05E8\u05DC\u05F1\u05E8", -1, 24], + ["\u05E9\u05F0\u05F1\u05E8", -1, 26], + ["\u05F0\u05D5\u05D8\u05E9", -1, 17] + ]; + + /** @const */ var a_4 = [ + ["\u05D5\u05E0\u05D2", -1, 1], + ["\u05E1\u05D8\u05D5", -1, 1], + ["\u05D8", -1, 1], + ["\u05D1\u05E8\u05D0\u05DB\u05D8", 2, 31], + ["\u05E1\u05D8", 2, 1], + ["\u05D9\u05E1\u05D8", 4, 33], + ["\u05E2\u05D8", 2, 1], + ["\u05E9\u05D0\u05E4\u05D8", 2, 1], + ["\u05D4\u05F2\u05D8", 2, 1], + ["\u05E7\u05F2\u05D8", 2, 1], + ["\u05D9\u05E7\u05F2\u05D8", 9, 1], + ["\u05DC\u05E2\u05DB", -1, 1], + ["\u05E2\u05DC\u05E2\u05DB", 11, 1], + ["\u05D9\u05D6\u05DE", -1, 1], + ["\u05D9\u05DE", -1, 1], + ["\u05E2\u05DE", -1, 1], + ["\u05E2\u05E0\u05E2\u05DE", 15, 3], + ["\u05D8\u05E2\u05E0\u05E2\u05DE", 16, 4], + ["\u05E0", -1, 1], + ["\u05E7\u05DC\u05D9\u05D1\u05E0", 18, 14], + ["\u05E8\u05D9\u05D1\u05E0", 18, 15], + ["\u05D8\u05E8\u05D9\u05D1\u05E0", 20, 12], + ["\u05E9\u05E8\u05D9\u05D1\u05E0", 20, 7], + ["\u05D4\u05F1\u05D1\u05E0", 18, 27], + ["\u05E9\u05F0\u05D9\u05D2\u05E0", 18, 17], + ["\u05D6\u05D5\u05E0\u05D2\u05E0", 18, 22], + ["\u05E9\u05DC\u05D5\u05E0\u05D2\u05E0", 18, 25], + ["\u05E6\u05F0\u05D5\u05E0\u05D2\u05E0", 18, 24], + ["\u05D1\u05F1\u05D2\u05E0", 18, 26], + ["\u05D1\u05D5\u05E0\u05D3\u05E0", 18, 20], + ["\u05F0\u05D9\u05D6\u05E0", 18, 11], + ["\u05D8\u05E0", 18, 4], + ["GE\u05D1\u05D9\u05D8\u05E0", 31, 9], + ["GE\u05DC\u05D9\u05D8\u05E0", 31, 13], + ["GE\u05DE\u05D9\u05D8\u05E0", 31, 8], + ["\u05E9\u05E0\u05D9\u05D8\u05E0", 31, 19], + ["\u05E1\u05D8\u05E0", 31, 1], + ["\u05D9\u05E1\u05D8\u05E0", 36, 1], + ["\u05E2\u05D8\u05E0", 31, 1], + ["GE\u05D1\u05D9\u05E1\u05E0", 18, 10], + ["\u05E9\u05DE\u05D9\u05E1\u05E0", 18, 18], + ["GE\u05E8\u05D9\u05E1\u05E0", 18, 16], + ["\u05E2\u05E0", 18, 1], + ["\u05D2\u05D0\u05E0\u05D2\u05E2\u05E0", 42, 5], + ["\u05E2\u05DC\u05E2\u05E0", 42, 1], + ["\u05E0\u05D5\u05DE\u05E2\u05E0", 42, 6], + ["\u05D9\u05D6\u05DE\u05E2\u05E0", 42, 1], + ["\u05E9\u05D8\u05D0\u05E0\u05E2\u05E0", 42, 29], + ["\u05D8\u05E8\u05D5\u05E0\u05E7\u05E0", 18, 23], + ["\u05E4\u05D0\u05E8\u05DC\u05F1\u05E8\u05E0", 18, 28], + ["\u05E9\u05F0\u05F1\u05E8\u05E0", 18, 30], + ["\u05F0\u05D5\u05D8\u05E9\u05E0", 18, 21], + ["\u05D2\u05F2\u05E0", 18, 5], + ["\u05E1", -1, 1], + ["\u05D8\u05E1", 53, 4], + ["\u05E2\u05D8\u05E1", 54, 1], + ["\u05E0\u05E1", 53, 1], + ["\u05D8\u05E0\u05E1", 56, 4], + ["\u05E2\u05E0\u05E1", 56, 3], + ["\u05E2\u05E1", 53, 1], + ["\u05D9\u05E2\u05E1", 59, 2], + ["\u05E2\u05DC\u05E2\u05E1", 59, 1], + ["\u05E2\u05E8\u05E1", 53, 1], + ["\u05E2\u05E0\u05E2\u05E8\u05E1", 62, 1], + ["\u05E2", -1, 1], + ["\u05D8\u05E2", 64, 4], + ["\u05E1\u05D8\u05E2", 65, 1], + ["\u05E2\u05D8\u05E2", 65, 1], + ["\u05D9\u05E2", 64, -1], + ["\u05E2\u05DC\u05E2", 64, 1], + ["\u05E2\u05E0\u05E2", 64, 3], + ["\u05D8\u05E2\u05E0\u05E2", 70, 4], + ["\u05E2\u05E8", -1, 1], + ["\u05D8\u05E2\u05E8", 72, 4], + ["\u05E1\u05D8\u05E2\u05E8", 73, 1], + ["\u05E2\u05D8\u05E2\u05E8", 73, 1], + ["\u05E2\u05E0\u05E2\u05E8", 72, 3], + ["\u05D8\u05E2\u05E0\u05E2\u05E8", 76, 4], + ["\u05D5\u05EA", -1, 32] + ]; + + /** @const */ var a_5 = [ + ["\u05D5\u05E0\u05D2", -1, 1], + ["\u05E9\u05D0\u05E4\u05D8", -1, 1], + ["\u05D4\u05F2\u05D8", -1, 1], + ["\u05E7\u05F2\u05D8", -1, 1], + ["\u05D9\u05E7\u05F2\u05D8", 3, 1], + ["\u05DC", -1, 2] + ]; + + /** @const */ var a_6 = [ + ["\u05D9\u05D2", -1, 1], + ["\u05D9\u05E7", -1, 1], + ["\u05D3\u05D9\u05E7", 1, 1], + ["\u05E0\u05D3\u05D9\u05E7", 2, 1], + ["\u05E2\u05E0\u05D3\u05D9\u05E7", 3, 1], + ["\u05D1\u05DC\u05D9\u05E7", 1, -1], + ["\u05D2\u05DC\u05D9\u05E7", 1, -1], + ["\u05E0\u05D9\u05E7", 1, 1], + ["\u05D9\u05E9", -1, 1] + ]; + + /** @const */ var /** Array */ g_niked = [255, 155, 6]; + + /** @const */ var /** Array */ g_vowel = [33, 2, 4, 0, 6]; + + /** @const */ var /** Array */ g_consonant = [239, 254, 253, 131]; + + var /** number */ I_x = 0; + var /** number */ I_p1 = 0; + + + /** @return {boolean} */ + function r_prelude() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + golab2: while(true) + { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + base.bra = base.cursor; + among_var = base.find_among(a_0); + if (among_var == 0) + { + break lab3; + } + base.ket = base.cursor; + switch (among_var) { + case 1: + { + /** @const */ var /** number */ v_4 = base.cursor; + lab4: { + if (!(base.eq_s("\u05BC"))) + { + break lab4; + } + break lab3; + } + base.cursor = v_4; + } + if (!base.slice_from("\u05F0")) + { + return false; + } + break; + case 2: + { + /** @const */ var /** number */ v_5 = base.cursor; + lab5: { + if (!(base.eq_s("\u05B4"))) + { + break lab5; + } + break lab3; + } + base.cursor = v_5; + } + if (!base.slice_from("\u05F1")) + { + return false; + } + break; + case 3: + { + /** @const */ var /** number */ v_6 = base.cursor; + lab6: { + if (!(base.eq_s("\u05B4"))) + { + break lab6; + } + break lab3; + } + base.cursor = v_6; + } + if (!base.slice_from("\u05F2")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u05DB")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u05DE")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u05E0")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u05E4")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u05E6")) + { + return false; + } + break; + } + base.cursor = v_3; + break golab2; + } + base.cursor = v_3; + if (base.cursor >= base.limit) + { + break lab1; + } + base.cursor++; + } + continue; + } + base.cursor = v_2; + break; + } + } + base.cursor = v_1; + /** @const */ var /** number */ v_7 = base.cursor; + lab7: { + while(true) + { + /** @const */ var /** number */ v_8 = base.cursor; + lab8: { + golab9: while(true) + { + /** @const */ var /** number */ v_9 = base.cursor; + lab10: { + base.bra = base.cursor; + if (!(base.in_grouping(g_niked, 1456, 1474))) + { + break lab10; + } + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + base.cursor = v_9; + break golab9; + } + base.cursor = v_9; + if (base.cursor >= base.limit) + { + break lab8; + } + base.cursor++; + } + continue; + } + base.cursor = v_8; + break; + } + } + base.cursor = v_7; + return true; + }; + + /** @return {boolean} */ + function r_mark_regions() { + I_p1 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + if (!(base.eq_s("\u05D2\u05E2"))) + { + base.cursor = v_1; + break lab0; + } + base.ket = base.cursor; + { + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + lab2: { + /** @const */ var /** number */ v_3 = base.cursor; + lab3: { + if (!(base.eq_s("\u05DC\u05D8"))) + { + break lab3; + } + break lab2; + } + base.cursor = v_3; + lab4: { + if (!(base.eq_s("\u05D1\u05E0"))) + { + break lab4; + } + break lab2; + } + base.cursor = v_3; + if (base.cursor < base.limit) + { + break lab1; + } + } + base.cursor = v_1; + break lab0; + } + base.cursor = v_2; + } + if (!base.slice_from("GE")) + { + return false; + } + } + /** @const */ var /** number */ v_4 = base.cursor; + lab5: { + if (base.find_among(a_1) == 0) + { + base.cursor = v_4; + break lab5; + } + lab6: { + /** @const */ var /** number */ v_5 = base.cursor; + lab7: { + /** @const */ var /** number */ v_6 = base.cursor; + lab8: { + /** @const */ var /** number */ v_7 = base.cursor; + lab9: { + if (!(base.eq_s("\u05E6\u05D5\u05D2\u05E0"))) + { + break lab9; + } + break lab8; + } + base.cursor = v_7; + lab10: { + if (!(base.eq_s("\u05E6\u05D5\u05E7\u05D8"))) + { + break lab10; + } + break lab8; + } + base.cursor = v_7; + if (!(base.eq_s("\u05E6\u05D5\u05E7\u05E0"))) + { + break lab7; + } + } + if (base.cursor < base.limit) + { + break lab7; + } + base.cursor = v_6; + break lab6; + } + base.cursor = v_5; + lab11: { + /** @const */ var /** number */ v_8 = base.cursor; + if (!(base.eq_s("\u05D2\u05E2\u05D1\u05E0"))) + { + break lab11; + } + base.cursor = v_8; + break lab6; + } + base.cursor = v_5; + lab12: { + base.bra = base.cursor; + if (!(base.eq_s("\u05D2\u05E2"))) + { + break lab12; + } + base.ket = base.cursor; + if (!base.slice_from("GE")) + { + return false; + } + break lab6; + } + base.cursor = v_5; + base.bra = base.cursor; + if (!(base.eq_s("\u05E6\u05D5"))) + { + base.cursor = v_4; + break lab5; + } + base.ket = base.cursor; + if (!base.slice_from("TSU")) + { + return false; + } + } + } + /** @const */ var /** number */ v_9 = base.cursor; + { + /** @const */ var /** number */ c1 = base.cursor + 3; + if (c1 > base.limit) + { + return false; + } + base.cursor = c1; + } + I_x = base.cursor; + base.cursor = v_9; + /** @const */ var /** number */ v_10 = base.cursor; + lab13: { + if (base.find_among(a_2) == 0) + { + base.cursor = v_10; + break lab13; + } + } + { + /** @const */ var /** number */ v_11 = base.cursor; + lab14: { + if (!(base.in_grouping(g_consonant, 1489, 1520))) + { + break lab14; + } + if (!(base.in_grouping(g_consonant, 1489, 1520))) + { + break lab14; + } + if (!(base.in_grouping(g_consonant, 1489, 1520))) + { + break lab14; + } + I_p1 = base.cursor; + return false; + } + base.cursor = v_11; + } + if (!base.go_out_grouping(g_vowel, 1488, 1522)) + { + return false; + } + base.cursor++; + if (!base.go_in_grouping(g_vowel, 1488, 1522)) + { + return false; + } + I_p1 = base.cursor; + lab15: { + if (I_p1 >= I_x) + { + break lab15; + } + I_p1 = I_x; + } + return true; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R1plus3() { + return I_p1 <= (base.cursor + 3); + }; + + /** @return {boolean} */ + function r_standard_suffix() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + break lab0; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + break lab0; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R1()) + { + break lab0; + } + if (!base.slice_from("\u05D9\u05E2")) + { + return false; + } + break; + case 3: + if (!r_R1()) + { + break lab0; + } + if (!base.slice_del()) + { + return false; + } + base.ket = base.cursor; + among_var = base.find_among_b(a_3); + if (among_var == 0) + { + break lab0; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("\u05D2\u05F2")) + { + return false; + } + break; + case 2: + if (!base.slice_from("\u05E0\u05E2\u05DE")) + { + return false; + } + break; + case 3: + if (!base.slice_from("\u05DE\u05F2\u05D3")) + { + return false; + } + break; + case 4: + if (!base.slice_from("\u05D1\u05F2\u05D8")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u05D1\u05F2\u05E1")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u05F0\u05F2\u05D6")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u05D8\u05E8\u05F2\u05D1")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u05DC\u05F2\u05D8")) + { + return false; + } + break; + case 9: + if (!base.slice_from("\u05E7\u05DC\u05F2\u05D1")) + { + return false; + } + break; + case 10: + if (!base.slice_from("\u05E8\u05F2\u05D1")) + { + return false; + } + break; + case 11: + if (!base.slice_from("\u05E8\u05F2\u05E1")) + { + return false; + } + break; + case 12: + if (!base.slice_from("\u05E9\u05F0\u05F2\u05D2")) + { + return false; + } + break; + case 13: + if (!base.slice_from("\u05E9\u05DE\u05F2\u05E1")) + { + return false; + } + break; + case 14: + if (!base.slice_from("\u05E9\u05E0\u05F2\u05D3")) + { + return false; + } + break; + case 15: + if (!base.slice_from("\u05E9\u05E8\u05F2\u05D1")) + { + return false; + } + break; + case 16: + if (!base.slice_from("\u05D1\u05D9\u05E0\u05D3")) + { + return false; + } + break; + case 17: + if (!base.slice_from("\u05F0\u05D9\u05D8\u05E9")) + { + return false; + } + break; + case 18: + if (!base.slice_from("\u05D6\u05D9\u05E0\u05D2")) + { + return false; + } + break; + case 19: + if (!base.slice_from("\u05D8\u05E8\u05D9\u05E0\u05E7")) + { + return false; + } + break; + case 20: + if (!base.slice_from("\u05E6\u05F0\u05D9\u05E0\u05D2")) + { + return false; + } + break; + case 21: + if (!base.slice_from("\u05E9\u05DC\u05D9\u05E0\u05D2")) + { + return false; + } + break; + case 22: + if (!base.slice_from("\u05D1\u05F2\u05D2")) + { + return false; + } + break; + case 23: + if (!base.slice_from("\u05D4\u05F2\u05D1")) + { + return false; + } + break; + case 24: + if (!base.slice_from("\u05E4\u05D0\u05E8\u05DC\u05D9\u05E8")) + { + return false; + } + break; + case 25: + if (!base.slice_from("\u05E9\u05D8\u05F2")) + { + return false; + } + break; + case 26: + if (!base.slice_from("\u05E9\u05F0\u05E2\u05E8")) + { + return false; + } + break; + } + break; + case 4: + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + if (!r_R1()) + { + break lab2; + } + if (!base.slice_del()) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + if (!base.slice_from("\u05D8")) + { + return false; + } + } + base.ket = base.cursor; + if (!(base.eq_s_b("\u05D1\u05E8\u05D0\u05DB"))) + { + break lab0; + } + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab3: { + if (!(base.eq_s_b("\u05D2\u05E2"))) + { + base.cursor = base.limit - v_3; + break lab3; + } + } + base.bra = base.cursor; + if (!base.slice_from("\u05D1\u05E8\u05E2\u05E0\u05D2")) + { + return false; + } + break; + case 5: + if (!base.slice_from("\u05D2\u05F2")) + { + return false; + } + break; + case 6: + if (!base.slice_from("\u05E0\u05E2\u05DE")) + { + return false; + } + break; + case 7: + if (!base.slice_from("\u05E9\u05E8\u05F2\u05D1")) + { + return false; + } + break; + case 8: + if (!base.slice_from("\u05DE\u05F2\u05D3")) + { + return false; + } + break; + case 9: + if (!base.slice_from("\u05D1\u05F2\u05D8")) + { + return false; + } + break; + case 10: + if (!base.slice_from("\u05D1\u05F2\u05E1")) + { + return false; + } + break; + case 11: + if (!base.slice_from("\u05F0\u05F2\u05D6")) + { + return false; + } + break; + case 12: + if (!base.slice_from("\u05D8\u05E8\u05F2\u05D1")) + { + return false; + } + break; + case 13: + if (!base.slice_from("\u05DC\u05F2\u05D8")) + { + return false; + } + break; + case 14: + if (!base.slice_from("\u05E7\u05DC\u05F2\u05D1")) + { + return false; + } + break; + case 15: + if (!base.slice_from("\u05E8\u05F2\u05D1")) + { + return false; + } + break; + case 16: + if (!base.slice_from("\u05E8\u05F2\u05E1")) + { + return false; + } + break; + case 17: + if (!base.slice_from("\u05E9\u05F0\u05F2\u05D2")) + { + return false; + } + break; + case 18: + if (!base.slice_from("\u05E9\u05DE\u05F2\u05E1")) + { + return false; + } + break; + case 19: + if (!base.slice_from("\u05E9\u05E0\u05F2\u05D3")) + { + return false; + } + break; + case 20: + if (!base.slice_from("\u05D1\u05D9\u05E0\u05D3")) + { + return false; + } + break; + case 21: + if (!base.slice_from("\u05F0\u05D9\u05D8\u05E9")) + { + return false; + } + break; + case 22: + if (!base.slice_from("\u05D6\u05D9\u05E0\u05D2")) + { + return false; + } + break; + case 23: + if (!base.slice_from("\u05D8\u05E8\u05D9\u05E0\u05E7")) + { + return false; + } + break; + case 24: + if (!base.slice_from("\u05E6\u05F0\u05D9\u05E0\u05D2")) + { + return false; + } + break; + case 25: + if (!base.slice_from("\u05E9\u05DC\u05D9\u05E0\u05D2")) + { + return false; + } + break; + case 26: + if (!base.slice_from("\u05D1\u05F2\u05D2")) + { + return false; + } + break; + case 27: + if (!base.slice_from("\u05D4\u05F2\u05D1")) + { + return false; + } + break; + case 28: + if (!base.slice_from("\u05E4\u05D0\u05E8\u05DC\u05D9\u05E8")) + { + return false; + } + break; + case 29: + if (!base.slice_from("\u05E9\u05D8\u05F2")) + { + return false; + } + break; + case 30: + if (!base.slice_from("\u05E9\u05F0\u05E2\u05E8")) + { + return false; + } + break; + case 31: + if (!base.slice_from("\u05D1\u05E8\u05E2\u05E0\u05D2")) + { + return false; + } + break; + case 32: + if (!r_R1()) + { + break lab0; + } + if (!base.slice_from("\u05D4")) + { + return false; + } + break; + case 33: + lab4: { + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + lab5: { + lab6: { + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + lab7: { + if (!(base.eq_s_b("\u05D2"))) + { + break lab7; + } + break lab6; + } + base.cursor = base.limit - v_5; + if (!(base.eq_s_b("\u05E9"))) + { + break lab5; + } + } + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + lab8: { + if (!r_R1plus3()) + { + base.cursor = base.limit - v_6; + break lab8; + } + if (!base.slice_from("\u05D9\u05E1")) + { + return false; + } + } + break lab4; + } + base.cursor = base.limit - v_4; + if (!r_R1()) + { + break lab0; + } + if (!base.slice_del()) + { + return false; + } + } + break; + } + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab9: { + base.ket = base.cursor; + among_var = base.find_among_b(a_5); + if (among_var == 0) + { + break lab9; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + break lab9; + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R1()) + { + break lab9; + } + if (!(base.in_grouping_b(g_consonant, 1489, 1520))) + { + break lab9; + } + if (!base.slice_del()) + { + return false; + } + break; + } + } + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + lab10: { + base.ket = base.cursor; + among_var = base.find_among_b(a_6); + if (among_var == 0) + { + break lab10; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!r_R1()) + { + break lab10; + } + if (!base.slice_del()) + { + return false; + } + break; + } + } + base.cursor = base.limit - v_8; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + lab11: { + while(true) + { + /** @const */ var /** number */ v_10 = base.limit - base.cursor; + lab12: { + golab13: while(true) + { + /** @const */ var /** number */ v_11 = base.limit - base.cursor; + lab14: { + base.ket = base.cursor; + lab15: { + /** @const */ var /** number */ v_12 = base.limit - base.cursor; + lab16: { + if (!(base.eq_s_b("GE"))) + { + break lab16; + } + break lab15; + } + base.cursor = base.limit - v_12; + if (!(base.eq_s_b("TSU"))) + { + break lab14; + } + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + base.cursor = base.limit - v_11; + break golab13; + } + base.cursor = base.limit - v_11; + if (base.cursor <= base.limit_backward) + { + break lab12; + } + base.cursor--; + } + continue; + } + base.cursor = base.limit - v_10; + break; + } + } + base.cursor = base.limit - v_9; + return true; + }; + + this.stem = /** @return {boolean} */ function() { + r_prelude(); + /** @const */ var /** number */ v_1 = base.cursor; + r_mark_regions(); + base.cursor = v_1; + base.limit_backward = base.cursor; base.cursor = base.limit; + r_standard_suffix(); + base.cursor = base.limit_backward; + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/addons/source-python/packages/site-packages/sphinx/search/pt.py b/addons/source-python/packages/site-packages/sphinx/search/pt.py index bf9b7a3a2..a10e4cd2b 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/pt.py +++ b/addons/source-python/packages/site-packages/sphinx/search/pt.py @@ -1,258 +1,21 @@ -"""Portuguese search language: includes the JS Portuguese stemmer.""" +"""Portuguese search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -portuguese_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/portuguese/stop.txt -de | of, from -a | the; to, at; her -o | the; him -que | who, that -e | and -do | de + o -da | de + a -em | in -um | a -para | for - | é from SER -com | with -não | not, no -uma | a -os | the; them -no | em + o -se | himself etc -na | em + a -por | for -mais | more -as | the; them -dos | de + os -como | as, like -mas | but - | foi from SER -ao | a + o -ele | he -das | de + as - | tem from TER -à | a + a -seu | his -sua | her -ou | or - | ser from SER -quando | when -muito | much - | há from HAV -nos | em + os; us -já | already, now - | está from EST -eu | I -também | also -só | only, just -pelo | per + o -pela | per + a -até | up to -isso | that -ela | he -entre | between - | era from SER -depois | after -sem | without -mesmo | same -aos | a + os - | ter from TER -seus | his -quem | whom -nas | em + as -me | me -esse | that -eles | they - | estão from EST -você | you - | tinha from TER - | foram from SER -essa | that -num | em + um -nem | nor -suas | her -meu | my -às | a + as -minha | my - | têm from TER -numa | em + uma -pelos | per + os -elas | they - | havia from HAV - | seja from SER -qual | which - | será from SER -nós | we - | tenho from TER -lhe | to him, her -deles | of them -essas | those -esses | those -pelas | per + as -este | this - | fosse from SER -dele | of him - - | other words. There are many contractions such as naquele = em+aquele, - | mo = me+o, but they are rare. - | Indefinite article plural forms are also rare. - -tu | thou -te | thee -vocês | you (plural) -vos | you -lhes | to them -meus | my -minhas -teu | thy -tua -teus -tuas -nosso | our -nossa -nossos -nossas - -dela | of her -delas | of them - -esta | this -estes | these -estas | these -aquele | that -aquela | that -aqueles | those -aquelas | those -isto | this -aquilo | that - - | forms of estar, to be (not including the infinitive): -estou -está -estamos -estão -estive -esteve -estivemos -estiveram -estava -estávamos -estavam -estivera -estivéramos -esteja -estejamos -estejam -estivesse -estivéssemos -estivessem -estiver -estivermos -estiverem - - | forms of haver, to have (not including the infinitive): -hei -há -havemos -hão -houve -houvemos -houveram -houvera -houvéramos -haja -hajamos -hajam -houvesse -houvéssemos -houvessem -houver -houvermos -houverem -houverei -houverá -houveremos -houverão -houveria -houveríamos -houveriam - - | forms of ser, to be (not including the infinitive): -sou -somos -são -era -éramos -eram -fui -foi -fomos -foram -fora -fôramos -seja -sejamos -sejam -fosse -fôssemos -fossem -for -formos -forem -serei -será -seremos -serão -seria -seríamos -seriam - - | forms of ter, to have (not including the infinitive): -tenho -tem -temos -tém -tinha -tínhamos -tinham -tive -teve -tivemos -tiveram -tivera -tivéramos -tenha -tenhamos -tenham -tivesse -tivéssemos -tivessem -tiver -tivermos -tiverem -terei -terá -teremos -terão -teria -teríamos -teriam -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.pt import PORTUGUESE_STOPWORDS class SearchPortuguese(SearchLanguage): lang = 'pt' language_name = 'Portuguese' js_stemmer_rawcode = 'portuguese-stemmer.js' - stopwords = portuguese_stopwords + stopwords = PORTUGUESE_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('portuguese') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/ro.py b/addons/source-python/packages/site-packages/sphinx/search/ro.py index 0c0048631..e9d29602f 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/ro.py +++ b/addons/source-python/packages/site-packages/sphinx/search/ro.py @@ -1,4 +1,4 @@ -"""Romanian search language: includes the JS Romanian stemmer.""" +"""Romanian search language.""" from __future__ import annotations @@ -11,9 +11,10 @@ class SearchRomanian(SearchLanguage): lang = 'ro' language_name = 'Romanian' js_stemmer_rawcode = 'romanian-stemmer.js' - stopwords: set[str] = set() + stopwords = frozenset() - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('romanian') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/ru.py b/addons/source-python/packages/site-packages/sphinx/search/ru.py index e93046cba..584b19b9f 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/ru.py +++ b/addons/source-python/packages/site-packages/sphinx/search/ru.py @@ -1,248 +1,21 @@ -"""Russian search language: includes the JS Russian stemmer.""" +"""Russian search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -russian_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/russian/stop.txt -и | and -в | in/into -во | alternative form -не | not -что | what/that -он | he -на | on/onto -я | i -с | from -со | alternative form -как | how -а | milder form of `no' (but) -то | conjunction and form of `that' -все | all -она | she -так | so, thus -его | him -но | but -да | yes/and -ты | thou -к | towards, by -у | around, chez -же | intensifier particle -вы | you -за | beyond, behind -бы | conditional/subj. particle -по | up to, along -только | only -ее | her -мне | to me -было | it was -вот | here is/are, particle -от | away from -меня | me -еще | still, yet, more -нет | no, there isnt/arent -о | about -из | out of -ему | to him -теперь | now -когда | when -даже | even -ну | so, well -вдруг | suddenly -ли | interrogative particle -если | if -уже | already, but homonym of `narrower' -или | or -ни | neither -быть | to be -был | he was -него | prepositional form of его -до | up to -вас | you accusative -нибудь | indef. suffix preceded by hyphen -опять | again -уж | already, but homonym of `adder' -вам | to you -сказал | he said -ведь | particle `after all' -там | there -потом | then -себя | oneself -ничего | nothing -ей | to her -может | usually with `быть' as `maybe' -они | they -тут | here -где | where -есть | there is/are -надо | got to, must -ней | prepositional form of ей -для | for -мы | we -тебя | thee -их | them, their -чем | than -была | she was -сам | self -чтоб | in order to -без | without -будто | as if -человек | man, person, one -чего | genitive form of `what' -раз | once -тоже | also -себе | to oneself -под | beneath -жизнь | life -будет | will be -ж | short form of intensifer particle `же' -тогда | then -кто | who -этот | this -говорил | was saying -того | genitive form of `that' -потому | for that reason -этого | genitive form of `this' -какой | which -совсем | altogether -ним | prepositional form of `его', `они' -здесь | here -этом | prepositional form of `этот' -один | one -почти | almost -мой | my -тем | instrumental/dative plural of `тот', `то' -чтобы | full form of `in order that' -нее | her (acc.) -кажется | it seems -сейчас | now -были | they were -куда | where to -зачем | why -сказать | to say -всех | all (acc., gen. preposn. plural) -никогда | never -сегодня | today -можно | possible, one can -при | by -наконец | finally -два | two -об | alternative form of `о', about -другой | another -хоть | even -после | after -над | above -больше | more -тот | that one (masc.) -через | across, in -эти | these -нас | us -про | about -всего | in all, only, of all -них | prepositional form of `они' (they) -какая | which, feminine -много | lots -разве | interrogative particle -сказала | she said -три | three -эту | this, acc. fem. sing. -моя | my, feminine -впрочем | moreover, besides -хорошо | good -свою | ones own, acc. fem. sing. -этой | oblique form of `эта', fem. `this' -перед | in front of -иногда | sometimes -лучше | better -чуть | a little -том | preposn. form of `that one' -нельзя | one must not -такой | such a one -им | to them -более | more -всегда | always -конечно | of course -всю | acc. fem. sing of `all' -между | between - - - | b: some paradigms - | - | personal pronouns - | - | я меня мне мной [мною] - | ты тебя тебе тобой [тобою] - | он его ему им [него, нему, ним] - | она ее эи ею [нее, нэи, нею] - | оно его ему им [него, нему, ним] - | - | мы нас нам нами - | вы вас вам вами - | они их им ими [них, ним, ними] - | - | себя себе собой [собою] - | - | demonstrative pronouns: этот (this), тот (that) - | - | этот эта это эти - | этого эты это эти - | этого этой этого этих - | этому этой этому этим - | этим этой этим [этою] этими - | этом этой этом этих - | - | тот та то те - | того ту то те - | того той того тех - | тому той тому тем - | тем той тем [тою] теми - | том той том тех - | - | determinative pronouns - | - | (a) весь (all) - | - | весь вся все все - | всего всю все все - | всего всей всего всех - | всему всей всему всем - | всем всей всем [всею] всеми - | всем всей всем всех - | - | (b) сам (himself etc) - | - | сам сама само сами - | самого саму само самих - | самого самой самого самих - | самому самой самому самим - | самим самой самим [самою] самими - | самом самой самом самих - | - | stems of verbs `to be', `to have', `to do' and modal - | - | быть бы буд быв есть суть - | име - | дел - | мог мож мочь - | уме - | хоч хот - | долж - | можн - | нужн - | нельзя -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.ru import RUSSIAN_STOPWORDS class SearchRussian(SearchLanguage): lang = 'ru' language_name = 'Russian' js_stemmer_rawcode = 'russian-stemmer.js' - stopwords = russian_stopwords + stopwords = RUSSIAN_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('russian') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/sv.py b/addons/source-python/packages/site-packages/sphinx/search/sv.py index b4fa1bd06..8b138ebdf 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/sv.py +++ b/addons/source-python/packages/site-packages/sphinx/search/sv.py @@ -1,137 +1,21 @@ -"""Swedish search language: includes the JS Swedish stemmer.""" +"""Swedish search language.""" from __future__ import annotations import snowballstemmer -from sphinx.search import SearchLanguage, parse_stop_word - -swedish_stopwords = parse_stop_word(""" -| source: https://snowball.tartarus.org/algorithms/swedish/stop.txt -och | and -det | it, this/that -att | to (with infinitive) -i | in, at -en | a -jag | I -hon | she -som | who, that -han | he -på | on -den | it, this/that -med | with -var | where, each -sig | him(self) etc -för | for -så | so (also: seed) -till | to -är | is -men | but -ett | a -om | if; around, about -hade | had -de | they, these/those -av | of -icke | not, no -mig | me -du | you -henne | her -då | then, when -sin | his -nu | now -har | have -inte | inte någon = no one -hans | his -honom | him -skulle | 'sake' -hennes | her -där | there -min | my -man | one (pronoun) -ej | nor -vid | at, by, on (also: vast) -kunde | could -något | some etc -från | from, off -ut | out -när | when -efter | after, behind -upp | up -vi | we -dem | them -vara | be -vad | what -över | over -än | than -dig | you -kan | can -sina | his -här | here -ha | have -mot | towards -alla | all -under | under (also: wonder) -någon | some etc -eller | or (else) -allt | all -mycket | much -sedan | since -ju | why -denna | this/that -själv | myself, yourself etc -detta | this/that -åt | to -utan | without -varit | was -hur | how -ingen | no -mitt | my -ni | you -bli | to be, become -blev | from bli -oss | us -din | thy -dessa | these/those -några | some etc -deras | their -blir | from bli -mina | my -samma | (the) same -vilken | who, that -er | you, your -sådan | such a -vår | our -blivit | from bli -dess | its -inom | within -mellan | between -sådant | such a -varför | why -varje | each -vilka | who, that -ditt | thy -vem | who -vilket | who, that -sitta | his -sådana | such a -vart | each -dina | thy -vars | whose -vårt | our -våra | our -ert | your -era | your -vilkas | whose -""") +from sphinx.search import SearchLanguage +from sphinx.search._stopwords.sv import SWEDISH_STOPWORDS class SearchSwedish(SearchLanguage): lang = 'sv' language_name = 'Swedish' js_stemmer_rawcode = 'swedish-stemmer.js' - stopwords = swedish_stopwords + stopwords = SWEDISH_STOPWORDS - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('swedish') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/tr.py b/addons/source-python/packages/site-packages/sphinx/search/tr.py index b999e1d96..40131f0e3 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/tr.py +++ b/addons/source-python/packages/site-packages/sphinx/search/tr.py @@ -1,4 +1,4 @@ -"""Turkish search language: includes the JS Turkish stemmer.""" +"""Turkish search language.""" from __future__ import annotations @@ -11,9 +11,10 @@ class SearchTurkish(SearchLanguage): lang = 'tr' language_name = 'Turkish' js_stemmer_rawcode = 'turkish-stemmer.js' - stopwords: set[str] = set() + stopwords = frozenset() - def init(self, options: dict[str, str]) -> None: + def __init__(self, options: dict[str, str]) -> None: + super().__init__(options) self.stemmer = snowballstemmer.stemmer('turkish') def stem(self, word: str) -> str: diff --git a/addons/source-python/packages/site-packages/sphinx/search/zh.py b/addons/source-python/packages/site-packages/sphinx/search/zh.py index 0f7e4dfd5..0fbd08e1a 100644 --- a/addons/source-python/packages/site-packages/sphinx/search/zh.py +++ b/addons/source-python/packages/site-packages/sphinx/search/zh.py @@ -9,14 +9,16 @@ import snowballstemmer from sphinx.search import SearchLanguage +from sphinx.search._stopwords.en import ENGLISH_STOPWORDS if TYPE_CHECKING: from collections.abc import Iterator try: import jieba # type: ignore[import-not-found] - from jieba import cut_for_search - from jieba import load_userdict as jieba_load_userdict + + jieba_load_userdict = jieba.load_userdict + cut_for_search = jieba.cut_for_search except ImportError: JIEBA_DEFAULT_DICT = '' @@ -32,219 +34,19 @@ def cut_for_search(sentence: str, HMM: bool = True) -> Iterator[str]: ) del jieba -english_stopwords = { - 'a', 'and', 'are', 'as', 'at', - 'be', 'but', 'by', - 'for', - 'if', 'in', 'into', 'is', 'it', - 'near', 'no', 'not', - 'of', 'on', 'or', - 'such', - 'that', 'the', 'their', 'then', 'there', 'these', 'they', 'this', 'to', - 'was', 'will', 'with', -} # fmt: skip - -js_porter_stemmer = """ -/** - * Porter Stemmer - */ -var Stemmer = function() { - - var step2list = { - ational: 'ate', - tional: 'tion', - enci: 'ence', - anci: 'ance', - izer: 'ize', - bli: 'ble', - alli: 'al', - entli: 'ent', - eli: 'e', - ousli: 'ous', - ization: 'ize', - ation: 'ate', - ator: 'ate', - alism: 'al', - iveness: 'ive', - fulness: 'ful', - ousness: 'ous', - aliti: 'al', - iviti: 'ive', - biliti: 'ble', - logi: 'log' - }; - - var step3list = { - icate: 'ic', - ative: '', - alize: 'al', - iciti: 'ic', - ical: 'ic', - ful: '', - ness: '' - }; - - var c = "[^aeiou]"; // consonant - var v = "[aeiouy]"; // vowel - var C = c + "[^aeiouy]*"; // consonant sequence - var V = v + "[aeiou]*"; // vowel sequence - - var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 - var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 - var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 - var s_v = "^(" + C + ")?" + v; // vowel in stem - - this.stemWord = function (w) { - var stem; - var suffix; - var firstch; - var origword = w; - - if (w.length < 3) - return w; - - var re; - var re2; - var re3; - var re4; - - firstch = w.substr(0,1); - if (firstch == "y") - w = firstch.toUpperCase() + w.substr(1); - - // Step 1a - re = /^(.+?)(ss|i)es$/; - re2 = /^(.+?)([^s])s$/; - - if (re.test(w)) - w = w.replace(re,"$1$2"); - else if (re2.test(w)) - w = w.replace(re2,"$1$2"); - - // Step 1b - re = /^(.+?)eed$/; - re2 = /^(.+?)(ed|ing)$/; - if (re.test(w)) { - var fp = re.exec(w); - re = new RegExp(mgr0); - if (re.test(fp[1])) { - re = /.$/; - w = w.replace(re,""); - } - } - else if (re2.test(w)) { - var fp = re2.exec(w); - stem = fp[1]; - re2 = new RegExp(s_v); - if (re2.test(stem)) { - w = stem; - re2 = /(at|bl|iz)$/; - re3 = new RegExp("([^aeiouylsz])\\\\1$"); - re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); - if (re2.test(w)) - w = w + "e"; - else if (re3.test(w)) { - re = /.$/; - w = w.replace(re,""); - } - else if (re4.test(w)) - w = w + "e"; - } - } - - // Step 1c - re = /^(.+?)y$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(s_v); - if (re.test(stem)) - w = stem + "i"; - } - - // Step 2 - re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|\ -ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - suffix = fp[2]; - re = new RegExp(mgr0); - if (re.test(stem)) - w = stem + step2list[suffix]; - } - - // Step 3 - re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - suffix = fp[2]; - re = new RegExp(mgr0); - if (re.test(stem)) - w = stem + step3list[suffix]; - } - - // Step 4 - re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|\ -iti|ous|ive|ize)$/; - re2 = /^(.+?)(s|t)(ion)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(mgr1); - if (re.test(stem)) - w = stem; - } - else if (re2.test(w)) { - var fp = re2.exec(w); - stem = fp[1] + fp[2]; - re2 = new RegExp(mgr1); - if (re2.test(stem)) - w = stem; - } - - // Step 5 - re = /^(.+?)e$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(mgr1); - re2 = new RegExp(meq1); - re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); - if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) - w = stem; - } - re = /ll$/; - re2 = new RegExp(mgr1); - if (re.test(w) && re2.test(w)) { - re = /.$/; - w = w.replace(re,""); - } - - // and turn initial Y back to y - if (firstch == "y") - w = firstch.toLowerCase() + w.substr(1); - return w; - } -} -""" - class SearchChinese(SearchLanguage): """Chinese search implementation""" lang = 'zh' language_name = 'Chinese' - js_stemmer_code = js_porter_stemmer - stopwords = english_stopwords + js_stemmer_rawcode = 'english-stemmer.js' + stopwords = ENGLISH_STOPWORDS latin1_letters = re.compile(r'[a-zA-Z0-9_]+') def __init__(self, options: dict[str, str]) -> None: super().__init__(options) self.latin_terms: set[str] = set() - - def init(self, options: dict[str, str]) -> None: dict_path = options.get('dict', JIEBA_DEFAULT_DICT) if dict_path and Path(dict_path).is_file(): jieba_load_userdict(str(dict_path)) diff --git a/addons/source-python/packages/site-packages/sphinx/templates/latex/latex.tex.jinja b/addons/source-python/packages/site-packages/sphinx/templates/latex/latex.tex.jinja index deb030504..4ba2c46a7 100644 --- a/addons/source-python/packages/site-packages/sphinx/templates/latex/latex.tex.jinja +++ b/addons/source-python/packages/site-packages/sphinx/templates/latex/latex.tex.jinja @@ -16,6 +16,7 @@ \ifdefined\pdfimageresolution \pdfimageresolution= \numexpr \dimexpr1in\relax/\sphinxpxdimen\relax \fi +\newdimen\sphinxremdimen\sphinxremdimen = <%= pointsize%> %% let collapsible pdf bookmarks panel have high depth per default \PassOptionsToPackage{bookmarksdepth=5}{hyperref} <% if use_xindy -%> diff --git a/addons/source-python/packages/site-packages/sphinx/templates/latex/tabulary.tex.jinja b/addons/source-python/packages/site-packages/sphinx/templates/latex/tabulary.tex.jinja index 6ebcec6d2..7ba065ed1 100644 --- a/addons/source-python/packages/site-packages/sphinx/templates/latex/tabulary.tex.jinja +++ b/addons/source-python/packages/site-packages/sphinx/templates/latex/tabulary.tex.jinja @@ -21,6 +21,9 @@ <% if 'nocolorrows' in table.styles -%> \sphinxthistablewithnocolorrowsstyle <% endif -%> +<% if table.is_nested -%> +\sphinxthistabularywithnohlinesifinlongtable +<% endif -%> <% if table.align -%> <%- if table.align in ('center', 'default') -%> \centering diff --git a/addons/source-python/packages/site-packages/sphinx/testing/fixtures.py b/addons/source-python/packages/site-packages/sphinx/testing/fixtures.py index ec143facc..c6fdebe6e 100644 --- a/addons/source-python/packages/site-packages/sphinx/testing/fixtures.py +++ b/addons/source-python/packages/site-packages/sphinx/testing/fixtures.py @@ -143,7 +143,7 @@ def test_params(request: Any) -> dict[str, Any]: if result['shared_result'] and not isinstance(result['shared_result'], str): msg = 'You can only provide a string type of value for "shared_result"' - raise pytest.Exception(msg) + pytest.fail(msg) return result @@ -151,7 +151,7 @@ def test_params(request: Any) -> dict[str, Any]: def app( test_params: dict[str, Any], app_params: _app_params, - make_app: Callable[[], SphinxTestApp], + make_app: Callable[..., SphinxTestApp], shared_result: SharedResult, ) -> Iterator[SphinxTestApp]: """Provides the 'sphinx.application.Sphinx' object""" @@ -183,7 +183,7 @@ def warning(app: SphinxTestApp) -> StringIO: @pytest.fixture -def make_app(test_params: dict[str, Any]) -> Iterator[Callable[[], SphinxTestApp]]: +def make_app(test_params: dict[str, Any]) -> Iterator[Callable[..., SphinxTestApp]]: """Provides make_app function to initialize SphinxTestApp instance. if you want to initialize 'app' in your test function. please use this instead of using SphinxTestApp class directory. diff --git a/addons/source-python/packages/site-packages/sphinx/testing/restructuredtext.py b/addons/source-python/packages/site-packages/sphinx/testing/restructuredtext.py index b04b61a40..548ef5f27 100644 --- a/addons/source-python/packages/site-packages/sphinx/testing/restructuredtext.py +++ b/addons/source-python/packages/site-packages/sphinx/testing/restructuredtext.py @@ -2,11 +2,8 @@ from typing import TYPE_CHECKING -from docutils.core import publish_doctree - -from sphinx.io import SphinxStandaloneReader from sphinx.parsers import RSTParser -from sphinx.util.docutils import sphinx_domains +from sphinx.util.docutils import _parse_str_to_doctree if TYPE_CHECKING: from docutils import nodes @@ -15,27 +12,35 @@ def parse(app: Sphinx, text: str, docname: str = 'index') -> nodes.document: - """Parse a string as reStructuredText with Sphinx application.""" + """Parse a string as reStructuredText with Sphinx.""" + config = app.config env = app.env + registry = app.registry + srcdir = app.srcdir + + # Get settings + settings_overrides = { + 'env': env, + 'gettext_compact': True, + 'input_encoding': 'utf-8', + 'output_encoding': 'unicode', + 'traceback': True, + } + + # Create parser + parser = RSTParser() + parser._config = config + parser._env = env + + env.current_document.docname = docname try: - app.env.current_document.docname = docname - reader = SphinxStandaloneReader() - reader.setup(app) - parser = RSTParser() - parser.set_application(app) - with sphinx_domains(env): - return publish_doctree( - text, - str(app.srcdir / f'{docname}.rst'), - reader=reader, - parser=parser, - settings_overrides={ - 'env': env, - 'gettext_compact': True, - 'input_encoding': 'utf-8', - 'output_encoding': 'unicode', - 'traceback': True, - }, - ) + return _parse_str_to_doctree( + text, + filename=srcdir / f'{docname}.rst', + default_settings=settings_overrides, + env=env, + parser=parser, + transforms=registry.get_transforms(), + ) finally: env.current_document.docname = '' diff --git a/addons/source-python/packages/site-packages/sphinx/testing/util.py b/addons/source-python/packages/site-packages/sphinx/testing/util.py index a7244bb32..28336bc86 100644 --- a/addons/source-python/packages/site-packages/sphinx/testing/util.py +++ b/addons/source-python/packages/site-packages/sphinx/testing/util.py @@ -15,7 +15,6 @@ import sphinx.application import sphinx.locale import sphinx.pycode -from sphinx._cli.util.errors import strip_escape_sequences from sphinx.util.docutils import additional_nodes if TYPE_CHECKING: @@ -45,7 +44,7 @@ def assert_node(node: Node, cls: Any = None, xpath: str = '', **kwargs: Any) -> assert_node(node[0], cls[1:], xpath=xpath + '[0]', **kwargs) elif isinstance(cls, tuple): assert ( - isinstance(node, list | nodes.Element) + isinstance(node, (list, nodes.Element)) ), f'The node{xpath} does not have any items' # fmt: skip assert ( len(node) == len(cls) @@ -267,25 +266,3 @@ def _clean_up_global_state() -> None: # clean up autodoc global state sphinx.pycode.ModuleAnalyzer.cache.clear() - - -# deprecated name -> (object to return, canonical path or '', removal version) -_DEPRECATED_OBJECTS: dict[str, tuple[Any, str, tuple[int, int]]] = { - 'strip_escseq': ( - strip_escape_sequences, - 'sphinx.util.console.strip_escape_sequences', - (9, 0), - ), -} - - -def __getattr__(name: str) -> Any: - if name not in _DEPRECATED_OBJECTS: - msg = f'module {__name__!r} has no attribute {name!r}' - raise AttributeError(msg) - - from sphinx.deprecation import _deprecation_warning - - deprecated_object, canonical_name, remove = _DEPRECATED_OBJECTS[name] - _deprecation_warning(__name__, name, canonical_name, remove=remove) - return deprecated_object diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinx.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinx.sty index 8837485c5..0737dae32 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinx.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinx.sty @@ -9,7 +9,7 @@ % by the Sphinx LaTeX writer. \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{sphinx}[2024/11/23 v8.2.0 Sphinx LaTeX package (sphinx-doc)] +\ProvidesPackage{sphinx}[2025/12/26 v9.1.0 Sphinx LaTeX package (sphinx-doc)] % provides \ltx@ifundefined % (many packages load ltxcmds: graphicx does for pdftex and lualatex but @@ -67,7 +67,7 @@ Footnote rendering may have had problems, due to extra package or document class; check latex log for instructions}% \@namedef{sphinx_buildwarning_badiconpackage}{% - You have set iconpackage=\spx@opt@iconpackage, but this LaTeX package + You have set iconpackage=\spx@usr@iconpackage, but this LaTeX package is not found}% %% OPTION HANDLING @@ -672,7 +672,7 @@ % defaults for them remain not to have specific colour. % % 7.4.0 adds keys for admonition titles: for background and foreground colors, -% and for icons (whose defaults are picked from Free Fontawesome 5). +% and for icons. \def\spx@tempa#1{% \expandafter\spx@tempb \csname if#1withshadowcolor\expandafter\endcsname @@ -869,80 +869,125 @@ } % 7.4.0 Support for icons in admonition titles -% We try to -% - get Sphinx PDF builds to process fine in absence of fontawesome5 -% - use fontawesome5 if present, but not if user prefers another package -% - provide an interface for using other LaTeX code for icons -% - provide an interface for using some other package than fontawesome5 -% Indeed we can't load fontawesome5 unconditionally even if available, -% as it proves incompatible with fontawesome package. -% We thus must delay its loading. -\IfFileExists{fontawesome5.sty}{% - \DeclareStringOption[fontawesome5]{iconpackage}% +% +% We let Sphinx use, listed in order of priority: +% - a user-specified package via iconpackage key, +% - fontawesome7 (supported since 9.0.0), +% - fontawesome6 (supported since 9.0.0), +% - fontawesome5, +% - fontawesome, +% - or nothing at all, and then icons are not drawn. +% To allow a user-specified package, an extra interface +% is provided for specifying the icon-drawing LaTeX code. +% +% We can't load fontawesome7 (or 6 or 5) unconditionally even if available, as it +% is incompatible with fontawesome package which may be preferred by user. We +% thus must delay loading the package to at begin document, and for now can +% only set the default value of iconpackage key. +\IfFileExists{fontawesome7.sty}{% + \DeclareStringOption[fontawesome7]{iconpackage}% }% {% - \IfFileExists{fontawesome.sty} - {\DeclareStringOption[fontawesome]{iconpackage}} - {\DeclareStringOption[none]{iconpackage}}% + \IfFileExists{fontawesome6.sty}{% + \DeclareStringOption[fontawesome6]{iconpackage}% + }% + {% + \IfFileExists{fontawesome5.sty}{% + \DeclareStringOption[fontawesome5]{iconpackage}% + }% + {% + \IfFileExists{fontawesome.sty} + {\DeclareStringOption[fontawesome]{iconpackage}} + {\DeclareStringOption[none]{iconpackage}}% + }% + }% }% -\newcommand\spx@faIcon[2][]{}% -% The above \spx@faIcon which gobbles one mandatory and one optional -% argument is put into use only if both fontawesome5 and fontawesome -% LaTeX packages are not available, as part of the defaults for the -% div.*_title-icon keys (these keys can be redefined via the sphinxsetup -% interface). -% -\def\spxstring@fontawesome{fontawesome} -\def\spxstring@fontawesomev{fontawesome5} +% Unfortunately icon macro names are not the same across fontawesome, +% fontawesome5, fontawesome6 and fontawesome7 LaTeX packages. +% At 9.0.0 we refactor the +% icon support code into something easier to maintain in future in case of a +% fontawesome8, etc... +% +% TODO: Handle spaces possibly caused by bad user usage of iconpackage key? +% This would need to check how LaTeX handle spaces in package name +% in \RequirePackage command. Things in this area may have changed +% recently (2025/04). \AtBeginDocument{% \ifx\spx@opt@iconpackage\spxstring@none \else \IfFileExists{\spx@opt@iconpackage.sty} - {\RequirePackage{\spx@opt@iconpackage}% - \ifx\spx@opt@iconpackage\spxstring@fontawesomev - \renewcommand\spx@faIcon{\faIcon}% - \else - \ifx\spx@opt@iconpackage\spxstring@fontawesome - \renewcommand\spx@faIcon[2][]{\faicon{##2}}% - % The \ifdefined's are a bit silly because we know that - % fontawesome.sty does not provide it, but perhaps - % there can be some new release of that package? - \ifdefined\faicon@lightbulb\else - \let\faicon@lightbulb\faLightbulbO - \fi - \ifdefined\faicon@radiation\else - \let\faicon@radiation\faBolt - \fi - \ifdefined\faicon@pen\else - \let\faicon@pen\faPencil - \fi - % if neither has been required, \spx@faIcon will simply swallow - % its argument and it is up to user - % to set the various div.*_title-icon keys appropriately. - \fi\fi % - }% + {\RequirePackage{\spx@opt@iconpackage}}% {% - \sphinxbuildwarning{badiconpackage}% - \PackageWarningNoLine{sphinx}{% - You have set iconpackage=\spx@opt@iconpackage\MessageBreak - But \spx@opt@iconpackage.sty is not found by LaTeX} + \let\spx@usr@iconpackage\spx@opt@iconpackage + \sphinxbuildwarning{badiconpackage}% + \PackageWarningNoLine{sphinx}{% + You have set iconpackage=\spx@usr@iconpackage\MessageBreak + But \spx@usr@iconpackage.sty is not found by LaTeX} + \let\spx@opt@iconpackage\spxstring@none }% \fi } +% Icon defaults depending on package used. +% Attention! no extra spaces (to align here) when using \@namedef! + +\@namedef{spx@fontawesome6@note}{\faIcon{circle-info}} +\@namedef{spx@fontawesome6@hint}{\faIcon[regular]{lightbulb}} +\@namedef{spx@fontawesome6@tip}{\faIcon[regular]{lightbulb}} +\@namedef{spx@fontawesome6@seealso}{\faIcon{share}} +\@namedef{spx@fontawesome6@todo}{\faIcon{pen}} +\@namedef{spx@fontawesome6@important}{\faIcon{circle-pause}} +\@namedef{spx@fontawesome6@caution}{\faIcon{radiation}} +\@namedef{spx@fontawesome6@warning}{\faIcon{triangle-exclamation}} +\@namedef{spx@fontawesome6@attention}{\faIcon{triangle-exclamation}} +\@namedef{spx@fontawesome6@danger}{\faIcon{radiation}} +\@namedef{spx@fontawesome6@error}{\faIcon{circle-xmark}} + +% Turns out that fontawesome7 commands for our target icons are +% same as with fontawesome6. So make a loop to spare a few lines here. +\@for\x:=note,hint,tip,seealso,todo,important,caution,warning,attention,% + danger,error% +\do{\expandafter\let\csname spx@fontawesome7@\x\expandafter\endcsname + \csname spx@fontawesome6@\x\endcsname} + +\@namedef{spx@fontawesome5@note}{\faIcon{info-circle}} +\@namedef{spx@fontawesome5@hint}{\faIcon[regular]{lightbulb}} +\@namedef{spx@fontawesome5@tip}{\faIcon[regular]{lightbulb}} +\@namedef{spx@fontawesome5@seealso}{\faIcon{share}} +\@namedef{spx@fontawesome5@todo}{\faIcon{pen}} +\@namedef{spx@fontawesome5@important}{\faIcon{pause-circle}} +\@namedef{spx@fontawesome5@caution}{\faIcon{radiation}} +\@namedef{spx@fontawesome5@warning}{\faIcon{exclamation-triangle}} +\@namedef{spx@fontawesome5@attention}{\faIcon{exclamation-triangle}} +\@namedef{spx@fontawesome5@danger}{\faIcon{radiation}} +\@namedef{spx@fontawesome5@error}{\faIcon{times-circle}} + +\def\spx@fontawesome@note {\faicon{info-circle}} +\def\spx@fontawesome@hint {\faicon{lightbulb-o}} +\def\spx@fontawesome@tip {\faicon{lightbulb-o}} +\def\spx@fontawesome@seealso {\faicon{share}} +\def\spx@fontawesome@todo {\faicon{pencil}} +\def\spx@fontawesome@important{\faicon{pause-circle}} +\def\spx@fontawesome@caution {\faicon{bolt}} +\def\spx@fontawesome@warning {\faicon{exclamation-triangle}} +\def\spx@fontawesome@attention{\faicon{exclamation-triangle}} +\def\spx@fontawesome@danger {\faicon{bolt}} +\def\spx@fontawesome@error {\faicon{times-circle}} + +% \spx@none@{note,hint,...} left undefined, the \@nameuse will be \relax +\def\spx@titleicon@default#1{\@nameuse{spx@\spx@opt@iconpackage @#1}} \setkeys{sphinx}{ -% Icon defaults. - div.note_title-icon = \spx@faIcon{info-circle}, - div.hint_title-icon = \spx@faIcon[regular]{lightbulb}, - div.tip_title-icon = \spx@faIcon[regular]{lightbulb}, - div.seealso_title-icon = \spx@faIcon{share}, - div.todo_title-icon = \spx@faIcon{pen}, - div.important_title-icon = \spx@faIcon{pause-circle}, - div.caution_title-icon = \spx@faIcon{radiation}, - div.warning_title-icon = \spx@faIcon{exclamation-triangle}, - div.attention_title-icon = \spx@faIcon{exclamation-triangle}, - div.danger_title-icon = \spx@faIcon{radiation}, - div.error_title-icon = \spx@faIcon{times-circle}, + div.note_title-icon = \spx@titleicon@default{note}, + div.hint_title-icon = \spx@titleicon@default{hint}, + div.tip_title-icon = \spx@titleicon@default{tip}, + div.seealso_title-icon = \spx@titleicon@default{seealso}, + div.todo_title-icon = \spx@titleicon@default{todo}, + div.important_title-icon = \spx@titleicon@default{important}, + div.caution_title-icon = \spx@titleicon@default{caution}, + div.warning_title-icon = \spx@titleicon@default{warning}, + div.attention_title-icon = \spx@titleicon@default{attention}, + div.danger_title-icon = \spx@titleicon@default{danger}, + div.error_title-icon = \spx@titleicon@default{error}, % MEMO: the new at 8.1.0 defaults for contents/topic/sidebar directives % use no icons, they use \sphinxdotitlerow which detects automatically % whether title-icon key has been set or not. @@ -1130,7 +1175,9 @@ %% PYGMENTS % stylesheet for highlighting with pygments \RequirePackage{sphinxhighlight} - +\let\spx@PYG\PYG +% See sphinxlatexliterals.sty for \spx@FV@Tab +\protected\def\PYG#1#2{\spx@PYG{#1}{\let\FV@Tab\spx@FV@Tab#2}} %% TABLES % @@ -1192,5 +1239,25 @@ % FIXME: this line should be dropped, as "9" is default anyhow. \ifdefined\pdfcompresslevel\pdfcompresslevel = 9 \fi - +%%% SUPPORT FOR CSS3 EXTRA LENGTH UNITS +% cf rstdim_to_latexdim in latex.py +% +\def\sphinxchdimen{\dimexpr\fontcharwd\font`0\relax} +% TODO: decide if we want rather \textwidth/\textheight. +\newdimen\sphinxvwdimen + \sphinxvwdimen=\dimexpr0.01\paperwidth\relax +\newdimen\sphinxvhdimen + \sphinxvhdimen=\dimexpr0.01\paperheight\relax +\newdimen\sphinxvmindimen + \sphinxvmindimen=\dimexpr + \ifdim\paperwidth<\paperheight\sphinxvwdimen\else\sphinxvhdimen\fi + \relax +\newdimen\sphinxvmaxdimen + \sphinxvmaxdimen=\dimexpr + \ifdim\paperwidth<\paperheight\sphinxvhdimen\else\sphinxvwdimen\fi + \relax +\newdimen\sphinxQdimen + \sphinxQdimen=0.25mm +% MEMO: \sphinxremdimen is defined in the template as it needs +% the config variable pointsize. \endinput diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexadmonitions.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexadmonitions.sty index 051990359..dd3145d8a 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexadmonitions.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexadmonitions.sty @@ -1,7 +1,7 @@ %% NOTICES AND ADMONITIONS % % change this info string if making any custom modification -\ProvidesPackage{sphinxlatexadmonitions}[2024/10/11 v8.1.1 admonitions] +\ProvidesPackage{sphinxlatexadmonitions}[2025/10/24 v9.0.0 admonitions] % Provides support for this output mark-up from Sphinx latex writer: % @@ -53,6 +53,7 @@ % - \spx@boxes@fcolorbox@setup from sphinxpackageboxes.sty % \RequirePackage{framed} +\RequirePackage{needspace} % Those are required either before or after by sphinx.sty anyhow, but for % clarity we list them here: \RequirePackage{sphinxlatexgraphics} @@ -107,7 +108,12 @@ % % Code adapted from framed.sty's "snugshade" environment. % Nesting works (inner frames do not allow page breaks). +% +% At 9.0, avoid admonition title getting separated from contents at a +% page break. +\newcommand\sphinxheavyboxneedspacecommand{\needspace{5\baselineskip}} \newenvironment{sphinxheavybox}{\par + \sphinxheavyboxneedspacecommand % (MEMO: it is not a problem here if there is no sphinxShadowColor, % as it used only if set) \spx@boxes@fcolorbox@setup{\spx@noticetype}% @@ -342,8 +348,7 @@ \textcolor{sphinx#1TtlFgColor}{% \@nameuse{sphinx#1TtlIcon}% % The next macro is located here for legacy reasons of earlier - % functioning of \spx@faIcon. When fontawesome{5,}.sty both - % are unavailable, it (formerly) gobbled this next macro. + % functioning of sphinx.sty now removed \spx@faIcon macro. % We leave it here now although it could be moved to after % the closing brace. \sphinxtitlerowaftericonspacecmd diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexliterals.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexliterals.sty index 11991d9c3..ef40cf6c7 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexliterals.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexliterals.sty @@ -1,7 +1,7 @@ %% LITERAL BLOCKS % % change this info string if making any custom modification -\ProvidesPackage{sphinxlatexliterals}[2024/07/01 v7.4.0 code-blocks and parsed literals] +\ProvidesPackage{sphinxlatexliterals}[2025/12/26 v9.1.0 code-blocks and parsed literals] % Provides support for this output mark-up from Sphinx latex writer: % @@ -18,6 +18,9 @@ % % - environments: % - sphinxVerbatim +% - sphinxLongVerbatimFirst +% - sphinxLongVerbatimMiddle +% - sphinxLongVerbatimLast % - sphinxVerbatimintable % - sphinxalltt % @@ -36,9 +39,10 @@ \RequirePackage{sphinxpackageboxes} % 7.4.0 removes unneeded usage of \spx@boxes@border -% also in sphinxlatexadmonitions.sty: -% This is a workaround to a "feature" of French lists, when literal block -% follows immediately; usable generally (does only \par then), a priori... +% Also in sphinxlatexadmonitions.sty: +% This is a workaround to a "feature" of babel-french latex package, +% which causes bad vertical spacing when a literal block follows a list. +% Due to the conditional here, this should be usable generally. \providecommand*\sphinxvspacefixafterfrenchlists{% \ifvmode\ifdim\lastskip<\z@ \vskip\parskip\fi\else\par\fi } @@ -52,10 +56,48 @@ % 3- optional line emphasizing % 4- while still allowing expansion of Pygments latex mark-up % Other aspects such as framing, caption handling, codeline wrapping are -% added on top of it. We should stop using fancyvrb and implement -% 1, 2, 3, 4 by own Sphinx fully native Verbatim. This would greatly simplify -% in particular wrapping long code lines in a way allowing page breaks. +% added on top of it. +% Perhaps we could cease using fancyvrb and implement 1, 2, 3, 4 by own pure +% LaTeX code. But dropping fancyvrb and keeping its native features and those +% we added by hacking into it would require a significant effort. \RequirePackage{fancyvrb} +% Next line is in order to let TAB characters (ascii 9) obey tab stops, +% MEMO: attow (2025/12/26), a TAB can not be found inside a code-block +% rendered by sphinxVerbatim because it has been replaced earlier by a +% fixed number of spaces, as applies also to HTML output (#14065). +% (default: 8 spaces per TAB). But this is not the case for contents +% inserted via a literalinclude, and next line will have an impact on +% TABs. cf #13656, #14064, #14065. +\fvset{obeytabs} +% MEMO: with the above option, fancyvrb executes at each code-block some +% initialization code which does in particular two things: +% - make TABs act according to something called \FV@TrueTab, +% - make some wrapper of each code line, called \FV@ObeyTabs, +% act like something called \FV@@ObeyTabs and thus provide +% the correct context for \FV@TrueTab. +% We need a special variant of \FV@@ObeyTabs for compatibility with +% our added feature of wrapping long code lines. Here it is: +\def\FV@@ObeyTabs#1{\setbox\FV@TabBox=\hbox{#1}\unhbox\FV@TabBox} +% In code further down this file we use \FV@ObeyTabs, not \FV@@ObeyTabs, +% knowing that the former is mapper to the latter. At some locations +% the argument #1 is already a typeset box and nothing happens. One of +% the two main locations where there will be an effect is the occurrence +% in \spx@verb@@PreProcessLine. +% +% Tab stops are located every 8 positions as per fancyvrb's default setting +% for its tabsize option. However, fancyvrb has a bug/limitation, and its +% \FV@TrueTab acting inside the #1 above can work only at "top level", +% i.e. breakage (or rather loss of contents) happens if the TAB character +% (hence \FV@TrueTab) is located in the (second) argument of \PYG. +% +% Hence, we prepare a "safe" variant, which is the one which will be used if +% found in the second argument of \PYG. For how this ends up into \PYG, see +% sphinx.sty. +\def\spx@FV@Tab{\allowbreak\hbox to\FancyVerbTabSize\fontdimen2\font{\hss\FV@TabChar}} +% MEMO: \FV@TabChar does nothing without option showtabs (which we do not +% use). With the option showtabs, it would draw something similar to +% a ->| at the end of the inserted horizontal whitespace. + % For parsed-literal blocks. \RequirePackage{alltt} % Display "real" single quotes in literal blocks. @@ -241,6 +283,8 @@ % _, }, ^, &, >, -, ~, and \: stay at end of broken line. % Use of \textquotesingle for straight quote. % FIXME: convert this to package options ? +% MEMO: "beforelist" and "afterlist" hold no relation with lists, +% they are just "\do lists" in the inherited TeX sense. \newcommand*\sphinxbreaksbeforelist {% \do\PYGZob\{\do\PYGZlt\<\do\PYGZsh\#\do\PYGZpc\%% {, <, #, %, \do\PYGZdl\$\do\PYGZdq\"% $, " @@ -278,6 +322,8 @@ \catcode`##1\active}% \sphinxbreaksafteractivelist \lccode`\~`\~ + % visit_desc_name will insert non TeX-escaped ~ in the source + \let~\spx@verbatim@space } % If the linebreak is at a space, the latter will be displayed as visible @@ -293,7 +339,7 @@ \newcommand{\sphinxliteralblockwithoutcaptionneedspace}{1.5\baselineskip} % The title (caption) is specified from outside as macro \sphinxVerbatimTitle. % \sphinxVerbatimTitle is reset to empty after each use of Verbatim. -\newcommand*\sphinxVerbatimTitle {} +\let\sphinxVerbatimTitle\@empty % This box to typeset the caption before framed.sty multiple passes for framing. \newbox\sphinxVerbatim@TitleBox % This box to measure contents if nested as inner \MakeFramed requires then @@ -319,6 +365,13 @@ } \newcommand*{\sphinxverbatimsmallskipamount}{\smallskipamount} % serves to implement line highlighting +% +% HTML interprets the argument of :emphasize-lines: as referring to effective +% line numbers in output (i.e. first line is always associated with number 1 +% even though the actual printed line number, or the original line number in +% the source may differ, due to setting of :lineno-start:). This is why we do +% not use here \c@FancyVerbLine, but resort to \FV@CodeLineNo, for PDF output +% to follow same rules as HTML. \newcommand\sphinxFancyVerbFormatLine[1]{% \expandafter\sphinx@verbatim@checkifhl\expandafter{\the\FV@CodeLineNo}% \ifin@ @@ -327,6 +380,22 @@ \sphinxVerbatimFormatLine{#1}% \fi }% +% This complicates matters for the LongVerbatim environment added at 9.1.0: we +% need a dedicated variant, working in sync with mark-up from the LaTeX writer +% for initialization/reset of \sphinxverbatimfirstnumber. We could extend +% this to be used with legacy Verbatim (used code-blocks of up to 500 code +% lines), but to minimize risks of overlooked consequences we, for time being, +% keep the legacy code as is. +\newcommand\sphinxLongVerbatimFancyVerbFormatLine[1]{% + \expandafter\sphinx@verbatim@checkifhl\expandafter{% + \the\numexpr\c@FancyVerbLine - \sphinxverbatimfirstnumber + \@ne + }% + \ifin@ + \sphinxVerbatimHighlightLine{#1}% + \else + \sphinxVerbatimFormatLine{#1}% + \fi +}% \let\spx@original@set@color\set@color \newcommand\sphinxVerbatimHighlightLine[1]{% % This is morally a \colorbox (with a \fboxsep which would be 0pt) @@ -341,7 +410,7 @@ % (cf \spx@verb@@PreProcessLine; refs: #8686) % MEMO: formerly we did something with \fboxsep in relation to the LaTeX % bug graphics/4524 for \colorbox, but as we don't use \colorbox... - \setbox\z@\hb@xt@\linewidth{\strut#1\hss}% + \setbox\z@\hb@xt@\linewidth{\FV@ObeyTabs{\strut#1}\hss}% % MEMO: \colorbox would lead to \color{sphinxVerbatimHighlightColor} % plus \color@block, which results in doubled (a color.sty feature) % color command send to device driver and more importantly has @@ -358,13 +427,10 @@ % we added a group only for \FV@RightListNumber not be influenced by the % \current@color, if \fvset has been used to set numbers to the right. }% -% MEMO: fancyvrb has options obeytabs and tabsize. Anyhow tab characters -% do not make it to the tex file, they have been converted to spaces earlier. -% But, if this was not the case, the support would be implemented here via -% \newcommand\sphinxVerbatimFormatLine[1]{\FV@ObeyTabs{\strut #1}}% -\newcommand\sphinxVerbatimFormatLine[1]{\strut#1}% -% MEMO: if verbatimwrapslines is set to true (default) the #1 above is -% simply \box\spx@tempboxb, from the next two macros. +% MEMO: if verbatimwrapslines is set to true (which is default) the #1 here is +% already a box, and the \FV@ObeyTabs here can not modify it. The real action +% happens in \spx@verb@@PreProcessLine. +\newcommand\sphinxVerbatimFormatLine[1]{\FV@ObeyTabs{\strut #1}}% % The next two macros are a deep hack of fancyvrb.sty core line processing in % order to wrap too long lines, either at spaces and natural break-points, % (soft wrap) or optionally at any character (hard wrap). This requires deep @@ -420,13 +486,7 @@ \setbox\spx@tempboxa=\vtop{\hsize\linewidth \raggedright\hyphenpenalty\z@\exhyphenpenalty\z@ \doublehyphendemerits\z@\finalhyphendemerits\z@ -% MEMO: fancyvrb has options obeytabs and tabsize. Anyhow tab characters -% do not make it to the tex file, they have been converted to spaces earlier. -% But, if this was not the case, the support would be implemented here via -% \FV@ObeyTabs{\strut\spx@verb@FV@Line\strut}% -% And one would need a similar change in the measuring phase done by -% \spx@verb@DecideIfWillDoForceWrap - \strut\spx@verb@FV@Line\strut + \FV@ObeyTabs{\strut\spx@verb@FV@Line\strut}% % MEMO: since LaTeX 2021-06-01, there might be some hooks executed at % start and end of paragraphs (in future: PDF tagging), but we need an % explicit \par here for that. Else the kernel hooks at start of paragraph @@ -515,7 +575,7 @@ % Avoid TeX reporting Overfull \hbox'es during this measuring phase. Setting % \hbadness to \@M to avoid Underfull reports is unneeded due to \raggedright. \hfuzz\maxdimen - \spx@everypar{}\noindent\strut\FV@Line\strut\spx@par + \spx@everypar{}\noindent\FV@ObeyTabs{\strut\FV@Line\strut}\spx@par \spx@verb@getwidths}% \ifdim\spx@verb@maxwidth> \dimexpr\linewidth+\spx@opt@verbatimmaxoverfull\fontcharwd\font`X \relax @@ -559,6 +619,8 @@ \fi }% % auxiliary macros to implement "cut long line even in middle of word" +% MEMO: it is important that this is does not rely on any specific \PYG +% meaning, it only relies on its presence in the mark-up, not its meaning. \catcode`Z=3 % safe delimiter \def\spx@verb@wrapPYG{% \futurelet\spx@nexttoken\spx@verb@wrapPYG@i @@ -653,9 +715,12 @@ \sbox\sphinxcontinuationbox {\spx@opt@verbatimcontinued}% \sbox\sphinxvisiblespacebox {\spx@opt@verbatimvisiblespace}% }% -\newenvironment{sphinxVerbatim}{% - % first, let's check if there is a caption - \ifx\sphinxVerbatimTitle\empty +% +% For matters of 9.1.0 LongVerbatim, we extract from original Verbatim various +% pieces. Also, @Before and @After assignments are made global, to support an +% optional bottom caption position also with LongVerbatim, and one needs to +% always set them, as they are not undone anymore at end of scope. +\def\sphinxverbatim@preparetitle@none{% \sphinxvspacefixafterfrenchlists \parskip\z@skip \vskip\sphinxverbatimsmallskipamount @@ -666,11 +731,12 @@ \needspace{\sphinxliteralblockwithoutcaptionneedspace}% \phantomsection\sphinxLiteralBlockLabel \fi - \else - \parskip\z@skip - \if t\spx@opt@literalblockcappos + \global\let\sphinxVerbatim@Before\@empty + \global\let\sphinxVerbatim@After\@empty +}% +\def\sphinxverbatim@preparetitle@top{% \vskip\spx@abovecaptionskip - \def\sphinxVerbatim@Before + \gdef\sphinxVerbatim@Before {\sphinxVerbatim@Title\nointerlineskip \kern\dimexpr-\dp\strutbox+\sphinxbelowcaptionspace % MEMO: prior to 7.4.0 a test was done for presence or @@ -679,27 +745,44 @@ % assumed, so this got removed. % caption package adds \abovecaptionskip vspace, remove it \spx@ifcaptionpackage{-\abovecaptionskip}{}\relax}% - \else + \global\let\sphinxVerbatim@After\@empty +}% +\def\sphinxverbatim@preparetitle@bottom{% \vskip\sphinxverbatimsmallskipamount - \def\sphinxVerbatim@After + \global\let\sphinxVerbatim@Before\@empty + \gdef\sphinxVerbatim@After {\nointerlineskip\kern\dimexpr\dp\strutbox % MEMO: 7.4.0 removes here too an optional removal of bottom padding \spx@ifcaptionpackage{-\abovecaptionskip}{}\relax \sphinxVerbatim@Title}% - \fi +}% +\def\sphinxverbatim@preparetitle@setbox{% \def\@captype{literalblock}% \capstart % \sphinxVerbatimTitle must reset color - \setbox\sphinxVerbatim@TitleBox + \global\setbox\sphinxVerbatim@TitleBox \hbox{\begin{minipage}{\linewidth}% % caption package may detect wrongly if top or bottom, so we help it \spx@ifcaptionpackage {\caption@setposition{\spx@opt@literalblockcappos}}{}% \sphinxVerbatimTitle \end{minipage}}% +}% +\def\sphinxverbatim@preparetitle{% + % first, let's check if there is a caption + \ifx\sphinxVerbatimTitle\@empty + \sphinxverbatim@preparetitle@none + \else + \parskip\z@skip + \if t\spx@opt@literalblockcappos + \sphinxverbatim@preparetitle@top + \else + \sphinxverbatim@preparetitle@bottom + \fi + \sphinxverbatim@preparetitle@setbox \fi - \global\let\sphinxLiteralBlockLabel\empty - \global\let\sphinxVerbatimTitle\empty +}% +\def\sphinxverbatim@prepareframecommands{% % the "FrameCommand"'s are also responsible to attach the "Title". \let\FrameCommand \sphinxVerbatim@FrameCommand % those will also check status of the pre_box-decoration-break option @@ -711,9 +794,8 @@ \let\sphinxVerbatim@Continued\@empty \let\sphinxVerbatim@Continues\@empty \fi - % initialization for \spx@boxes@fcolorbox from sphinxpackageboxes.sty - % it will take into account status of verbatimwithframe Boolean - \spx@verb@boxes@fcolorbox@setup +}% +\def\sphinxverbatim@hackfancyvrb{% \ifspx@opt@verbatimwrapslines % deep hack into fancyvrb's internal processing of input lines \let\FV@@PreProcessLine\spx@verb@@PreProcessLine @@ -725,7 +807,8 @@ \fvset{codes*=\sphinxbreaksviaactive}% \fi \let\FancyVerbFormatLine\sphinxFancyVerbFormatLine - \VerbatimEnvironment +}% +\def\sphinxverbatim@Verbatim{% % workaround to fancyvrb's check of current list depth \def\@toodeep {\advance\@listdepth\@ne}% % The list environment is needed to control perfectly the vertical space. @@ -778,7 +861,7 @@ % will fetch its optional arguments if any \OriginalVerbatim }% -{% +\def\sphinxverbatim@EndVerbatim{% \endOriginalVerbatim \color@endgroup % matches the \color@begingroup \ifspx@inframed @@ -796,8 +879,10 @@ \ifdim\dimexpr \ht\sphinxVerbatim@ContentsBox+ \dp\sphinxVerbatim@ContentsBox+ - \ht\sphinxVerbatim@TitleBox+ - \dp\sphinxVerbatim@TitleBox+ + \ifx\sphinxVerbatimTitle\@empty\else % added at 9.1.0 (now global @TitleBox) + \ht\sphinxVerbatim@TitleBox+ + \dp\sphinxVerbatim@TitleBox+ + \fi % 6.2.0 uses here the dimen registers from sphinxpackageboxes.sty, % they got setup by \spx@verb@boxes@fcolorbox@setup \spx@boxes@padding@top+ @@ -822,6 +907,7 @@ % FIXME? a bottom caption may end up isolated at top of next page % (no problem with a top caption, which is default) \spx@opt@verbatimwithframefalse + % MEMO: next line has an effect only if Title does exist. \def\sphinxVerbatim@Title{\noindent\box\sphinxVerbatim@TitleBox\par}% \sphinxVerbatim@Before \noindent\unvbox\sphinxVerbatim@ContentsBox\par @@ -843,6 +929,143 @@ \ifsphinxverbatimwithminipage\end{minipage}\fi \fi \endtrivlist +}% +\newenvironment{sphinxVerbatim}{% + \sphinxverbatim@preparetitle + \sphinxverbatim@prepareframecommands + % initialization for \spx@boxes@fcolorbox from sphinxpackageboxes.sty + % it will take into account status of verbatimwithframe Boolean + \spx@verb@boxes@fcolorbox@setup + \sphinxverbatim@hackfancyvrb + \VerbatimEnvironment + \sphinxverbatim@Verbatim +}% +{% + \sphinxverbatim@EndVerbatim + \global\let\sphinxLiteralBlockLabel\@empty + \global\let\sphinxVerbatimTitle\@empty +} +\def\sphinxlongverbatim@preparefirstframecommands{% + \def\FrameCommand {% + \spx@boxes@fcolorbox@setup@openbottom + \spx@boxes@padding@bottom\z@ + \spx@verb@FrameCommand\sphinxVerbatim@Before\@empty + }% + \let\FirstFrameCommand\sphinxVerbatim@FirstFrameCommand + \let\MidFrameCommand \sphinxVerbatim@MidFrameCommand + \def\LastFrameCommand {% + \spx@boxes@fcolorbox@setup@openbottom + \spx@boxes@padding@bottom\z@ + \spx@verb@FrameCommand\@empty\@empty + }% + \ifspx@opt@verbatimhintsturnover\else + \let\sphinxVerbatim@Continued\@empty + \let\sphinxVerbatim@Continues\@empty + \fi +}% +\newenvironment{sphinxLongVerbatimFirst}{% + \sphinxverbatim@preparetitle + \sphinxlongverbatim@preparefirstframecommands + \spx@verb@boxes@fcolorbox@setup + \sphinxverbatim@hackfancyvrb + \let\FancyVerbFormatLine\sphinxLongVerbatimFancyVerbFormatLine + \VerbatimEnvironment + \sphinxverbatim@Verbatim +}% +{% + \sphinxverbatim@EndVerbatim +} +\def\sphinxLongVerbatimStitch + {\vspace{-\dimexpr\baselineskip-\FrameHeightAdjust\relax}} +\def\sphinxlongverbatim@preparemiddleframecommands{% + \def\FrameCommand {% + \spx@boxes@fcolorbox@setup@openboth + \spx@boxes@padding@top\z@ + \spx@boxes@padding@bottom\z@ + \spx@verb@FrameCommand\sphinxLongVerbatimStitch + \@empty + }% + \def\FirstFrameCommand {% + \ifspx@pre@border@open + \spx@boxes@fcolorbox@setup@openboth + \else + \spx@boxes@fcolorbox@setup@opentop + \fi + \spx@boxes@padding@top\z@ + \spx@verb@FrameCommand\sphinxLongVerbatimStitch + \sphinxVerbatim@Continues + }% + \let\MidFrameCommand \sphinxVerbatim@MidFrameCommand + \def\LastFrameCommand {% + \ifspx@pre@border@open + \spx@boxes@fcolorbox@setup@openboth + \else + \spx@boxes@fcolorbox@setup@openbottom + \fi + \spx@boxes@padding@bottom\z@ + \spx@verb@FrameCommand\sphinxVerbatim@Continued\@empty + }% + % + \ifspx@opt@verbatimhintsturnover\else + \let\sphinxVerbatim@Continued\@empty + \let\sphinxVerbatim@Continues\@empty + \fi +}% +\newenvironment{sphinxLongVerbatimMiddle}{% + \parskip\z@skip + \sphinxlongverbatim@preparemiddleframecommands + \spx@verb@boxes@fcolorbox@setup + \sphinxverbatim@hackfancyvrb + \let\FancyVerbFormatLine\sphinxLongVerbatimFancyVerbFormatLine + \VerbatimEnvironment + \sphinxverbatim@Verbatim +}% +{% + \sphinxverbatim@EndVerbatim +} +\def\sphinxlongverbatim@preparelastframecommands{% + \def\FrameCommand {% + \spx@boxes@fcolorbox@setup@opentop + \spx@boxes@padding@top\z@ + \spx@verb@FrameCommand\sphinxLongVerbatimStitch + \sphinxVerbatim@After + }% + \def\FirstFrameCommand {% + \ifspx@pre@border@open + \spx@boxes@fcolorbox@setup@openboth + \else + \spx@boxes@fcolorbox@setup@opentop + \fi + \spx@boxes@padding@bottom\z@ + \spx@verb@FrameCommand\sphinxLongVerbatimStitch + \sphinxVerbatim@Continues + }% + \let\MidFrameCommand \sphinxVerbatim@MidFrameCommand + \def\LastFrameCommand {% + \ifspx@pre@border@open + \spx@boxes@fcolorbox@setup@opentop + \fi + \spx@verb@FrameCommand\sphinxVerbatim@Continued\sphinxVerbatim@After + }% + % + \ifspx@opt@verbatimhintsturnover\else + \let\sphinxVerbatim@Continued\@empty + \let\sphinxVerbatim@Continues\@empty + \fi +}% +\newenvironment{sphinxLongVerbatimLast}{% + \parskip\z@skip + \sphinxlongverbatim@preparelastframecommands + \spx@verb@boxes@fcolorbox@setup + \sphinxverbatim@hackfancyvrb + \let\FancyVerbFormatLine\sphinxLongVerbatimFancyVerbFormatLine + \VerbatimEnvironment + \sphinxverbatim@Verbatim +}% +{% + \sphinxverbatim@EndVerbatim + \global\let\sphinxLiteralBlockLabel\@empty + \global\let\sphinxVerbatimTitle\@empty } \newenvironment {sphinxVerbatimNoFrame} {\spx@opt@verbatimwithframefalse @@ -962,7 +1185,13 @@ \let\sphinxhyphen\sphinxhyphenininlineliteral \ifspx@opt@inlineliteralwraps % break at . , ; ? ! / + % and also at ~ which will be handled like are spaces in verbatim \sphinxbreaksviaactive + % but for this we need to set this box which is empty by default: + % MEMO: it looks suboptimal to redo this each time but this is + % to obey a \sphinxsetup via raw LaTeX to set verbatimvisiblespace, + % a possibility which however will be used by 0% of Sphinx users... + \sbox\sphinxvisiblespacebox {\spx@opt@verbatimvisiblespace}% % break also at \ \setbox8=\hbox{\textbackslash}% \def\sphinx@textbackslash{\copy8}% diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexobjects.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexobjects.sty index 1147a0162..2a05dd6de 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexobjects.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexobjects.sty @@ -1,7 +1,7 @@ %% MODULE RELEASE DATA AND OBJECT DESCRIPTIONS % % change this info string if making any custom modification -\ProvidesPackage{sphinxlatexobjects}[2025/02/11 documentation environments] +\ProvidesPackage{sphinxlatexobjects}[2025/06/06 documentation environments] % Provides support for this output mark-up from Sphinx latex writer: % @@ -155,20 +155,23 @@ \pysigadjustitemsep } \newcommand{\pysiglinewithargsret}[3]{% - % as #1 may contain a footnote using \label we need to make \label - % a no-op here to avoid LaTeX complaining about duplicates -\let\spx@label\label\let\label\@gobble - \settowidth{\py@argswidth}{#1\pysigarglistopen}% -\let\label\spx@label + % #1 may contain a footnote (especially with latex_show_urls='footnote' + % and some intersphinx added hyperlinking). Here we want to measure + % a width but not typeset such a footnote (else #13619). + % Miraculously a sphinxpackagefootnote.sty tabulary compatibility + % layer employing the amsmath \ifmeasuring@ can be used here to let + % a footnote influence the actual width up to opening brace but not + % actually get typeset at this stage... + % MEMO: "argswidth" is misleading here, this code measures the name + % not the arguments. + \settowidth{\py@argswidth}{\measuring@true#1\pysigarglistopen}% \py@argswidth=\dimexpr\linewidth+\labelwidth-\py@argswidth\relax\relax \item[{#1\pysigarglistopen\py@sigparams{#2}{#3}\strut}] \pysigadjustitemsep } -\newcommand{\pysiglinewithargsretwithtypelist}[4]{ -% #1 = name, #2 = typelist, #3 = arglist, #4 = retann -\let\spx@label\label\let\label\@gobble - \settowidth{\py@argswidth}{#1\pysigtypelistopen}% -\let\label\spx@label +\newcommand{\pysiglinewithargsretwithtypelist}[4]{% + % same comment as in \pysiglinewithargsret + \settowidth{\py@argswidth}{\measuring@true#1\pysigtypelistopen}% \py@argswidth=\dimexpr\linewidth+\labelwidth-\py@argswidth\relax\relax \item[{#1\pysigtypelistopen\py@sigparamswithtypelist{#2}{#3}{#4}\strut}] \pysigadjustitemsep @@ -244,9 +247,8 @@ \newcommand{\pysigwithonelineperargwithtypelist}[4]{ % #1 = name, #2 = typelist, #3 = arglist, #4 = retann % render the type parameters list on one line, but each argument is rendered on its own line -\let\spx@label\label\let\label\@gobble - \settowidth{\py@argswidth}{#1\pysigtypelistopen}% -\let\label\spx@label + % for \measuring@true see comment in \pysiglinewithargsret + \settowidth{\py@argswidth}{\measuring@true#1\pysigtypelistopen}% \py@argswidth=\dimexpr\linewidth+\labelwidth-\py@argswidth\relax\relax \item[{#1\pysigtypelistopen\parbox[t]{\py@argswidth}{% \raggedright #2\pysigtypelistclose\pysigarglistopen\strut}\strut}] diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexstyletext.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexstyletext.sty index d083cd96a..b6408cfb2 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexstyletext.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatexstyletext.sty @@ -1,7 +1,7 @@ %% TEXT STYLING % % change this info string if making any custom modification -\ProvidesPackage{sphinxlatexstyletext}[2024/07/28 v8.1.0 text styling] +\ProvidesPackage{sphinxlatexstyletext}[2025/05/24 v9.0.0 text styling] % 7.4.0 has moved all that is related to admonitions to sphinxlatexadmonitions.sty % 8.1.0 has moved topic/contents/sidebar to sphinxlatexshadowbox.sty @@ -57,7 +57,11 @@ % reduce hyperref "Token not allowed in a PDF string" warnings on PDF builds \AtBeginDocument{\pdfstringdefDisableCommands{% % all "protected" macros possibly ending up in section titles should be here -% TODO: examine if \sphinxhref, \sphinxurl, \sphinnolinkurl should be handled +% next four were added so that URLs and internal links in titles can be allowed + \let\sphinxurl \@firstofone + \let\sphinxnolinkurl\@firstofone + \let\sphinxhref \@secondoftwo + \def\hyperref[#1]#2{#2}% for PDF bookmark to ignore #1 \let\sphinxstyleemphasis \@firstofone \let\sphinxstyleliteralemphasis \@firstofone \let\sphinxstylestrong \@firstofone diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatextables.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatextables.sty index 4114955e0..61ff67f5f 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatextables.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxlatextables.sty @@ -1,7 +1,7 @@ %% TABLES (WITH SUPPORT FOR MERGED CELLS OF GENERAL CONTENTS) % % change this info string if making any custom modification -\ProvidesPackage{sphinxlatextables}[2024/07/01 v7.4.0 tables]% +\ProvidesPackage{sphinxlatextables}[2025/12/30 v9.1.0 tables]% % Provides support for this output mark-up from Sphinx latex writer % and table templates: @@ -42,6 +42,29 @@ % - \sphinxthistablewithnocolorrowsstyle % - \sphinxthistablewithvlinesstyle % - \sphinxthistablewithnovlinesstyle +% - \sphinxbeforeendvarwidth + +% At 9.0, ALL table cell contents are wrapped into a varwidth environment. +% This helps solve issues such as #3447, #8828, and helps use tabulary +% in many more cases hence obtain better looking tables. +\def\sphinxbeforeendvarwidth{\par\vskip-\baselineskip\hbox{\strut}} +% MEMO: Mark-up uses the above macro right before all \end{varwdith} so that +% if the cell in a row extends lower than the others, its last line acquires +% standard "depth". Else it may lack any depth if without descenders such as +% "p" or "q" letters and the horizontal line or color panel will look strange. +% It originates in PR #3435 from 2017 which solved *many* table issues for +% merged cells (and injected the varwidth technique now at 9.0 applied to +% all cells). The original used \vbox{\hbox{\strut}} but that \vbox appears +% to do nothing, and it was decided after some testing (July 2025) to remove +% it, the original rationale for it being now lost. + +% These conditionals added at 9.0 for nested tables not to break row colors +% (#13635). Nested tables are only partially supported by Sphinx LaTeX. +% The method here is with no changes to neither writer nor templates. +\newif\ifspx@intable +\newif\ifspx@thistableisnested +% Try to allow nested tables in a longtable. But tabulary causes problems. +\newif\ifspx@longtable % % Also provides user command (see docs) % - \sphixncolorblend @@ -62,8 +85,8 @@ \RequirePackage{tabulary} % tabulary has a bug with its re-definition of \multicolumn in its first pass % which is not \long. But now Sphinx does not use LaTeX's \multicolumn but its -% own macro. Hence we don't even need to patch tabulary. See -% sphinxpackagemulticell.sty +% own macro. Hence we don't even need to patch tabulary. +% % X or S (Sphinx) may have meanings if some table package is loaded hence % \X was chosen to avoid possibility of conflict \newcolumntype{\X}[2]{p{\dimexpr @@ -109,7 +132,9 @@ \LTpre\z@skip\LTpost\z@skip % set to zero longtable's own skips \edef\sphinxbaselineskip{\dimexpr\the\dimexpr\baselineskip\relax\relax}% \spx@inframedtrue % message to sphinxheavybox - }% + \spx@table@setnestedflags + \spx@longtabletrue +} % Compatibility with caption package \def\sphinxthelongtablecaptionisattop{% \spx@ifcaptionpackage{\noalign{\vskip-\belowcaptionskip}}{}% @@ -122,10 +147,29 @@ \def\sphinxatlongtableend{\@nobreakfalse % latex3/latex2e#173 \prevdepth\z@\vskip\sphinxtablepost\relax}% % B. Table with tabular or tabulary -\def\sphinxattablestart{\par\vskip\dimexpr\sphinxtablepre\relax +\def\sphinxattablestart{\par + \ifvmode % guard against being nested in a table cell + \vskip\dimexpr\sphinxtablepre\relax + \fi \spx@inframedtrue % message to sphinxheavybox + \spx@table@setnestedflags }% -\let\sphinxattableend\sphinxatlongtableend +% MEMO: this happens inside a savenotes environment and hence flags +% are reset on exit of it. +\def\spx@table@setnestedflags{% Issue #13635 + \ifspx@intable + \let\spx@table@resetcolortbl\spx@nestedtable@resetcolortbl + \spx@thistableisnestedtrue + \else + \spx@intabletrue + \fi + }% +\def\sphinxattableend{% + \@nobreakfalse % <- probably unneeded as this is not a longtable + \ifvmode % guard against being nested in a table cell + \prevdepth\z@\vskip\sphinxtablepost\relax + \fi +}% % This is used by tabular and tabulary templates \newcommand*\sphinxcapstartof[1]{% \vskip\parskip @@ -223,7 +267,32 @@ % % configuration of tabulary \setlength{\tymin}{3\fontcharwd\font`0 }% minimal width of "squeezed" columns -\setlength{\tymax}{10000pt}% allow enough room for paragraphs to "compete" +\setlength{\tymax}{3000pt}% allow enough room for paragraphs to "compete" +% +% MEMO: tabulary initially renders cell contents "horizontally" to measure +% them and compare their relative importance. Its goal is to choose the +% column width so that, roughly, all columns will look about evenly +% filled. "Horizontal" rendering is incompatible with many LaTeX +% structures such as lists, so prior to Sphinx 9.0 cells with such +% "problematic" contents caused Sphinx to use tabular not tabulary; the +% tabular would then render each column in absence of :widths: option or +% tabularcolumns directive the same width equal to available text width +% divided by number of columns. At 9.0, "problematic" contents is +% wrapped into a "varwidth" environment, as was already done formerly +% for merged cells, and this avoids tabulary causing errors such as +% "incompatible with LR mode"; \sphinxcolwidth is used which sets +% the initial horizontal width for "varwidth". In the first tabulary +% pass, \sphinxcolwidth is configured (by us) to use \tymax. +% +% During testing, it was determined that the former 10000pt setting for +% \tymax would cause "Dimension too large" TeX error if two columns or +% more had cells containing admonitions (such contents does not allow +% "varwidth" to reduce the width automatically). So we use now 3000pt +% which allows up to 5 such columns while being large enough for +% tabulary algorithm to give good results for cells containing a few +% dozen words. The tabulary default of 2\textwidth proves to be too +% small for that. +% % we need access to tabulary's final computed width. \@tempdima is too volatile % to hope it has kept tabulary's value when \sphinxcolwidth needs it. \newdimen\sphinx@TY@tablewidth @@ -270,10 +339,11 @@ % cells (the code does inserts & tokens, see TN1b). It was decided to keep it % simple with \sphinxstartmulticolumn...\sphinxstopmulticolumn. % +% **** ATTENTION: Sphinx does generate at least some nested tables in LaTeX +% **** TODO: clarify if next paragraph means we must raise an +% **** if LaTeX writer detects a merged cell inside nested table. % MEMO about nesting: if sphinxmulticolumn is encountered in a nested tabular -% inside a tabulary it will think to be at top level in the tabulary. But -% Sphinx generates no nested tables, and if some LaTeX macro uses internally a -% tabular this will not have a \sphinxstartmulticolumn within it! +% inside a tabulary it will think to be at top level in the tabulary. % % 5.3.0 adds a check for multirow as single-row multi-column will allow a row % colour but multi-row multi-column should not. @@ -376,8 +446,7 @@ }% \newcommand*\sphinxcolwidth[2]{% % this dimension will always be used for varwidth, and serves as maximum - % width when cells are merged either via multirow or multicolumn or both, - % as always their contents is wrapped in varwidth environment. + % width for cells whose contents are wrapped in varwidth environment. \ifnum#1>\@ne % multi-column (and possibly also multi-row) % we wrote our own multicolumn code especially to handle that (and allow % verbatim contents) @@ -707,7 +776,7 @@ \leaders\hrule\@height\arrayrulewidth\hfill}% \cr % the last one will need to be compensated, this is job of \sphinxclines - \noalign{\vskip-\arrayrulewidth}% + \noalign{\nobreak\vskip-\arrayrulewidth}% } \def\spx@table@fixvlinejoin{% {\CT@arc@ % this is the color command set up by \arrayrulecolor @@ -731,7 +800,7 @@ \hfill \spx@table@fixvlinejoin \cr - \noalign{\vskip-\arrayrulewidth}% + \noalign{\nobreak\vskip-\arrayrulewidth}% } % This "fixclines" is also needed if no \sphinxcline emitted and is useful % even in extreme case with no \sphinxvlinecrossing either, to give correct @@ -750,6 +819,7 @@ \spx@table@fixvlinejoin% fill small gap at right-bordered table \cr % this final one does NO \vskip-\arrayrulewidth... that's the whole point + \noalign{\nobreak}% } %%%% end of \cline workarounds @@ -857,7 +927,32 @@ }% \the\everycr }% - \global\rownum\@ne % is done from inside table so ok with tabulary two passes + \ifspx@thistableisnested + % Attention that tabulary does two passes so we need to push the + % initial rownum and, after the first pass, we must reset it! + % Fortunately Sphinx LaTeX writer makes parent table tabular or + % longtable if a nested table is a tabulary. So we don't need to + % worry about distinguishing if this or parent is tabulary. + \ifx\TY@final\@undefined % tabular + \spx@gpush@rownum + \else + \ifx\equation$% tabulary, first pass + \spx@gpush@rownum + \else % tabulary, second pass + \spx@gpop@rownum % reset \rownum + \spx@gpush@rownum% and push it again. + \fi + \fi + % To make nested tables stand out in a color row, we toggle the parity. + % TODO: Double-check if compatible with method for color of header + % row. + % TODO: Perhaps better to use specific colors for nested tables? + % This would mean though adding new sphinxsetup parameters + % and extending the documentation... + \ifodd\rownum\global\rownum\z@\else\global\rownum\@ne\fi + \else + \global\rownum\@ne + \fi \sphinxSwitchCaseRowColor\rownum % set up color for the first body row \sphinxrowcolorON % has been done from \sphinxtoprule location but let's do % it again in case \sphinxtabletoprulehook has been used @@ -883,20 +978,39 @@ \let\sphinxtabledecrementrownum\@empty % \sphinxtableafterendhook will be modified by colorrows class to execute -% this after the table +% this after the table. \def\spx@table@resetcolortbl{% \sphinxrowcolorOFF - \spx@table@reset@CTeverycr + \spx@table@reset@CT@everycr % this last bit is done in order for the \sphinxbottomrule from the "foot" -% longtable template to be able to use same code as the \sphinxbottomrule -% at end of table body; see \sphinxbooktabsspecialbottomrule code +% part of the longtable template to be able to use same code as the +% \sphinxbottomrule at end of table body; see \sphinxbooktabsspecialbottomrule. \global\rownum\z@ + \global\let\spx@rownum@stack\@empty } -\def\spx@table@reset@CTeverycr{% +% Most of \spx@table@resetcolortbl must be avoided if the table is nested. +% Besides the sphinxTableRowColor must be reset because it has been +% redefined by the cells of the nested table. So this is the alternative +% macro which is executed on exit of nested table. +\def\spx@nestedtable@resetcolortbl{% + \ifx\spx@rownum@stack\@empty\else +% The stack can be empty if this is executed on exit of a nested table, +% and the parent table has received the "nocolorrows" class, but globally +% colorrows are activated (default). So we protected against that case. + \spx@gpop@rownum + \fi + \sphinxSwitchCaseRowColor\rownum +} +\def\spx@table@reset@CT@everycr{% % we should probably be more cautious and not hard-code here the colortbl -% set-up; so the macro is defined without @ to fac +% set-up. \global\CT@everycr{\noalign{\global\let\CT@row@color\relax}\the\everycr}% } +\let\spx@rownum@stack\@empty +\def\spx@gpush@rownum{\xdef\spx@rownum@stack{\the\rownum.\spx@rownum@stack}}% +\def\spx@gpop@rownum{\afterassignment\spx@gpop@rownum@i + \global\rownum=\spx@rownum@stack\relax} +\def\spx@gpop@rownum@i.#1\relax{\gdef\spx@rownum@stack{#1}} % At last the style macros \sphinxthistablewithstandardstyle etc... @@ -1019,6 +1133,10 @@ local use of booktabs table style}% % borderless style \def\sphinxthistablewithborderlessstyle{% + \sphinxthistablewithnohlines + \def\spx@arrayrulewidth{\z@}% +}% +\def\sphinxthistablewithnohlines{% \let\sphinxhline \@empty \let\sphinxcline \@gobble \let\sphinxvlinecrossing\@gobble @@ -1026,7 +1144,9 @@ local use of booktabs table style}% \let\spx@toprule \@empty \let\sphinxmidrule \@empty \let\sphinxbottomrule \@empty - \def\spx@arrayrulewidth{\z@}% +}% +\def\sphinxthistabularywithnohlinesifinlongtable{% + \ifspx@longtable\sphinxthistablewithnohlines\fi }% % colorrows style @@ -1047,10 +1167,13 @@ local use of booktabs table style}% % % this one is not set to \@empty by nocolorrows, because it looks harmless % to execute it always, as it simply resets to standard colortbl state after -% the table; so we don't need an @@ version for this one +% the table [^1]; so we don't need an @@ version for this one. +% .. [1]: which is bad if nested in another table. This is taken care of +% at level of \sphinxattablestart and \sphinxatlongtablestart. \spx@prepend\spx@table@resetcolortbl\to\sphinxtableafterendhook } \def\spx@prepend#1\to#2{% attention about using this only with #2 "storage macro" +% MEMO: #1 is prepended with no expansion, i.e. "as is". \toks@{#1}% \toks@\expandafter\expandafter\expandafter{\expandafter\the\expandafter\toks@#2}% \edef#2{\the\toks@}% @@ -1064,9 +1187,10 @@ local use of booktabs table style}% \let\spx@table@startbodycolorrows\@empty \let\sphinxtabledecrementrownum \@empty % we don't worry about \sphinxtableafterendhook as the \spx@table@resetcolortbl -% done at end can not do harm; and we could also have not bothered with the +% done at end can not do harm [^1]; and we could also have not bothered with the % \sphinxtabledecrementrownum as its \rownum decrement, if active, is harmless -% in non-colorrows context +% in non-colorrows context. +% .. [1]: if nested in another table it is modified to do no harm. } % (not so easy) implementation of the booktabscolorgaps option. This option diff --git a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxpackagefootnote.sty b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxpackagefootnote.sty index 7f2e29138..f68bcf388 100644 --- a/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxpackagefootnote.sty +++ b/addons/source-python/packages/site-packages/sphinx/texinputs/sphinxpackagefootnote.sty @@ -1,6 +1,6 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{sphinxpackagefootnote}% - [2024/05/17 v7.3.x Sphinx custom footnotehyper package (Sphinx team)] + [2025/11/15 v9.0.0 Sphinx custom footnotehyper package (Sphinx team)] %% %% Package: sphinxpackagefootnote %% Version: based on footnotehyper.sty 2021/02/04 v1.1d @@ -19,11 +19,13 @@ % - \sphinxfootnotemark[N] % where N is a number. % -%% Some small differences from upstream footnotehyper.sty: +%% Some small differences from footnotehyper.sty 2021/02/04 v1.1d: %% - a tabulary compatibility layer (partial but enough for Sphinx), %% - usage of \spx@opt@BeforeFootnote %% - usage of \sphinxunactivateextrasandspace from sphinx.sty, %% - \sphinxlongtablepatch +%% - fix for a change of babel-french from late June 2025 +%% (\localleftbox undefined with pdflatex/xelatex, issue #14059) %% %% Starting with Sphinx v4.5.0, inherited footnotehyper macros for %% footnote/footnotetext receive some Sphinx specific extras to @@ -274,8 +276,11 @@ \fi }% \def\FNH@check{% - \ifx\@makefntextFB\@undefined\expandafter\FNH@check@ - \else\expandafter\FNH@frenchb@ + \ifx\@makefntextFB\@undefined + \expandafter\FNH@check@ + \else + \providecommand\localleftbox[1]{}% + \expandafter\FNH@frenchb@ \fi }% \def\FNH@frenchb@{% diff --git a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/doctools.js b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/doctools.js index 0398ebb9f..807cdb176 100644 --- a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/doctools.js +++ b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/doctools.js @@ -59,7 +59,7 @@ const Documentation = { Object.assign(Documentation.TRANSLATIONS, catalog.messages); Documentation.PLURAL_EXPR = new Function( "n", - `return (${catalog.plural_expr})` + `return (${catalog.plural_expr})`, ); Documentation.LOCALE = catalog.locale; }, @@ -89,7 +89,7 @@ const Documentation = { const togglerElements = document.querySelectorAll("img.toggler"); togglerElements.forEach((el) => - el.addEventListener("click", (event) => toggler(event.currentTarget)) + el.addEventListener("click", (event) => toggler(event.currentTarget)), ); togglerElements.forEach((el) => (el.style.display = "")); if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); @@ -98,14 +98,15 @@ const Documentation = { initOnKeyListeners: () => { // only install a listener if it is really needed if ( - !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && - !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS + && !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS ) return; document.addEventListener("keydown", (event) => { // bail for input elements - if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) + return; // bail with special keys if (event.altKey || event.ctrlKey || event.metaKey) return; diff --git a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/language_data.js.jinja b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/language_data.js.jinja index 64aefa798..daefea7eb 100644 --- a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/language_data.js.jinja +++ b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/language_data.js.jinja @@ -1,12 +1,13 @@ /* * This script contains the language-specific data used by searchtools.js, - * namely the list of stopwords, stemmer, scorer and splitter. + * namely the set of stopwords, stemmer, scorer and splitter. */ -var stopwords = {{ search_language_stop_words }}; +const stopwords = new Set({{ search_language_stop_words }}); +window.stopwords = stopwords; // Export to global scope {% if search_language_stemming_code %} -/* Non-minified version is copied as a separate JS file, if available */ +/* Non-minified versions are copied as separate JavaScript files, if available */ {{ search_language_stemming_code|safe }} {% endif -%} diff --git a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/searchtools.js b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/searchtools.js index 91f4be57f..e29b1c754 100644 --- a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/searchtools.js +++ b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/searchtools.js @@ -41,11 +41,12 @@ if (typeof Scorer === "undefined") { } // Global search result kind enum, used by themes to style search results. +// prettier-ignore class SearchResultKind { - static get index() { return "index"; } - static get object() { return "object"; } - static get text() { return "text"; } - static get title() { return "title"; } + static get index() { return "index"; } + static get object() { return "object"; } + static get text() { return "text"; } + static get title() { return "title"; } } const _removeChildren = (element) => { @@ -58,6 +59,15 @@ const _removeChildren = (element) => { const _escapeRegExp = (string) => string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string +const _escapeHTML = (text) => { + return text + .replaceAll("&", "&") + .replaceAll("<", "<") + .replaceAll(">", ">") + .replaceAll('"', """) + .replaceAll("'", "'"); +}; + const _displayItem = (item, searchTerms, highlightTerms) => { const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; @@ -90,25 +100,30 @@ const _displayItem = (item, searchTerms, highlightTerms) => { let linkEl = listItem.appendChild(document.createElement("a")); linkEl.href = linkUrl + anchor; linkEl.dataset.score = score; - linkEl.innerHTML = title; + linkEl.innerHTML = _escapeHTML(title); if (descr) { listItem.appendChild(document.createElement("span")).innerHTML = - " (" + descr + ")"; + ` (${_escapeHTML(descr)})`; // highlight search terms in the description - if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js - highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted")); - } - else if (showSearchSummary) + if (SPHINX_HIGHLIGHT_ENABLED) + // SPHINX_HIGHLIGHT_ENABLED is set in sphinx_highlight.js + highlightTerms.forEach((term) => + _highlightText(listItem, term, "highlighted"), + ); + } else if (showSearchSummary) fetch(requestUrl) .then((responseData) => responseData.text()) .then((data) => { if (data) listItem.appendChild( - Search.makeSearchSummary(data, searchTerms, anchor) + Search.makeSearchSummary(data, searchTerms, anchor), ); // highlight search terms in the summary - if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js - highlightTerms.forEach((term) => _highlightText(listItem, term, "highlighted")); + if (SPHINX_HIGHLIGHT_ENABLED) + // SPHINX_HIGHLIGHT_ENABLED is set in sphinx_highlight.js + highlightTerms.forEach((term) => + _highlightText(listItem, term, "highlighted"), + ); }); Search.output.appendChild(listItem); }; @@ -117,14 +132,14 @@ const _finishSearch = (resultCount) => { Search.title.innerText = _("Search Results"); if (!resultCount) Search.status.innerText = Documentation.gettext( - "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.", ); else Search.status.innerText = Documentation.ngettext( "Search finished, found one page matching the search query.", "Search finished, found ${resultCount} pages matching the search query.", resultCount, - ).replace('${resultCount}', resultCount); + ).replace("${resultCount}", resultCount); }; const _displayNextItem = ( results, @@ -138,7 +153,7 @@ const _displayNextItem = ( _displayItem(results.pop(), searchTerms, highlightTerms); setTimeout( () => _displayNextItem(results, resultCount, searchTerms, highlightTerms), - 5 + 5, ); } // search finished, update title and status message @@ -170,9 +185,10 @@ const _orderResultsByScoreThenName = (a, b) => { * This is the same as ``\W+`` in Python, preserving the surrogate pair area. */ if (typeof splitQuery === "undefined") { - var splitQuery = (query) => query + var splitQuery = (query) => + query .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) - .filter(term => term) // remove remaining empty strings + .filter((term) => term); // remove remaining empty strings } /** @@ -184,16 +200,23 @@ const Search = { _pulse_status: -1, htmlToText: (htmlString, anchor) => { - const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); + const htmlElement = new DOMParser().parseFromString( + htmlString, + "text/html", + ); for (const removalQuery of [".headerlink", "script", "style"]) { - htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() }); + htmlElement.querySelectorAll(removalQuery).forEach((el) => { + el.remove(); + }); } if (anchor) { - const anchorContent = htmlElement.querySelector(`[role="main"] ${anchor}`); + const anchorContent = htmlElement.querySelector( + `[role="main"] ${anchor}`, + ); if (anchorContent) return anchorContent.textContent; console.warn( - `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.` + `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.`, ); } @@ -202,7 +225,7 @@ const Search = { if (docContent) return docContent.textContent; console.warn( - "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template." + "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template.", ); return ""; }, @@ -287,12 +310,8 @@ const Search = { const queryTermLower = queryTerm.toLowerCase(); // maybe skip this "word" - // stopwords array is from language_data.js - if ( - stopwords.indexOf(queryTermLower) !== -1 || - queryTerm.match(/^\d+$/) - ) - return; + // stopwords set is from language_data.js + if (stopwords.has(queryTermLower) || queryTerm.match(/^\d+$/)) return; // stem the word let word = stemmer.stemWord(queryTermLower); @@ -304,8 +323,12 @@ const Search = { } }); - if (SPHINX_HIGHLIGHT_ENABLED) { // set in sphinx_highlight.js - localStorage.setItem("sphinx_highlight_terms", [...highlightTerms].join(" ")) + if (SPHINX_HIGHLIGHT_ENABLED) { + // SPHINX_HIGHLIGHT_ENABLED is set in sphinx_highlight.js + localStorage.setItem( + "sphinx_highlight_terms", + [...highlightTerms].join(" "), + ); } // console.debug("SEARCH: searching for:"); @@ -318,7 +341,13 @@ const Search = { /** * execute search (requires search index to be loaded) */ - _performSearch: (query, searchTerms, excludedTerms, highlightTerms, objectTerms) => { + _performSearch: ( + query, + searchTerms, + excludedTerms, + highlightTerms, + objectTerms, + ) => { const filenames = Search._index.filenames; const docNames = Search._index.docnames; const titles = Search._index.titles; @@ -334,10 +363,15 @@ const Search = { const queryLower = query.toLowerCase().trim(); for (const [title, foundTitles] of Object.entries(allTitles)) { - if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) { + if ( + title.toLowerCase().trim().includes(queryLower) + && queryLower.length >= title.length / 2 + ) { for (const [file, id] of foundTitles) { - const score = Math.round(Scorer.title * queryLower.length / title.length); - const boost = titles[file] === title ? 1 : 0; // add a boost for document titles + const score = Math.round( + (Scorer.title * queryLower.length) / title.length, + ); + const boost = titles[file] === title ? 1 : 0; // add a boost for document titles normalResults.push([ docNames[file], titles[file] !== title ? `${titles[file]} > ${title}` : title, @@ -353,9 +387,9 @@ const Search = { // search for explicit entries in index directives for (const [entry, foundEntries] of Object.entries(indexEntries)) { - if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) { + if (entry.includes(queryLower) && queryLower.length >= entry.length / 2) { for (const [file, id, isMain] of foundEntries) { - const score = Math.round(100 * queryLower.length / entry.length); + const score = Math.round((100 * queryLower.length) / entry.length); const result = [ docNames[file], titles[file], @@ -376,11 +410,13 @@ const Search = { // lookup as object objectTerms.forEach((term) => - normalResults.push(...Search.performObjectSearch(term, objectTerms)) + normalResults.push(...Search.performObjectSearch(term, objectTerms)), ); // lookup as search terms in fulltext - normalResults.push(...Search.performTermsSearch(searchTerms, excludedTerms)); + normalResults.push( + ...Search.performTermsSearch(searchTerms, excludedTerms), + ); // let the scorer override scores with a custom scoring function if (Scorer.score) { @@ -401,7 +437,11 @@ const Search = { // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept let seen = new Set(); results = results.reverse().reduce((acc, result) => { - let resultStr = result.slice(0, 4).concat([result[5]]).map(v => String(v)).join(','); + let resultStr = result + .slice(0, 4) + .concat([result[5]]) + .map((v) => String(v)) + .join(","); if (!seen.has(resultStr)) { acc.push(result); seen.add(resultStr); @@ -413,8 +453,20 @@ const Search = { }, query: (query) => { - const [searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms] = Search._parseQuery(query); - const results = Search._performSearch(searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms); + const [ + searchQuery, + searchTerms, + excludedTerms, + highlightTerms, + objectTerms, + ] = Search._parseQuery(query); + const results = Search._performSearch( + searchQuery, + searchTerms, + excludedTerms, + highlightTerms, + objectTerms, + ); // for debugging //Search.lastresults = results.slice(); // a copy @@ -437,7 +489,7 @@ const Search = { const results = []; const objectSearchCallback = (prefix, match) => { - const name = match[4] + const name = match[4]; const fullname = (prefix ? prefix + "." : "") + name; const fullnameLower = fullname.toLowerCase(); if (fullnameLower.indexOf(object) < 0) return; @@ -489,9 +541,7 @@ const Search = { ]); }; Object.keys(objects).forEach((prefix) => - objects[prefix].forEach((array) => - objectSearchCallback(prefix, array) - ) + objects[prefix].forEach((array) => objectSearchCallback(prefix, array)), ); return results; }, @@ -516,8 +566,14 @@ const Search = { // find documents, if any, containing the query word in their text/title term indices // use Object.hasOwnProperty to avoid mismatching against prototype properties const arr = [ - { files: terms.hasOwnProperty(word) ? terms[word] : undefined, score: Scorer.term }, - { files: titleTerms.hasOwnProperty(word) ? titleTerms[word] : undefined, score: Scorer.title }, + { + files: terms.hasOwnProperty(word) ? terms[word] : undefined, + score: Scorer.term, + }, + { + files: titleTerms.hasOwnProperty(word) ? titleTerms[word] : undefined, + score: Scorer.title, + }, ]; // add support for partial matches if (word.length > 2) { @@ -558,7 +614,8 @@ const Search = { // create the mapping files.forEach((file) => { if (!fileMap.has(file)) fileMap.set(file, [word]); - else if (fileMap.get(file).indexOf(word) === -1) fileMap.get(file).push(word); + else if (fileMap.get(file).indexOf(word) === -1) + fileMap.get(file).push(word); }); }); @@ -569,11 +626,11 @@ const Search = { // as search terms with length < 3 are discarded const filteredTermCount = [...searchTerms].filter( - (term) => term.length > 2 + (term) => term.length > 2, ).length; if ( - wordList.length !== searchTerms.size && - wordList.length !== filteredTermCount + wordList.length !== searchTerms.size + && wordList.length !== filteredTermCount ) continue; @@ -581,10 +638,10 @@ const Search = { if ( [...excludedTerms].some( (term) => - terms[term] === file || - titleTerms[term] === file || - (terms[term] || []).includes(file) || - (titleTerms[term] || []).includes(file) + terms[term] === file + || titleTerms[term] === file + || (terms[term] || []).includes(file) + || (titleTerms[term] || []).includes(file), ) ) break; @@ -626,7 +683,8 @@ const Search = { let summary = document.createElement("p"); summary.classList.add("context"); - summary.textContent = top + text.substr(startWithContext, 240).trim() + tail; + summary.textContent = + top + text.substr(startWithContext, 240).trim() + tail; return summary; }, diff --git a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/sphinx_highlight.js b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/sphinx_highlight.js index 8a96c69a1..a74e103a8 100644 --- a/addons/source-python/packages/site-packages/sphinx/themes/basic/static/sphinx_highlight.js +++ b/addons/source-python/packages/site-packages/sphinx/themes/basic/static/sphinx_highlight.js @@ -1,7 +1,7 @@ /* Highlighting utilities for Sphinx HTML documentation. */ "use strict"; -const SPHINX_HIGHLIGHT_ENABLED = true +const SPHINX_HIGHLIGHT_ENABLED = true; /** * highlight a given string on a node by wrapping it in @@ -13,9 +13,9 @@ const _highlight = (node, addItems, text, className) => { const parent = node.parentNode; const pos = val.toLowerCase().indexOf(text); if ( - pos >= 0 && - !parent.classList.contains(className) && - !parent.classList.contains("nohighlight") + pos >= 0 + && !parent.classList.contains(className) + && !parent.classList.contains("nohighlight") ) { let span; @@ -30,13 +30,7 @@ const _highlight = (node, addItems, text, className) => { span.appendChild(document.createTextNode(val.substr(pos, text.length))); const rest = document.createTextNode(val.substr(pos + text.length)); - parent.insertBefore( - span, - parent.insertBefore( - rest, - node.nextSibling - ) - ); + parent.insertBefore(span, parent.insertBefore(rest, node.nextSibling)); node.nodeValue = val.substr(0, pos); /* There may be more occurrences of search term in this node. So call this * function recursively on the remaining fragment. @@ -46,7 +40,7 @@ const _highlight = (node, addItems, text, className) => { if (isInSVG) { const rect = document.createElementNS( "http://www.w3.org/2000/svg", - "rect" + "rect", ); const bbox = parent.getBBox(); rect.x.baseVal.value = bbox.x; @@ -65,7 +59,7 @@ const _highlightText = (thisNode, text, className) => { let addItems = []; _highlight(thisNode, addItems, text, className); addItems.forEach((obj) => - obj.parent.insertAdjacentElement("beforebegin", obj.target) + obj.parent.insertAdjacentElement("beforebegin", obj.target), ); }; @@ -73,25 +67,31 @@ const _highlightText = (thisNode, text, className) => { * Small JavaScript module for the documentation. */ const SphinxHighlight = { - /** * highlight the search words provided in localstorage in the text */ highlightSearchWords: () => { - if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight + if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight // get and clear terms from localstorage const url = new URL(window.location); const highlight = - localStorage.getItem("sphinx_highlight_terms") - || url.searchParams.get("highlight") - || ""; - localStorage.removeItem("sphinx_highlight_terms") - url.searchParams.delete("highlight"); - window.history.replaceState({}, "", url); + localStorage.getItem("sphinx_highlight_terms") + || url.searchParams.get("highlight") + || ""; + localStorage.removeItem("sphinx_highlight_terms"); + // Update history only if '?highlight' is present; otherwise it + // clears text fragments (not set in window.location by the browser) + if (url.searchParams.has("highlight")) { + url.searchParams.delete("highlight"); + window.history.replaceState({}, "", url); + } // get individual terms from highlight string - const terms = highlight.toLowerCase().split(/\s+/).filter(x => x); + const terms = highlight + .toLowerCase() + .split(/\s+/) + .filter((x) => x); if (terms.length === 0) return; // nothing to do // There should never be more than one element matching "div.body" @@ -107,11 +107,11 @@ const SphinxHighlight = { document .createRange() .createContextualFragment( - '" - ) + '", + ), ); }, @@ -125,7 +125,7 @@ const SphinxHighlight = { document .querySelectorAll("span.highlighted") .forEach((el) => el.classList.remove("highlighted")); - localStorage.removeItem("sphinx_highlight_terms") + localStorage.removeItem("sphinx_highlight_terms"); }, initEscapeListener: () => { @@ -134,10 +134,15 @@ const SphinxHighlight = { document.addEventListener("keydown", (event) => { // bail for input elements - if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) + return; // bail with special keys - if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return; - if (DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS && (event.key === "Escape")) { + if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) + return; + if ( + DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + && event.key === "Escape" + ) { SphinxHighlight.hideSearchWords(); event.preventDefault(); } diff --git a/addons/source-python/packages/site-packages/sphinx/themes/scrolls/static/theme_extras.js b/addons/source-python/packages/site-packages/sphinx/themes/scrolls/static/theme_extras.js index df2be4073..84cc15098 100644 --- a/addons/source-python/packages/site-packages/sphinx/themes/scrolls/static/theme_extras.js +++ b/addons/source-python/packages/site-packages/sphinx/themes/scrolls/static/theme_extras.js @@ -1,12 +1,12 @@ const initialiseThemeExtras = () => { - const toc = document.getElementById("toc") - toc.style.display = "" - const items = toc.getElementsByTagName("ul")[0] - items.style.display = "none" - toc.getElementsByTagName("h3").addEventListener("click", () => { - if (items.style.display !== "none") toc.classList.remove("expandedtoc") - else toc.classList.add("expandedtoc"); - }) -} -if (document.readyState !== "loading") initialiseThemeExtras() -else document.addEventListener("DOMContentLoaded", initialiseThemeExtras) + const toc = document.getElementById("toc"); + toc.style.display = ""; + const items = toc.getElementsByTagName("ul")[0]; + items.style.display = "none"; + toc.getElementsByTagName("h3").addEventListener("click", () => { + if (items.style.display !== "none") toc.classList.remove("expandedtoc"); + else toc.classList.add("expandedtoc"); + }); +}; +if (document.readyState !== "loading") initialiseThemeExtras(); +else document.addEventListener("DOMContentLoaded", initialiseThemeExtras); diff --git a/addons/source-python/packages/site-packages/sphinx/theming.py b/addons/source-python/packages/site-packages/sphinx/theming.py index a27dbfe09..d62af9646 100644 --- a/addons/source-python/packages/site-packages/sphinx/theming.py +++ b/addons/source-python/packages/site-packages/sphinx/theming.py @@ -10,6 +10,7 @@ import sys import tempfile import tomllib +import warnings from importlib.metadata import entry_points from pathlib import Path from typing import TYPE_CHECKING @@ -17,6 +18,7 @@ from sphinx import package_dir from sphinx.config import check_confval_types as _config_post_init +from sphinx.deprecation import RemovedInSphinx10Warning from sphinx.errors import ThemeError from sphinx.locale import __ from sphinx.util import logging @@ -28,6 +30,8 @@ from typing import Any, Required, TypedDict from sphinx.application import Sphinx + from sphinx.config import Config + from sphinx.registry import SphinxComponentRegistry class _ThemeToml(TypedDict, total=False): theme: Required[_ThemeTomlTheme] @@ -148,13 +152,39 @@ def _cleanup(self) -> None: class HTMLThemeFactory: """A factory class for HTML Themes.""" - def __init__(self, app: Sphinx) -> None: + def __init__( + self, + _deprecated_positional_parameter: Sphinx | None = None, + /, + *, + confdir: Path | None = None, + app: Sphinx | None = None, + config: Config | None = None, + registry: SphinxComponentRegistry | None = None, + ) -> None: + if _deprecated_positional_parameter is not None: + warnings.warn( + 'Positional parameters for HTMLThemeFactory are deprecated, ' + 'and will be removed in Sphinx 10. ' + 'Please use keyword parameters instead.', + category=RemovedInSphinx10Warning, + stacklevel=2, + ) + app = _deprecated_positional_parameter + confdir = app.confdir + config = app.config + registry = app.registry + assert app is not None + assert confdir is not None + assert config is not None + assert registry is not None self._app = app - self._themes = app.registry.html_themes + self._confdir = confdir + self._themes = registry.html_themes self._entry_point_themes: dict[str, Callable[[], None]] = {} self._load_builtin_themes() - if getattr(app.config, 'html_theme_path', None): - self._load_additional_themes(app.config.html_theme_path) + if html_theme_path := getattr(config, 'html_theme_path', None): + self._load_additional_themes(html_theme_path) self._load_entry_point_themes() def _load_builtin_themes(self) -> None: @@ -166,7 +196,7 @@ def _load_builtin_themes(self) -> None: def _load_additional_themes(self, theme_paths: list[str]) -> None: """Load additional themes placed at specified directories.""" for theme_path in theme_paths: - abs_theme_path = (self._app.confdir / theme_path).resolve() + abs_theme_path = (self._confdir / theme_path).resolve() themes = self._find_themes(abs_theme_path) for name, theme in themes.items(): self._themes[name] = _StrPath(theme) diff --git a/addons/source-python/packages/site-packages/sphinx/transforms/__init__.py b/addons/source-python/packages/site-packages/sphinx/transforms/__init__.py index e1f905d2d..eb0402595 100644 --- a/addons/source-python/packages/site-packages/sphinx/transforms/__init__.py +++ b/addons/source-python/packages/site-packages/sphinx/transforms/__init__.py @@ -15,17 +15,17 @@ from docutils.utils.smartquotes import smartchars from sphinx import addnodes +from sphinx.deprecation import _deprecation_warning from sphinx.locale import _, __ from sphinx.util import logging -from sphinx.util.docutils import new_document from sphinx.util.i18n import format_date from sphinx.util.nodes import apply_source_workaround, is_smartquotable if TYPE_CHECKING: - from collections.abc import Iterator - from typing import Any, Literal, TypeAlias + from collections.abc import Iterable, Iterator + from typing import Any, ClassVar, Literal - from docutils.nodes import Node, Text + from docutils.nodes import Node from typing_extensions import TypeIs from sphinx.application import Sphinx @@ -34,7 +34,7 @@ from sphinx.environment import BuildEnvironment from sphinx.util.typing import ExtensionMetadata - _DEFAULT_SUBSTITUTION_NAMES: TypeAlias = Literal[ + type _DEFAULT_SUBSTITUTION_NAMES = Literal[ 'version', 'release', 'today', @@ -62,7 +62,10 @@ class SphinxTransform(Transform): @property def app(self) -> Sphinx: """Reference to the :class:`.Sphinx` object.""" - return self.env.app + cls_module = self.__class__.__module__ + cls_name = self.__class__.__qualname__ + _deprecation_warning(cls_module, f'{cls_name}.app', remove=(11, 0)) + return self.env._app @property def env(self) -> BuildEnvironment: @@ -89,10 +92,12 @@ def apply_transforms(self) -> None: if not hasattr(self.document.settings, 'env') and self.env: self.document.settings.env = self.env - super().apply_transforms() # type: ignore[misc] + super().apply_transforms() else: # wrap the target node by document node during transforming try: + from sphinx.util.docutils import new_document + document = new_document('') if self.env: document.settings.env = self.env @@ -217,7 +222,7 @@ class SortIds(SphinxTransform): def apply(self, **kwargs: Any) -> None: for node in self.document.findall(nodes.section): if len(node['ids']) > 1 and node['ids'][0].startswith('id'): - node['ids'] = node['ids'][1:] + [node['ids'][0]] + node['ids'] = [*node['ids'][1:], node['ids'][0]] TRANSLATABLE_NODES = { @@ -236,7 +241,7 @@ class ApplySourceWorkaround(SphinxTransform): def apply(self, **kwargs: Any) -> None: for node in self.document.findall(): - if isinstance(node, nodes.TextElement | nodes.image | nodes.topic): + if isinstance(node, (nodes.TextElement, nodes.image, nodes.topic)): apply_source_workaround(node) @@ -276,6 +281,7 @@ def is_translatable_node(node: Node) -> TypeIs[nodes.Element]: return isinstance(node, target_nodes) for node in self.document.findall(is_translatable_node): + assert isinstance(node, nodes.Element) node['translatable'] = True @@ -359,15 +365,19 @@ class SphinxSmartQuotes(SmartQuotes, SphinxTransform): """ default_priority = 750 + smartquotes_action: ClassVar[str] = SmartQuotes.smartquotes_action def apply(self, **kwargs: Any) -> None: if not self.is_available(): return # override default settings with :confval:`smartquotes_action` - self.smartquotes_action = self.config.smartquotes_action + # TODO: TYPING: Upstream docutils should be updated so that + # smartquotes_action accepts any iterable of characters + # and can be overridden per-instance. + self.smartquotes_action = self.config.smartquotes_action # type: ignore[misc] - super().apply() # type: ignore[no-untyped-call] + super().apply() def is_available(self) -> bool: builders = self.config.smartquotes_excludes.get('builders', []) @@ -379,7 +389,7 @@ def is_available(self) -> bool: if self.config.smartquotes is False: # disabled by confval smartquotes return False - if self.app.builder.name in builders: + if self.env._builder_cls.name in builders: # disabled by confval smartquotes_excludes['builders'] return False if self.config.language in languages: @@ -390,7 +400,9 @@ def is_available(self) -> bool: language = self.env.settings['language_code'] return any(tag in smartchars.quotes for tag in normalize_language_tag(language)) - def get_tokens(self, txtnodes: list[Text]) -> Iterator[tuple[str, str]]: + def get_tokens( # type: ignore[override] + self, txtnodes: Iterable[Node] + ) -> Iterator[tuple[Literal['literal', 'plain'], str]]: # A generator that yields ``(texttype, nodetext)`` tuples for a list # of "Text" nodes (interface to ``smartquotes.educate_tokens()``). for txtnode in txtnodes: @@ -409,7 +421,7 @@ class DoctreeReadEvent(SphinxTransform): default_priority = 880 def apply(self, **kwargs: Any) -> None: - self.app.events.emit('doctree-read', self.document) + self.env.events.emit('doctree-read', self.document) class GlossarySorter(SphinxTransform): @@ -477,7 +489,7 @@ def _reorder_index_target_nodes(start_node: nodes.target) -> None: # as we want *consecutive* target & index nodes. node: nodes.Node for node in start_node.findall(descend=False, siblings=True): - if isinstance(node, nodes.target | addnodes.index): + if isinstance(node, (nodes.target, addnodes.index)): nodes_to_reorder.append(node) continue break # must be a consecutive run of target or index nodes diff --git a/addons/source-python/packages/site-packages/sphinx/transforms/i18n.py b/addons/source-python/packages/site-packages/sphinx/transforms/i18n.py index 815ca606b..3be280859 100644 --- a/addons/source-python/packages/site-packages/sphinx/transforms/i18n.py +++ b/addons/source-python/packages/site-packages/sphinx/transforms/i18n.py @@ -2,13 +2,13 @@ from __future__ import annotations -import contextlib +from operator import attrgetter from re import DOTALL, match from textwrap import indent -from typing import TYPE_CHECKING, Any, TypeVar +from typing import TYPE_CHECKING, Any +import docutils.utils from docutils import nodes -from docutils.io import StringInput from sphinx import addnodes from sphinx.domains.std import make_glossary_term, split_term_classifiers @@ -17,6 +17,7 @@ from sphinx.locale import init as init_locale from sphinx.transforms import SphinxTransform from sphinx.util import get_filetype, logging +from sphinx.util.docutils import LoggingReporter from sphinx.util.i18n import docname_to_domain from sphinx.util.index_entries import split_index_msg from sphinx.util.nodes import ( @@ -28,10 +29,13 @@ ) if TYPE_CHECKING: - from collections.abc import Sequence + from collections.abc import Callable, Sequence from sphinx.application import Sphinx from sphinx.config import Config + from sphinx.environment import BuildEnvironment + from sphinx.registry import SphinxComponentRegistry + from sphinx.util.docutils import _DocutilsSettings from sphinx.util.typing import ExtensionMetadata @@ -44,52 +48,49 @@ EXCLUDED_PENDING_XREF_ATTRIBUTES = ('refexplicit',) -N = TypeVar('N', bound=nodes.Node) - - -def publish_msgstr( - app: Sphinx, +def _publish_msgstr( source: str, source_path: str, source_line: int, + *, config: Config, - settings: Any, + env: BuildEnvironment, + registry: SphinxComponentRegistry, + settings: _DocutilsSettings, ) -> nodes.Element: """Publish msgstr (single line) into docutils document - :param sphinx.application.Sphinx app: sphinx application :param str source: source text :param str source_path: source path for warning indication :param source_line: source line for warning indication + :param sphinx.util.docutils._DocutilsSettings settings: docutils settings :param sphinx.config.Config config: sphinx config - :param docutils.frontend.Values settings: docutils settings + :param sphinx.environment.BuildEnvironment env: sphinx environment + :param sphinx.registry.SphinxComponentRegistry registry: sphinx registry :return: document :rtype: docutils.nodes.document """ + filetype = get_filetype(config.source_suffix, source_path) + doc = docutils.utils.new_document( + f'{source_path}:{source_line}:', settings + ) + doc.reporter = LoggingReporter.from_reporter(doc.reporter) + + # clear rst_prolog temporarily + rst_prolog = config.rst_prolog + config.rst_prolog = None try: - # clear rst_prolog temporarily - rst_prolog = config.rst_prolog - config.rst_prolog = None - - from sphinx.io import SphinxI18nReader - - reader = SphinxI18nReader() - reader.setup(app) - filetype = get_filetype(config.source_suffix, source_path) - parser = app.registry.create_source_parser(app, filetype) - doc = reader.read( - source=StringInput( - source=source, source_path=f'{source_path}:{source_line}:' - ), - parser=parser, - settings=settings, - ) - with contextlib.suppress(IndexError): # empty node - return doc[0] - return doc + parser = registry.create_source_parser(filetype, config=config, env=env) + parser.parse(source, doc) + doc.current_source = doc.current_line = None finally: config.rst_prolog = rst_prolog + try: + return doc[0] # type: ignore[return-value] + except IndexError: # empty node + return doc + def parse_noqa(source: str) -> tuple[str, bool]: m = match(r'(.*)(? None: - for node in self.document.findall(addnodes.translatable): + matcher = NodeMatcher(addnodes.translatable) # type: ignore[type-abstract] + for node in matcher.findall(self.document): node.preserve_original_messages() @@ -129,10 +131,25 @@ def compare_references( old_refs: Sequence[nodes.Element], new_refs: Sequence[nodes.Element], warning_msg: str, + *, + key_func: Callable[[nodes.Element], Any] = attrgetter('rawsource'), ) -> None: - """Warn about mismatches between references in original and translated content.""" - # FIXME: could use a smarter strategy than len(old_refs) == len(new_refs) - if not self.noqa and len(old_refs) != len(new_refs): + """Warn about mismatches between references in original and translated content. + Ignores the order of references when comparing. This allows translators to + reorder references while still catching missing or extra references. + + :param key_func: A function to extract the comparison key from each reference. + Defaults to extracting the ``rawsource`` attribute. + """ + old_ref_keys = list(map(key_func, old_refs)) + new_ref_keys = list(map(key_func, new_refs)) + + # The ref_keys lists may contain ``None``, so compare hashes. + # Recall objects which compare equal have the same hash value. + old_ref_keys.sort(key=hash) + new_ref_keys.sort(key=hash) + + if not self.noqa and old_ref_keys != new_ref_keys: old_ref_rawsources = [ref.rawsource for ref in old_refs] new_ref_rawsources = [ref.rawsource for ref in new_refs] logger.warning( @@ -211,7 +228,7 @@ def update_title_mapping(self) -> bool: def update_autofootnote_references(self) -> None: # auto-numbered foot note reference should use original 'ids'. - def list_replace_or_append(lst: list[N], old: N, new: N) -> None: + def list_replace_or_append[N: nodes.Node](lst: list[N], old: N, new: N) -> None: if old in lst: lst[lst.index(old)] = new else: @@ -344,6 +361,8 @@ def update_pending_xrefs(self) -> None: 'inconsistent term references in translated message.' ' original: {0}, translated: {1}' ), + # Compare by reftarget only, allowing translated display text. + key_func=lambda ref: ref.get('reftarget'), ) xref_reftarget_map: dict[tuple[str, str, str] | None, dict[str, Any]] = {} @@ -386,7 +405,9 @@ def apply(self, **kwargs: Any) -> None: settings, source = self.document.settings, self.document['source'] msgstr = '' - textdomain = docname_to_domain(self.env.docname, self.config.gettext_compact) + textdomain = docname_to_domain( + self.env.current_document.docname, self.config.gettext_compact + ) # fetch translations srcdir = self.env.srcdir @@ -435,13 +456,14 @@ def apply(self, **kwargs: Any) -> None: if isinstance(node, LITERAL_TYPE_NODES): msgstr = '::\n\n' + indent(msgstr, ' ' * 3) - patch = publish_msgstr( - self.app, + patch = _publish_msgstr( msgstr, source, node.line, # type: ignore[arg-type] - self.config, - settings, + config=self.config, + env=self.env, + registry=self.env._registry, + settings=settings, ) # FIXME: no warnings about inconsistent references in this part # XXX doctest and other block markup @@ -455,13 +477,14 @@ def apply(self, **kwargs: Any) -> None: if isinstance(node, nodes.term): for _id in node['ids']: term, first_classifier = split_term_classifiers(msgstr) - patch = publish_msgstr( - self.app, + patch = _publish_msgstr( term or '', source, node.line, # type: ignore[arg-type] - self.config, - settings, + config=self.config, + env=self.env, + registry=self.env._registry, + settings=settings, ) updater.patch = make_glossary_term( self.env, @@ -532,13 +555,14 @@ def apply(self, **kwargs: Any) -> None: # This generates:
msgstr
msgstr = msgstr + '\n' + '=' * len(msgstr) * 2 - patch = publish_msgstr( - self.app, + patch = _publish_msgstr( msgstr, source, node.line, # type: ignore[arg-type] - self.config, - settings, + config=self.config, + env=self.env, + registry=self.env._registry, + settings=settings, ) # Structural Subelements phase2 if isinstance(node, nodes.title): @@ -612,7 +636,7 @@ class TranslationProgressTotaliser(SphinxTransform): def apply(self, **kwargs: Any) -> None: from sphinx.builders.gettext import MessageCatalogBuilder - if isinstance(self.app.builder, MessageCatalogBuilder): + if issubclass(self.env._builder_cls, MessageCatalogBuilder): return total = translated = 0 @@ -635,7 +659,7 @@ class AddTranslationClasses(SphinxTransform): def apply(self, **kwargs: Any) -> None: from sphinx.builders.gettext import MessageCatalogBuilder - if isinstance(self.app.builder, MessageCatalogBuilder): + if issubclass(self.env._builder_cls, MessageCatalogBuilder): return if not self.config.translation_progress_classes: @@ -673,7 +697,7 @@ class RemoveTranslatableInline(SphinxTransform): def apply(self, **kwargs: Any) -> None: from sphinx.builders.gettext import MessageCatalogBuilder - if isinstance(self.app.builder, MessageCatalogBuilder): + if issubclass(self.env._builder_cls, MessageCatalogBuilder): return matcher = NodeMatcher(nodes.inline, translatable=Any) diff --git a/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/__init__.py b/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/__init__.py index d9c5031b3..54118f80c 100644 --- a/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/__init__.py +++ b/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/__init__.py @@ -18,7 +18,7 @@ if TYPE_CHECKING: from collections.abc import Sequence - from typing import Any + from typing import Any, ClassVar from docutils.nodes import Element, Node @@ -47,9 +47,9 @@ def apply(self, **kwargs: Any) -> None: def is_supported(self) -> bool: """Check this transform working for current builder.""" - if self.builders and self.app.builder.name not in self.builders: + if self.builders and self.env._builder_cls.name not in self.builders: return False - return not self.formats or self.app.builder.format in self.formats + return not self.formats or self.env._builder_cls.format in self.formats def run(self, **kwargs: Any) -> None: """Main method of post transforms. @@ -62,7 +62,7 @@ def run(self, **kwargs: Any) -> None: class ReferencesResolver(SphinxPostTransform): """Resolves cross-references on doctrees.""" - default_priority = 10 + default_priority: ClassVar[int] = 10 def run(self, **kwargs: Any) -> None: for node in self.document.findall(addnodes.pending_xref): @@ -98,7 +98,7 @@ def _resolve_pending_xref( new_node: nodes.reference | None typ = node['reftype'] target = node['reftarget'] - ref_doc = node.setdefault('refdoc', self.env.docname) + ref_doc = node.setdefault('refdoc', self.env.current_document.docname) ref_domain = node.get('refdomain', '') domain: Domain | None if ref_domain: @@ -125,7 +125,7 @@ def _resolve_pending_xref( try: # no new node found? try the missing-reference event - new_node = self.app.events.emit_firstresult( + new_node = self.env.events.emit_firstresult( 'missing-reference', self.env, node, @@ -169,10 +169,11 @@ def _resolve_pending_xref_in_domain( typ: str, target: str, ) -> nodes.reference | None: + builder = self.env._app.builder # let the domain try to resolve the reference if domain is not None: return domain.resolve_xref( - self.env, ref_doc, self.app.builder, typ, target, node, contnode + self.env, ref_doc, builder, typ, target, node, contnode ) # really hardwired reference types @@ -193,7 +194,7 @@ def _resolve_pending_any_xref( ) -> nodes.reference | None: """Resolve reference generated by the "any" role.""" env = self.env - builder = self.app.builder + builder = self.env._app.builder domains = env.domains results: list[tuple[str, nodes.reference]] = [] @@ -227,12 +228,7 @@ def _resolve_pending_any_xref( if not results: return None if len(results) > 1: - - def stringify(name: str, node: Element) -> str: - reftitle = node.get('reftitle', node.astext()) - return f':{name}:`{reftitle}`' - - candidates = ' or '.join(starmap(stringify, results)) + candidates = ' or '.join(starmap(self._stringify, results)) msg = __( "more than one target found for 'any' cross-reference %r: could be %s" ) @@ -251,6 +247,11 @@ def stringify(name: str, node: Element) -> str: new_node[0]['classes'].extend((res_domain, res_role.replace(':', '-'))) return new_node + @staticmethod + def _stringify(name: str, node: Element) -> str: + reftitle = node.get('reftitle', node.astext()) + return f':{name}:`{reftitle}`' + def warn_missing_reference( self, refdoc: str, @@ -273,25 +274,16 @@ def warn_missing_reference( ): # fmt: skip warn = False if self.config.nitpick_ignore_regex: - - def matches_ignore(entry_type: str, entry_target: str) -> bool: - return any( - ( - re.fullmatch(ignore_type, entry_type) - and re.fullmatch(ignore_target, entry_target) - ) - for ignore_type, ignore_target in self.config.nitpick_ignore_regex - ) - - if matches_ignore(dtype, target): + if _matches_ignore(self.config.nitpick_ignore_regex, dtype, target): warn = False # for "std" types also try without domain name - if (not domain or domain.name == 'std') and matches_ignore(typ, target): - warn = False + if not domain or domain.name == 'std': + if _matches_ignore(self.config.nitpick_ignore_regex, typ, target): + warn = False if not warn: return - if self.app.events.emit_firstresult('warn-missing-reference', domain, node): + if self.env.events.emit_firstresult('warn-missing-reference', domain, node): return elif domain and typ in domain.dangling_warnings: msg = domain.dangling_warnings[typ] % {'target': target} @@ -317,6 +309,18 @@ def find_pending_xref_condition( return None +def _matches_ignore( + ignore_patterns: Sequence[tuple[str, str]], entry_type: str, entry_target: str +) -> bool: + return any( + ( + re.fullmatch(ignore_type, entry_type) + and re.fullmatch(ignore_target, entry_target) + ) + for ignore_type, ignore_target in ignore_patterns + ) + + class OnlyNodeTransform(SphinxPostTransform): default_priority = 50 @@ -325,7 +329,7 @@ def run(self, **kwargs: Any) -> None: # result in a "Losing ids" exception if there is a target node before # the only node, so we make sure docutils can transfer the id to # something, even if it's just a comment and will lose the id anyway... - process_only_nodes(self.document, self.app.tags) + process_only_nodes(self.document, self.env._tags) class SigElementFallbackTransform(SphinxPostTransform): @@ -340,7 +344,7 @@ def has_visitor( return hasattr(translator, 'visit_%s' % node.__name__) try: - translator = self.app.builder.get_translator_class() + translator = self.env._registry.get_translator_class(self.env._builder_cls) except AttributeError: # do nothing if no translator class is specified (e.g., on a dummy builder) return diff --git a/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/code.py b/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/code.py index 2d89bc65a..1db580048 100644 --- a/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/code.py +++ b/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/code.py @@ -13,7 +13,7 @@ from sphinx.transforms import SphinxTransform if TYPE_CHECKING: - from typing import Any + from typing import Any, ClassVar from docutils.nodes import Node, TextElement @@ -35,7 +35,7 @@ class HighlightLanguageTransform(SphinxTransform): removes ``highlightlang`` node from doctree. """ - default_priority = 400 + default_priority: ClassVar[int] = 400 def apply(self, **kwargs: Any) -> None: visitor = HighlightLanguageVisitor( diff --git a/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/images.py b/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/images.py index d4c6262e5..6e6e9becb 100644 --- a/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/images.py +++ b/addons/source-python/packages/site-packages/sphinx/transforms/post_transforms/images.py @@ -45,16 +45,16 @@ def handle(self, node: nodes.image) -> None: @property def imagedir(self) -> _StrPath: - return self.app.doctreedir / 'images' + return self.env.doctreedir / 'images' class ImageDownloader(BaseImageConverter): default_priority = 100 def match(self, node: nodes.image) -> bool: - if not self.app.builder.supported_image_types: + if not self.env._builder_cls.supported_image_types: return False - if self.app.builder.supported_remote_images: + if self.env._builder_cls.supported_remote_images: return False return '://' in node['uri'] @@ -123,14 +123,14 @@ def _process_image(self, node: nodes.image, path: Path) -> None: node['candidates'].pop('?') node['candidates'][mimetype] = path_str node['uri'] = path_str - self.env.images.add_file(self.env.docname, path_str) + self.env.images.add_file(self.env.current_document.docname, path_str) class DataURIExtractor(BaseImageConverter): default_priority = 150 def match(self, node: nodes.image) -> bool: - if self.app.builder.supported_data_uri_images is True: + if self.env._builder_cls.supported_data_uri_images is True: return False # do not transform the image; data URIs are valid in the build output return node['uri'].startswith('data:') @@ -156,7 +156,7 @@ def handle(self, node: nodes.image) -> None: node['candidates'].pop('?') node['candidates'][image.mimetype] = path_str node['uri'] = path_str - self.env.images.add_file(self.env.docname, path_str) + self.env.images.add_file(self.env.current_document.docname, path_str) def get_filename_for(filename: str, mimetype: str) -> str: @@ -208,12 +208,12 @@ class ImageConverter(BaseImageConverter): conversion_rules: list[tuple[str, str]] = [] def match(self, node: nodes.image) -> bool: - if not self.app.builder.supported_image_types: + if not self.env._builder_cls.supported_image_types: return False if '?' in node['candidates']: return False node_mime_types = set(self.guess_mimetypes(node)) - supported_image_types = set(self.app.builder.supported_image_types) + supported_image_types = set(self.env._builder_cls.supported_image_types) if node_mime_types & supported_image_types: # builder supports the image; no need to convert return False @@ -233,7 +233,7 @@ def match(self, node: nodes.image) -> bool: def get_conversion_rule(self, node: nodes.image) -> tuple[str, str]: for candidate in self.guess_mimetypes(node): - for supported in self.app.builder.supported_image_types: + for supported in self.env._builder_cls.supported_image_types: rule = (candidate, supported) if rule in self.conversion_rules: return rule @@ -250,7 +250,7 @@ def guess_mimetypes(self, node: nodes.image) -> list[str]: if '?' in node['candidates']: return [] elif '*' in node['candidates']: - path = self.app.srcdir / node['uri'] + path = self.env.srcdir / node['uri'] guessed = guess_mimetype(path) return [guessed] if guessed is not None else [] else: @@ -269,7 +269,7 @@ def handle(self, node: nodes.image) -> None: ensuredir(self.imagedir) destpath = self.imagedir / filename - abs_srcpath = self.app.srcdir / srcpath + abs_srcpath = self.env.srcdir / srcpath if self.convert(abs_srcpath, destpath): if '*' in node['candidates']: node['candidates']['*'] = str(destpath) @@ -278,7 +278,7 @@ def handle(self, node: nodes.image) -> None: node['uri'] = str(destpath) self.env.original_image_uri[destpath] = srcpath - self.env.images.add_file(self.env.docname, destpath) + self.env.images.add_file(self.env.current_document.docname, destpath) def convert( self, _from: str | os.PathLike[str], _to: str | os.PathLike[str] diff --git a/addons/source-python/packages/site-packages/sphinx/transforms/references.py b/addons/source-python/packages/site-packages/sphinx/transforms/references.py index 447e9ded5..8655dbfa5 100644 --- a/addons/source-python/packages/site-packages/sphinx/transforms/references.py +++ b/addons/source-python/packages/site-packages/sphinx/transforms/references.py @@ -25,7 +25,7 @@ def apply(self, **kwargs: Any) -> None: # suppress INFO level messages for a while reporter.report_level = max(reporter.WARNING_LEVEL, reporter.report_level) - super().apply() # type: ignore[no-untyped-call] + super().apply() finally: reporter.report_level = report_level @@ -36,7 +36,9 @@ class SphinxDomains(SphinxTransform): default_priority = 850 def apply(self, **kwargs: Any) -> None: - self.env.domains._process_doc(self.env, self.env.docname, self.document) + self.env.domains._process_doc( + self.env, self.env.current_document.docname, self.document + ) def setup(app: Sphinx) -> ExtensionMetadata: diff --git a/addons/source-python/packages/site-packages/sphinx/util/__init__.py b/addons/source-python/packages/site-packages/sphinx/util/__init__.py index 246bf8fc8..e50ed92a6 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/__init__.py +++ b/addons/source-python/packages/site-packages/sphinx/util/__init__.py @@ -69,35 +69,7 @@ def __getattr__(name: str) -> Any: return mod - # RemovedInSphinx90Warning - if name == 'split_index_msg': - from sphinx.util.index_entries import split_index_msg as obj - - canonical_name = f'{obj.__module__}.{obj.__qualname__}' - _deprecation_warning(__name__, name, canonical_name, remove=(9, 0)) - return obj - - if name == 'split_into': - from sphinx.util.index_entries import _split_into as obj - - _deprecation_warning(__name__, name, '', remove=(9, 0)) - return obj - - if name == 'ExtensionError': - from sphinx.errors import ExtensionError as obj # NoQA: N813 - - canonical_name = f'{obj.__module__}.{obj.__qualname__}' - _deprecation_warning(__name__, name, canonical_name, remove=(9, 0)) - return obj - - if name in {'md5', 'sha1'}: - obj = globals()[f'_{name}'] - canonical_name = f'hashlib.{name}' - _deprecation_warning(__name__, name, canonical_name, remove=(9, 0)) - return obj - # RemovedInSphinx10Warning - if name in {'DownloadFiles', 'FilenameUniqDict'}: from sphinx.util import _files as mod diff --git a/addons/source-python/packages/site-packages/sphinx/util/_io.py b/addons/source-python/packages/site-packages/sphinx/util/_io.py index 94ad9f8f0..f363e1fc5 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/_io.py +++ b/addons/source-python/packages/site-packages/sphinx/util/_io.py @@ -28,6 +28,6 @@ def write(self, text: str, /) -> None: def flush(self) -> None: if hasattr(self.stream_term, 'flush'): - self.stream_term.flush() + self.stream_term.flush() # ty: ignore[call-non-callable] if hasattr(self.stream_file, 'flush'): - self.stream_file.flush() + self.stream_file.flush() # ty: ignore[call-non-callable] diff --git a/addons/source-python/packages/site-packages/sphinx/util/_pathlib.py b/addons/source-python/packages/site-packages/sphinx/util/_pathlib.py index 0506131f9..73b07ec94 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/_pathlib.py +++ b/addons/source-python/packages/site-packages/sphinx/util/_pathlib.py @@ -1,4 +1,4 @@ -"""What follows is awful and will be gone in Sphinx 9. +"""What follows is awful and will be gone in Sphinx 10. Instances of _StrPath should not be constructed except in Sphinx itself. Consumers of Sphinx APIs should prefer using ``pathlib.Path`` objects @@ -8,7 +8,7 @@ To continue treating path-like objects as strings, use ``os.fspath``, or explicit string coercion. -In Sphinx 9, ``Path`` objects will be expected and returned in all instances +In Sphinx 10, ``Path`` objects will be expected and returned in all instances that ``_StrPath`` is currently used. """ @@ -19,7 +19,7 @@ from pathlib import Path, PosixPath, PurePath, WindowsPath from typing import TYPE_CHECKING, overload -from sphinx.deprecation import RemovedInSphinx90Warning +from sphinx.deprecation import RemovedInSphinx10Warning if TYPE_CHECKING: from typing import Any @@ -28,7 +28,7 @@ _PATH_NAME = Path().__class__.__name__ _MSG = ( - 'Sphinx 9 will drop support for representing paths as strings. ' + 'Sphinx 10 will drop support for representing paths as strings. ' 'Use "pathlib.Path" or "os.fspath" instead.' ) @@ -43,39 +43,39 @@ def replace( # type: ignore[override] ) -> str: # replace exists in both Path and str; # in Path it makes filesystem changes, so we use the safer str version - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__().replace(old, new, count) # NoQA: PLC2801 def __getattr__(self, item: str) -> Any: if item in _STR_METHODS: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return getattr(self.__str__(), item) msg = f'{_PATH_NAME!r} has no attribute {item!r}' raise AttributeError(msg) def __add__(self, other: str) -> str: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__() + other def __radd__(self, other: str) -> str: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return other + self.__str__() def __bool__(self) -> bool: if not self.__str__(): - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return False return True def __contains__(self, item: str) -> bool: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return item in self.__str__() def __eq__(self, other: object) -> bool: if isinstance(other, PurePath): return super().__eq__(other) if isinstance(other, str): - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__() == other return NotImplemented @@ -83,11 +83,11 @@ def __hash__(self) -> int: return super().__hash__() def __getitem__(self, item: int | slice) -> str: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__()[item] def __len__(self) -> int: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return len(self.__str__()) else: @@ -98,39 +98,39 @@ def replace( # type: ignore[override] ) -> str: # replace exists in both Path and str; # in Path it makes filesystem changes, so we use the safer str version - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__().replace(old, new, count) # NoQA: PLC2801 def __getattr__(self, item: str) -> Any: if item in _STR_METHODS: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return getattr(self.__str__(), item) msg = f'{_PATH_NAME!r} has no attribute {item!r}' raise AttributeError(msg) def __add__(self, other: str) -> str: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__() + other def __radd__(self, other: str) -> str: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return other + self.__str__() def __bool__(self) -> bool: if not self.__str__(): - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return False return True def __contains__(self, item: str) -> bool: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return item in self.__str__() def __eq__(self, other: object) -> bool: if isinstance(other, PurePath): return super().__eq__(other) if isinstance(other, str): - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__() == other return NotImplemented @@ -138,11 +138,11 @@ def __hash__(self) -> int: return super().__hash__() def __getitem__(self, item: int | slice) -> str: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return self.__str__()[item] def __len__(self) -> int: - warnings.warn(_MSG, RemovedInSphinx90Warning, stacklevel=2) + warnings.warn(_MSG, RemovedInSphinx10Warning, stacklevel=2) return len(self.__str__()) diff --git a/addons/source-python/packages/site-packages/sphinx/util/_serialise.py b/addons/source-python/packages/site-packages/sphinx/util/_serialise.py index df2d66c71..fd984f235 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/_serialise.py +++ b/addons/source-python/packages/site-packages/sphinx/util/_serialise.py @@ -19,9 +19,9 @@ def stable_hash(obj: Any) -> str: """ if isinstance(obj, dict): obj = sorted(map(stable_hash, obj.items())) - if isinstance(obj, list | tuple | set | frozenset): + if isinstance(obj, (list, tuple, set, frozenset)): obj = sorted(map(stable_hash, obj)) - elif isinstance(obj, type | types.FunctionType): + elif isinstance(obj, (type, types.FunctionType)): # The default repr() of functions includes the ID, which is not ideal. # We use the fully qualified name instead. obj = f'{obj.__module__}.{obj.__qualname__}' @@ -39,13 +39,15 @@ def stable_str(obj: Any, *, indent: int | None = None) -> str: def _stable_str_prep(obj: Any) -> dict[str, Any] | list[Any] | str: if isinstance(obj, dict): # Convert to a sorted dict - obj = [(_stable_str_prep(k), _stable_str_prep(v)) for k, v in obj.items()] - obj.sort() - return dict(obj) - if isinstance(obj, list | tuple | set | frozenset): + lst: list[tuple[Any, Any]] = [ + (_stable_str_prep(k), _stable_str_prep(v)) for k, v in obj.items() + ] + lst.sort() + return dict(lst) + if isinstance(obj, (list, tuple, set, frozenset)): # Convert to a sorted list return sorted(map(_stable_str_prep, obj), key=str) - if isinstance(obj, type | types.FunctionType): + if isinstance(obj, (type, types.FunctionType)): # The default repr() of functions includes the ID, which is not ideal. # We use the fully qualified name instead. return f'{obj.__module__}.{obj.__qualname__}' diff --git a/addons/source-python/packages/site-packages/sphinx/util/cfamily.py b/addons/source-python/packages/site-packages/sphinx/util/cfamily.py index 6071d90cf..6595859c6 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/cfamily.py +++ b/addons/source-python/packages/site-packages/sphinx/util/cfamily.py @@ -13,13 +13,13 @@ if TYPE_CHECKING: from collections.abc import Callable, Sequence - from typing import Any, NoReturn, TypeAlias + from typing import Any, NoReturn from docutils.nodes import TextElement from sphinx.config import Config - StringifyTransform: TypeAlias = Callable[[Any], str] + type StringifyTransform = Callable[[Any], str] logger = logging.getLogger(__name__) @@ -356,7 +356,10 @@ def fail(self, msg: str) -> NoReturn: raise self._make_multi_error(errors, '') def warn(self, msg: str) -> None: - logger.warning(msg, location=self.location) + subtype = 'c' if self.language == 'C' else 'cpp' + logger.warning( + msg, location=self.location, type='source_code_parser', subtype=subtype + ) def match(self, regex: re.Pattern[str]) -> bool: match = regex.match(self.definition, self.pos) diff --git a/addons/source-python/packages/site-packages/sphinx/util/display.py b/addons/source-python/packages/site-packages/sphinx/util/display.py index 1edca4e6c..e134f8caf 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/display.py +++ b/addons/source-python/packages/site-packages/sphinx/util/display.py @@ -10,24 +10,20 @@ if TYPE_CHECKING: from collections.abc import Callable, Iterable, Iterator from types import TracebackType - from typing import Any, ParamSpec, TypeVar - - T = TypeVar('T') - P = ParamSpec('P') - R = TypeVar('R') + from typing import Any logger = logging.getLogger(__name__) def display_chunk(chunk: Any) -> str: - if isinstance(chunk, list | tuple): + if isinstance(chunk, (list, tuple)): if len(chunk) == 1: return str(chunk[0]) return f'{chunk[0]} .. {chunk[-1]}' return str(chunk) -def status_iterator( +def status_iterator[T]( iterable: Iterable[T], summary: str, color: str = 'darkgreen', @@ -90,7 +86,7 @@ def __exit__( return False - def __call__(self, f: Callable[P, R]) -> Callable[P, R]: + def __call__[**P, R](self, f: Callable[P, R]) -> Callable[P, R]: @functools.wraps(f) def wrapper(*args: P.args, **kwargs: P.kwargs) -> R: # type: ignore[return] with self: diff --git a/addons/source-python/packages/site-packages/sphinx/util/docfields.py b/addons/source-python/packages/site-packages/sphinx/util/docfields.py index 1c24a73bf..764469482 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/docfields.py +++ b/addons/source-python/packages/site-packages/sphinx/util/docfields.py @@ -17,8 +17,6 @@ from sphinx.util.nodes import get_node_line if TYPE_CHECKING: - from typing import TypeAlias, TypeVar - from docutils.nodes import Element, Node from docutils.parsers.rst.states import Inliner @@ -26,10 +24,9 @@ from sphinx.environment import BuildEnvironment from sphinx.util.typing import TextlikeNode - ObjDescT = TypeVar('ObjDescT') - _FieldEntry: TypeAlias = tuple[str, list[Node]] - _FieldTypes: TypeAlias = dict[str, list[Node]] - _EntriesTriple: TypeAlias = tuple['Field', _FieldEntry | list[_FieldEntry], Element] + type _FieldEntry = tuple[str, list[Node]] + type _FieldTypes = dict[str, list[Node]] + type _EntriesTriple = tuple[Field, _FieldEntry | list[_FieldEntry], Element] logger = logging.getLogger(__name__) @@ -118,7 +115,7 @@ def make_xref( if location is not None: with contextlib.suppress(ValueError): lineno = get_node_line(location) - ns, messages = role(rolename, target, target, lineno, inliner, {}, []) + ns, _messages = role(rolename, target, target, lineno, inliner, {}, []) return nodes.inline(target, '', *ns) def make_xrefs( @@ -342,7 +339,7 @@ def handle_item(fieldarg: str, content: list[Node]) -> nodes.paragraph: return nodes.field('', fieldname, fieldbody) -class DocFieldTransformer: +class DocFieldTransformer[ObjDescT]: """Transforms field lists in "doc field" syntax into better-looking equivalents, using the field type definitions given on a domain. """ @@ -386,7 +383,7 @@ def _transform_step_1( field_body = cast('nodes.field_body', field[1]) try: # split into field type and argument - fieldtype_name, fieldarg = field_name.astext().split(None, 1) + fieldtype_name, fieldarg = field_name.astext().split(None, maxsplit=1) except ValueError: # maybe an argument-less field type? fieldtype_name, fieldarg = field_name.astext(), '' @@ -442,7 +439,7 @@ def _transform_step_1( if is_typefield: # filter out only inline nodes; others will result in invalid # markup being written out - content = [n for n in content if isinstance(n, nodes.Inline | nodes.Text)] + content = [n for n in content if isinstance(n, (nodes.Inline, nodes.Text))] if content: types.setdefault(typename, {})[fieldarg] = content return @@ -458,9 +455,12 @@ def _transform_step_1( fieldarg = argname translatable_content = nodes.inline(field_body.rawsource, translatable=True) - translatable_content.document = field_body.parent.document - translatable_content.source = field_body.parent.source - translatable_content.line = field_body.parent.line + parent = field_body.parent + assert parent is not None + assert parent.document is not None + translatable_content.document = parent.document + translatable_content.source = parent.source + translatable_content.line = parent.line translatable_content += content # grouped entries need to be collected in one entry, while others diff --git a/addons/source-python/packages/site-packages/sphinx/util/docstrings.py b/addons/source-python/packages/site-packages/sphinx/util/docstrings.py index 53e7620ed..6f23096d9 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/docstrings.py +++ b/addons/source-python/packages/site-packages/sphinx/util/docstrings.py @@ -26,7 +26,7 @@ def separate_metadata(s: str | None) -> tuple[str | None, dict[str, str]]: else: matched = field_list_item_re.match(line) if matched and not in_other_element: - field_name = matched.group()[1:].split(':', 1)[0] + field_name = matched.group()[1:].partition(':')[0] if field_name.startswith('meta '): name = field_name[5:].strip() metadata[name] = line[matched.end() :].strip() diff --git a/addons/source-python/packages/site-packages/sphinx/util/docutils.py b/addons/source-python/packages/site-packages/sphinx/util/docutils.py index 70d8e69be..74a53ef60 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/docutils.py +++ b/addons/source-python/packages/site-packages/sphinx/util/docutils.py @@ -4,21 +4,27 @@ import os import re -from contextlib import contextmanager +import warnings +from contextlib import contextmanager, nullcontext from copy import copy from pathlib import Path from typing import TYPE_CHECKING import docutils +import docutils.frontend +import docutils.writers from docutils import nodes from docutils.io import FileOutput from docutils.parsers.rst import Directive, directives, roles +from docutils.readers import standalone from docutils.statemachine import StateMachine +from docutils.transforms.references import DanglingReferences from docutils.utils import Reporter, unescape from sphinx.errors import SphinxError from sphinx.locale import __ -from sphinx.util import logging +from sphinx.transforms import SphinxTransformer +from sphinx.util import logging, rst from sphinx.util.parsing import nested_parse_to_nodes logger = logging.getLogger(__name__) @@ -27,20 +33,25 @@ ) if TYPE_CHECKING: - from collections.abc import Iterator, Sequence + from collections.abc import Iterator, Mapping, Sequence from types import ModuleType, TracebackType from typing import Any, Protocol - from docutils.frontend import Values + from docutils import Component from docutils.nodes import Element, Node, system_message + from docutils.parsers import Parser from docutils.parsers.rst.states import Inliner from docutils.statemachine import State, StringList + from docutils.transforms import Transform from sphinx.builders import Builder from sphinx.config import Config from sphinx.environment import BuildEnvironment + from sphinx.events import EventManager from sphinx.util.typing import RoleFunction + type _DocutilsSettings = docutils.frontend.Values # pyright: ignore[reportDeprecated] # ty: ignore[deprecated] + class _LanguageModule(Protocol): labels: dict[str, str] author_separators: list[str] @@ -66,6 +77,13 @@ def __call__( ) -> tuple[RoleFunction | None, list[system_message]]: ... +_READER_TRANSFORMS = [ + transform + for transform in standalone.Reader().get_transforms() + if transform is not DanglingReferences +] + + additional_nodes: set[type[Element]] = set() @@ -270,7 +288,7 @@ def role( lineno: int, reporter: Reporter, ) -> tuple[RoleFunction, list[system_message]]: - return self.role_func( + return self.role_func( # ty: ignore[invalid-return-type] role_name, language_module, # type: ignore[return-value] lineno, @@ -370,7 +388,7 @@ def write(self, text: str) -> None: if not matched: logger.warning(text.rstrip('\r\n'), type='docutils') else: - location, type, level = matched.groups() + location, type, _level = matched.groups() message = report_re.sub('', text).rstrip() logger.log(type, message, location=location, type='docutils') @@ -450,7 +468,9 @@ def write(self, data: str) -> str: if on_disk == data: return data - return super().write(data) + # TODO: TYPING: Upstream docutils should annotate FileOutput.write() + # so that this suppression is unnecessary. + return super().write(data) # type: ignore[no-untyped-call] class SphinxDirective(Directive): @@ -480,12 +500,13 @@ def config(self) -> Config: """ return self.env.config - def get_source_info(self) -> tuple[str, int]: + def get_source_info(self) -> tuple[str | None, int | None]: """Get source and line number. .. versionadded:: 3.0 """ - return self.state_machine.get_source_and_line(self.lineno) + source, line = self.state_machine.get_source_and_line(self.lineno) + return source, line def set_source_info(self, node: Node) -> None: """Set source and line number to the node. @@ -658,15 +679,20 @@ def config(self) -> Config: """ return self.env.config - def get_source_info(self, lineno: int | None = None) -> tuple[str, int]: + def get_source_info( + self, lineno: int | None = None + ) -> tuple[str | os.PathLike[str] | None, int | None]: # .. versionadded:: 3.0 if lineno is None: lineno = self.lineno - return self.inliner.reporter.get_source_and_line(lineno) # type: ignore[attr-defined] + source, line = self.inliner.reporter.get_source_and_line(lineno) + return source, line def set_source_info(self, node: Node, lineno: int | None = None) -> None: # .. versionadded:: 2.0 - node.source, node.line = self.get_source_info(lineno) + source, line = self.get_source_info(lineno) + node.source = str(source) if source is not None else None + node.line = line def get_location(self) -> str: """Get current location info for logging. @@ -791,7 +817,7 @@ def unknown_visit(self, node: Node) -> None: # cache a vanilla instance of nodes.document # Used in new_document() function -__document_cache__: tuple[Values, Reporter] +__document_cache__: tuple[_DocutilsSettings, Reporter] def new_document(source_path: str, settings: Any = None) -> nodes.document: @@ -816,3 +842,110 @@ def new_document(source_path: str, settings: Any = None) -> nodes.document: document = nodes.document(settings, reporter, source=source_path) document.note_source(source_path, -1) return document + + +def _parse_str_to_doctree( + content: str, + *, + filename: Path, + default_role: str = '', + default_settings: Mapping[str, Any], + env: BuildEnvironment, + events: EventManager | None = None, + parser: Parser, + transforms: Sequence[type[Transform]] = (), +) -> nodes.document: + env.current_document._parser = parser + + # Propagate exceptions by default when used programmatically: + defaults = {'traceback': True, **default_settings} + settings = _get_settings( + standalone.Reader, parser, defaults=defaults, read_config_files=True + ) + settings._source = str(filename) + + # Create root document node + reporter = LoggingReporter( + source=str(filename), + report_level=settings.report_level, + halt_level=settings.halt_level, + debug=settings.debug, + error_handler=settings.error_encoding_error_handler, + ) + document = nodes.document(settings, reporter, source=str(filename)) + document.note_source(str(filename), -1) + + # substitute transformer + document.transformer = transformer = SphinxTransformer(document) + transformer.add_transforms(_READER_TRANSFORMS) + transformer.add_transforms(transforms) + transformer.add_transforms(parser.get_transforms()) + # https://github.com/sphinx-doc/sphinx/issues/13713 + transformer.components['writer'] = _DummyWriter() # type: ignore[index] + + if default_role: + default_role_cm = rst.default_role(env.current_document.docname, default_role) + else: + default_role_cm = nullcontext() # type: ignore[assignment] + with sphinx_domains(env), default_role_cm: + # TODO: Move the stanza below to Builder.read_doc(), within + # a sphinx_domains() context manager. + # This will require changes to IntersphinxDispatcher and/or + # CustomReSTDispatcher. + if events is not None: + # emit "source-read" event + arg = [content] + events.emit('source-read', env.current_document.docname, arg) + content = arg[0] + + # parse content to abstract syntax tree + parser.parse(content, document) + document.current_source = document.current_line = None + + # run transforms + transformer.apply_transforms() + + return document + + +def _get_settings( + *components: Component | type[Component], + defaults: Mapping[str, Any], + read_config_files: bool = False, +) -> _DocutilsSettings: + with warnings.catch_warnings(action='ignore', category=DeprecationWarning): + # DeprecationWarning: The frontend.OptionParser class will be replaced + # by a subclass of argparse.ArgumentParser in Docutils 0.21 or later. + # DeprecationWarning: The frontend.Option class will be removed + # in Docutils 0.21 or later. + option_parser = docutils.frontend.OptionParser( # pyright: ignore[reportDeprecated] # ty: ignore[deprecated] + components=components, + defaults=defaults, + read_config_files=read_config_files, + ) + with warnings.catch_warnings(action='ignore', category=DeprecationWarning): + # DeprecationWarning: frontend.Values class will be removed + # in Docutils 2.0 or later. + settings = option_parser.get_default_values() + return settings + + +class _DummyWriter(docutils.writers.Writer): # type: ignore[type-arg] + # compat for MyST-Parser + supported = ('html',) + + +if docutils.__version_info__[:2] < (0, 22): + from docutils.parsers.rst import roles + + def _normalize_options(options: dict[str, Any] | None) -> dict[str, Any]: + if options is None: + return {} + n_options = options.copy() + roles.set_classes(n_options) # pyright: ignore[reportDeprecated] # ty: ignore[deprecated] + return n_options + +else: + from docutils.parsers.rst.roles import ( + normalize_options as _normalize_options, # NoQA: F401 # ty: ignore[unresolved-import] + ) diff --git a/addons/source-python/packages/site-packages/sphinx/util/fileutil.py b/addons/source-python/packages/site-packages/sphinx/util/fileutil.py index 95fd9c59f..41a075786 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/fileutil.py +++ b/addons/source-python/packages/site-packages/sphinx/util/fileutil.py @@ -115,6 +115,9 @@ def copy_asset( Use ``copy_asset_file`` instead to copy a single file. + Use ``app.add_static_dir()`` instead to copy static files to + the output directory. + :param source: The path to source file or directory :param destination: The path to destination directory :param excluded: The matcher to determine the given path should be copied or not diff --git a/addons/source-python/packages/site-packages/sphinx/util/http_date.py b/addons/source-python/packages/site-packages/sphinx/util/http_date.py index db0ae306b..af5448d0e 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/http_date.py +++ b/addons/source-python/packages/site-packages/sphinx/util/http_date.py @@ -6,11 +6,8 @@ from __future__ import annotations import time -import warnings from email.utils import parsedate_tz -from sphinx.deprecation import RemovedInSphinx90Warning - _WEEKDAY_NAME = ('Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun') _MONTH_NAME = ('', # Placeholder for indexing purposes 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', @@ -32,19 +29,17 @@ def rfc1123_to_epoch(rfc1123: str) -> float: if t is None: raise ValueError if not rfc1123.endswith(' GMT'): - warnings.warn( + msg = ( 'HTTP-date string does not meet RFC 7231 requirements ' - f"(must end with 'GMT'): {rfc1123!r}", - RemovedInSphinx90Warning, - stacklevel=3, + f"(must end with 'GMT'): {rfc1123!r}" ) - epoch_secs = time.mktime(time.struct_time(t[:9])) + _GMT_OFFSET - if (gmt_offset := t[9]) != 0: - warnings.warn( + raise ValueError(msg) + gmt_offset = t[9] + if gmt_offset != 0: + msg = ( 'HTTP-date string does not meet RFC 7231 requirements ' - f'(must be GMT time): {rfc1123!r}', - RemovedInSphinx90Warning, - stacklevel=3, + f'(must be GMT time): {rfc1123!r}' ) - return epoch_secs - (gmt_offset or 0) + raise ValueError(msg) + epoch_secs = time.mktime(time.struct_time(t[:9])) + _GMT_OFFSET return epoch_secs diff --git a/addons/source-python/packages/site-packages/sphinx/util/i18n.py b/addons/source-python/packages/site-packages/sphinx/util/i18n.py index 6cc4b3176..06bae4b88 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/i18n.py +++ b/addons/source-python/packages/site-packages/sphinx/util/i18n.py @@ -21,7 +21,7 @@ if TYPE_CHECKING: import datetime as dt from collections.abc import Iterator - from typing import Protocol, TypeAlias + from typing import Protocol from babel.core import Locale @@ -53,7 +53,7 @@ def __call__( locale: str | Locale | None = ..., ) -> str: ... - Formatter: TypeAlias = DateFormatter | TimeFormatter | DatetimeFormatter + type Formatter = DateFormatter | TimeFormatter | DatetimeFormatter from datetime import UTC @@ -168,7 +168,7 @@ def docname_to_domain(docname: str, compaction: bool | str) -> str: if isinstance(compaction, str): return compaction if compaction: - return docname.split(SEP, 1)[0] + return docname.partition(SEP)[0] else: return docname @@ -218,7 +218,7 @@ def docname_to_domain(docname: str, compaction: bool | str) -> str: def babel_format_date( - date: datetime, + date: dt.datetime, format: str, locale: str, formatter: Formatter = babel.dates.format_date, @@ -228,6 +228,14 @@ def babel_format_date( if not hasattr(date, 'tzinfo'): formatter = babel.dates.format_date + if not locale: + # Babel would not accept a falsy locale + # (or would try to fall back to the LC_TIME + # locale, which would be not what was requested), + # so we can just short-cut to English, as we + # would for the `"fallback to English"` case. + locale = 'en' + try: return formatter(date, format, locale=locale) except (ValueError, babel.core.UnknownLocaleError): @@ -311,7 +319,7 @@ def get_image_filename_for_language( ) -> str: root, ext = os.path.splitext(filename) dirname = os.path.dirname(root) - docpath = os.path.dirname(env.docname) + docpath = os.path.dirname(env.current_document.docname) try: return env.config.figure_language_filename.format( root=root, diff --git a/addons/source-python/packages/site-packages/sphinx/util/images.py b/addons/source-python/packages/site-packages/sphinx/util/images.py index b43a0705d..e9963d484 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/images.py +++ b/addons/source-python/packages/site-packages/sphinx/util/images.py @@ -5,6 +5,7 @@ import base64 from pathlib import Path from typing import TYPE_CHECKING, NamedTuple, overload +from urllib.parse import unquote_to_bytes import imagesize @@ -91,20 +92,27 @@ def parse_data_uri(uri: str) -> DataURI | None: if not uri.startswith('data:'): return None + if ',' not in uri: + msg = 'malformed data URI' + raise ValueError(msg) + # data:[][;charset=][;base64], mimetype = 'text/plain' charset = 'US-ASCII' - properties, data = uri[5:].split(',', 1) + uri = uri[5:] + properties, _, data = uri.partition(',') for prop in properties.split(';'): if prop == 'base64': pass # skip - elif prop.startswith('charset='): + elif prop.lower().startswith('charset='): charset = prop[8:] elif prop: - mimetype = prop + mimetype = prop.lower() - image_data = base64.b64decode(data) + image_data = unquote_to_bytes(data) # data might be percent-encoded + if properties.endswith(';base64'): + image_data = base64.decodebytes(image_data) return DataURI(mimetype, charset, image_data) diff --git a/addons/source-python/packages/site-packages/sphinx/util/index_entries.py b/addons/source-python/packages/site-packages/sphinx/util/index_entries.py index 100468429..36dba3881 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/index_entries.py +++ b/addons/source-python/packages/site-packages/sphinx/util/index_entries.py @@ -20,7 +20,7 @@ def split_index_msg(entry_type: str, value: str) -> list[str]: def _split_into(n: int, type: str, value: str) -> list[str]: """Split an index entry into a given number of parts at semicolons.""" - parts = [x.strip() for x in value.split(';', n - 1)] + parts = [x.strip() for x in value.split(';', maxsplit=n - 1)] if len(list(filter(None, parts))) < n: msg = f'invalid {type} index entry {value!r}' raise ValueError(msg) diff --git a/addons/source-python/packages/site-packages/sphinx/util/inspect.py b/addons/source-python/packages/site-packages/sphinx/util/inspect.py index d2cba2b8d..7e750c876 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/inspect.py +++ b/addons/source-python/packages/site-packages/sphinx/util/inspect.py @@ -27,7 +27,7 @@ from collections.abc import Callable, Iterator, Sequence from inspect import _ParameterKind from types import MethodType, ModuleType - from typing import Final, Protocol, TypeAlias + from typing import Final, Protocol from typing_extensions import TypeIs @@ -47,7 +47,7 @@ def __delete__(self, instance: Any, /) -> None: ... class _AttrGetter(Protocol): def __call__(self, obj: Any, name: str, default: Any = ..., /) -> Any: ... - _RoutineType: TypeAlias = ( + type _RoutineType = ( types.FunctionType | types.LambdaType | types.MethodType @@ -57,7 +57,7 @@ def __call__(self, obj: Any, name: str, default: Any = ..., /) -> Any: ... | types.MethodDescriptorType | types.ClassMethodDescriptorType ) - _SignatureType: TypeAlias = ( + type _SignatureType = ( Callable[..., Any] | staticmethod[Any, Any] | classmethod[Any, Any, Any] ) @@ -103,7 +103,7 @@ class methods and static methods. if ispartial(obj): obj = obj.func elif inspect.isroutine(obj) and hasattr(obj, '__wrapped__'): - obj = obj.__wrapped__ + obj = obj.__wrapped__ # pyright: ignore[reportFunctionMemberAccess] elif isclassmethod(obj) or isstaticmethod(obj): obj = obj.__func__ else: @@ -114,7 +114,7 @@ class methods and static methods. if ispartial(obj): obj = obj.func elif inspect.isroutine(obj) and hasattr(obj, '__wrapped__'): - obj = obj.__wrapped__ + obj = obj.__wrapped__ # pyright: ignore[reportFunctionMemberAccess] elif isclassmethod(obj) or isstaticmethod(obj): obj = obj.__func__ else: @@ -131,7 +131,7 @@ def getall(obj: Any) -> Sequence[str] | None: __all__ = safe_getattr(obj, '__all__', None) if __all__ is None: return None - if isinstance(__all__, list | tuple) and all(isinstance(e, str) for e in __all__): + if isinstance(__all__, (list, tuple)) and all(isinstance(e, str) for e in __all__): return __all__ raise ValueError(__all__) @@ -160,7 +160,7 @@ def getmro(obj: Any) -> tuple[type, ...]: return () -def getorigbases(obj: Any) -> tuple[Any, ...] | None: +def getorigbases(obj: Any) -> tuple[type, ...] | None: """Safely get ``obj.__orig_bases__``. This returns ``None`` if the object is not a class or if ``__orig_bases__`` @@ -195,7 +195,7 @@ def getslots(obj: Any) -> dict[str, Any] | dict[str, None] | None: return __slots__ elif isinstance(__slots__, str): return {__slots__: None} - elif isinstance(__slots__, list | tuple): + elif isinstance(__slots__, (list, tuple)): return dict.fromkeys(__slots__) else: raise ValueError @@ -225,7 +225,7 @@ def unpartial(obj: Any) -> Any: def ispartial(obj: Any) -> TypeIs[partial[Any] | partialmethod[Any]]: """Check if the object is a partial function or method.""" - return isinstance(obj, partial | partialmethod) + return isinstance(obj, (partial, partialmethod)) def isclassmethod( @@ -374,8 +374,8 @@ def isattributedescriptor(obj: Any) -> bool: if isinstance(unwrapped, _DESCRIPTOR_LIKE): # attribute must not be a method descriptor return False - # attribute must not be an instancemethod (C-API) - return type(unwrapped).__name__ != 'instancemethod' + # attribute must not be an instancemethod (C-API) nor nb_method (specific for nanobind) + return type(unwrapped).__name__ not in {'instancemethod', 'nb_method'} return False @@ -385,7 +385,7 @@ def is_singledispatch_function(obj: Any) -> bool: inspect.isfunction(obj) and hasattr(obj, 'dispatch') and hasattr(obj, 'register') - and obj.dispatch.__module__ == 'functools' + and obj.dispatch.__module__ == 'functools' # pyright: ignore[reportFunctionMemberAccess] ) @@ -436,19 +436,19 @@ def _is_wrapped_coroutine(obj: Any) -> bool: """Check if the object is wrapped coroutine-function.""" if isstaticmethod(obj) or isclassmethod(obj) or ispartial(obj): # staticmethod, classmethod and partial method are not a wrapped coroutine-function - # Note: Since 3.10, staticmethod and classmethod becomes a kind of wrappers + # Note: staticmethod and classmethod are a kind of wrapper return False return hasattr(obj, '__wrapped__') def isproperty(obj: Any) -> TypeIs[property | cached_property[Any]]: """Check if the object is property (possibly cached).""" - return isinstance(obj, property | cached_property) + return isinstance(obj, (property, cached_property)) def isgenericalias(obj: Any) -> TypeIs[types.GenericAlias]: """Check if the object is a generic alias.""" - return isinstance(obj, types.GenericAlias | typing._BaseGenericAlias) # type: ignore[attr-defined] + return isinstance(obj, (types.GenericAlias, typing._BaseGenericAlias)) # type: ignore[attr-defined] def safe_getattr(obj: Any, name: str, *defargs: Any) -> Any: @@ -616,6 +616,14 @@ def __hash__(self) -> int: def __repr__(self) -> str: return f'{self.__class__.__name__}({self.name!r})' + def __or__(self, other: Any) -> Any: + # When evaluating type hints, our forward ref can appear in type expressions, + # i.e. `Alias | None`. This means it needs to support ``__or__`` and ``__ror__``. + return typing.Union[self, other] # NoQA: UP007 + + def __ror__(self, other: Any) -> Any: + return typing.Union[other, self] # NoQA: UP007 + class TypeAliasModule: """Pseudo module class for :confval:`autodoc_type_aliases`.""" @@ -702,6 +710,16 @@ def _should_unwrap(subject: _SignatureType) -> bool: ) +# Python 3.14 uses deferred evaluation of annotations by default. +# Using annotationlib's FORWARDREF format gives us more robust handling +# of forward references in type annotations. +signature_kwds: dict[str, Any] = {} +if sys.version_info[:2] >= (3, 14): + import annotationlib # type: ignore[import-not-found] + + signature_kwds['annotation_format'] = annotationlib.Format.FORWARDREF + + def signature( subject: _SignatureType, bound_method: bool = False, @@ -718,12 +736,16 @@ def signature( try: if _should_unwrap(subject): - signature = inspect.signature(subject) # type: ignore[arg-type] + signature = inspect.signature(subject, **signature_kwds) # type: ignore[arg-type] else: - signature = inspect.signature(subject, follow_wrapped=True) # type: ignore[arg-type] + signature = inspect.signature( + subject, # type: ignore[arg-type] + follow_wrapped=True, + **signature_kwds, + ) except ValueError: # follow built-in wrappers up (ex. functools.lru_cache) - signature = inspect.signature(subject) # type: ignore[arg-type] + signature = inspect.signature(subject, **signature_kwds) # type: ignore[arg-type] parameters = list(signature.parameters.values()) return_annotation = signature.return_annotation @@ -772,7 +794,7 @@ def signature( def evaluate_signature( sig: Signature, globalns: dict[str, Any] | None = None, - localns: dict[str, Any] | None = None, + localns: Mapping[str, Any] | None = None, ) -> Signature: """Evaluate unresolved type annotations in a signature object.""" if globalns is None: @@ -796,7 +818,7 @@ def evaluate_signature( def _evaluate_forwardref( ref: ForwardRef, globalns: dict[str, Any] | None, - localns: dict[str, Any] | None, + localns: Mapping[str, Any] | None, ) -> Any: """Evaluate a forward reference.""" if sys.version_info[:2] >= (3, 14): @@ -809,16 +831,16 @@ def _evaluate_forwardref( # before 3.12.4 still has the old signature). # # See: https://github.com/python/cpython/pull/118104. - return ref._evaluate( + return ref._evaluate( # pyright: ignore[reportDeprecated] globalns, localns, type_params=(), recursive_guard=frozenset() - ) # type: ignore[call-arg] + ) return ref._evaluate(globalns, localns, recursive_guard=frozenset()) def _evaluate( annotation: Any, globalns: dict[str, Any], - localns: dict[str, Any], + localns: Mapping[str, Any], ) -> Any: """Evaluate unresolved type annotation.""" try: @@ -854,6 +876,25 @@ def stringify_signature( (ex. io.StringIO -> StringIO) :param short_literals: If enabled, use short literal types. """ + args, retann = _stringify_signature_to_parts( + sig=sig, + show_annotation=show_annotation, + show_return_annotation=show_return_annotation, + unqualified_typehints=unqualified_typehints, + short_literals=short_literals, + ) + if retann: + return f'{args} -> {retann}' + return str(args) + + +def _stringify_signature_to_parts( + sig: Signature, + show_annotation: bool = True, + show_return_annotation: bool = True, + unqualified_typehints: bool = False, + short_literals: bool = False, +) -> tuple[str, str]: mode: _StringifyMode if unqualified_typehints: mode = 'smart' @@ -909,17 +950,18 @@ def stringify_signature( args.append('/') concatenated_args = ', '.join(args) + concatenated_args = f'({concatenated_args})' if ( sig.return_annotation is EMPTY or not show_annotation or not show_return_annotation ): - return f'({concatenated_args})' + retann = '' else: retann = stringify_annotation( sig.return_annotation, mode, short_literals=short_literals ) - return f'({concatenated_args}) -> {retann}' + return concatenated_args, retann def signature_from_str(signature: str) -> Signature: @@ -1051,10 +1093,8 @@ def getdoc( return doc -def _getdoc_internal( - obj: Any, attrgetter: Callable[[Any, str, Any], Any] = safe_getattr -) -> str | None: - doc = attrgetter(obj, '__doc__', None) +def _getdoc_internal(obj: Any, /) -> str | None: + doc = safe_getattr(obj, '__doc__', None) if isinstance(doc, str): return doc return None diff --git a/addons/source-python/packages/site-packages/sphinx/util/inventory.py b/addons/source-python/packages/site-packages/sphinx/util/inventory.py index d37398a55..467d72e0d 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/inventory.py +++ b/addons/source-python/packages/site-packages/sphinx/util/inventory.py @@ -75,7 +75,7 @@ def _loads_v1(cls, lines: Sequence[str], *, uri: str) -> _Inventory: projname = lines[0].rstrip()[11:] # Project name version = lines[1].rstrip()[11:] # Project version for line in lines[2:]: - name, item_type, location = line.rstrip().split(None, 2) + name, item_type, location = line.rstrip().split(None, maxsplit=2) location = posixpath.join(uri, location) # version 1 did not add anchors to the location if item_type == 'mod': @@ -311,7 +311,9 @@ def __setstate__(self, state: tuple[str, str, str, str]) -> None: def __getitem__(self, key: int | slice) -> str | tuple[str, ...]: warnings.warn( - 'The tuple interface for _InventoryItem objects is deprecated.', + 'The tuple interface for _InventoryItem objects is deprecated.' + ' Please access the `project_name`, `project_version`, ' + '`uri`, and `displayname` attributes directly.', RemovedInSphinx10Warning, stacklevel=2, ) @@ -320,7 +322,9 @@ def __getitem__(self, key: int | slice) -> str | tuple[str, ...]: def __iter__(self) -> Iterator[str]: warnings.warn( - 'The iter() interface for _InventoryItem objects is deprecated.', + 'The iter() interface for _InventoryItem objects is deprecated.' + ' Please access the `project_name`, `project_version`, ' + '`uri`, and `displayname` attributes directly.', RemovedInSphinx10Warning, stacklevel=2, ) diff --git a/addons/source-python/packages/site-packages/sphinx/util/logging.py b/addons/source-python/packages/site-packages/sphinx/util/logging.py index fab8acc3b..9ad035c49 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/logging.py +++ b/addons/source-python/packages/site-packages/sphinx/util/logging.py @@ -430,7 +430,7 @@ class WarningSuppressor(logging.Filter): """Filter logs by `suppress_warnings`.""" def __init__(self, app: Sphinx) -> None: - self.app = app + self._app = app super().__init__() def filter(self, record: logging.LogRecord) -> bool: @@ -438,7 +438,7 @@ def filter(self, record: logging.LogRecord) -> bool: subtype = getattr(record, 'subtype', '') try: - suppress_warnings = self.app.config.suppress_warnings + suppress_warnings = self._app.config.suppress_warnings except AttributeError: # config is not initialized yet (ex. in conf.py) suppress_warnings = () @@ -446,7 +446,7 @@ def filter(self, record: logging.LogRecord) -> bool: if is_suppressed_warning(type, subtype, suppress_warnings): return False else: - self.app._warncount += 1 + self._app._warncount += 1 return True @@ -496,7 +496,7 @@ class SphinxLogRecordTranslator(logging.Filter): LogRecordClass: type[logging.LogRecord] def __init__(self, app: Sphinx) -> None: - self.app = app + self._app = app super().__init__() def filter(self, record: SphinxWarningLogRecord) -> bool: # type: ignore[override] @@ -509,15 +509,15 @@ def filter(self, record: SphinxWarningLogRecord) -> bool: # type: ignore[overri docname, lineno = location if docname: if lineno: - record.location = f'{self.app.env.doc2path(docname)}:{lineno}' + record.location = f'{self._app.env.doc2path(docname)}:{lineno}' else: - record.location = f'{self.app.env.doc2path(docname)}' + record.location = f'{self._app.env.doc2path(docname)}' else: record.location = None elif isinstance(location, nodes.Node): record.location = get_node_location(location) elif location and ':' not in location: - record.location = f'{self.app.env.doc2path(location)}' + record.location = f'{self._app.env.doc2path(location)}' return True @@ -537,7 +537,7 @@ def filter(self, record: SphinxWarningLogRecord) -> bool: # type: ignore[overri ret = super().filter(record) try: - show_warning_types = self.app.config.show_warning_types + show_warning_types = self._app.config.show_warning_types except AttributeError: # config is not initialized yet (ex. in conf.py) show_warning_types = False @@ -602,14 +602,18 @@ class LastMessagesWriter: """Stream writer storing last 10 messages in memory to save trackback""" def __init__(self, app: Sphinx, stream: IO[str]) -> None: - self.app = app + self._app = app def write(self, data: str) -> None: - self.app.messagelog.append(data) + self._app.messagelog.append(data) -def setup(app: Sphinx, status: IO[str], warning: IO[str]) -> None: +def setup( + app: Sphinx, status: IO[str], warning: IO[str], *, verbosity: int = 0 +) -> None: """Setup root logger for Sphinx""" + log_level = VERBOSITY_MAP[max(verbosity, 0)] + logger = logging.getLogger(NAMESPACE) logger.setLevel(logging.DEBUG) logger.propagate = False @@ -621,7 +625,7 @@ def setup(app: Sphinx, status: IO[str], warning: IO[str]) -> None: info_handler = NewLineStreamHandler(SafeEncodingWriter(status)) info_handler.addFilter(InfoFilter()) info_handler.addFilter(InfoLogRecordTranslator(app)) - info_handler.setLevel(VERBOSITY_MAP[app.verbosity]) + info_handler.setLevel(log_level) info_handler.setFormatter(ColorizeFormatter()) warning_handler = WarningStreamHandler(SafeEncodingWriter(warning)) @@ -635,7 +639,7 @@ def setup(app: Sphinx, status: IO[str], warning: IO[str]) -> None: messagelog_handler = logging.StreamHandler(LastMessagesWriter(app, status)) messagelog_handler.addFilter(InfoFilter()) - messagelog_handler.setLevel(VERBOSITY_MAP[app.verbosity]) + messagelog_handler.setLevel(log_level) logger.addHandler(info_handler) logger.addHandler(warning_handler) diff --git a/addons/source-python/packages/site-packages/sphinx/util/math.py b/addons/source-python/packages/site-packages/sphinx/util/math.py index f482e0c4d..898aab2d6 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/math.py +++ b/addons/source-python/packages/site-packages/sphinx/util/math.py @@ -14,7 +14,7 @@ def get_node_equation_number(writer: HTML5Translator, node: nodes.math_block) -> if writer.builder.config.math_numfig and writer.builder.config.numfig: figtype = 'displaymath' if writer.builder.name == 'singlehtml': - key = f'{writer.docnames[-1]}/{figtype}' # type: ignore[has-type] + key = f'{writer.docnames[-1]}/{figtype}' else: key = figtype diff --git a/addons/source-python/packages/site-packages/sphinx/util/nodes.py b/addons/source-python/packages/site-packages/sphinx/util/nodes.py index e29dc3768..90c44c6a9 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/nodes.py +++ b/addons/source-python/packages/site-packages/sphinx/util/nodes.py @@ -5,7 +5,8 @@ import contextlib import re import unicodedata -from typing import TYPE_CHECKING, Any, Generic, TypeVar, cast +from io import StringIO +from typing import TYPE_CHECKING, Any, cast from docutils import nodes from docutils.nodes import Node @@ -35,10 +36,7 @@ caption_ref_re = explicit_title_re # b/w compat alias -N = TypeVar('N', bound=Node) - - -class NodeMatcher(Generic[N]): +class NodeMatcher[N: Node]: """A helper class for Node.findall(). It checks that the given node is an instance of the specified node-classes and @@ -197,13 +195,13 @@ def apply_source_workaround(node: Element) -> None: node, ( # https://github.com/sphinx-doc/sphinx/issues/1305 rubric directive - nodes.rubric + nodes.rubric, # https://github.com/sphinx-doc/sphinx/issues/1477 line node - | nodes.line + nodes.line, # https://github.com/sphinx-doc/sphinx/issues/3093 image directive in substitution - | nodes.image + nodes.image, # https://github.com/sphinx-doc/sphinx/issues/3335 field list syntax - | nodes.field_name + nodes.field_name, ), ): logger.debug( @@ -289,6 +287,35 @@ def is_translatable(node: Node) -> bool: ) # fmt: skip +def _clean_extracted_message(text: str) -> str: + """Remove trailing backslashes from each line of *text*.""" + if '\\' in text: + # TODO(picnixz): if possible, find a regex alternative + # that is not vulnerable to a ReDOS (the code below is + # equivalent to re.sub(r'[ \t]*\\[ \t]*$', text, re.MULTILINE)). + buffer = StringIO() + for line in text.splitlines(keepends=True): + split = line.rsplit('\\', maxsplit=1) + if len(split) == 2: + prefix, suffix = split + if re.match(r'^[ \t]*\s$', suffix): + # The line ends with some NL character, preceded by + # one or more whitespaces (to be dropped), the backslash, + # and possibly other whitespaces on its left. + buffer.write(prefix.rstrip(' \t')) + buffer.write(suffix.lstrip(' \t')) + elif not suffix: + # backslash is at the end of the LAST line + buffer.write(prefix.rstrip(' \t')) + else: + # backslash is is in the middle of the line + buffer.write(line) + else: + buffer.write(line) + text = buffer.getvalue() + return text.replace('\n', ' ').strip() + + def extract_messages(doctree: Element) -> Iterable[tuple[Element, str]]: """Extract translatable messages from a document tree.""" for node in doctree.findall(is_translatable): @@ -311,7 +338,8 @@ def extract_messages(doctree: Element) -> Iterable[tuple[Element, str]]: elif isinstance(node, nodes.meta): msg = node['content'] else: - msg = node.rawsource.replace('\n', ' ').strip() # type: ignore[attr-defined] + text = node.rawsource # type: ignore[attr-defined] + msg = _clean_extracted_message(text) # XXX nodes rendering empty are likely a bug in sphinx.addnodes if msg: @@ -363,8 +391,8 @@ def traverse_translatable_index( def nested_parse_with_titles( - state: RSTState, content: StringList, node: Node, content_offset: int = 0 -) -> str: + state: RSTState, content: StringList, node: Element, content_offset: int = 0 +) -> int: """Version of state.nested_parse() that allows titles and does not require titles to have the same decoration as the calling document. @@ -404,8 +432,6 @@ def process_index_entry( entry: str, targetid: str, ) -> list[tuple[str, str, str, str, str | None]]: - from sphinx.domains.python import pairindextypes - indexentries: list[tuple[str, str, str, str, str | None]] = [] entry = entry.strip() oentry = entry @@ -413,42 +439,46 @@ def process_index_entry( if entry.startswith('!'): main = 'main' entry = entry[1:].lstrip() - for index_type in pairindextypes: + + for index_type in ( + 'module', + 'keyword', + 'operator', + 'object', + 'exception', + 'statement', + 'builtin', + ): if entry.startswith(f'{index_type}:'): value = entry[len(index_type) + 1 :].strip() - value = f'{pairindextypes[index_type]}; {value}' - # xref RemovedInSphinx90Warning - logger.warning( - __( - '%r is deprecated for index entries (from entry %r). ' - "Use 'pair: %s' instead." - ), - index_type, - entry, - value, - type='index', - ) - indexentries.append(('pair', value, targetid, main, None)) + if index_type == 'builtin': + value = f'built-in function; {value}' + else: + value = f'{index_type}; {value}' + msg = __( + '%r is no longer supported for index entries (from entry %r). ' + "Use 'pair: %s' instead." + ) % (index_type, entry, value) + raise ValueError(msg) + + for index_type in indextypes: + if entry.startswith(f'{index_type}:'): + value = entry[len(index_type) + 1 :].strip() + if index_type == 'double': + index_type = 'pair' + indexentries.append((index_type, value, targetid, main, None)) break + # shorthand notation for single entries else: - for index_type in indextypes: - if entry.startswith(f'{index_type}:'): - value = entry[len(index_type) + 1 :].strip() - if index_type == 'double': - index_type = 'pair' - indexentries.append((index_type, value, targetid, main, None)) - break - # shorthand notation for single entries - else: - for value in oentry.split(','): - value = value.strip() - main = '' - if value.startswith('!'): - main = 'main' - value = value[1:].lstrip() - if not value: - continue - indexentries.append(('single', value, targetid, main, None)) + for value in oentry.split(','): + value = value.strip() + main = '' + if value.startswith('!'): + main = 'main' + value = value[1:].lstrip() + if not value: + continue + indexentries.append(('single', value, targetid, main, None)) return indexentries @@ -652,8 +682,10 @@ def set_source_info(directive: Directive, node: Node) -> None: def set_role_source_info(inliner: Inliner, lineno: int, node: Node) -> None: - gsal = inliner.reporter.get_source_and_line # type: ignore[attr-defined] - node.source, node.line = gsal(lineno) + gsal = inliner.reporter.get_source_and_line + source, line = gsal(lineno) + node.source = source # type: ignore[assignment] + node.line = line def copy_source_info(src: Element, dst: Element) -> None: diff --git a/addons/source-python/packages/site-packages/sphinx/util/osutil.py b/addons/source-python/packages/site-packages/sphinx/util/osutil.py index 807db899a..9a3c5f494 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/osutil.py +++ b/addons/source-python/packages/site-packages/sphinx/util/osutil.py @@ -47,8 +47,8 @@ def relative_uri(base: str, to: str) -> str: """Return a relative URL from ``base`` to ``to``.""" if to.startswith(SEP): return to - b2 = base.split('#')[0].split(SEP) - t2 = to.split('#')[0].split(SEP) + b2 = base.partition('#')[0].split(SEP) + t2 = to.partition('#')[0].split(SEP) # remove common segments (except the last segment) for x, y in zip(b2[:-1], t2[:-1], strict=False): if x != y: @@ -186,8 +186,6 @@ def _relative_path(path: Path, root: Path, /) -> Path: if path.anchor != root.anchor or '..' in root.parts: # If the drives are different, no relative path exists. return path - if sys.version_info[:2] < (3, 12): - return Path(os.path.relpath(path, root)) return path.relative_to(root, walk_up=True) diff --git a/addons/source-python/packages/site-packages/sphinx/util/parallel.py b/addons/source-python/packages/site-packages/sphinx/util/parallel.py index 3dd5e574c..af50907ef 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/parallel.py +++ b/addons/source-python/packages/site-packages/sphinx/util/parallel.py @@ -101,7 +101,7 @@ def add_task( self._args[tid] = arg precv, psend = multiprocessing.Pipe(False) context: Any = multiprocessing.get_context('fork') - proc = context.Process(target=self._process, args=(psend, task_func, arg)) + proc = context.Process(target=self._process, args=(psend, task_func, arg)) # ty: ignore[unresolved-attribute] self._procs[tid] = proc self._precvs_waiting[tid] = precv try: diff --git a/addons/source-python/packages/site-packages/sphinx/util/parsing.py b/addons/source-python/packages/site-packages/sphinx/util/parsing.py index 4c4a64776..aa6c34251 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/parsing.py +++ b/addons/source-python/packages/site-packages/sphinx/util/parsing.py @@ -39,8 +39,7 @@ def nested_parse_to_nodes( Note that this option bypasses Docutils' usual checks on doctree structure, and misuse of this option can lead to an incoherent doctree. In Docutils, section nodes should - only be children of ``Structural`` nodes, which includes - ``document``, ``section``, and ``sidebar`` nodes. + only be children of ``document`` or ``section`` nodes. :param keep_title_context: If this is False (the default), then *content* is parsed as if it were an independent document, meaning that title decorations (e.g. underlines) @@ -50,6 +49,10 @@ def nested_parse_to_nodes( If this is True, then title underlines must match those in the surrounding document, otherwise the behaviour is undefined. + Warning: Up to Docutils 0.21, sections with a decoration style + matching a level that is higher than the current section level are + silently discarded! Since Docutils 0.22.1, an error is reported. + .. versionadded:: 7.4 """ document = state.document diff --git a/addons/source-python/packages/site-packages/sphinx/util/requests.py b/addons/source-python/packages/site-packages/sphinx/util/requests.py index b439ce437..dd39ca83f 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/requests.py +++ b/addons/source-python/packages/site-packages/sphinx/util/requests.py @@ -35,12 +35,12 @@ def _get_tls_cacert(url: str, certs: str | dict[str, str] | None) -> str | bool: """Get additional CA cert for a specific URL.""" if not certs: return True - elif isinstance(certs, str | tuple): + elif isinstance(certs, (str, tuple)): return certs else: hostname = urlsplit(url).netloc if '@' in hostname: - _, hostname = hostname.split('@', 1) + hostname = hostname.partition('@')[-1] return certs.get(hostname, True) diff --git a/addons/source-python/packages/site-packages/sphinx/util/rst.py b/addons/source-python/packages/site-packages/sphinx/util/rst.py index c848a9b36..485f36976 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/rst.py +++ b/addons/source-python/packages/site-packages/sphinx/util/rst.py @@ -1,15 +1,15 @@ -"""reST helper functions.""" +"""reStructuredText helper functions.""" from __future__ import annotations import re from collections import defaultdict from contextlib import contextmanager -from typing import TYPE_CHECKING, cast +from typing import TYPE_CHECKING from unicodedata import east_asian_width from docutils.parsers.rst import roles -from docutils.parsers.rst.languages import en as english # type: ignore[attr-defined] +from docutils.parsers.rst.languages import en as english from docutils.parsers.rst.states import Body from docutils.utils import Reporter from jinja2 import pass_environment @@ -25,7 +25,7 @@ logger = logging.getLogger(__name__) -FIELD_NAME_RE = re.compile(Body.patterns['field_marker']) +_FIELD_NAME_RE = re.compile(Body.patterns['field_marker']) symbols_re = re.compile(r'([!-\-/:-@\[-`{-~])') # symbols without dot(0x2e) SECTIONING_CHARS = ['=', '-', '~'] @@ -66,7 +66,7 @@ def heading(env: Environment, text: str, level: int = 1) -> str: def default_role(docname: str, name: str) -> Iterator[None]: if name: dummy_reporter = Reporter('', 4, 4) - role_fn, _ = roles.role(name, english, 0, dummy_reporter) + role_fn, _ = roles.role(name, english, 0, dummy_reporter) # type: ignore[arg-type] if role_fn: docutils.register_role('', role_fn) # type: ignore[arg-type] else: @@ -77,39 +77,39 @@ def default_role(docname: str, name: str) -> Iterator[None]: docutils.unregister_role('') -def prepend_prolog(content: StringList, prolog: str) -> None: - """Prepend a string to content body as prolog.""" - if prolog: - pos = 0 - for line in content: - if FIELD_NAME_RE.match(line): - pos += 1 - else: - break - - if pos > 0: - # insert a blank line after docinfo - content.insert(pos, '', '', 0) +def _prepend_prologue(content: StringList, prologue: str) -> None: + """Prepend a string to content body as a prologue.""" + if not prologue: + return + pos = 0 + for line in content: + if _FIELD_NAME_RE.match(line): pos += 1 + else: + break - # insert prolog (after docinfo if exists) - lineno = 0 - for lineno, line in enumerate(prolog.splitlines()): - content.insert(pos + lineno, line, '', lineno) + if pos > 0: + # insert a blank line after docinfo + content.insert(pos, '', '', 0) + pos += 1 - content.insert(pos + lineno + 1, '', '', 0) + # insert prologue (after docinfo if exists) + lineno = 0 + for lineno, line in enumerate(prologue.splitlines()): + content.insert(pos + lineno, line, '', lineno) + content.insert(pos + lineno + 1, '', '', 0) -def append_epilog(content: StringList, epilog: str) -> None: - """Append a string to content body as epilog.""" - if epilog: - if len(content) > 0: - source, lineno = content.info(-1) - # lineno will never be None, since len(content) > 0 - lineno = cast('int', lineno) - else: - source = '' - lineno = 0 - content.append('', source, lineno + 1) - for lineno, line in enumerate(epilog.splitlines()): - content.append(line, '', lineno) + +def _append_epilogue(content: StringList, epilogue: str) -> None: + """Append a string to content body as an epilogue.""" + if not epilogue: + return + if len(content) > 0: + source, lineno = content.items[-1] + else: + source = '' + lineno = 0 + content.append('', source, lineno + 1) + for lineno, line in enumerate(epilogue.splitlines()): + content.append(line, '', lineno) diff --git a/addons/source-python/packages/site-packages/sphinx/util/tags.py b/addons/source-python/packages/site-packages/sphinx/util/tags.py index 4467534a9..228f1dbff 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/tags.py +++ b/addons/source-python/packages/site-packages/sphinx/util/tags.py @@ -1,17 +1,13 @@ from __future__ import annotations -import warnings from typing import TYPE_CHECKING import jinja2.environment import jinja2.nodes import jinja2.parser -from sphinx.deprecation import RemovedInSphinx90Warning - if TYPE_CHECKING: - from collections.abc import Iterator, Sequence - from typing import Literal + from collections.abc import Collection, Iterator _ENV = jinja2.environment.Environment() @@ -42,7 +38,7 @@ def parse_compare(self) -> jinja2.nodes.Expr: class Tags: - def __init__(self, tags: Sequence[str] = ()) -> None: + def __init__(self, tags: Collection[str] = ()) -> None: self._tags = set(tags or ()) self._condition_cache: dict[str, bool] = {} @@ -67,15 +63,6 @@ def add(self, tag: str) -> None: def remove(self, tag: str) -> None: self._tags.discard(tag) - @property - def tags(self) -> dict[str, Literal[True]]: - warnings.warn( - 'Tags.tags is deprecated, use methods on Tags.', - RemovedInSphinx90Warning, - stacklevel=2, - ) - return dict.fromkeys(self._tags, True) - def eval_condition(self, condition: str) -> bool: """Evaluate a boolean condition. diff --git a/addons/source-python/packages/site-packages/sphinx/util/template.py b/addons/source-python/packages/site-packages/sphinx/util/template.py index 03a964934..c7bb39933 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/template.py +++ b/addons/source-python/packages/site-packages/sphinx/util/template.py @@ -42,7 +42,7 @@ def render_string(self, source: str, context: dict[str, Any]) -> str: class FileRenderer(BaseRenderer): def __init__(self, search_path: Sequence[str | os.PathLike[str]]) -> None: - if isinstance(search_path, str | os.PathLike): + if isinstance(search_path, (str, os.PathLike)): search_path = [search_path] else: # filter "None" paths diff --git a/addons/source-python/packages/site-packages/sphinx/util/typing.py b/addons/source-python/packages/site-packages/sphinx/util/typing.py index 1a68a18e2..dc19754cb 100644 --- a/addons/source-python/packages/site-packages/sphinx/util/typing.py +++ b/addons/source-python/packages/site-packages/sphinx/util/typing.py @@ -7,7 +7,7 @@ import types import typing from collections.abc import Callable, Sequence -from typing import TYPE_CHECKING +from typing import TYPE_CHECKING, TypeAliasType from docutils import nodes from docutils.parsers.rst.states import Inliner @@ -16,23 +16,32 @@ if TYPE_CHECKING: from collections.abc import Mapping - from typing import Annotated, Any, Final, Literal, Protocol, TypeAlias + from typing import Annotated, Any, Final, Literal, Protocol from typing_extensions import TypeIs from sphinx.application import Sphinx from sphinx.util.inventory import _InventoryItem - _RestifyMode: TypeAlias = Literal[ + type _RestifyMode = Literal[ 'fully-qualified-except-typing', 'smart', ] - _StringifyMode: TypeAlias = Literal[ + type _StringifyMode = Literal[ 'fully-qualified-except-typing', 'fully-qualified', 'smart', ] +AnyTypeAliasType: tuple[type, ...] = (TypeAliasType,) + +try: + import typing_extensions +except ImportError: + pass +else: + AnyTypeAliasType += (typing_extensions.TypeAliasType,) + logger = logging.getLogger(__name__) @@ -116,10 +125,10 @@ def is_invalid_builtin_class(obj: Any) -> str: # Text like nodes which are initialized with text and rawsource -TextlikeNode: TypeAlias = nodes.Text | nodes.TextElement +type TextlikeNode = nodes.Text | nodes.TextElement # path matcher -PathMatcher: TypeAlias = Callable[[str], bool] +type PathMatcher = Callable[[str], bool] # common role functions if TYPE_CHECKING: @@ -138,19 +147,19 @@ def __call__( ) -> tuple[list[nodes.Node], list[nodes.system_message]]: ... else: - RoleFunction: TypeAlias = Callable[ + type RoleFunction = Callable[ [str, str, str, int, Inliner, dict[str, typing.Any], Sequence[str]], tuple[list[nodes.Node], list[nodes.system_message]], ] # A option spec for directive -OptionSpec: TypeAlias = dict[str, Callable[[str], typing.Any]] +type OptionSpec = dict[str, Callable[[str], typing.Any]] # title getter functions for enumerable nodes (see sphinx.domains.std) -TitleGetter: TypeAlias = Callable[[nodes.Node], str] +type TitleGetter = Callable[[nodes.Node], str] # inventory data on memory -Inventory: TypeAlias = dict[str, dict[str, '_InventoryItem']] +type Inventory = dict[str, dict[str, _InventoryItem]] class ExtensionMetadata(typing.TypedDict, total=False): @@ -174,13 +183,13 @@ class ExtensionMetadata(typing.TypedDict, total=False): if TYPE_CHECKING: - _ExtensionSetupFunc: TypeAlias = Callable[[Sphinx], ExtensionMetadata] # NoQA: PYI047 (false positive) + type _ExtensionSetupFunc = Callable[[Sphinx], ExtensionMetadata] # NoQA: PYI047 (false positive) def get_type_hints( obj: Any, globalns: dict[str, Any] | None = None, - localns: dict[str, Any] | None = None, + localns: Mapping[str, Any] | None = None, include_extras: bool = False, ) -> dict[str, Any]: """Return a dictionary containing type hints for a function, method, module or class @@ -240,7 +249,7 @@ def restify(cls: Any, mode: _RestifyMode = 'fully-qualified-except-typing') -> s 'smart' Show the name of the annotation. """ - from sphinx.ext.autodoc.mock import ismock, ismockmodule # lazy loading + from sphinx.ext.autodoc._dynamic._mock import ismock, ismockmodule # lazy loading from sphinx.util.inspect import isgenericalias, object_description # lazy loading valid_modes = {'fully-qualified-except-typing', 'smart'} @@ -291,9 +300,6 @@ def restify(cls: Any, mode: _RestifyMode = 'fully-qualified-except-typing') -> s else: meta_args.append(repr(m)) meta = ', '.join(meta_args) - if sys.version_info[:2] <= (3, 11): - # Hardcoded to fix errors on Python 3.11 and earlier. - return rf':py:class:`~typing.Annotated`\ [{args}, {meta}]' return ( f':py:class:`{module_prefix}{cls.__module__}.{cls.__name__}`' rf'\ [{args}, {meta}]' @@ -309,6 +315,11 @@ def restify(cls: Any, mode: _RestifyMode = 'fully-qualified-except-typing') -> s # are printed natively and ``None``-like types are kept as is. # *cls* is defined in ``typing``, and thus ``__args__`` must exist return ' | '.join(restify(a, mode) for a in cls.__args__) + elif isinstance(cls, AnyTypeAliasType): + # TODO: Use ``__qualname__`` here unconditionally (not yet supported) + if hasattr(cls, '__qualname__'): + return f':py:type:`{module_prefix}{cls.__module__}.{cls.__qualname__}`' + return f':py:type:`{module_prefix}{cls.__module__}.{cls.__name__}`' # type: ignore[attr-defined] elif cls.__module__ in {'__builtin__', 'builtins'}: if hasattr(cls, '__args__'): if not cls.__args__: # Empty tuple, list, ... @@ -407,7 +418,7 @@ def stringify_annotation( :param short_literals: Render :py:class:`Literals` in PEP 604 style (``|``). """ - from sphinx.ext.autodoc.mock import ismock, ismockmodule # lazy loading + from sphinx.ext.autodoc._dynamic._mock import ismock, ismockmodule # lazy loading valid_modes = {'fully-qualified-except-typing', 'fully-qualified', 'smart'} if mode not in valid_modes: @@ -440,7 +451,9 @@ def stringify_annotation( annotation_module_is_typing = True # Extract the annotation's base type by considering formattable cases - if isinstance(annotation, typing.TypeVar) and not _is_unpack_form(annotation): + if isinstance( + annotation, (typing.TypeVar, AnyTypeAliasType) + ) and not _is_unpack_form(annotation): # typing_extensions.Unpack is incorrectly determined as a TypeVar if annotation_module_is_typing and mode in { 'fully-qualified-except-typing', @@ -456,7 +469,7 @@ def stringify_annotation( return module_prefix + f'{annotation_module}.{annotation_name}' elif fixed_annotation := is_invalid_builtin_class(annotation): return module_prefix + fixed_annotation - elif _is_annotated_form(annotation): # for py310+ + elif _is_annotated_form(annotation): pass elif annotation_module == 'builtins' and annotation_qualname: args = getattr(annotation, '__args__', None) @@ -524,7 +537,7 @@ def stringify_annotation( # Process the generic arguments (if any). # They must be a list or a tuple, otherwise they are considered 'broken'. annotation_args = getattr(annotation, '__args__', ()) - if annotation_args and isinstance(annotation_args, list | tuple): + if annotation_args and isinstance(annotation_args, (list, tuple)): if ( qualname in {'Union', 'types.UnionType'} and all(getattr(a, '__origin__', ...) is typing.Literal for a in annotation_args) @@ -558,7 +571,7 @@ def stringify_annotation( _format_literal_arg_stringify(a, mode=mode) for a in annotation_args ) return f'{module_prefix}Literal[{args}]' - elif _is_annotated_form(annotation): # for py310+ + elif _is_annotated_form(annotation): args = stringify_annotation( annotation_args[0], mode=mode, short_literals=short_literals ) @@ -583,11 +596,6 @@ def stringify_annotation( else: meta_args.append(repr(m)) meta = ', '.join(meta_args) - if sys.version_info[:2] <= (3, 11): - if mode == 'fully-qualified-except-typing': - return f'Annotated[{args}, {meta}]' - module_prefix = module_prefix.replace('builtins', 'typing') - return f'{module_prefix}Annotated[{args}, {meta}]' return f'{module_prefix}Annotated[{args}, {meta}]' elif all(is_system_TypeVar(a) for a in annotation_args): # Suppress arguments if all system defined TypeVars (ex. Dict[KT, VT]) diff --git a/addons/source-python/packages/site-packages/sphinx/versioning.py b/addons/source-python/packages/site-packages/sphinx/versioning.py index 3de5a17ec..02bc6edd0 100644 --- a/addons/source-python/packages/site-packages/sphinx/versioning.py +++ b/addons/source-python/packages/site-packages/sphinx/versioning.py @@ -160,7 +160,7 @@ def apply(self, **kwargs: Any) -> None: if env.versioning_compare: # get old doctree - filename = env.doctreedir / f'{env.docname}.doctree' + filename = env.doctreedir / f'{env.current_document.docname}.doctree' try: with open(filename, 'rb') as f: old_doctree = pickle.load(f) diff --git a/addons/source-python/packages/site-packages/sphinx/writers/html.py b/addons/source-python/packages/site-packages/sphinx/writers/html.py index e2c04ca32..cb273cbdb 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/html.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/html.py @@ -4,7 +4,7 @@ from typing import TYPE_CHECKING, cast -from docutils.writers.html4css1 import Writer +from docutils.writers import html4css1 from sphinx.util import logging from sphinx.writers.html5 import HTML5Translator @@ -20,7 +20,7 @@ # https://www.arnebrodowski.de/blog/write-your-own-restructuredtext-writer.html -class HTMLWriter(Writer): # type: ignore[misc] +class HTMLWriter(html4css1.Writer): # override embed-stylesheet default value to False. settings_default_overrides = {'embed_stylesheet': False} @@ -33,6 +33,7 @@ def translate(self) -> None: # sadly, this is mostly copied from parent class visitor = self.builder.create_translator(self.document, self.builder) self.visitor = cast('HTML5Translator', visitor) + assert self.document is not None self.document.walkabout(visitor) self.output = self.visitor.astext() for attr in ( diff --git a/addons/source-python/packages/site-packages/sphinx/writers/html5.py b/addons/source-python/packages/site-packages/sphinx/writers/html5.py index b39b463d6..5ab57784c 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/html5.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/html5.py @@ -17,6 +17,8 @@ from sphinx.util.images import get_image_size if TYPE_CHECKING: + from collections.abc import Callable + from docutils.nodes import Element, Node, Text from sphinx.builders import Builder @@ -41,7 +43,7 @@ def multiply_length(length: str, scale: int) -> str: return f'{int(result)}{unit}' -class HTML5Translator(SphinxTranslator, BaseTranslator): # type: ignore[misc] +class HTML5Translator(SphinxTranslator, BaseTranslator): """Our custom HTML translator.""" builder: StandaloneHTMLBuilder @@ -305,10 +307,10 @@ def depart_desc_optional(self, node: Element) -> None: self.param_group_index += 1 def visit_desc_annotation(self, node: Element) -> None: - self.body.append(self.starttag(node, 'em', '', CLASS='property')) + self.body.append(self.starttag(node, 'span', '', CLASS='property')) def depart_desc_annotation(self, node: Element) -> None: - self.body.append('') + self.body.append('') ############################################## @@ -347,7 +349,10 @@ def visit_reference(self, node: Element) -> None: atts['target'] = node['target'] if 'rel' in node: atts['rel'] = node['rel'] - self.body.append(self.starttag(node, 'a', '', **atts)) + # TODO: TYPING: Upstream docutils should type HTMLTranslator.starttag() + # to accept **attributes; current stub treats the 4th parameter + # as empty: bool. + self.body.append(self.starttag(node, 'a', '', **atts)) # type: ignore[arg-type] if node.get('secnumber'): self.body.append( @@ -357,11 +362,13 @@ def visit_reference(self, node: Element) -> None: def visit_number_reference(self, node: Element) -> None: self.visit_reference(node) - def depart_number_reference(self, node: Element) -> None: + def depart_number_reference(self, node: nodes.reference) -> None: self.depart_reference(node) # overwritten -- we don't want source comments to show up in the HTML - def visit_comment(self, node: Element) -> None: + def visit_comment( + self, node: nodes.comment, sub: Callable[[str, str], str] | None = None + ) -> None: raise nodes.SkipNode # overwritten @@ -372,8 +379,16 @@ def visit_admonition(self, node: Element, name: str = '') -> None: tag_name = 'details' if collapsible == 'open': attributes['open'] = 'open' + # TODO: TYPING: Upstream docutils should type HTMLTranslator.starttag() + # to accept **attributes; current stub treats the 4th parameter + # as empty: bool. self.body.append( - self.starttag(node, tag_name, CLASS=f'admonition {name}', **attributes) + self.starttag( + node, + tag_name, + CLASS=f'admonition {name}', + **attributes, # type: ignore[arg-type] + ) ) self.context.append(f'\n') if name: @@ -451,7 +466,7 @@ def add_permalink_ref(self, node: Element, title: str) -> None: ) # overwritten - def visit_bullet_list(self, node: Element) -> None: + def visit_bullet_list(self, node: nodes.bullet_list) -> None: if len(node) == 1 and isinstance(node[0], addnodes.toctree): # avoid emitting empty
    raise nodes.SkipNode @@ -474,7 +489,7 @@ def visit_classifier(self, node: Element) -> None: def depart_classifier(self, node: Element) -> None: self.body.append('') - next_node: Node = node.next_node(descend=False, siblings=True) + next_node: Node | None = node.next_node(descend=False, siblings=True) if not isinstance(next_node, nodes.classifier): # close `
    ` tag at the tail of classifiers self.body.append('
    ') @@ -485,7 +500,7 @@ def visit_term(self, node: Element) -> None: # overwritten def depart_term(self, node: Element) -> None: - next_node: Node = node.next_node(descend=False, siblings=True) + next_node: Node | None = node.next_node(descend=False, siblings=True) if isinstance(next_node, nodes.classifier): # Leave the end tag to `self.depart_classifier()`, in case # there's a classifier. @@ -498,7 +513,7 @@ def depart_term(self, node: Element) -> None: self.body.append('
    ') # overwritten - def visit_title(self, node: Element) -> None: + def visit_title(self, node: nodes.title) -> None: if ( isinstance(node.parent, addnodes.compact_paragraph) and node.parent.get('toctree') @@ -535,7 +550,7 @@ def visit_title(self, node: Element) -> None: self.body.pop() self.context[-1] = '

    \n' - def depart_title(self, node: Element) -> None: + def depart_title(self, node: nodes.title) -> None: close_tag = self.context[-1] if ( self.config.html_permalinks @@ -586,7 +601,7 @@ def depart_rubric(self, node: nodes.rubric) -> None: super().depart_rubric(node) # overwritten - def visit_literal_block(self, node: Element) -> None: + def visit_literal_block(self, node: nodes.literal_block) -> None: if node.rawsource != node.astext(): # most probably a parsed-literal block -- don't highlight return super().visit_literal_block(node) @@ -614,7 +629,7 @@ def visit_literal_block(self, node: Element) -> None: self.body.append(starttag + highlighted + '\n') raise nodes.SkipNode - def visit_caption(self, node: Element) -> None: + def visit_caption(self, node: nodes.caption) -> None: if ( isinstance(node.parent, nodes.container) and node.parent.get('literal_block') @@ -625,7 +640,7 @@ def visit_caption(self, node: Element) -> None: self.add_fignumber(node.parent) self.body.append(self.starttag(node, 'span', '', CLASS='caption-text')) - def depart_caption(self, node: Element) -> None: + def depart_caption(self, node: nodes.caption) -> None: self.body.append('') # append permalink if available @@ -648,7 +663,7 @@ def depart_caption(self, node: Element) -> None: super().depart_caption(node) def visit_doctest_block(self, node: Element) -> None: - self.visit_literal_block(node) + self.visit_literal_block(node) # type: ignore[arg-type] # overwritten to add the
    (for XHTML compliance) def visit_block_quote(self, node: Element) -> None: @@ -724,14 +739,20 @@ def visit_download_reference(self, node: Element) -> None: elif 'refuri' in node: atts['class'] += ' external' atts['href'] = node['refuri'] - self.body.append(self.starttag(node, 'a', '', **atts)) + # TODO: TYPING: Upstream docutils should type HTMLTranslator.starttag() + # to accept **attributes; current stub treats the 4th parameter + # as empty: bool. + self.body.append(self.starttag(node, 'a', '', **atts)) # type: ignore[arg-type] self.context.append('') elif 'filename' in node: atts['class'] += ' internal' atts['href'] = posixpath.join( self.builder.dlpath, urllib.parse.quote(node['filename']) ) - self.body.append(self.starttag(node, 'a', '', **atts)) + # TODO: TYPING: Upstream docutils should type HTMLTranslator.starttag() + # to accept **attributes; current stub treats the 4th parameter + # as empty: bool. + self.body.append(self.starttag(node, 'a', '', **atts)) # type: ignore[arg-type] self.context.append('') else: self.context.append('') @@ -740,14 +761,14 @@ def depart_download_reference(self, node: Element) -> None: self.body.append(self.context.pop()) # overwritten - def visit_figure(self, node: Element) -> None: + def visit_figure(self, node: nodes.figure) -> None: # set align=default if align not specified to give a default style node.setdefault('align', 'default') return super().visit_figure(node) # overwritten - def visit_image(self, node: Element) -> None: + def visit_image(self, node: nodes.image) -> None: olduri = node['uri'] # rewrite the URI if the environment knows about it if olduri in self.builder.images: @@ -775,7 +796,7 @@ def visit_image(self, node: Element) -> None: super().visit_image(node) # overwritten - def depart_image(self, node: Element) -> None: + def depart_image(self, node: nodes.image) -> None: if node['uri'].lower().endswith(('svg', 'svgz')): pass else: @@ -892,36 +913,39 @@ def visit_tip(self, node: Element) -> None: def depart_tip(self, node: Element) -> None: self.depart_admonition(node) - def visit_literal_emphasis(self, node: Element) -> None: + def visit_literal_emphasis(self, node: nodes.emphasis) -> None: return self.visit_emphasis(node) - def depart_literal_emphasis(self, node: Element) -> None: + def depart_literal_emphasis(self, node: nodes.emphasis) -> None: return self.depart_emphasis(node) - def visit_literal_strong(self, node: Element) -> None: + def visit_literal_strong(self, node: nodes.strong) -> None: return self.visit_strong(node) - def depart_literal_strong(self, node: Element) -> None: + def depart_literal_strong(self, node: nodes.strong) -> None: return self.depart_strong(node) def visit_abbreviation(self, node: Element) -> None: attrs = {} if explanation := node.get('explanation', ''): attrs['title'] = explanation - self.body.append(self.starttag(node, 'abbr', '', **attrs)) + # TODO: TYPING: Upstream docutils should type HTMLTranslator.starttag() + # to accept **attributes; current stub treats the 4th parameter + # as empty: bool. + self.body.append(self.starttag(node, 'abbr', '', **attrs)) # type: ignore[arg-type] def depart_abbreviation(self, node: Element) -> None: self.body.append('') - def visit_manpage(self, node: Element) -> None: + def visit_manpage(self, node: nodes.emphasis) -> None: self.visit_literal_emphasis(node) - def depart_manpage(self, node: Element) -> None: + def depart_manpage(self, node: nodes.emphasis) -> None: self.depart_literal_emphasis(node) # overwritten to add even/odd classes - def visit_table(self, node: Element) -> None: + def visit_table(self, node: nodes.table) -> None: self._table_row_indices.append(0) atts = {} @@ -933,10 +957,13 @@ def visit_table(self, node: Element) -> None: if 'width' in node: atts['style'] = 'width: %s' % node['width'] - tag = self.starttag(node, 'table', CLASS=' '.join(classes), **atts) + # TODO: TYPING: Upstream docutils should type HTMLTranslator.starttag() + # to accept **attributes; current stub treats the 4th parameter + # as empty: bool. + tag = self.starttag(node, 'table', CLASS=' '.join(classes), **atts) # type: ignore[arg-type] self.body.append(tag) - def depart_table(self, node: Element) -> None: + def depart_table(self, node: nodes.table) -> None: self._table_row_indices.pop() super().depart_table(node) @@ -949,11 +976,11 @@ def visit_row(self, node: Element) -> None: self.body.append(self.starttag(node, 'tr', '')) node.column = 0 # type: ignore[attr-defined] - def visit_field_list(self, node: Element) -> None: + def visit_field_list(self, node: nodes.field_list) -> None: self._fieldlist_row_indices.append(0) return super().visit_field_list(node) - def depart_field_list(self, node: Element) -> None: + def depart_field_list(self, node: nodes.field_list) -> None: self._fieldlist_row_indices.pop() return super().depart_field_list(node) diff --git a/addons/source-python/packages/site-packages/sphinx/writers/latex.py b/addons/source-python/packages/site-packages/sphinx/writers/latex.py index a2a17855c..b6dc333cb 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/latex.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/latex.py @@ -57,6 +57,7 @@ 'upperroman': r'\Roman', }, ) +VERBATIM_CHUNKSIZE = 500 CR = '\n' BLANKLINE = '\n\n' @@ -132,8 +133,9 @@ def __init__(self, node: Element) -> None: self.colsep = None self.colwidths: list[int] = [] self.has_problematic = False - self.has_oldproblematic = False self.has_verbatim = False + # cf https://github.com/sphinx-doc/sphinx/issues/13646#issuecomment-2958309632 + self.is_nested = False self.caption: list[str] = [] self.stubs: list[int] = [] @@ -146,29 +148,49 @@ def __init__(self, node: Element) -> None: self.cell_id = 0 # last assigned cell_id def is_longtable(self) -> bool: - """True if and only if table uses longtable environment.""" + """True if and only if table uses longtable environment. + + In absence of longtable class can only be used trustfully on departing + the table, as the number of rows is not known until then. + """ return self.row > 30 or 'longtable' in self.classes def get_table_type(self) -> str: """Returns the LaTeX environment name for the table. + It is used at time of ``depart_table()`` and again via ``get_colspec()``. The class currently supports: * longtable * tabular * tabulary """ - if self.is_longtable(): + if self.is_longtable() and not self.is_nested: return 'longtable' elif self.has_verbatim: return 'tabular' elif self.colspec: - return 'tabulary' + # tabulary complains (only a LaTeX warning) if none of its column + # types is used. The next test will have false positive from + # syntax such as >{\RaggedRight} but it will catch *{3}{J} which + # does require tabulary and would crash tabular + # It is user responsibility not to use a tabulary column type for + # a column having a problematic cell. + if any(c in 'LRCJT' for c in self.colspec): + return 'tabulary' + else: + return 'tabular' elif self.has_problematic or ( self.colwidths and 'colwidths-given' in self.classes ): return 'tabular' else: + # A nested tabulary in a longtable can not use any \hline's, + # i.e. it can not use "booktabs" or "standard" styles (due to a + # LaTeX upstream bug we do not try to solve). But we can't know + # here if it ends up in a tabular or longtable. So it is via + # LaTeX macros inserted by the tabulary template that the problem + # will be solved. return 'tabulary' def get_colspec(self) -> str: @@ -178,6 +200,7 @@ def get_colspec(self) -> str: .. note:: + This is used by the template renderer at time of depart_table(). The ``\\X`` and ``T`` column type specifiers are defined in ``sphinxlatextables.sty``. """ @@ -199,12 +222,6 @@ def get_colspec(self) -> str: elif self.get_table_type() == 'tabulary': # sphinx.sty sets T to be J by default. return '{' + _colsep + (('T' + _colsep) * self.colcount) + '}' + CR - elif self.has_oldproblematic: - return ( - r'{%s*{%d}{\X{1}{%d}%s}}' - % (_colsep, self.colcount, self.colcount, _colsep) - + CR - ) else: return '{' + _colsep + (('l' + _colsep) * self.colcount) + '}' + CR @@ -281,6 +298,9 @@ def escape_abbr(text: str) -> str: def rstdim_to_latexdim(width_str: str, scale: int = 100) -> str: """Convert `width_str` with rst length to LaTeX length.""" + # MEMO: the percent unit is interpreted here as a percentage + # of \linewidth. Let's keep in mind though that \linewidth + # is dynamic in LaTeX, e.g. it is smaller in lists. match = re.match(r'^(\d*\.?\d*)\s*(\S*)$', width_str) if not match: raise ValueError @@ -294,6 +314,8 @@ def rstdim_to_latexdim(width_str: str, scale: int = 100) -> str: res = '%sbp' % amount # convert to 'bp' elif unit == '%': res = r'%.3f\linewidth' % (float(amount) / 100.0) + elif unit in {'ch', 'rem', 'vw', 'vh', 'vmin', 'vmax', 'Q'}: + res = rf'{amount}\sphinx{unit}dimen' else: amount_float = float(amount) * scale / 100.0 if unit in {'', 'px'}: @@ -302,8 +324,13 @@ def rstdim_to_latexdim(width_str: str, scale: int = 100) -> str: res = '%.5fbp' % amount_float elif unit == '%': res = r'%.5f\linewidth' % (amount_float / 100.0) + elif unit in {'ch', 'rem', 'vw', 'vh', 'vmin', 'vmax', 'Q'}: + res = rf'{amount_float:.5f}\sphinx{unit}dimen' else: res = f'{amount_float:.5f}{unit}' + # Those further units are passed through and accepted "as is" by TeX: + # em and ex (both font dependent), bp, cm, mm, in, and pc. + # Non-CSS units (TeX only presumably) are cc, nc, dd, nd, and sp. return res @@ -327,7 +354,6 @@ def __init__( self.in_footnote = 0 self.in_caption = 0 self.in_term = 0 - self.needs_linetrimming = 0 self.in_minipage = 0 # only used by figure inside an admonition self.no_latex_floats = 0 @@ -781,8 +807,6 @@ def visit_desc(self, node: Element) -> None: else: self.body.append(BLANKLINE) self.body.append(r'\begin{fulllineitems}' + CR) - if self.table: - self.table.has_problematic = True def depart_desc(self, node: Element) -> None: if self.in_desc_signature: @@ -1084,8 +1108,6 @@ def visit_seealso(self, node: Element) -> None: r'\begin{sphinxseealso}{%s:}' % admonitionlabels['seealso'] + CR ) self.no_latex_floats += 1 - if self.table: - self.table.has_problematic = True def depart_seealso(self, node: Element) -> None: self.body.append(BLANKLINE) @@ -1146,23 +1168,17 @@ def visit_tabular_col_spec(self, node: Element) -> None: raise nodes.SkipNode def visit_table(self, node: Element) -> None: - if len(self.tables) == 1: - assert self.table is not None - if self.table.get_table_type() == 'longtable': - raise UnsupportedError( - '%s:%s: longtable does not support nesting a table.' - % (self.curfilestack[-1], node.line or '') - ) - # change type of parent table to tabular - # see https://groups.google.com/d/msg/sphinx-users/7m3NeOBixeo/9LKP2B4WBQAJ - self.table.has_problematic = True - elif len(self.tables) > 2: + table = Table(node) + assert table is not None + if len(self.tables) >= 1: + table.is_nested = True + # TODO: do we want > 2, > 1, or actually nothing here? + if len(self.tables) > 2: raise UnsupportedError( '%s:%s: deeply nested tables are not implemented.' % (self.curfilestack[-1], node.line or '') ) - table = Table(node) self.tables.append(table) if table.colsep is None: table.colsep = '|' * ( @@ -1191,6 +1207,35 @@ def depart_table(self, node: Element) -> None: assert self.table is not None labels = self.hypertarget_to(node) table_type = self.table.get_table_type() + if table_type == 'tabulary': + if len(self.tables) > 1: + # tell parents to not be tabulary + for _ in self.tables[:-1]: + _.has_problematic = True + else: + # We try to catch a tabularcolumns using L, R, J, C, or T. + # We can not simply test for presence in the colspec of + # one of those letters due to syntax such as >{\RaggedRight}. + # The test will not catch *{3}{J} syntax, but it would be + # overkill to try to implement LaTeX preamble mini-language. + if self.table.colspec: + assert len(self.table.colspec) > 2 + # cf how self.table.colspec got set in visit_table(). + _colspec_as_given = self.table.colspec[1:-2] + _colspec_stripped = re.sub(r'\{.*?\}', '', _colspec_as_given) + if any(c in _colspec_stripped for c in 'LRJCT'): + logger.warning( + __( + 'colspec %s was given which appears to use ' + 'tabulary syntax. But this table can not be ' + 'rendered as a tabulary; the given colspec will ' + 'be ignored.' + ), + _colspec_as_given, + type='latex', + location=node, + ) + self.table.colspec = '' table = self.render( table_type + '.tex.jinja', {'table': self.table, 'labels': labels} ) @@ -1254,22 +1299,24 @@ def visit_row(self, node: Element) -> None: # insert suitable strut for equalizing row heights in given multirow self.body.append(r'\sphinxtablestrut{%d}' % cell.cell_id) else: # use \multicolumn for wide multirow cell + left_colsep = _colsep if cell.col == 0 else '' self.body.append( r'\multicolumn{%d}{%sl%s}{\sphinxtablestrut{%d}}' - % (cell.width, _colsep, _colsep, cell.cell_id) + % (cell.width, left_colsep, _colsep, cell.cell_id) ) def depart_row(self, node: Element) -> None: assert self.table is not None - self.body.append(r'\\' + CR) cells = [self.table.cell(self.table.row, i) for i in range(self.table.colcount)] underlined = [ cell.row + cell.height == self.table.row + 1 # type: ignore[union-attr] for cell in cells ] if all(underlined): + self.body.append(r'\\' + CR) self.body.append(r'\sphinxhline') else: + self.body.append(r'\\*' + CR) i = 0 underlined.extend([False]) # sentinel if underlined[0] is False: @@ -1321,19 +1368,25 @@ def visit_entry(self, node: Element) -> None: r'\sphinxmultirow{%d}{%d}{%%' % (cell.height, cell.cell_id) + CR ) context = '}%' + CR + context - if cell.width > 1 or cell.height > 1: - self.body.append( - r'\begin{varwidth}[t]{\sphinxcolwidth{%d}{%d}}' - % (cell.width, self.table.colcount) - + CR - ) - context = ( - r'\par' + CR + r'\vskip-\baselineskip' - r'\vbox{\hbox{\strut}}\end{varwidth}%' + CR + context - ) - self.needs_linetrimming = 1 - if len(list(node.findall(nodes.paragraph))) >= 2: - self.table.has_oldproblematic = True + # 9.0 wraps ALL cells contents in "varwidth". This fixes a + # number of issues and allows more usage of tabulary. + # + # "varwidth" usage allows a *tight fit* to multiple paragraphs, + # line blocks, bullet lists, enumerated lists; it is less + # successful at finding a tight fit for object descriptions or + # admonitions: the table will then probably occupy full-width, and + # columns containing such cells will auto-divide the total width + # equally. + # + # "\sphinxcolwidth" has an appropriate definition in + # sphinxlatextables.sty which in particular takes into account + # tabulary "two-pass" system. + self.body.append( + r'\begin{varwidth}[t]{\sphinxcolwidth{%d}{%d}}' + % (cell.width, self.table.colcount) + + CR + ) + context = r'\sphinxbeforeendvarwidth' + CR + r'\end{varwidth}%' + CR + context if ( isinstance(node.parent.parent, nodes.thead) or (cell.col in self.table.stubs) @@ -1346,23 +1399,20 @@ def visit_entry(self, node: Element) -> None: pass else: self.body.append(r'\sphinxstyletheadfamily ') - if self.needs_linetrimming: - self.pushbody([]) + self.pushbody([]) self.context.append(context) def depart_entry(self, node: Element) -> None: - if self.needs_linetrimming: - self.needs_linetrimming = 0 - body = self.popbody() + assert self.table is not None + body = self.popbody() - # Remove empty lines from top of merged cell - while body and body[0] == CR: - body.pop(0) - self.body.extend(body) + # Remove empty lines from top of merged cell + while body and body[0] == CR: + body.pop(0) + self.body.extend(body) self.body.append(self.context.pop()) - assert self.table is not None cell = self.table.cell() assert cell is not None self.table.col += cell.width @@ -1400,8 +1450,6 @@ def visit_acks(self, node: Element) -> None: def visit_bullet_list(self, node: Element) -> None: if not self.compact_list: self.body.append(r'\begin{itemize}' + CR) - if self.table: - self.table.has_problematic = True def depart_bullet_list(self, node: Element) -> None: if not self.compact_list: @@ -1439,8 +1487,6 @@ def get_nested_level(node: Element) -> int: ) if 'start' in node: self.body.append(r'\setcounter{%s}{%d}' % (enum, node['start'] - 1) + CR) - if self.table: - self.table.has_problematic = True def depart_enumerated_list(self, node: Element) -> None: self.body.append(r'\end{enumerate}' + CR) @@ -1455,8 +1501,6 @@ def depart_list_item(self, node: Element) -> None: def visit_definition_list(self, node: Element) -> None: self.body.append(r'\begin{description}' + CR) - if self.table: - self.table.has_problematic = True def depart_definition_list(self, node: Element) -> None: self.body.append(r'\end{description}' + CR) @@ -1496,8 +1540,6 @@ def depart_definition(self, node: Element) -> None: def visit_field_list(self, node: Element) -> None: self.body.append(r'\begin{quote}\begin{description}' + CR) - if self.table: - self.table.has_problematic = True def depart_field_list(self, node: Element) -> None: self.body.append(r'\end{description}\end{quote}' + CR) @@ -1524,7 +1566,7 @@ def visit_paragraph(self, node: Element) -> None: ): # insert blank line, if the paragraph follows a non-paragraph node in a compound self.body.append(r'\noindent' + CR) - elif index == 1 and isinstance(node.parent, nodes.footnote | footnotetext): + elif index == 1 and isinstance(node.parent, (nodes.footnote, footnotetext)): # don't insert blank line, if the paragraph is second child of a footnote # (first one is label node) pass @@ -1539,8 +1581,6 @@ def depart_paragraph(self, node: Element) -> None: def visit_centered(self, node: Element) -> None: self.body.append(CR + r'\begin{center}') - if self.table: - self.table.has_problematic = True def depart_centered(self, node: Element) -> None: self.body.append(CR + r'\end{center}') @@ -1555,8 +1595,6 @@ def visit_hlist(self, node: Element) -> None: r'\begin{itemize}\setlength{\itemsep}{0pt}' r'\setlength{\parskip}{0pt}' + CR ) - if self.table: - self.table.has_problematic = True def depart_hlist(self, node: Element) -> None: self.compact_list -= 1 @@ -1752,8 +1790,6 @@ def depart_legend(self, node: Element) -> None: def visit_admonition(self, node: Element) -> None: self.body.append(CR + r'\begin{sphinxadmonition}{note}') self.no_latex_floats += 1 - if self.table: - self.table.has_problematic = True def depart_admonition(self, node: Element) -> None: self.body.append(r'\end{sphinxadmonition}' + CR) @@ -1765,8 +1801,6 @@ def _visit_named_admonition(self, node: Element) -> None: CR + r'\begin{sphinxadmonition}{%s}{%s:}' % (node.tagname, label) ) self.no_latex_floats += 1 - if self.table: - self.table.has_problematic = True def _depart_named_admonition(self, node: Element) -> None: self.body.append(r'\end{sphinxadmonition}' + CR) @@ -1819,7 +1853,7 @@ def add_target(id: str) -> None: self.body.append(self.hypertarget(id, anchor=anchor)) # skip if visitor for next node supports hyperlink - next_node: Node = node + next_node: Node | None = node while isinstance(next_node, nodes.target): next_node = next_node.next_node(ascend=True) @@ -1827,7 +1861,8 @@ def add_target(id: str) -> None: if isinstance(next_node, HYPERLINK_SUPPORT_NODES): return if ( - domain.get_enumerable_node_type(next_node) + next_node is not None + and domain.get_enumerable_node_type(next_node) and domain.get_numfig_title(next_node) ): # fmt: skip return @@ -1843,30 +1878,10 @@ def add_target(id: str) -> None: and node['refid'] == prev_node['refid'] ): # a target for a hyperlink reference having alias - pass + return else: add_target(node['refid']) - # Temporary fix for https://github.com/sphinx-doc/sphinx/issues/11093 - # TODO: investigate if a more elegant solution exists - # (see comments of https://github.com/sphinx-doc/sphinx/issues/11093) - if node.get('ismod', False): - # Detect if the previous nodes are label targets. If so, remove - # the refid thereof from node['ids'] to avoid duplicated ids. - def has_dup_label(sib: Node | None) -> bool: - return isinstance(sib, nodes.target) and sib.get('refid') in node['ids'] - - prev = get_prev_node(node) - if has_dup_label(prev): - ids = node['ids'][:] # copy to avoid side-effects - while has_dup_label(prev): - ids.remove(prev['refid']) # type: ignore[index] - prev = get_prev_node(prev) # type: ignore[arg-type] - else: - ids = iter(node['ids']) # read-only iterator - else: - ids = iter(node['ids']) # read-only iterator - - for id in ids: + for id in node['ids']: add_target(id) def depart_target(self, node: Element) -> None: @@ -1962,7 +1977,7 @@ def visit_reference(self, node: Element) -> None: uri = node.get('refuri', '') if not uri and node.get('refid'): uri = '%' + self.curfilestack[-1] + '#' + node['refid'] - if self.in_title or not uri: + if not uri: self.context.append('') elif uri.startswith('#'): # references to labels in the same document @@ -2095,6 +2110,12 @@ def visit_abbreviation(self, node: Element) -> None: def depart_abbreviation(self, node: Element) -> None: self.body.append(self.context.pop()) + def visit_acronym(self, node: Element) -> None: + self.visit_abbreviation(node) + + def depart_acronym(self, node: Element) -> None: + self.depart_abbreviation(node) + def visit_manpage(self, node: Element) -> None: return self.visit_literal_emphasis(node) @@ -2241,6 +2262,56 @@ def visit_literal_block(self, node: Element) -> None: hllines = str(highlight_args.get('hl_lines', []))[1:-1] if hllines: self.body.append(CR + r'\fvset{hllines={, %s,}}%%' % hllines) + + _hlcodelines = hlcode.splitlines() + _chunksize = VERBATIM_CHUNKSIZE + _nbofchunks = (len(_hlcodelines) + _chunksize - 3) // _chunksize + if _nbofchunks > 1: + _e = _hlcodelines[0][22:] + # TODO: confirm firstnumber key if present from highlighter output + # is always with numeric value and not auto or last. + _idx1 = _e.find('firstnumber=') + if _idx1 > -1: + _e1 = _e[_idx1:] + _idx2 = _e1.find(',') + self.body.append( + CR + r'\def\sphinxverbatimfirstnumber{%s}%%' % _e1[12:_idx2] + ) + else: + self.body.append(CR + r'\def\sphinxverbatimfirstnumber{1}%') + _hlcodelines[0] = r'\begin{sphinxLongVerbatimFirst}' + _e + _hlcodelines[-1] = r'\end{sphinxLongVerbatimLast}' + hlcode = ( + CR.join(_hlcodelines[: _chunksize + 1]) + + CR + + r'\end{sphinxLongVerbatimFirst}' + + CR + ) + _lineno = _chunksize + 1 + # _e always starts with r'[commandchars=\\\{\}' and ends with + # ']' but let's make sure, for maximal generality, that _e[:-1] + # does not trigger index out of range. + if _e: + _e = _e[:-1] + ',firstnumber=last]' + else: + _e = '[firstnumber=last]' + for _ in range(_nbofchunks - 2): + hlcode += ( + r'\begin{sphinxLongVerbatimMiddle}' + + _e + + CR + + CR.join(_hlcodelines[_lineno : _lineno + _chunksize]) + + CR + + r'\end{sphinxLongVerbatimMiddle}' + + CR + ) + _lineno += _chunksize + hlcode += ( + r'\begin{sphinxLongVerbatimLast}' + + _e + + CR + + CR.join(_hlcodelines[_lineno:]) + ) self.body.append(CR + hlcode + CR) if hllines: self.body.append(r'\sphinxresetverbatimhllines' + CR) @@ -2265,8 +2336,6 @@ def visit_line_block(self, node: Element) -> None: self.body.append(r'\begin{DUlineblock}{\DUlineblockindent}' + CR) else: self.body.append(CR + r'\begin{DUlineblock}{0em}' + CR) - if self.table: - self.table.has_problematic = True def depart_line_block(self, node: Element) -> None: self.body.append(r'\end{DUlineblock}' + CR) @@ -2278,18 +2347,16 @@ def visit_block_quote(self, node: Element) -> None: done = 0 if len(node.children) == 1: child = node.children[0] - if isinstance(child, nodes.bullet_list | nodes.enumerated_list): + if isinstance(child, (nodes.bullet_list, nodes.enumerated_list)): done = 1 if not done: self.body.append(r'\begin{quote}' + CR) - if self.table: - self.table.has_problematic = True def depart_block_quote(self, node: Element) -> None: done = 0 if len(node.children) == 1: child = node.children[0] - if isinstance(child, nodes.bullet_list | nodes.enumerated_list): + if isinstance(child, (nodes.bullet_list, nodes.enumerated_list)): done = 1 if not done: self.body.append(r'\end{quote}' + CR) @@ -2323,8 +2390,6 @@ def depart_option_group(self, node: Element) -> None: def visit_option_list(self, node: Element) -> None: self.body.append(r'\begin{optionlist}{3cm}' + CR) - if self.table: - self.table.has_problematic = True def depart_option_list(self, node: Element) -> None: self.body.append(r'\end{optionlist}' + CR) diff --git a/addons/source-python/packages/site-packages/sphinx/writers/manpage.py b/addons/source-python/packages/site-packages/sphinx/writers/manpage.py index 171761fa2..fd655d08e 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/manpage.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/manpage.py @@ -5,8 +5,7 @@ from typing import TYPE_CHECKING, cast from docutils import nodes -from docutils.writers.manpage import Translator as BaseTranslator -from docutils.writers.manpage import Writer +from docutils.writers import manpage from sphinx import addnodes from sphinx.locale import _, admonitionlabels @@ -26,12 +25,13 @@ logger = logging.getLogger(__name__) -class ManualPageWriter(Writer): # type: ignore[misc] +class ManualPageWriter(manpage.Writer): def __init__(self, builder: Builder) -> None: super().__init__() self.builder = builder def translate(self) -> None: + assert self.document is not None transform = NestedInlineTransform(self.document) transform.apply() visitor = self.builder.create_translator(self.document, self.builder) @@ -71,7 +71,7 @@ def apply(self, **kwargs: Any) -> None: node.parent.remove(node) -class ManualPageTranslator(SphinxTranslator, BaseTranslator): # type: ignore[misc] +class ManualPageTranslator(SphinxTranslator, manpage.Translator): """Custom man page translator.""" _docinfo: dict[str, Any] = {} @@ -130,17 +130,17 @@ def depart_start_of_file(self, node: Element) -> None: # Top-level nodes for descriptions ################################## - def visit_desc(self, node: Element) -> None: + def visit_desc(self, node: nodes.definition_list) -> None: self.visit_definition_list(node) - def depart_desc(self, node: Element) -> None: + def depart_desc(self, node: nodes.definition_list) -> None: self.depart_definition_list(node) - def visit_desc_signature(self, node: Element) -> None: - self.visit_definition_list_item(node) + def visit_desc_signature(self, node: nodes.term) -> None: + self.visit_definition_list_item(node) # type: ignore[arg-type] self.visit_term(node) - def depart_desc_signature(self, node: Element) -> None: + def depart_desc_signature(self, node: nodes.term) -> None: self.depart_term(node) def visit_desc_signature_line(self, node: Element) -> None: @@ -149,10 +149,10 @@ def visit_desc_signature_line(self, node: Element) -> None: def depart_desc_signature_line(self, node: Element) -> None: self.body.append(' ') - def visit_desc_content(self, node: Element) -> None: + def visit_desc_content(self, node: nodes.definition) -> None: self.visit_definition(node) - def depart_desc_content(self, node: Element) -> None: + def depart_desc_content(self, node: nodes.definition) -> None: self.depart_definition(node) def visit_desc_inline(self, node: Element) -> None: @@ -231,25 +231,25 @@ def depart_desc_annotation(self, node: Element) -> None: ############################################## - def visit_versionmodified(self, node: Element) -> None: + def visit_versionmodified(self, node: nodes.paragraph) -> None: self.visit_paragraph(node) - def depart_versionmodified(self, node: Element) -> None: + def depart_versionmodified(self, node: nodes.paragraph) -> None: self.depart_paragraph(node) # overwritten -- don't make whole of term bold if it includes strong node - def visit_term(self, node: Element) -> None: + def visit_term(self, node: nodes.term) -> None: if any(node.findall(nodes.strong)): self.body.append('\n') else: super().visit_term(node) # overwritten -- we don't want source comments to show up - def visit_comment(self, node: Element) -> None: + def visit_comment(self, node: Element) -> None: # type: ignore[override] raise nodes.SkipNode # overwritten -- added ensure_eol() - def visit_footnote(self, node: Element) -> None: + def visit_footnote(self, node: nodes.footnote) -> None: self.ensure_eol() super().visit_footnote(node) @@ -264,10 +264,10 @@ def visit_rubric(self, node: Element) -> None: def depart_rubric(self, node: Element) -> None: self.body.append('\n') - def visit_seealso(self, node: Element) -> None: + def visit_seealso(self, node: nodes.admonition) -> None: self.visit_admonition(node, 'seealso') - def depart_seealso(self, node: Element) -> None: + def depart_seealso(self, node: nodes.admonition) -> None: self.depart_admonition(node) def visit_productionlist(self, node: Element) -> None: @@ -291,7 +291,7 @@ def visit_image(self, node: Element) -> None: raise nodes.SkipNode # overwritten -- don't visit inner marked up nodes - def visit_reference(self, node: Element) -> None: + def visit_reference(self, node: nodes.reference) -> None: uri = node.get('refuri', '') is_safe_to_click = uri.startswith(('mailto:', 'http:', 'https:', 'ftp:')) if is_safe_to_click: @@ -301,7 +301,7 @@ def visit_reference(self, node: Element) -> None: self.body.append(self.defs['reference'][0]) # avoid repeating escaping code... fine since # visit_Text calls astext() and only works on that afterwards - self.visit_Text(node) + self.visit_Text(node) # type: ignore[arg-type] self.body.append(self.defs['reference'][1]) if uri and not uri.startswith('#'): @@ -369,10 +369,10 @@ def visit_acks(self, node: Element) -> None: self.body.append('\n') raise nodes.SkipNode - def visit_hlist(self, node: Element) -> None: + def visit_hlist(self, node: nodes.bullet_list) -> None: self.visit_bullet_list(node) - def depart_hlist(self, node: Element) -> None: + def depart_hlist(self, node: nodes.bullet_list) -> None: self.depart_bullet_list(node) def visit_hlistcol(self, node: Element) -> None: @@ -381,16 +381,16 @@ def visit_hlistcol(self, node: Element) -> None: def depart_hlistcol(self, node: Element) -> None: pass - def visit_literal_emphasis(self, node: Element) -> None: + def visit_literal_emphasis(self, node: nodes.emphasis) -> None: return self.visit_emphasis(node) - def depart_literal_emphasis(self, node: Element) -> None: + def depart_literal_emphasis(self, node: nodes.emphasis) -> None: return self.depart_emphasis(node) - def visit_literal_strong(self, node: Element) -> None: + def visit_literal_strong(self, node: nodes.strong) -> None: return self.visit_strong(node) - def depart_literal_strong(self, node: Element) -> None: + def depart_literal_strong(self, node: nodes.strong) -> None: return self.depart_strong(node) def visit_abbreviation(self, node: Element) -> None: @@ -399,14 +399,14 @@ def visit_abbreviation(self, node: Element) -> None: def depart_abbreviation(self, node: Element) -> None: pass - def visit_manpage(self, node: Element) -> None: + def visit_manpage(self, node: nodes.strong) -> None: return self.visit_strong(node) - def depart_manpage(self, node: Element) -> None: + def depart_manpage(self, node: nodes.strong) -> None: return self.depart_strong(node) # overwritten: handle section titles better than in 0.6 release - def visit_caption(self, node: Element) -> None: + def visit_caption(self, node: nodes.caption) -> None: if ( isinstance(node.parent, nodes.container) and node.parent.get('literal_block') @@ -415,7 +415,7 @@ def visit_caption(self, node: Element) -> None: else: super().visit_caption(node) - def depart_caption(self, node: Element) -> None: + def depart_caption(self, node: nodes.caption) -> None: if ( isinstance(node.parent, nodes.container) and node.parent.get('literal_block') @@ -425,7 +425,7 @@ def depart_caption(self, node: Element) -> None: super().depart_caption(node) # overwritten: handle section titles better than in 0.6 release - def visit_title(self, node: Element) -> None: + def visit_title(self, node: nodes.title) -> None: if isinstance(node.parent, addnodes.seealso): self.body.append('.IP "') return None @@ -438,7 +438,7 @@ def visit_title(self, node: Element) -> None: raise nodes.SkipNode return super().visit_title(node) - def depart_title(self, node: Element) -> None: + def depart_title(self, node: nodes.title) -> None: if isinstance(node.parent, addnodes.seealso): self.body.append('"\n') return None diff --git a/addons/source-python/packages/site-packages/sphinx/writers/texinfo.py b/addons/source-python/packages/site-packages/sphinx/writers/texinfo.py index b4f1272d4..a40d65ebc 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/texinfo.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/texinfo.py @@ -290,7 +290,10 @@ def add_node_name(name: str) -> str: ] # each section is also a node for section in self.document.findall(nodes.section): - title = cast('nodes.TextElement', section.next_node(nodes.Titular)) # type: ignore[type-var] + # TODO: TYPING: Node.next_node() should accept the non-Node + # mixin classes in docutils.nodes. + title = section.next_node(nodes.Titular) # type: ignore[type-var] + assert isinstance(title, nodes.Node) name = title.astext() if title else '' section['node_name'] = add_node_name(name) @@ -306,7 +309,7 @@ def collect_node_menus(self) -> None: # try to find a suitable "Top" node title = self.document.next_node(nodes.title) top = title.parent if title else self.document - if not isinstance(top, nodes.document | nodes.section): + if not isinstance(top, (nodes.document, nodes.section)): top = self.document if top is not self.document: entries = node_menus[top['node_name']] @@ -416,7 +419,7 @@ def add_menu_entries( name = self.node_names[entry] # special formatting for entries that are divided by an em-dash try: - parts = reg.split(name, 1) + parts = reg.split(name, maxsplit=1) except TypeError: # could be a gettext proxy parts = [name] @@ -638,7 +641,7 @@ def visit_title(self, node: Element) -> None: parent = node.parent if isinstance(parent, nodes.table): return - if isinstance(parent, nodes.Admonition | nodes.sidebar | nodes.topic): + if isinstance(parent, (nodes.Admonition, nodes.sidebar, nodes.topic)): raise nodes.SkipNode if not isinstance(parent, nodes.section): logger.warning( @@ -711,7 +714,7 @@ def depart_target(self, node: Element) -> None: def visit_reference(self, node: Element) -> None: # an xref's target is displayed in Info so we ignore a few # cases for the sake of appearance - if isinstance(node.parent, nodes.title | addnodes.desc_type): + if isinstance(node.parent, (nodes.title, addnodes.desc_type)): return if len(node) != 0 and isinstance(node[0], nodes.image): return @@ -748,7 +751,7 @@ def visit_reference(self, node: Element) -> None: uri = self.escape_arg(uri) id = 'Top' if '#' in uri: - uri, id = uri.split('#', 1) + uri, _, id = uri.partition('#') id = self.escape_id(id) name = self.escape_menu(name) if name == id: @@ -886,7 +889,7 @@ def depart_collected_footnote(self, node: Element) -> None: def visit_footnote_reference(self, node: Element) -> None: num = node.astext().strip() try: - footnode, used = self.footnotestack[-1][num] + footnode, _used = self.footnotestack[-1][num] except (KeyError, IndexError) as exc: raise nodes.SkipNode from exc # footnotes are repeated for each reference @@ -1002,7 +1005,7 @@ def visit_term(self, node: Element) -> None: self.add_anchor(id, node) # anchors and indexes need to go in front for n in node[::]: - if isinstance(n, addnodes.index | nodes.target): + if isinstance(n, (addnodes.index, nodes.target)): n.walkabout(self) node.remove(n) self.body.append('\n%s ' % self.at_item_x) @@ -1173,7 +1176,7 @@ def depart_decoration(self, node: Element) -> None: def visit_topic(self, node: Element) -> None: # ignore TOC's since we have to have a "menu" anyway - if 'contents' in node.get('classes', ()): + if (classes := node.get('classes', ())) and 'contents' in classes: raise nodes.SkipNode title = cast('nodes.title', node[0]) self.visit_rubric(title) diff --git a/addons/source-python/packages/site-packages/sphinx/writers/text.py b/addons/source-python/packages/site-packages/sphinx/writers/text.py index 1f14781fc..a542ab45c 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/text.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/text.py @@ -292,18 +292,18 @@ def _wrap_chunks(self, chunks: list[str]) -> list[str]: else: indent = self.initial_indent + # Note that column_width(x) > len(x) is possible, + # but _handle_long_word() handles negative widths. width = self.width - column_width(indent) if self.drop_whitespace and not chunks[-1].strip() and lines: del chunks[-1] while chunks: - l = column_width(chunks[-1]) - - if cur_len + l <= width: + chunk_width = column_width(chunks[-1]) + if cur_len + chunk_width <= width: cur_line.append(chunks.pop()) - cur_len += l - + cur_len += chunk_width else: break @@ -318,47 +318,73 @@ def _wrap_chunks(self, chunks: list[str]) -> list[str]: return lines - def _break_word(self, word: str, space_left: int) -> tuple[str, str]: - """Break line by unicode width instead of len(word).""" + @staticmethod + def _find_break_end(word: str, space_left: int) -> int: + """Break word by Unicode width instead of len(word). + + The returned position 'end' satisfies:: + + assert column_width(word[:end]) <= space_left + assert end == len(word) or column_width(word[:end+1]) > space_left + """ total = 0 - for i, c in enumerate(word): + for end, c in enumerate(word, start=1): total += column_width(c) if total > space_left: - return word[: i - 1], word[i - 1 :] - return word, '' + return end - 1 + return len(word) def _split(self, text: str) -> list[str]: """Override original method that only split by 'wordsep_re'. This '_split' splits wide-characters into chunks by one character. """ - - def split(t: str) -> list[str]: - return super(TextWrapper, self)._split(t) - chunks: list[str] = [] - for chunk in split(text): - for w, g in groupby(chunk, column_width): - if w == 1: - chunks.extend(split(''.join(g))) + for chunk in super()._split(text): + for w, g in groupby(chunk, _column_width_safe): + if w <= 1: + chunks += super()._split(''.join(g)) else: - chunks.extend(list(g)) + chunks += g return chunks def _handle_long_word( self, reversed_chunks: list[str], cur_line: list[str], cur_len: int, width: int ) -> None: - """Override original method for using self._break_word() instead of slice.""" - space_left = max(width - cur_len, 1) - if self.break_long_words: - l, r = self._break_word(reversed_chunks[-1], space_left) - cur_line.append(l) - reversed_chunks[-1] = r + """Override using self._find_break() instead of str.find().""" + # Make sure at least one character is stripped off on every pass. + # + # Do NOT use space_left = max(width - cur_len, 1) as corner cases + # with "self.drop_whitespace == False" and "self.width == 1" fail. + space_left = 1 if width < 1 else (width - cur_len) + if self.break_long_words: + # Some characters may have len(X) < space_left < column_width(X) + # so we should only wrap chunks for which len(X) > space_left. + end = space_left + chunk = reversed_chunks[-1] + if space_left > 0: + end = self._find_break_end(chunk, space_left) + if end == 0 and space_left: + # force processing at least one character + end = 1 + cur_line.append(chunk[:end]) + reversed_chunks[-1] = chunk[end:] elif not cur_line: cur_line.append(reversed_chunks.pop()) +def _column_width_safe(x: str) -> int: + # Handle characters that are 0-width. We should refine + # the grouping to prevent splitting a word at combining + # characters or in a group of combining characters with + # at most one non-combining character as the combining + # characters may act on the right or left character. + # + # See https://github.com/sphinx-doc/sphinx/issues/13741. + return max(1, column_width(x)) + + MAXWIDTH = 70 STDINDENT = 3 diff --git a/addons/source-python/packages/site-packages/sphinx/writers/xml.py b/addons/source-python/packages/site-packages/sphinx/writers/xml.py index 51f77ee2f..67c69d97e 100644 --- a/addons/source-python/packages/site-packages/sphinx/writers/xml.py +++ b/addons/source-python/packages/site-packages/sphinx/writers/xml.py @@ -4,15 +4,17 @@ from typing import TYPE_CHECKING -from docutils.writers.docutils_xml import Writer as BaseXMLWriter +from docutils.writers import docutils_xml if TYPE_CHECKING: from typing import Any + from docutils.writers.docutils_xml import XMLTranslator + from sphinx.builders import Builder -class XMLWriter(BaseXMLWriter): # type: ignore[misc] +class XMLWriter(docutils_xml.Writer): output: str def __init__(self, builder: Builder) -> None: @@ -21,6 +23,7 @@ def __init__(self, builder: Builder) -> None: self._config = builder.config def translate(self, *args: Any, **kwargs: Any) -> None: + assert self.document is not None self.document.settings.newlines = self.document.settings.indents = ( self._config.xml_pretty ) @@ -29,12 +32,13 @@ def translate(self, *args: Any, **kwargs: Any) -> None: # copied from docutils.writers.docutils_xml.Writer.translate() # so that we can override the translator class - self.visitor = visitor = self.builder.create_translator(self.document) + visitor: XMLTranslator = self.builder.create_translator(self.document) # type: ignore[assignment] + self.visitor = visitor self.document.walkabout(visitor) - self.output = ''.join(visitor.output) # type: ignore[attr-defined] + self.output = ''.join(visitor.output) -class PseudoXMLWriter(BaseXMLWriter): # type: ignore[misc] +class PseudoXMLWriter(docutils_xml.Writer): supported = ('pprint', 'pformat', 'pseudoxml') """Formats this writer supports.""" @@ -49,6 +53,7 @@ def __init__(self, builder: Builder) -> None: self.builder = builder def translate(self) -> None: + assert self.document is not None self.output = self.document.pformat() def supports(self, format: str) -> bool: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/__init__.py index f219838dc..2006f577a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/__init__.py @@ -1,5 +1,5 @@ # __init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -269,7 +269,7 @@ from .types import VARBINARY as VARBINARY from .types import VARCHAR as VARCHAR -__version__ = "2.0.40" +__version__ = "2.0.48" def __go(lcls: Any) -> None: @@ -281,14 +281,3 @@ def __go(lcls: Any) -> None: __go(locals()) - - -def __getattr__(name: str) -> Any: - if name == "SingleonThreadPool": - _util.warn_deprecated( - "SingleonThreadPool was a typo in the v2 series. " - "Please use the correct SingletonThreadPool name.", - "2.0.24", - ) - return SingletonThreadPool - raise AttributeError(f"module {__name__!r} has no attribute {name!r}") diff --git a/addons/source-python/packages/site-packages/sqlalchemy/connectors/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/connectors/__init__.py index 43cd1035c..eea1b29a7 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/connectors/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/connectors/__init__.py @@ -1,5 +1,5 @@ # connectors/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/connectors/aioodbc.py b/addons/source-python/packages/site-packages/sqlalchemy/connectors/aioodbc.py index 39b2a8a23..5df698fc5 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/connectors/aioodbc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/connectors/aioodbc.py @@ -1,5 +1,5 @@ # connectors/aioodbc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -20,6 +20,7 @@ from ..util.concurrency import await_fallback from ..util.concurrency import await_only + if TYPE_CHECKING: from ..engine.interfaces import ConnectArgsType from ..engine.url import URL @@ -58,6 +59,15 @@ def autocommit(self, value): self._connection._conn.autocommit = value + def ping(self, reconnect): + return self.await_(self._connection.ping(reconnect)) + + def add_output_converter(self, *arg, **kw): + self._connection.add_output_converter(*arg, **kw) + + def character_set_name(self): + return self._connection.character_set_name() + def cursor(self, server_side=False): # aioodbc sets connection=None when closed and just fails with # AttributeError here. Here we use the same ProgrammingError + diff --git a/addons/source-python/packages/site-packages/sqlalchemy/connectors/asyncio.py b/addons/source-python/packages/site-packages/sqlalchemy/connectors/asyncio.py index c4f0d7154..310d0a9f9 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/connectors/asyncio.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/connectors/asyncio.py @@ -1,21 +1,128 @@ # connectors/asyncio.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors """generic asyncio-adapted versions of DBAPI connection and cursor""" from __future__ import annotations +import asyncio import collections +import sys +from typing import Any +from typing import AsyncIterator +from typing import Deque +from typing import Iterator +from typing import NoReturn +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import Type +from typing import TYPE_CHECKING from ..engine import AdaptedConnection -from ..util.concurrency import asyncio +from ..util import EMPTY_DICT from ..util.concurrency import await_fallback from ..util.concurrency import await_only +from ..util.concurrency import in_greenlet +from ..util.typing import Protocol + +if TYPE_CHECKING: + from ..engine.interfaces import _DBAPICursorDescription + from ..engine.interfaces import _DBAPIMultiExecuteParams + from ..engine.interfaces import _DBAPISingleExecuteParams + from ..engine.interfaces import DBAPIModule + from ..util.typing import Self + + +class AsyncIODBAPIConnection(Protocol): + """protocol representing an async adapted version of a + :pep:`249` database connection. + + + """ + + # note that async DBAPIs dont agree if close() should be awaitable, + # so it is omitted here and picked up by the __getattr__ hook below + + async def commit(self) -> None: ... + + def cursor(self, *args: Any, **kwargs: Any) -> AsyncIODBAPICursor: ... + + async def rollback(self) -> None: ... + + def __getattr__(self, key: str) -> Any: ... + + def __setattr__(self, key: str, value: Any) -> None: ... + + +class AsyncIODBAPICursor(Protocol): + """protocol representing an async adapted version + of a :pep:`249` database cursor. + + + """ + + def __aenter__(self) -> Any: ... + + @property + def description( + self, + ) -> _DBAPICursorDescription: + """The description attribute of the Cursor.""" + ... + + @property + def rowcount(self) -> int: ... + + arraysize: int + + lastrowid: int + + async def close(self) -> None: ... + + async def execute( + self, + operation: Any, + parameters: Optional[_DBAPISingleExecuteParams] = None, + ) -> Any: ... + + async def executemany( + self, + operation: Any, + parameters: _DBAPIMultiExecuteParams, + ) -> Any: ... + + async def fetchone(self) -> Optional[Any]: ... + + async def fetchmany(self, size: Optional[int] = ...) -> Sequence[Any]: ... + + async def fetchall(self) -> Sequence[Any]: ... + + async def setinputsizes(self, sizes: Sequence[Any]) -> None: ... + + def setoutputsize(self, size: Any, column: Any) -> None: ... + + async def callproc( + self, procname: str, parameters: Sequence[Any] = ... + ) -> Any: ... + + async def nextset(self) -> Optional[bool]: ... + + def __aiter__(self) -> AsyncIterator[Any]: ... + + +class AsyncAdapt_dbapi_module: + if TYPE_CHECKING: + Error = DBAPIModule.Error + OperationalError = DBAPIModule.OperationalError + InterfaceError = DBAPIModule.InterfaceError + IntegrityError = DBAPIModule.IntegrityError + + def __getattr__(self, key: str) -> Any: ... class AsyncAdapt_dbapi_cursor: @@ -26,98 +133,172 @@ class AsyncAdapt_dbapi_cursor: "await_", "_cursor", "_rows", + "_soft_closed_memoized", ) - def __init__(self, adapt_connection): + _awaitable_cursor_close: bool = True + + _cursor: AsyncIODBAPICursor + _adapt_connection: AsyncAdapt_dbapi_connection + _connection: AsyncIODBAPIConnection + _rows: Deque[Any] + + def __init__(self, adapt_connection: AsyncAdapt_dbapi_connection): self._adapt_connection = adapt_connection self._connection = adapt_connection._connection + self.await_ = adapt_connection.await_ - cursor = self._connection.cursor() + cursor = self._make_new_cursor(self._connection) self._cursor = self._aenter_cursor(cursor) - + self._soft_closed_memoized = EMPTY_DICT if not self.server_side: self._rows = collections.deque() - def _aenter_cursor(self, cursor): - return self.await_(cursor.__aenter__()) + def _aenter_cursor(self, cursor: AsyncIODBAPICursor) -> AsyncIODBAPICursor: + return self.await_(cursor.__aenter__()) # type: ignore[no-any-return] + + def _make_new_cursor( + self, connection: AsyncIODBAPIConnection + ) -> AsyncIODBAPICursor: + return connection.cursor() @property - def description(self): + def description(self) -> Optional[_DBAPICursorDescription]: + if "description" in self._soft_closed_memoized: + return self._soft_closed_memoized["description"] # type: ignore[no-any-return] # noqa: E501 return self._cursor.description @property - def rowcount(self): + def rowcount(self) -> int: return self._cursor.rowcount @property - def arraysize(self): + def arraysize(self) -> int: return self._cursor.arraysize @arraysize.setter - def arraysize(self, value): + def arraysize(self, value: int) -> None: self._cursor.arraysize = value @property - def lastrowid(self): + def lastrowid(self) -> int: return self._cursor.lastrowid - def close(self): - # note we aren't actually closing the cursor here, - # we are just letting GC do it. see notes in aiomysql dialect - self._rows.clear() + async def _async_soft_close(self) -> None: + """close the cursor but keep the results pending, and memoize the + description. + + .. versionadded:: 2.0.44 - def execute(self, operation, parameters=None): - return self.await_(self._execute_async(operation, parameters)) + """ - def executemany(self, operation, seq_of_parameters): - return self.await_( - self._executemany_async(operation, seq_of_parameters) + if not self._awaitable_cursor_close or self.server_side: + return + + self._soft_closed_memoized = self._soft_closed_memoized.union( + { + "description": self._cursor.description, + } ) + await self._cursor.close() + + def close(self) -> None: + self._rows.clear() + + # updated as of 2.0.44 + # try to "close" the cursor based on what we know about the driver + # and if we are able to. otherwise, hope that the asyncio + # extension called _async_soft_close() if the cursor is going into + # a sync context + if self._cursor is None or bool(self._soft_closed_memoized): + return + + if not self._awaitable_cursor_close: + self._cursor.close() # type: ignore[unused-coroutine] + elif in_greenlet(): + self.await_(self._cursor.close()) - async def _execute_async(self, operation, parameters): + def execute( + self, + operation: Any, + parameters: Optional[_DBAPISingleExecuteParams] = None, + ) -> Any: + try: + return self.await_(self._execute_async(operation, parameters)) + except Exception as error: + self._adapt_connection._handle_exception(error) + + def executemany( + self, + operation: Any, + seq_of_parameters: _DBAPIMultiExecuteParams, + ) -> Any: + try: + return self.await_( + self._executemany_async(operation, seq_of_parameters) + ) + except Exception as error: + self._adapt_connection._handle_exception(error) + + async def _execute_async( + self, operation: Any, parameters: Optional[_DBAPISingleExecuteParams] + ) -> Any: async with self._adapt_connection._execute_mutex: - result = await self._cursor.execute(operation, parameters or ()) + if parameters is None: + result = await self._cursor.execute(operation) + else: + result = await self._cursor.execute(operation, parameters) if self._cursor.description and not self.server_side: self._rows = collections.deque(await self._cursor.fetchall()) return result - async def _executemany_async(self, operation, seq_of_parameters): + async def _executemany_async( + self, + operation: Any, + seq_of_parameters: _DBAPIMultiExecuteParams, + ) -> Any: async with self._adapt_connection._execute_mutex: return await self._cursor.executemany(operation, seq_of_parameters) - def nextset(self): + def nextset(self) -> None: self.await_(self._cursor.nextset()) if self._cursor.description and not self.server_side: self._rows = collections.deque( self.await_(self._cursor.fetchall()) ) - def setinputsizes(self, *inputsizes): - # NOTE: this is overrridden in aioodbc due to + def setinputsizes(self, *inputsizes: Any) -> None: + # NOTE: this is overridden in aioodbc due to # see https://github.com/aio-libs/aioodbc/issues/451 # right now return self.await_(self._cursor.setinputsizes(*inputsizes)) - def __iter__(self): + def __enter__(self) -> Self: + return self + + def __exit__(self, type_: Any, value: Any, traceback: Any) -> None: + self.close() + + def __iter__(self) -> Iterator[Any]: while self._rows: yield self._rows.popleft() - def fetchone(self): + def fetchone(self) -> Optional[Any]: if self._rows: return self._rows.popleft() else: return None - def fetchmany(self, size=None): + def fetchmany(self, size: Optional[int] = None) -> Sequence[Any]: if size is None: size = self.arraysize rr = self._rows return [rr.popleft() for _ in range(min(size, len(rr)))] - def fetchall(self): + def fetchall(self) -> Sequence[Any]: retval = list(self._rows) self._rows.clear() return retval @@ -127,30 +308,21 @@ class AsyncAdapt_dbapi_ss_cursor(AsyncAdapt_dbapi_cursor): __slots__ = () server_side = True - def __init__(self, adapt_connection): - self._adapt_connection = adapt_connection - self._connection = adapt_connection._connection - self.await_ = adapt_connection.await_ - - cursor = self._connection.cursor() - - self._cursor = self.await_(cursor.__aenter__()) - - def close(self): + def close(self) -> None: if self._cursor is not None: self.await_(self._cursor.close()) - self._cursor = None + self._cursor = None # type: ignore - def fetchone(self): + def fetchone(self) -> Optional[Any]: return self.await_(self._cursor.fetchone()) - def fetchmany(self, size=None): + def fetchmany(self, size: Optional[int] = None) -> Any: return self.await_(self._cursor.fetchmany(size=size)) - def fetchall(self): + def fetchall(self) -> Sequence[Any]: return self.await_(self._cursor.fetchall()) - def __iter__(self): + def __iter__(self) -> Iterator[Any]: iterator = self._cursor.__aiter__() while True: try: @@ -164,46 +336,50 @@ class AsyncAdapt_dbapi_connection(AdaptedConnection): _ss_cursor_cls = AsyncAdapt_dbapi_ss_cursor await_ = staticmethod(await_only) + __slots__ = ("dbapi", "_execute_mutex") - def __init__(self, dbapi, connection): + _connection: AsyncIODBAPIConnection + + def __init__(self, dbapi: Any, connection: AsyncIODBAPIConnection): self.dbapi = dbapi self._connection = connection self._execute_mutex = asyncio.Lock() - def ping(self, reconnect): - return self.await_(self._connection.ping(reconnect)) - - def add_output_converter(self, *arg, **kw): - self._connection.add_output_converter(*arg, **kw) - - def character_set_name(self): - return self._connection.character_set_name() - - @property - def autocommit(self): - return self._connection.autocommit - - @autocommit.setter - def autocommit(self, value): - # https://github.com/aio-libs/aioodbc/issues/448 - # self._connection.autocommit = value - - self._connection._conn.autocommit = value - - def cursor(self, server_side=False): + def cursor(self, server_side: bool = False) -> AsyncAdapt_dbapi_cursor: if server_side: return self._ss_cursor_cls(self) else: return self._cursor_cls(self) - def rollback(self): - self.await_(self._connection.rollback()) - - def commit(self): - self.await_(self._connection.commit()) - - def close(self): + def execute( + self, + operation: Any, + parameters: Optional[_DBAPISingleExecuteParams] = None, + ) -> Any: + """lots of DBAPIs seem to provide this, so include it""" + cursor = self.cursor() + cursor.execute(operation, parameters) + return cursor + + def _handle_exception(self, error: Exception) -> NoReturn: + exc_info = sys.exc_info() + + raise error.with_traceback(exc_info[2]) + + def rollback(self) -> None: + try: + self.await_(self._connection.rollback()) + except Exception as error: + self._handle_exception(error) + + def commit(self) -> None: + try: + self.await_(self._connection.commit()) + except Exception as error: + self._handle_exception(error) + + def close(self) -> None: self.await_(self._connection.close()) @@ -211,3 +387,43 @@ class AsyncAdaptFallback_dbapi_connection(AsyncAdapt_dbapi_connection): __slots__ = () await_ = staticmethod(await_fallback) + + +class AsyncAdapt_terminate: + """Mixin for a AsyncAdapt_dbapi_connection to add terminate support.""" + + __slots__ = () + + def terminate(self) -> None: + if in_greenlet(): + # in a greenlet; this is the connection was invalidated case. + try: + # try to gracefully close; see #10717 + self.await_(asyncio.shield(self._terminate_graceful_close())) # type: ignore[attr-defined] # noqa: E501 + except self._terminate_handled_exceptions() as e: + # in the case where we are recycling an old connection + # that may have already been disconnected, close() will + # fail. In this case, terminate + # the connection without any further waiting. + # see issue #8419 + self._terminate_force_close() + if isinstance(e, asyncio.CancelledError): + # re-raise CancelledError if we were cancelled + raise + else: + # not in a greenlet; this is the gc cleanup case + self._terminate_force_close() + + def _terminate_handled_exceptions(self) -> Tuple[Type[BaseException], ...]: + """Returns the exceptions that should be handled when + calling _graceful_close. + """ + return (asyncio.TimeoutError, asyncio.CancelledError, OSError) + + async def _terminate_graceful_close(self) -> None: + """Try to close connection gracefully""" + raise NotImplementedError + + def _terminate_force_close(self) -> None: + """Terminate the connection""" + raise NotImplementedError diff --git a/addons/source-python/packages/site-packages/sqlalchemy/connectors/pyodbc.py b/addons/source-python/packages/site-packages/sqlalchemy/connectors/pyodbc.py index 091ff2042..ac327b86d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/connectors/pyodbc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/connectors/pyodbc.py @@ -1,5 +1,5 @@ # connectors/pyodbc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -8,7 +8,6 @@ from __future__ import annotations import re -from types import ModuleType import typing from typing import Any from typing import Dict @@ -29,6 +28,7 @@ from ..sql.type_api import TypeEngine if typing.TYPE_CHECKING: + from ..engine.interfaces import DBAPIModule from ..engine.interfaces import IsolationLevel @@ -48,15 +48,13 @@ class PyODBCConnector(Connector): # hold the desired driver name pyodbc_driver_name: Optional[str] = None - dbapi: ModuleType - def __init__(self, use_setinputsizes: bool = False, **kw: Any): super().__init__(**kw) if use_setinputsizes: self.bind_typing = interfaces.BindTyping.SETINPUTSIZES @classmethod - def import_dbapi(cls) -> ModuleType: + def import_dbapi(cls) -> DBAPIModule: return __import__("pyodbc") def create_connect_args(self, url: URL) -> ConnectArgsType: @@ -150,7 +148,7 @@ def is_disconnect( ], cursor: Optional[interfaces.DBAPICursor], ) -> bool: - if isinstance(e, self.dbapi.ProgrammingError): + if isinstance(e, self.loaded_dbapi.ProgrammingError): return "The cursor's connection has been closed." in str( e ) or "Attempt to use a closed connection." in str(e) @@ -245,3 +243,8 @@ def set_isolation_level( else: dbapi_connection.autocommit = False super().set_isolation_level(dbapi_connection, level) + + def detect_autocommit_setting( + self, dbapi_conn: interfaces.DBAPIConnection + ) -> bool: + return bool(dbapi_conn.autocommit) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/__init__.py index cb8dc2c6e..53e10618e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/__init__.py @@ -1,5 +1,5 @@ # cyextension/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/collections.cp313-win_amd64.pyd b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/collections.cp313-win_amd64.pyd new file mode 100644 index 0000000000000000000000000000000000000000..8dd88e126b90441c18a5a995475c5af449d5241d GIT binary patch literal 163328 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%0A@M*AZB=OUdKU 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 &U$AC(cYlxje@%D)l!15b2)OrT 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 yj)aHHXfUMl;f2*P_75){ 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 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/processors.cp313-win_amd64.pyd b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/processors.cp313-win_amd64.pyd new file mode 100644 index 0000000000000000000000000000000000000000..f42c49e8de48def146377820b47e5e5f11401420 GIT binary patch literal 57856 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 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/resultproxy.cp313-win_amd64.pyd b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/resultproxy.cp313-win_amd64.pyd new file mode 100644 index 0000000000000000000000000000000000000000..e68c619174158857051def914a3ddc427ed185d4 GIT binary patch literal 58368 zcmeFad3;nw);Hc+8k(i)uw0A++DMQfi;;*X1|$uM+=dPY0YL?l5CX{%l9+T$(6CJ> zBh94|w;2~4aT`%lal?op30qiH0=R$+AZ{HR6di?t%6-4*RNYP|!RK+F=l93&^Lbxp zOx;^`>YP)jPMtb+s_J&eZ7WStCX*=||LMBPRE?DWrSjkZ=1+vl)akMfolI}Ed%t&e zgzNp@6Y~qo>?NhevrBX4+H-S?ii+L#8F}_nPm#T#$ewo71pD0LnR$b)*7k7{^`j?0 zPdvQ*wQS?RPk!#5{W;!mHNT!i>2p?*-fDg|=L^nXpYt)NZ{-|7dK2I%|M2qHvoAsF zG;hc`!s%-=&Bzw->-hcVg4}$fWwb0a-DH~iw>GA!>z*wz@=lp9w|9u_G|;pRITCW> zay-W{#9}mCJV%;LZ8)nbH6@^wgo%HVrfj^3N=DN9UFPgGnetI5AL&f091~$`q|_8) zTHKZDhGn;W%zg)b$c)O8)h5$ob4#eE_rdPGayMSfm*NkxOl_C# zz!U$oLmGoiXXdzbOs4(AkhL2B-GKjA;J>hcsUSUAfSHmM6dc8W9r53L_%G~Vs>xI{ zxI_SoHiBUb01k!$;Sq4DgGx}U{7YrHyuxAta@!#*hC60Jh!k)m zo9F!B`=@y( zdg5oQZ`x(ZSST{u;<1N#wBd0bYa-l{z6jNqaYog~#fNA7fDC(h#&^hw4bM2D`qPg%wGUMP(DH|f ze|KDx%b%{RzKL-OiThPwMO?hJ z>nOA0luOI_q2Y3FhBfwnl>5#5o*?uUaS1NJbrV0Q0kvPL#j{J>q1J&2jXYIrrz^kR zYcjoC1wz4bgwR$AVWGtO-hGU#Dh$^h1}>N1{N{sHtQ1jJGkj|a-=n~%YQs~Xr^NNe z5w&WUyR$dhRMAoO_K)zi(Up?`Q}wN?_t)r(&t2MH)o(2YN=J1kkk>vAC?%LGbo^`R z&24Kb%W!GC&==^F?;JwhQ4VyGHZH;C%lIL@1J1ZotP5dDY?YOu;nW-!G}BCcq}00I zV9|3iGSax+%18es)*+v@s1Y3C(wwnqbz5q+W?e@LHQ-%bK(oMpR=xFm8Hl;2C?n4rK~Mn5(2y}-*JsC?8pC;riRj3MO%+ZAzk$1SS&gk6iw(0+7k2QiLR?W|DqNEK~v z)@R8?(>E{Hp|v3p$hnQG-DGbDqW~sxzsonzuBP+~K)ALCw1mWYc&YglFpKcxclup=wuB7L6fL09EK*J{k`GyxY{R85lXep{p@yb$M`Mcc-=w z)8i0&SoP3-r;y7S&f67Ymy^k*%)xM1rdQ2%D-|#~nr;J@6f>y0k`;6>fl0u2K0Qm#-w2VN~A~P&}L#fiV9S-foz;$z|>w*@SuN=d$+)k>Pt!jmFCFscn z8nKS4S<`vQl8j;}L#t9TGD)$c>q9)#v?)|;Jt;710&_c9syYT8?`etEIpn7O>QHnYuEF+9^gxCs_FDPeY*OdIcxD zw9&B`JW!aoKO<_tf*NMAw(mw#aW53di{f*iQt{`aIQiWu6a!N?U}`DUoj#Hs%?+n9 zk{s2&(S4X3&ccxHRfgL5!MQ@p-wstC%GsDo#=J${UU_ zP3v`}%YO6k4^UI4vO)R$AM`9H_@j6>CU_cSY)pE<;TDu8Q%7Ky|24u^`B#DPTSyoP z*M=d~41};yZ;`R|D@!ShEK~^Tj(gDWx!iNTZhI1?aG+YLemhWhK_mRuMZn{z?gN_W zzU%WzwHiCv_H=}=eW`2QrRZ@rr3o-+tut8@9G zTu$xw7^gPJ?$pZSo!VDf##G8izoouOi%Ygg)jm~Iln!VV%&$W`?->kc-P9d^<)!76 zi&nU}c#yIh0*wPhj?E9TLO|3QN<~Q^0CTv4a9_b}yhgYO3pPf7LZy2GBZv(# z`f1+CZi0S;piO{wX{rT|7U6TJfMQ2_7=ni14T|Wc&tX8gYy8Sta)U_*<$#e?*At${ zxnst~H*3W^#G!9GjL2S98;!Y1=?tzeFflEI<0P5v1}5Kum-cQyZqha&4^DS!V~N8K z#MoSL_!q#tXM)2+kP|o@*~H;wgTs#jBa!R?5}=(4v}wtS%_f0ZpcJ-#1qLeH`cDF5 z^8jC^djEpxo4zAfebenOZRpot^nH_K)p8oy#EqI7m+FKAkBI`-%N;ibX3x(4 zU6V>0{zn=bWTB4tn`<$;jcMW~9_eC|$N`g>5B$m+%EUwgGh)}3zc2&DIzR4Pp zSC|A&UBJIuS0k1aph!K=eBQpb zYFBx<^Rb#ZqeVb-sE~d7Bl%XdQZ-^)(>>W2WbH;`&2Rk&6lufHEa5~UVKYg%WCn4# zl{nOut%R(qMy;zok5|=}c1TXnQnoFnA6!CAvkQ);EcK7z*Lwm(+!?Q?SobZ4u_7_2 zQb+lf`J`ne=2%qSaBU|NbHL?bvL5?}BxGRT*z+g>TUS919o5%@+rX|Ise17s(b8Ur z{DT+wqu!tM58hb}QVqQ#u%fwue^5&j(*DptNTCUU)##7>17}K@fAEe*v|c5g|Al|> z5!19@M2g@ye?d-~^ba<&Cn)@b8a%i14}M()VDd!X@smWy5E*v`q`rFzBU>4Utk^&X zGg(Hx;a3VNtC?@`0ua9Q2yk7{Dfk(s(5Q51i=#RTY-29=TWQz)6tK|D`xa1l{ivqwv{gdNSlW(`_Y4K8gvEIA zD+N4!LBm2cZXg<6ZJu6^Uses}rS#;rlyuo6b3b~Z#wBLRW9p;7R?Hak(Y zX;BO$plxsH9*t760!MXa6Nwe0GJz*Af}GqW7HWU#scYl z5$pqW1fncK6%1P-ZWigdga}l9W~+P_h*fPl_p7S?s`^%mM})GvaIB>x$663W`fffT z5hpB1=TyNyaJ7e#I^qBP1bvg{r}9al%+S)}Fc+M3BDFiTkJNpQu9O-mhV6+h8Og}A zJyBCt@9q_{JOmg!#@DmP=}(PtLRn&h3apz`dk=98FblWGR(TCDrzH=tEnh^Pihz!- z%0o}&f2v@wVK&~hs6<_8J0_Opagsw-`*$D%Oo~VvHXOL!)}PRt4X6ZrJ=Wq$gd>QK zD2vf-QM(Z@uxV|gwjgaoMyZq9zbl2iKV4Ge+#o#C6`6WCzOeGgs8#;m@ZX$@o z1o5VL{)`~52Lv#44wiokAkko_hN!{TO?7~OgAVVo zI8#N8(>pMZBa~3=2La)NJD2IA1)>W}#cY>0GY%HOjp(AbHV%Z)t_!HiZ2~t;d3hEl zCi%~$eLmrq$xWMf1K&V(@`x%0CcpWTI+`P$zESHi_w?F{cKAkBV{6XoyS*ku+vn68 zu_u=%<7{U^9m{{j*>)k$c710^;u`dl znY9x8YrjpQ_#5r7MN<3?A;N~=m<#J$BqG1LgeFoTqk#TYeir_9Hl7XtnuaQy+sE8k z6OIKL-e8NgRr&?4IRaN)7_Jxt7yL*!O>ln2N?9~nhwzOhe76A~mXt?;3!cU2Q(AAZ zEeDtgB1Re;Y{@|BsGb1wu&!@Rq}jZo62e!t>%;uGG1xsolbg$14NcQ;#H}U-nC$)? za{a8&Z3hj3p@?M&}@ZC`PyLb77X5i`eD%-xD7-g%opqh0GB3& zL!*p*8tHFbuzOCHf*S9CqI-DlzFdqaxQGq6qD*YwWle7yiDE#K%ZvRx?C+3<+r_>* z?eL^npS*)w&|vG2d`~|}$wILtd}DXI`iUIVx`tI4_;Hunh1By+pxumf832GG+^O?M%06;DDSZ-vS6O> z+Su4Lhv>9H+Sphfg%cXnR~*Di*i(!5g))J;`;e{qj<^16GLp z-BBv4Q^g;PQSk~mo{J#{PiJ(TJvJ|6SL4B}!qUDHQe0rdcfC77qo- zG{qZbSz8e@IE)$e0OBf}rh<9L<~Cg*j_HogQIuZo*leP-zhm?H&PXpqSN=fl^(*nP zNIWp=if9URZ2k=Z@bqpFh=6nXA#fh z_$ek@>^RUC?La>EvSBWVyQcR9veW{bu%PqGOWW14+fa9g}!EJyCaQ$5roHoj02YAV~Ah4C<$iccWh# z(xRCm@7W03gEj6Xr}lmz_E%lk4pLO|a$T82;zFZn!{G-+Rb<`2Qe6wz#hT-x8VL64 z&0=BmBkV)s$v`ApDmSR9?(0-{Ceyu->b?i_h3z5>9m&y@$KNI3R-4>66cW%uxeV&y z*!TcdodKiZNWQk&4AT?RMxZKjKQ-XFCeksI=HIDedorsV$*ih%TgYmpYugBZ9^g5E zQR4xPhY9pN0f9ZV>v=HYLi`xbBg1o-s@)jlsNCl6=Fr+YqPE#8@26Jz+BPiXI)?Re zrfh@p8D|)uaj|->u6%@^3}OWdO%t5^?VSA#% zj7Nd(xe>N!irE8;hjlxZ!u}90#Ix{*HBkoUTZ?1kqi9VqF?n!BCs+R~Xt4u`9~i=X z>M!KoZ1l)}P8=beTd)J)tj0RzX7_CuNtZ*zx$L$0jev=h<@ctfiEI_XLTvIAZFHBS3@y17$Xm8{KQRF>tXoUbyo~}V6&=fHabV*Kl(_hi z#TTUD!KWa>b z#?Bf#-jJVp0tOF>kdF~iEKPABrzz?Q+RcwNUczlL_uzV9#W#w&vEzST=^KVNf1Ag$ z#Oibub?_&6{Vyo3LnYp!wcoy#TP=a%hs5{l z_3UytpXw(vLl>OtS;JcO$4}T0(UoVptC?s%rmR`q9ym9Bfew@RcwKp&5s#LEZdLmj z95jWy6S0)O8Y}P)D@50p#)cynU|Yh+vo;>b z9cfW1%I&SoWoTQJ)8K7ZAF9abvFr#0oOuh~1_e!0ede#|**|>MT1w1senSDEACZ56 z^5Hi5<|o-MOND+{XVQ@Lz$sfy2PVka9%sw6gnGTP0c(0xus;0~mF;q8qD3*n4Nj?F zI1($6TdBlbYv=W)ON(%vS-gfu7Tg|NWff4;i5Y7~@=`jlW2?G}i0Cz_VNp}IRABn8 z$u*glSpN=AO;JQ^uXa#ZqCkB~-zCV@;dg6|aB>l$eF#d8t(v9N35hlihnkcP=xW3( z;YxvZTcwzjtS9I_S+#g@K243c#YEUTn@woCEyfvR>ufdiqr;Be_IQN<;7ouO`j%qM zKI@tFNc`4%BtHSTkzRc&MuOFkM>ekulVEa{zY`UnNoAVny|gX;8(2)fz4gf{88`_$<3lNXg`W@&= z-lwJ=Cpng^Yl#!T@;(-G8JZgF(##uPp!(4H=i%K36M$-|fLX#YIG99*%c-zy3$~6R zlWFjgXIkV)La={+>#fhDRPWmb*l<394(tN?kGirCJqBUN=t@6o7W`%RO=!obPzKd| zPWM~^?R%eIH1jPG5_-#hoo4aY;`mn-MCG%fF$p;Fno{pZ2*P@$;5G#l8gu$ujD<5zJ8d)Lk<9@+z&X+)dnHv4oYy$oX*|dZzUfOS2K0!XhjI4JBzy4ue9ePxJ`$$8E={h7KA4DM}a9Fdm>|6u6LK9fGj;l z|FDPz?`RB#N9|Gonsq%;a-%(f1uGjd9*6BMAgmE&mJ z1CU$vG>T}PeoMzPltF@2cY~CIcRH!Y?ZSC2^HkJxE24o%*#|%aXCqTP)zVSxPnb{7 z@6(_GHClIvK{7#-EMt-z@J2D~yLs7)1LsRlkOhQR9(^2%h$WLxg`AgPqv3vryJwgzwlX|AObr< z-1^L`UMB49tJyXK&a~+&1@7`93vkL4brBeY(?C{N^c=2JLUmxaWreG$!Z=g_Tsp&j zBH%Kc!wn(0D*y*$F^GzA{*GH?ed|@i?m#VOfzF_AN+jsUwgA)2mvP&NS^%xZXj@>r zbbYwVWQ}sq*0vy6{G7*Rstv?A-iA3h+1BsG1XPJEM7~p1Kf>j;$76BJBx%D=6pLL` z4BL1LD_fDHEBAu3i#ARs#${8e_9nbD6Aogc3`|h2a~jn)|CJ}E8c+L8BdK%}mF`E= zXT$HnxD{f}3jvKHpacVGBm?!!W=v`bD2;$RP-Fep_Q(x4H*kVEj8#C6@{LpCW?Gm@=ux z$7U)q4<}T9>&qljpVhXO-|EF%fAMxDvEwrbU*x1CW%|s6L^6&+%!?SrY8Mrj2*~U4 z7Wk#TBs!Uh<`7Z8H5&kd;AvfFcBWFvXlBRyFY3dH-hdLzKHFyWr)g6Gfy6P0;suC{ zoH*;nK!fxCXaVp@$U=gAJGxaLzKO=8xjTq8zxBDNcrdBpa06h`AUYACnd@E<&#?Dq zqC@%iz`kqoWbktd@pC6pc@Qv-2w6 znz54<#?H?qTV`iuI6HP?r;4bU1v@_ji4e~aV&|crk{t$IMu3lDu(#0gf80h*F;^2k zzx8>+&XAVuJpa64fuxfcV(0atRF?)6>>704wCO>jawn)jIzs^`*m)YY18od;81NAS z?AV$ei(uz!!OpQKSUT_Et(kN#31jDD5+q9}E}WhI#Lm-1<-15`=Ws|m-H4reJ*0FP za18-20ALI0%%^=7&HMt<^IH=IJ3U*nqpcAvkaR|e*m>w0sw<_FMC`mqRHg`aMgWPB zP8Dhg0?-*&Wd?kU0KboD#m@05%uXM{&OpJ=LwIW@o!_2oVu$;crPC&yoit*nmZBWz^vBn+%DKzMa}nHJ^$p+x)hk`ZlV}gC1Jb_M2YCByAp}0 z6wL(UrJhI(7rcCq21z|eZC&{qWLP!~`4K_xN1Ya3^}%GqX}(A>lOUKm1XNATeDyEE z0QJ)oBtsU=$su9Pi(>>JCJiZTTwVseg*C z>H%gBmi-_Kc?)Ti69`aSFGk`WPHdap8F)JREInNeSI^x|oK@>Ng92W4IP7qY?TK{` z$pY)fRJG20J5|I#irXOEkE@qg>PjiGfWUee8V(rk7r_J%ruO-jy^sStjq4}TgZVPT zg~J)_I3eVT4Nmr@u)#^bRgW6FYe?SKnS=UHIvK-mT;h9yE8v}A3o{c%xKkI}EWkr3 zeqf(8S?(0zR&YI>LaOW18bW7D{nq%oCKF!cUPlv<##=->u&qcFFj-PQ9pRxgshvoN zT`AI3376JQysKSA>XPr7cJV$D9 zu~AyVe5Nnv;`GW`%1vL|k(1@jQ~F9PzdhKVlZUxt`YKUjbtlezMpRfMAlC|<>qLb& z#9OsMwo%lp5t-XqD(O2#*?Xd_Uex?!3hQc>99r(3+=fD@uks5!kh`KzivtG3Dqehd7z#iF6M${~ z)Hg!-59rE!;L;WKZ`AsQYB7xkL_^=9de5g->`hA^(QNsi2!c-Sh;cvJsV!%6y7HHa z#2KCQ!c-;?H>6b@*^!=)1=O^Br+-r_l+pHX2dpm$)Ylfo+;=)~(uNK~)L9%}J)+_W zLiV$X<}{AkPeybq=z@h>PJH^!)&g`2ZTFD5vg3u#)pg_XaG_nf ze-&FSYy%`T+XBc6U6*d!Uqu`aan3<3Zkh;em2}Tk)$Uot8i&I#F74ij@%;8a($F)8H(#)6iU<&(#cz8gxfX48{M2-EGYF`YtfV6wNw#1XqDOpgmp@2-}ZIyc9Z z0G?`yr=LuH!ZE=~zNel*!5?B@_vFjxR6NHt=QTx8m}yXW1&jeIyw#0FVV|jgI0b68 zy*Z{IuOWiw%MDC<%`p+L0c5>>%#;+4iFl0-<2AlH*2e_a5217{OIvfS)GJ2?e`(=Z ziNDz9n8piC_ZyhDla^`s)DS}2;{&GEgy|>Kgm6qPWywAv_zV#C`iPux?8IkMb1csbEa%`A(Fp3@((v3j4t`P%MY*yO;L2=$@u>s=Tr9$k z3}ejEa(*t99|@2<3l40PH}cm3upzQ$F$t#Xq{pHw!!zMbOn{l5I+gABP2}CVqcMnY zpn!r{vSJeu0p{HR#UQ0U{eSSIa6Jy73dZs<)aS9Bl0gqx7jkgFkkm6Q9NOeR7?+x8 zOYPk0)EGOCRa-#$vtTrClHnGpbr%+Ax-wR<)I~@Hon`F*fCP4h_UM>Mz}>(m?#>cN z(lHt;xcetiF?Wx<=z&leEOJ2DkY32YVfj_W#ftAMs4Qs2-xfiPP7PaF0T+F;&%EcC6!hNj#?8lpKZfk9WZKyP#6un`&=?arhV273a(Aeh$h0`~*dqB3w4sk1n9hshW99r}J;zr`j$ZdodGA0zg+650*eJ_vTf#a}3ZfYg<5 zS!_)`S|I}5@D0;(bkv`!LsqANn3&dMusO9(IKBrD*;e@si4FH2Qwm~jRe$3S7$4(G znGj>ED#sgkiqf>*Y1$~9Hm`BiHbmA2A|2i@+j@_-O-tG7nR0rI-Q8W=a;DyUG*z{( zCS-t6qjr)8I+GlyYwT`(ETjI+e($kVb;)i4aU2i_2x3A~x>lQEdu2<&ol21_Oau?s zV&`T)Zs8y_UuPj6tLP-LGX+QBYJlH%8TiFV70_YC@@izcusbAJz8`OCngh(%r(rA9 zq1DzNCzid(h~t!ckDECfkggqcoH^j|ewFH6vWHMOYlD%ls6#j$Kj6IBXsXqtoW2pk zn_b$iXhtnJW7nB|-Y?ONT~tMdG}Nd))Qqu7X*jE{?W2}Z_dhoxyfN{rcZY@euNsAh zh%uNdqwsWpAEQTHV8s-F>sTQ6D|cZn;=VSC4-M?$rR7> zrL}Hygc~zArPAZ2V{%J(rHb=;`G`tTmMwwBr;o zd#HN@E{ui-TI$I$g;NBc-e_zgYM`;(vAlHQ6f3p!4%KL9G57LevhKKAW)X)=Xj@xZ zfF|Hnp}UkFE$VXKKKE_~n>8NXZ8+>oIqe?UJWQd~}Q?YWSeu|+p-24%#ro&}0H8o^WSA30LcFCi->VVxUaFoni$+oY;7R%>gw$S;?iE46^ z8!jgH#A%BZY=2L^id~2l^Nr{d)%Ql+QlR%tborO_lZ(1IgSz-bxTk>v99N^IF#$Ck z#2;0Qpsst{sa@2xiw|~JqRctqJ+=01lKlEZk!F-_6xyI)sW25}!C?6?vKYfr*zYve&77o{{pcyT9$S#V7)=E%c)Yce)1? z|5glK=m!m2Az+H8@HQhgmysrq&&8LgDyg1L0tt)$^Ts11&Zv)(ud{H)fV zj|#qFs81nvzhCiVB>?p?+FF!uv{j?+OwzMa0&rV%!1NGcq%bPww3in;z|-`-BcVDx z4a1dkSa^bH2uVHKjZac-%Xdtl)8mRr6Kk*(kb`v#mH3qov_K`N z5Ntj-k}!}h1w+kG@JoJRXd$Feb!94Q0}*r+V^lj3CgXHo=3-sV?9h_aJrd+_SP{7E znNA&^$@{;OuP4Q^)E|(vQw43*xRq;wt%v!6C^xZ{D*GB!_*ptj4=>DtQ~Yh&uZY_3 zN*NzhdJE1KkzOR|%KIT^JeVMnm8cs>g83{zzIZePy#b~;Y{GouKo+#&R|oM;on%xP zqowVO71ECs(#QEL)<2pK6tfe4*X%cVSBxsTB@AgTa%JS{TBtqQbhJlb?XrT&O#jz@+#_Ozj12wraV zz)>J-NP}sj^G~W4UEd^RbUy9&55y#?qr^4!|W;lSf)S<#Zxk+>O*~ zy+@dkq?ETF@5=>#%?$QPiIjNvn6PmQ!?PJ`l1>`jt++ zwzFOZ2y_Md7D{ye4RE+m)6mN2Lyls#jIP;AvllMS!~Rn5B!qo&o{)h-)7; zo~hguKd^|DdNiBq9YK5&LL326(Dy2El$Q)XLg{u$NPs*jWeyx|g@f7Eo5UZKjOPzZ zuELIkIO2(}5Bok&OZ}$l$ufaHjW-D&B=w%i#DQK46Vqh&2<=yp9mHh*FcAh%SR3#$ zJsrMcjprv89h-m!2mI+M4o2W8NJqMUDcfx; z3W$WCj)w|g5?zQ^{}YO@YAi2Z=?y$athn$F^NF5Gv$nJc`i$HW87jAE<7LdwjKI*^4XoaxCSW2nIdFuTmCe>PsFFd z9bY7V1`mlfbm|L=PeX)Hf+6$;pOKDy-@cXHDeiUbgCXSLf^SQ-oVo932o=cCT)Qyj ztgn(NG5Yv3Rx|>uua`tdphPI=-;Ibx(|ktXz@^cF3qJjpQ5za`{AGQ}~z#U$Y~ z2YZ}ucnE~~`khnUE<@x9TLDlv`-Z_NVl#1!>avgjDrI>a&)X{3;t7!x>KYi5YOo`^ zM%)o0SD}-Ny+|=57cg;{$@nHN5S%|pwTO$B=e?2v<~<+bPWPVI-BX~a=sSVlJ%miv z#V|Cm26hVFP~Z<7tY;1mw#4*9GS%D~R9bNK3G#(Ik6{Ua6;n(CeJG>JJvF|UVewY8 z`K*X@VeR5!C?M2{YC|!6>ITnAdeS|~>HR&j zGyxOJNm4e|KfY1*k8X5EeXK^+x>8QfGpi||l*PE{-YZ?23XB{GExyb-;5-N-81a#F zK>bR%dp6aF9XBVI{Kq3aKX4>x1#RN6N_l#rCeAlQGSov;TJf_sZZ(K+!hdMY%(%>( z{Bhqq2jJQhyY8!aL5tg6PVF}v?I%*_+cAmLYL-SM@04I)76eIE`;)1rd?DiY;7n%F zXMN>K{1{(kFdCW!S4aTE-?a2uL)Dx<*9h2LcmlLv=&iE^SKu2%i0Z6HA%7gK54FUv zbW^E882P`_E)L>zNpw9&T&l)N39&}j9~2f|YlOzU0}N1A^j9;dZvr^Sw79U3*e`Wz z9Y1fj*i0l*>RX*DM=HKzQI5Hm&_GhOupyCR05x^6ai3&7is=@xCmoH8!Le;ja=YAc z7lWvdYab}CCv$NHYSXn2&AK1kJVI*iNNUzCwC%%}eNY}2S3=dM<(#mO6h5z2ZE4C1 z!qN1h9%rW0mzha~n_peYg3P2b4Dp*P`MnH_0PqXR&L>IxMxlT?Z6nBrp+`{|Ct}QD z#)~Ir5Vpe7Xrv{yz>RSa4y)=+1!t+PIopl~NX{UF>qz!~MMYqNIkKU&$;ylIs$ta> zcE3Y~D4X5i_>=so;74uE&(LQ4JV(0bSB@GB>_tN^#Ltv)ex|hKN3%9yk0)$+m=EC{ zP_;ZUVcnOFCDeB0L58X=eM@LD$K^(UE#YX6c8EUsvy&95gCQ8!rc8V;;DN&9@j0S2ZsIQcS_@0Pc|R4NdX?uKXWIN*XDh9H8?W4Zzg9ve97n}DDCf5Dy&8-`ePXUQ_k;o9Js~z{!BD5 zn!dPyfEEL55Yy_ab)Z&8`Z}n-e-auB)X~&T&V4qiC0ri}4PyxsmGcF~6Qq4Pgs)3z zPQ>bVxx1;pyYrKin?7p17SxR!pHyfMFT9rv5!HKHK&2WeQp2GNL?K&wLZOBixe_(Y=aOzhl98nWNeAiijwfctGEzeuP~G0Ce|2# zhjb-}^u&92yvZ%ro40bUJ%NkaJ>SC?6wdbL$QFH1f7zarR~%9Tao-n$~}fNfQ;Be&_~iSq1~6j`!WtrEc8olU@h6S>@v;89!~#)l`-KahVY zXNIbUIwh2uflQ+tLYdHPZ8aecuigg;S&ndIapD9EDR!kP5<&CZh3_F762bhhlKsn)goT*h~WSn0=NxnS|;4L5}d9(W^-UgAU?x}Cwz+P09d6w_acY) zTr{2au%=Nb;k#2rjHd3j{mHoU*FkAtrVBoDuPa%|gkiK*y+&=N5EuFSkivx62C)oH zkHLlBSVm%90*--l426TRWV2^z0`(Gs`U&75)SVc0v_S2-ozcQ#M{tr5rOR(R0Qm81vZ1T z?*Iw=g*CRoLOqr$B1W)R&|0653BVrK2OdTgmau0U%Libmpl$Ok=!xbik2BK$)^y@BRUEcBL(Mtg>|_;z+7hzwAC_|S;p#QHU6+-_DraNCjr_$cr0;;L>7;}Xe2B)Ag2Nt8eRnY0 ziOHD`J`F*<#Z=A-pG<7`s%mG4>{q-Q5fzO@#l~{xO5e6wNQG|P) z4%NTH0c+$Ab6JhHWRUwoeL`QDI0}VB2sb<@H2?5WrXA2GC51vJx%$+ALnvvS8EWd( z?jk;~cY<0O!hY6A&<)`8esoKQ770E}C{jjR_K!H0GFuV09io>=;VvVAyRE{(r}Z<& zen|S_BpJBe>B6A5Q|uC(h?qmj95LvH?7tmWALpUKk!>CvvvayK51h#`b3589Z0G^E zl%j{3zVdQ7S-$dke5w~46;oi!%Gu#+*Ax@;(Qd`vsbN3r<3fns&~WJhY$`{jN12jJSn5 zMa1^_%6umMA`iu}wE{FAS8m0QoZaQS0}jDSH)1OuOPE}z#lv-Ww+r*7tsQ|}SI!e( zQ0-}|2G>M)Pj32PBi@`i^*Qx&Qa%#BrYtU_Rv@rn*PA#)C>T3G?mn)Rq1OV+eF+{i zfY9BI<5&BU2h?q`)Y9>-E&^@+!$-pbM1))Y$V(g*z^AuUd%CE})8c7!7}F-A|3^{g z)G|t(zPTkd5lkVqXdZd`1{_}SV?Xav0a#~=wEEiG%Up^hV-7w{V8|T(!~SD>;{G)M zZJ1LJrE9y>t3E4_b>?nWqiWJp(rPUWEi{bqRT&uk&lV1HXj>fvw#<*zYxXtX=yR~PJ2eZZHngoH5M^8(0SL(H`-D+Iyx0YqOL8fo6>wG z7S(5bP5KMu_@ba~@w7dHaA4Z4dmLyzJb7OZz<|N>ACc;OZNb-RCW1 z{L$wTW5fwki3_WY@HGKO!;Wh zi5q>yiLd8*y=_R<<%uO?pS3B}G((Uw3Z)C03&(uLPPn;L;C2aR(`+?sg!i zb&#I%b(8~vf5B{|Y+W!=eVDpFIjzou-#XE*sSEoiC~dA*{S{qBp8;J8VPdKTVx51T&I@RVz`52H4Sc*-+Y=!&WG^&D-lrBl^f6`xg`Y07`rEZ zxs695eUFmdrs76EwLtx&EB9ZD&KsI$Y+q_0@+e=9?&96!3w&5B8#Tbb=Y|W8@R3}K zYdsBU6kUk2EkA-M`i8fy>LYs6_BPZ}gVDq;&g3j%0eIixFzS*8$nY)T6;SiRALu1y z-O8x!<$?=*WpOd9DNOQxV?~X?ISRP@9XJG zk)7nnj&Wzm&sP$U{d97~rpjyCi$_b~ z#b+Tah+}O!fkLII+8z=D&aY5Fm#RJ8gC6jGTt4uRhKOjLF<4>$_6Bs=94JVO557bI zJ5Lc}Vx?6teN_p@z}py8HWKH61m^?b|Ism^dNp?oeUzp*xY$Hg5#Ob-CUMaV?_ps= zns9*&f3PxcK-qgPn4Xl~Hu~8I{CwC>H&zn&O(FTii@(aH-5irx1BZTLZ`D60mcPfO zb#|ugbB}j|pi6!x$%)S-eV14R9&1<1;~(@(WP?aFKOhji6k>7#cTYYq?jw6mq^y|U zJU`%@^zJBB=IFOL&lV#Vdt|gQ3y4j`B_~#cL+wXIC~LouPCV)THVRvbu;ALcH0>9B zU+H2}wMLM%RXzp+F5fe8^{7FUAalj|M|E7i?$Mv}`ishRF-tQwk-_Z6~BdTQ3 zJq(;3zmK)|D5H#LmE0J2ic#wBn{j?A21`!=HR+g)FcEzF8xFKtuj?(2D0Qe*V>|{oAD}WAK9S?%`|=DLu~i<7Dk( zJf&%S@a+=(-iG(+qS}TwkWxAM50!C8QMlwwJ&GD%7+2!`DvHv4TJmSpiUSkfL>#ik zCZ$SGsq_cK3jsx(@rlO;mD+}A2foCMI~!5B3gPe`jqo0e01CUVd~pdk!QIBUrW$0h ziGN|gCmr2DHjfVPlK7k51dT_bs%@uhgsV{|zb2>}$JeLf;DX+_M=T6@-$?)so5{k? z=ciZ?;RroGnOs{NGwVz(zQi1XLw~zs8kV8q@MmC8pt{KvrHQ9M-DxS-UhJ)q@(1p0 zgTZSKj7DNxU&8|eF)~UUY~Tu8=(dOW6M+q})akH6nEVl6V?)F~i5=kz{LldqGDjK8Nbqfa4F7_9R#LsD`4$+t49#LD9DYa7f zj0l)4B}Zz*5_h?_@m0|_YO?@IIx%Z1l{smso4<|@>$s#(;0U8e8!nF~=6n1E)oWbEGI z=kma`=i0z*v@8%w?LP^2>&!=xPyf)8Q;=%n{?uiA1MNZ0w*Fw?F962*m!|~}*ANe2 zLe;R%KE>|xrN-hXR8*g8kxpYOmUCEYXg^}J&6cbLvP`B$^l7ATfZsn-#{zU-D(uoq zq0}C;e@aBqqAM|Y*AAk?6X<6-UIs7(CXNm~3x@_pX(&Q>KM-C-AE^~ZbffHAblVUf z;}CM-dq^7=2nrS0!%Z@x zIMbEekT19nwn_YqxEJ$AIrO%=;Mw&KI;{)`y4EhXFHy<#bk zYv5oro)int%J8eG>*?3a`+-uE1*UKGeUyV5dfz)yfN|`%ZpVAW#~9c66c_#e91ecT z6!-$)@lhp9T;N;r5D8+~yd+wIdr=9(?wzM<(R~v@5F3P+Addd*bazXvIi=cOwXOt0 z&-X)wtzQ=rJVW-2>P`@K+Xh~M9SU9?NWnYIWueH99#Ru*8_2`Ux(Fsnbzt-dMX=Gw zH?)}xiEA?8DiMB1r7nRn;-ziCfrsFUu=;_kkQ2BPe`Ka%OUdU!rx{<%bZR&ge2T_t zLtriJAqIYT{L-AKGusVSdmo`1e1}1y_F`(M*pwW-&7v?3kD@NObv7e$BbH-bnN4|^ z?;b*4;3jygPJDokY_eRc=P@e_y|TFJr|GN&p2>(4ud-IJLf@rU>^V-I4NKTL#m0h zY{ll^yAh8&b^Jt%d6zH@WFP2N+6nqSyB+3d@i&4QK&bO=ATb5b;}7>0ror0kjN5RC zH`(kjf&)>m=2~m;fJt@%B~iPVBxj~WXR@k0z-Y`$cEsW`+kh>$x5ncTAhsr=_SxQY zv{C&X7rXo&an+++9Qnkt+L(^6l-knv*uAF%Xf>rUfLr2&N8s;aA|lP`=DjP`-7cR55WsX7TVk~X5DJSJQ(EB&ma#ji#MHt@u~ zDy|;F!Z&(IW@P7Jmn}SzN z26=OC_}56n>sJ0j-7QdJq773KzLADyTH-F-Q%imbxRF}vEKo{loxQPk7s{f!XPDayDu!`j%YPU2NFZ$jdY_T z5gKRmnb+WnuYAw&?zGpL@53t;1O@lv>1{yOgYS8GPV2J^T>TC<3+OFn7k%Lh6fWO# z{T2`TcQ+&3Yn_b0sQ~<}&YX@%;uck|#Uq~~8iWVihHoz_>!{i`oQg$J59By(8;*4? z!fUnF%cD zUT6o^>iY)&UC)0T`R{K2`yT)OfdAI>-~IgebN+i6f8Tp=UBp)46!SfPbUq2;Qv7yH z00TPQs~|r$U5mxVH{8{4bZNUBr%ll=ZJ)aYqcv);E2bJYmv5+*k6U(@N==x=p4Z$}}L;$O8g@j7;q^9V}CqOlQi} zEz`frbd^lk%5;lN_sjICOn;VX`ws=ZSeafa(=?e*k!h(+SIG2VGTkWC4`lkiOwY?S z_9KCRh)h+PPLXM$Os7lv-Y?%*%k*WL?v&|4nf@eG)5lU?G94(>kusew(;}HJmFc50 zT_e*CGCeHQb29DziNGH((`#jVvrMyPS}N0JGX1AaUz6z$nI4m=<)FaZQ>KGudV@@F zk!ik6?~>^3W&&mg!NM zo|kEw?7wSddZ|o1%Je6S(&FDSnZ75}YMK61rhk)ZiA=}IbeK$IWg0Eh6MF^T4`sSh zrZ32Jg-q{~X`xIf$}~-;SID%ROieQV{sV#kQ3W$yEYnJv-YL@=M!wY3O!+Rb znN0QvO^eB~G}4-Xi1(u{QUm@enQy%Rf0bqi1>I9JHSm&?9{#VeV8&HtcNFFn=H}NPIu&P;Ev-8|#?i{zo z^dI2~tD2Qn_CLoHR+U+SsQQg7F3OuYza+1py?Dl7@^anwf--wivD;qenNgNoT2SK7 znNgUBLnWRPN=!2ga@{21tUGfGJ$YqW1#?RZ>HR-xPk7b;q+V8mJFirBgk-jOmfa2J z?P1Nx&!Gm`3-gNN`~PQrWueahsGmVHUsn8&+Jk;Yljc%YQje?|^Rr0*NTykHb4p4I zie{5+>EC~X_m5B^{{sCj<(1=hmln+MxFO5FgA)_V`u(rz{>OZi42TVu2L>VQ9EKuv zwJ4XA5C8sz9I_y}!ueS+D7krMWyPgsRIjvn9$Od;=iFjoEcN8Ni%b6$zCWr;X#Wg9 z1!Y+v=`NV~ZQ(97*hrjmR{G6iMdG?uj$#v(=v=6eo^I@#>gP?b^l1q+hcm?f$3I zj@9<S$OBbdzSJch>dgo0?t4A+d zcHpgd)>R&S=JAI2DjsjB_;=3a6#L6tdmb7$ZS;W42l`T%b&vfv^(=&-n3!~L z^}0TTwj8_eDlY9jT*nD_|_9FPHWz0?XXP@dZ_S3vO*65%9aE-?~a7p{B%ctnIj{a=%*jK+-wiKdk@oUw@m` zGf;E+slm^GH21^RSHCpj#OcSjp1o&b@8YjFFPr_%UAzAJ<>8V$3aZ~Y@x*sW+Ps*a zciZWkhW-1wt!KBN*rT3k+*&c{m8b7|v-;6Rmwh=T;{t4gC0A z;?_gI9@=x_xg%!^lTtp>zj|!pqNI0Le&n6=a`EeLp4fEc^c7jVHh15%J^0hyUFVPW z7_Q%a>V=2<|MTyO-+c8`-S&^on=9P6K2bfr0F$@#DE;2{YK zR9C{l%z4V(WZN)@fMa7|hw#Jtd5ZGNON43sL(F;QIl1n_`KC~PgN{3APF|V4@8Bf- zxof7qq__-Lrno4lFvMNo!B>~r_N_~U458dDO+ zt)M8kxD+#@ThxmW@hzG?kR>Lb1sS%}EFQz&&CHvHC_c-WXr&u1?^_mL+k{zxyvkXy zTJSGOrv1dU0C};qJ*ceUE-_W)&BmM<0{Sn#Qj=*0oOpX~VNO|D7+&GQ=GgP|a!R;m zCR1p+A^k;z2kHG}Wszf>m1Qq0EOrmH!w<4EX5n0h0bg&=gBD`y%9%OS-Y*xew^L2K zfuNrqQyl>8EeJx(xCZ=pP$&bX;r81H4<0-%R3Su#8vY z$##X*nW~pz#<~-lE$YDOm{kbgu5Xe|4v-j<6`GMHC#1xzA@sEX(}aBZ5i{*#7ztU4 z)*JnuBQgyY`(t>LED2&>X)*MYdUv4RT{<6wIk$LjNdXOa(96n_)3RK-HRES69H+T+ zFkdy&;h%#gy6ES;SvjyF z)P=2Zvx{b+Ch*Wd;WI%Z#rE9!vphw)G^nxk48u0Bpsd(Ny`JUAgn zX|6nFJV@*Y3bvduB3W5;=7r&E#ThH9(P`l7kN9bZ<$uMIXnIx_4}9TjT}Wgt7!%3{ zd)v3UjSI_X#MJ(*nZ==a0VG+R3m1y>4QCRNh8_rR=)I}GDNo>$i&};khQNU5^4W#O zGja;qRKxEUFT!0D^>Yi0%RHshf0ZxI%8O@mA>+@*i!2P$mntRbhxChhXx^{%-b|jR zEM8rdVp@b1X81dyF~y}cp%%}Yg%!V`m6bIwFJ}&%Rd;x<$uu%&CaaKrR$uh7rloOfAm$MuD{00Cjh1Y92Gs^lNF>~Ah zPkYw`9A|Oe-|6q^pLG(FEQ4d8!A1fsakfk^K<5q<6Qd#x3XzvXD&*5+*7w$+|kIyVxdn!dpTL_)s+bmW?n=caWZOK4MN zslC|7IzHU}EIv`$UMlOMNr@j(F!ecoR`OiYkV1TSemRGge4`4EDHu{PtRQpQ6`t&2 z$QSVZ-#dE0i*%eZpZ-%07U@IjL*?Mf`=(YvE8xF>mB{-7!p)HG`5MtSq{4#;0DT!j zB1lhu9Z^t7KSNso4TSk3kp+=UOSVLZPJ&vo2Nn=M{P;=ptap);AF>EVN*mA?UU!dT;9u>fbYb?w0>Y!+pN3Q%=p zJ3{mt>zQUQ8TT;b&LrVl1YIN@9^YLUXN7;_i6`8+W_dJO?nc?pWvTPE$kHruY%>bCj&Tv-3}eG)M10S4U{Rco zhnFY{+sFe>HCOj9L>!w^y<1-uOf-~@vQH7#V|mH)Oe%mbvV57Y4DeyzBcNGf$so)55;8kVY3>e$c2;4GRDEOFRFO{=__s{u z?gI2JAALg~+l_t8l6_m6PfMYbrO?UJnnGIYFOQW)OCrT{&;g>|M1Kpjs1SWGtN~n` z=QEXMLD$d?#zN?a>Dtp=E0&pQ8U7F4l3*qkIdUiy`m}F^j7Ssj$UY{Q%|!fv<3LZK zrxf}nH>FdK>2^ws%KqC-;9)hBHCTy$-9{EiHJNLw$bzx(A^lRdVJw@L<QSI;HerD4Uk#(h}%?NqcGRhGa zvw74UET#<@qx@6mD9?!%rH}Bm{M;47a;ir)5 z{*2{FgU(ZNm~RFeIcIXAmmKH?eQbwbvePO1K)NrDW#K-;4l-*BDBMZ(A<`ki8{-N* zrQjvMJn#e08t`O(59ZT@=d-C5^jpwQ(ZPaPULkcriA9%$vn#T6`Y$gP2p8tC^Uq zVL#D1qz{zb#g=nV`dMs?moRo9WCT$w?vK=;Eoki8q8}hM?Xj){&q6}K( z&ZJD}Gx8-UC3o-K{~0o3mfM0TS%u>yQyVk9n;Qy+IcC9I-sjI%&Rg#ymbWr9`i-c zH?&ieO|hqm@_z@mILCcK-?)EQ;Nf!(bi!9SJ_lcM6MRJpEsm8&Z-^B6EH3acr;+*e zjYMBTj3`p?_mz$eWvD}JUyI^vRl;vXu>XPv>CCf4cRwfhTulE8@{@+Lny>aEvHr+$ zkbE6*~-gkqG`I=C# z6EqvJpS&G>7%E$`n{rH)vm0e|2ATaCzH}GXzJd%YfK3&&XW4Uj{k<7Bp!n>4iRfb_ z7x*wVrJ0C*gsC(W{_{;LHO&(HFX;o|XC3gfHJMaW3?CqRfM2m|@~vC5u4;de$JyEEzN@C%H|Qq&U<*fZ$g_TNSIe~` zKj6ReQ}!dkBftrM689X(>5XB1H_)92ZV0$x1MV>5_hx}x=yN@uQEKLTJfqaZ^>{|9 zhwJf-QV-YT8KoXRt9Zu3bo*cjPSrF-`Z!y0Oig)M5gKr*wM|~}I{4z}h{-;w3YPQ?bLnsf zJU-m#2KSI1k~q3K=%Yh~>uo{Q)JLed+3$Cv87U6E4$LN88!&2D3f5Tu9H**k0oFfyxGe2#swomI-s-yQ* zzqfUvb#aP{_t8PzP&;?A_;$w6wfo(>_AkCoH!iFGR3*rDD!b!Vq{9V=}Td$0`iW_3f zCZca8xaggtKTY7kS4&I34VUlz?RU<+xe;lWY&lxr^@`1Vu!CpZp5AG&!zlb;; z0~X5Lg!n2^UW_u268BC7DyngMHr^|!qXQS-7}1}hB|PTIsRVp8(I=^G%!6&fwe|Py zMo=m2o#>LP#Z#xr>&MLw(V{E-NsGtc3;Uth^xm}LM3%m<>gx5rtv?k`W;@H6>{GUT z-~+lI<2!`+60)`Tbagl4E(TW#L@&mBCOy>}F``YliPVSmP3T0;SoBIwOB#slQ`Xx8 z{_+_Qygm!pGFDuINk^EDvY26_k{2bVn~wh7LD+AQHmVWWhI^Dfz25zD0PYY{ZPNI{ zv5SV|GD|i0(OdJ#C`^g!5^{l9;!Z0)Ug0e1_du=Ig2rCN@ENW0KGbUL^dXL1bApxK z3s0_Lg#Q!L=>DMzVJ3};ZopYjf)g8<)=OVcVAvDtD+HQ@3xfCg2z?N`sSgNCel0^TOW#${=xlKzcKi!3KGT=r;B$`|%y} zP78;`EF%_9>8)-CA2At3aVF6UdfXC#F5qbqZ$pzjURYY4?HuJu^oD^_x=ekBzoSM* zbc@dEt=0Q{n#WD=C+Zn&xWVhiL47^se8`WeT+P2pLr}T2Hw_%(qs%i^xaHmKC~1RX zJbBIgAi+JMJE8BBpyUiQV1ESPuVc6(Ei>p&&W4v0yu?^5RrrPPQC9qK8StHgt+Hb0 z10L^wkMP?6kf@)KMNTB@!ZS5%TI4qfmIAXCA>K`X4Kw{TP{Py+Jmm^5mQ}Ha z*L&O@?89#nnnUb0ysuN=*6=bqidP%9Ka$t;Tvx1Oc3~^a6z{E)HT|8g$NGREBU+<) zh#`?osDtOuX7&=vd!TBaR_uc$@i!AvvBk)-j{An+6#kEe#fXS?_I4=|Mr}urwqGo2 zY7n<7?j3^x*sA3IR3>aqIW|mAVYL&welUnVdwMWWvkZ2e7%QAbCS((%_EMrO_H@%a zCt+13D8+Z#N;@|hIK$Nk{%uorHb z@7@~`0nh7X5#w6D-pBfVx|hW$uzi>FlN~+&AmXvMdvG>{mGP6z?H&Z1yAkRTcNI+t zsAk_jn~5pE;N$uj?4!8rsA@y*+y&C7J!K5}f zlDM^Jx4+Ymb*vYmMz5svtmW|XC$tWB>&@`b6o#~$wB7xC5r?2l`M~D(w#}{U)(VwV zJz)S5-|okauG87*3?L8{7S!dGYJ}ca0UrpuMNA!nANF_=gN8cZK_^ECvG48E`T}_A zp&gCw+uIy1TQ{$%u}SWCA>IgLK?QwucOvi9Xd@x8zMF&e@zBYmUrzkB2N^|zU_88f z?00th_wK`w8OWNlbNVCAv#$q{f*gK}1K}hJY+(m*GN`_ZbTc`%0lc^1n^Z{;%FrIu z;oQ{MQ`HyXAr(yoMmWwL>$LEpH_4@O3zY-f>ChOU($^2Us z>D*6}@u?j2`l)!=eZRV1D!pE=QJGl3tlyx@b^B#`ttv+cWO<7!+xE%wI=vi}Gn0U0KYSeF7sL0kN+B;Uw`MWk?x|RBk%lt^!{AFMmn>ar`D_R zE5Am%N<~+96@InXNY||BMtrirkp=kfyhgfiMK|`ispM~f~72U{H=t7Dvd=uV&X{v$CC#VmPujP2{XY89g>0?B}q2=@Qi7d2l*p!jfPTjq-eptbzhbUOpzDCDeE+n^S`Dt=lr&|yr zEX%mJnyXDNFIewWKIlj6#s8^~1wS5#O*O~DjsRXL!H#_naXWyXQp5!!?*m-F7%^VR z!|zjXIm(O&Jd2Q>R^+3Adq0QR6vhMIuuRs)xYHjX4FHe5DLuKIf5H=YSAcg|B_4ZS zdJ*Xm@bLR|;%3P+47hw1(P7}>@97aFrh#wA&*4k{#+Xiy^?c3xM*;c2M7xlOjZx1%QU?CtK^yMH4~_#5 z+o#u%o<<(_PuObhB^>WjeHnzs{=94$lC!gAhFCbKV)NgVM{7OFZ_a^m8P}W6wz* zzvPL1D4jrJyfH?SV<%Szp*P6M@OGq(?_n$eFZ9cKjdw=673V};7w>~~H_q|d-dun` z8j$0K_eLsw0(OGB7Qn10F&{Y(nEwTp2Rwl!WB_!25&S^o0{n|FNqaWNNgCrSIo|T; zNN&(GEFOYv$TMt08b+RBAJSpueSp6}I)S_~F47n?$+47G2QVK&!|-mT81fA3k#LDf zcEEpq8vQ^%2B^nMGW=(x)xa|>e+EC!i9ACu(k|qUF_0V!`Q9+(1fC(@ylfZ`n?|2^ejr?jr$5&yWe=gxm$n#hn0z8Anx@Gw43&?}! zFrei{&>+w7ZKM(8=Kw!M;QfOHyVR;AN!4kd5KegA&hhv&!!RoPHT|3N#_W^GNKI8RB=h zM1CdUpL_#84K(~+fP0V*L5B5!hmkIE-vLh{T|^$g&n3R26GNWA-@`GZG3c2g$BS~F zA;)}jo*~C=20_no0O>o(|IhlE#CKcDF*TFrLYyfOwt4XQL40b)GyYx*)PKci{lVMn~&~1+I@83 z=?D@=5Dtvl~38G zYNzZ|JEwe815+bYqf_Cj*{R6XxhczZ`E>1c-Lz}EdpbOQW;!x`ZaOx7dD;>x57|Ps zp`9UDXdpBcIunY9E{4oAmYK>K+f4I}Yo>d~Hxrtfo4Gtg$IQp9$C{7Xk98j#I5vE2 O_Sl(YP|^SD&wm3`aG0q8 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.cp313-win_amd64.pyd b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.cp313-win_amd64.pyd new file mode 100644 index 0000000000000000000000000000000000000000..91e164a0b7a70c969daff4ccae4b537a222a7cc2 GIT binary patch literal 69120 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 literal 0 HcmV?d00001 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.pyx b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.pyx index cb17acd69..68e4f9f43 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.pyx +++ b/addons/source-python/packages/site-packages/sqlalchemy/cyextension/util.pyx @@ -10,28 +10,24 @@ from sqlalchemy import exc cdef tuple _Empty_Tuple = () -cdef inline bint _mapping_or_tuple(object value): +cdef inline bint _is_mapping_or_tuple(object value): return isinstance(value, dict) or isinstance(value, tuple) or isinstance(value, Mapping) -cdef inline bint _check_item(object params) except 0: - cdef object item - cdef bint ret = 1 - if params: - item = params[0] - if not _mapping_or_tuple(item): - ret = 0 - raise exc.ArgumentError( - "List argument must consist only of tuples or dictionaries" - ) - return ret + +cdef inline bint _is_mapping(object value): + return isinstance(value, dict) or isinstance(value, Mapping) + def _distill_params_20(object params): if params is None: return _Empty_Tuple elif isinstance(params, list) or isinstance(params, tuple): - _check_item(params) + if params and not _is_mapping(params[0]): + raise exc.ArgumentError( + "List argument must consist only of dictionaries" + ) return params - elif isinstance(params, dict) or isinstance(params, Mapping): + elif _is_mapping(params): return [params] else: raise exc.ArgumentError("mapping or list expected for parameters") @@ -41,9 +37,12 @@ def _distill_raw_params(object params): if params is None: return _Empty_Tuple elif isinstance(params, list): - _check_item(params) + if params and not _is_mapping_or_tuple(params[0]): + raise exc.ArgumentError( + "List argument must consist only of tuples or dictionaries" + ) return params - elif _mapping_or_tuple(params): + elif _is_mapping_or_tuple(params): return [params] else: raise exc.ArgumentError("mapping or sequence expected for parameters") diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/__init__.py index 31ce6d64b..d6336c1aa 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/__init__.py @@ -1,5 +1,5 @@ # dialects/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -7,6 +7,7 @@ from __future__ import annotations +from typing import Any from typing import Callable from typing import Optional from typing import Type @@ -39,7 +40,7 @@ def _auto_fn(name: str) -> Optional[Callable[[], Type[Dialect]]]: # hardcoded. if mysql / mariadb etc were third party dialects # they would just publish all the entrypoints, which would actually # look much nicer. - module = __import__( + module: Any = __import__( "sqlalchemy.dialects.mysql.mariadb" ).dialects.mysql.mariadb return module.loader(driver) # type: ignore diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/_typing.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/_typing.py index 4dd40d722..bf9b67a0a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/_typing.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/_typing.py @@ -1,5 +1,5 @@ # dialects/_typing.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/__init__.py index 20140fddd..68d1d7c74 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/__init__.py @@ -1,5 +1,5 @@ # dialects/mssql/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/aioodbc.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/aioodbc.py index 522ad1d6b..e4d5b2d22 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/aioodbc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/aioodbc.py @@ -1,5 +1,5 @@ # dialects/mssql/aioodbc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/base.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/base.py index 916809e76..a4f23f9a5 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/base.py @@ -1,5 +1,5 @@ # dialects/mssql/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -984,6 +984,7 @@ class MyClass(Base): import datetime import operator import re +from typing import Any from typing import overload from typing import TYPE_CHECKING from uuid import UUID as _python_UUID @@ -1034,6 +1035,7 @@ class MyClass(Base): from ...util.typing import Literal if TYPE_CHECKING: + from ...sql.ddl import DropIndex from ...sql.dml import DMLState from ...sql.selectable import TableClause @@ -2064,8 +2066,8 @@ def visit_char_length_func(self, fn, **kw): def visit_aggregate_strings_func(self, fn, **kw): expr = fn.clauses.clauses[0]._compiler_dispatch(self, **kw) kw["literal_execute"] = True - delimeter = fn.clauses.clauses[1]._compiler_dispatch(self, **kw) - return f"string_agg({expr}, {delimeter})" + delimiter = fn.clauses.clauses[1]._compiler_dispatch(self, **kw) + return f"string_agg({expr}, {delimiter})" def visit_concat_op_expression_clauselist( self, clauselist, operator, **kw @@ -2700,11 +2702,13 @@ def visit_create_index(self, create, include_schema=False, **kw): return text - def visit_drop_index(self, drop, **kw): - return "\nDROP INDEX %s ON %s" % ( - self._prepared_index_name(drop.element, include_schema=False), - self.preparer.format_table(drop.element.table), + def visit_drop_index(self, drop: DropIndex, **kw: Any) -> str: + index_name = self._prepared_index_name( + drop.element, include_schema=False ) + table_name = self.preparer.format_table(drop.element.table) + if_exists = " IF EXISTS" if drop.if_exists else "" + return f"\nDROP INDEX{if_exists} {index_name} ON {table_name}" def visit_primary_key_constraint(self, constraint, **kw): if len(constraint) == 0: @@ -3503,6 +3507,9 @@ def get_indexes(self, connection, tablename, dbname, owner, schema, **kw): where tab.name = :tabname and sch.name = :schname +order by + ind_col.index_id, + ind_col.key_ordinal """ ) .bindparams( @@ -3632,27 +3639,36 @@ def _get_internal_temp_table_name(self, connection, tablename): @reflection.cache @_db_plus_owner def get_columns(self, connection, tablename, dbname, owner, schema, **kw): + sys_columns = ischema.sys_columns + sys_types = ischema.sys_types + sys_default_constraints = ischema.sys_default_constraints + computed_cols = ischema.computed_columns + identity_cols = ischema.identity_columns + extended_properties = ischema.extended_properties + + # to access sys tables, need an object_id. + # object_id() can normally match to the unquoted name even if it + # has special characters. however it also accepts quoted names, + # which means for the special case that the name itself has + # "quotes" (e.g. brackets for SQL Server) we need to "quote" (e.g. + # bracket) that name anyway. Fixed as part of #12654 + is_temp_table = tablename.startswith("#") if is_temp_table: owner, tablename = self._get_internal_temp_table_name( connection, tablename ) - columns = ischema.mssql_temp_table_columns - else: - columns = ischema.columns - - computed_cols = ischema.computed_columns - identity_cols = ischema.identity_columns + object_id_tokens = [self.identifier_preparer.quote(tablename)] if owner: - whereclause = sql.and_( - columns.c.table_name == tablename, - columns.c.table_schema == owner, - ) - full_name = columns.c.table_schema + "." + columns.c.table_name - else: - whereclause = columns.c.table_name == tablename - full_name = columns.c.table_name + object_id_tokens.insert(0, self.identifier_preparer.quote(owner)) + + if is_temp_table: + object_id_tokens.insert(0, "tempdb") + + object_id = func.object_id(".".join(object_id_tokens)) + + whereclause = sys_columns.c.object_id == object_id if self._supports_nvarchar_max: computed_definition = computed_cols.c.definition @@ -3662,92 +3678,112 @@ def get_columns(self, connection, tablename, dbname, owner, schema, **kw): computed_cols.c.definition, NVARCHAR(4000) ) - object_id = func.object_id(full_name) - s = ( sql.select( - columns.c.column_name, - columns.c.data_type, - columns.c.is_nullable, - columns.c.character_maximum_length, - columns.c.numeric_precision, - columns.c.numeric_scale, - columns.c.column_default, - columns.c.collation_name, + sys_columns.c.name, + sys_types.c.name, + sys_columns.c.is_nullable, + sys_columns.c.max_length, + sys_columns.c.precision, + sys_columns.c.scale, + sys_default_constraints.c.definition, + sys_columns.c.collation_name, computed_definition, computed_cols.c.is_persisted, identity_cols.c.is_identity, identity_cols.c.seed_value, identity_cols.c.increment_value, - ischema.extended_properties.c.value.label("comment"), + extended_properties.c.value.label("comment"), + ) + .select_from(sys_columns) + .join( + sys_types, + onclause=sys_columns.c.user_type_id + == sys_types.c.user_type_id, + ) + .outerjoin( + sys_default_constraints, + sql.and_( + sys_default_constraints.c.object_id + == sys_columns.c.default_object_id, + sys_default_constraints.c.parent_column_id + == sys_columns.c.column_id, + ), ) - .select_from(columns) .outerjoin( computed_cols, onclause=sql.and_( - computed_cols.c.object_id == object_id, - computed_cols.c.name - == columns.c.column_name.collate("DATABASE_DEFAULT"), + computed_cols.c.object_id == sys_columns.c.object_id, + computed_cols.c.column_id == sys_columns.c.column_id, ), ) .outerjoin( identity_cols, onclause=sql.and_( - identity_cols.c.object_id == object_id, - identity_cols.c.name - == columns.c.column_name.collate("DATABASE_DEFAULT"), + identity_cols.c.object_id == sys_columns.c.object_id, + identity_cols.c.column_id == sys_columns.c.column_id, ), ) .outerjoin( - ischema.extended_properties, + extended_properties, onclause=sql.and_( - ischema.extended_properties.c["class"] == 1, - ischema.extended_properties.c.major_id == object_id, - ischema.extended_properties.c.minor_id - == columns.c.ordinal_position, - ischema.extended_properties.c.name == "MS_Description", + extended_properties.c["class"] == 1, + extended_properties.c.name == "MS_Description", + sys_columns.c.object_id == extended_properties.c.major_id, + sys_columns.c.column_id == extended_properties.c.minor_id, ), ) .where(whereclause) - .order_by(columns.c.ordinal_position) + .order_by(sys_columns.c.column_id) ) - c = connection.execution_options(future_result=True).execute(s) + if is_temp_table: + exec_opts = {"schema_translate_map": {"sys": "tempdb.sys"}} + else: + exec_opts = {"schema_translate_map": {}} + c = connection.execution_options(**exec_opts).execute(s) cols = [] for row in c.mappings(): - name = row[columns.c.column_name] - type_ = row[columns.c.data_type] - nullable = row[columns.c.is_nullable] == "YES" - charlen = row[columns.c.character_maximum_length] - numericprec = row[columns.c.numeric_precision] - numericscale = row[columns.c.numeric_scale] - default = row[columns.c.column_default] - collation = row[columns.c.collation_name] + name = row[sys_columns.c.name] + type_ = row[sys_types.c.name] + nullable = row[sys_columns.c.is_nullable] == 1 + maxlen = row[sys_columns.c.max_length] + numericprec = row[sys_columns.c.precision] + numericscale = row[sys_columns.c.scale] + default = row[sys_default_constraints.c.definition] + collation = row[sys_columns.c.collation_name] definition = row[computed_definition] is_persisted = row[computed_cols.c.is_persisted] is_identity = row[identity_cols.c.is_identity] identity_start = row[identity_cols.c.seed_value] identity_increment = row[identity_cols.c.increment_value] - comment = row[ischema.extended_properties.c.value] + comment = row[extended_properties.c.value] coltype = self.ischema_names.get(type_, None) kwargs = {} + if coltype in ( + MSBinary, + MSVarBinary, + sqltypes.LargeBinary, + ): + kwargs["length"] = maxlen if maxlen != -1 else None + elif coltype in ( MSString, MSChar, + MSText, + ): + kwargs["length"] = maxlen if maxlen != -1 else None + if collation: + kwargs["collation"] = collation + elif coltype in ( MSNVarchar, MSNChar, - MSText, MSNText, - MSBinary, - MSVarBinary, - sqltypes.LargeBinary, ): - if charlen == -1: - charlen = None - kwargs["length"] = charlen + kwargs["length"] = maxlen // 2 if maxlen != -1 else None if collation: kwargs["collation"] = collation @@ -3969,6 +4005,8 @@ def get_foreign_keys( index_info.index_schema = fk_info.unique_constraint_schema AND index_info.index_name = fk_info.unique_constraint_name AND index_info.ordinal_position = fk_info.ordinal_position + AND NOT (index_info.table_schema = fk_info.table_schema + AND index_info.table_name = fk_info.table_name) ORDER BY fk_info.constraint_schema, fk_info.constraint_name, fk_info.ordinal_position @@ -3991,10 +4029,8 @@ def get_foreign_keys( ) # group rows by constraint ID, to handle multi-column FKs - fkeys = [] - - def fkey_rec(): - return { + fkeys = util.defaultdict( + lambda: { "name": None, "constrained_columns": [], "referred_schema": None, @@ -4002,8 +4038,7 @@ def fkey_rec(): "referred_columns": [], "options": {}, } - - fkeys = util.defaultdict(fkey_rec) + ) for r in connection.execute(s).all(): ( diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/information_schema.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/information_schema.py index b60bb158b..d739d7182 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/information_schema.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/information_schema.py @@ -1,5 +1,5 @@ # dialects/mssql/information_schema.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -88,23 +88,41 @@ def _compile(element, compiler, **kw): schema="INFORMATION_SCHEMA", ) -mssql_temp_table_columns = Table( - "COLUMNS", +sys_columns = Table( + "columns", ischema, - Column("TABLE_SCHEMA", CoerceUnicode, key="table_schema"), - Column("TABLE_NAME", CoerceUnicode, key="table_name"), - Column("COLUMN_NAME", CoerceUnicode, key="column_name"), - Column("IS_NULLABLE", Integer, key="is_nullable"), - Column("DATA_TYPE", String, key="data_type"), - Column("ORDINAL_POSITION", Integer, key="ordinal_position"), - Column( - "CHARACTER_MAXIMUM_LENGTH", Integer, key="character_maximum_length" - ), - Column("NUMERIC_PRECISION", Integer, key="numeric_precision"), - Column("NUMERIC_SCALE", Integer, key="numeric_scale"), - Column("COLUMN_DEFAULT", Integer, key="column_default"), - Column("COLLATION_NAME", String, key="collation_name"), - schema="tempdb.INFORMATION_SCHEMA", + Column("object_id", Integer), + Column("name", CoerceUnicode), + Column("column_id", Integer), + Column("default_object_id", Integer), + Column("user_type_id", Integer), + Column("is_nullable", Integer), + Column("ordinal_position", Integer), + Column("max_length", Integer), + Column("precision", Integer), + Column("scale", Integer), + Column("collation_name", String), + schema="sys", +) + +sys_types = Table( + "types", + ischema, + Column("name", CoerceUnicode, key="name"), + Column("system_type_id", Integer, key="system_type_id"), + Column("user_type_id", Integer, key="user_type_id"), + Column("schema_id", Integer, key="schema_id"), + Column("max_length", Integer, key="max_length"), + Column("precision", Integer, key="precision"), + Column("scale", Integer, key="scale"), + Column("collation_name", CoerceUnicode, key="collation_name"), + Column("is_nullable", Boolean, key="is_nullable"), + Column("is_user_defined", Boolean, key="is_user_defined"), + Column("is_assembly_type", Boolean, key="is_assembly_type"), + Column("default_object_id", Integer, key="default_object_id"), + Column("rule_object_id", Integer, key="rule_object_id"), + Column("is_table_type", Boolean, key="is_table_type"), + schema="sys", ) constraints = Table( @@ -117,6 +135,17 @@ def _compile(element, compiler, **kw): schema="INFORMATION_SCHEMA", ) +sys_default_constraints = Table( + "default_constraints", + ischema, + Column("object_id", Integer), + Column("name", CoerceUnicode), + Column("schema_id", Integer), + Column("parent_column_id", Integer), + Column("definition", CoerceUnicode), + schema="sys", +) + column_constraints = Table( "CONSTRAINT_COLUMN_USAGE", ischema, @@ -182,6 +211,7 @@ def _compile(element, compiler, **kw): ischema, Column("object_id", Integer), Column("name", CoerceUnicode), + Column("column_id", Integer), Column("is_computed", Boolean), Column("is_persisted", Boolean), Column("definition", CoerceUnicode), @@ -220,6 +250,7 @@ def column_expression(self, colexpr): ischema, Column("object_id", Integer), Column("name", CoerceUnicode), + Column("column_id", Integer), Column("is_identity", Boolean), Column("seed_value", NumericSqlVariant), Column("increment_value", NumericSqlVariant), diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/json.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/json.py index a2d3ce814..cb071884a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/json.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/json.py @@ -1,5 +1,5 @@ # dialects/mssql/json.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/provision.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/provision.py index 10165856e..63d6a6e8d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/provision.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/provision.py @@ -1,5 +1,5 @@ # dialects/mssql/provision.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -136,6 +136,29 @@ def _mssql_get_temp_table_name(cfg, eng, base_name): def drop_all_schema_objects_pre_tables(cfg, eng): with eng.connect().execution_options(isolation_level="AUTOCOMMIT") as conn: inspector = inspect(conn) + + # Drop all full-text indexes before dropping catalogs + fulltext_indexes = conn.exec_driver_sql( + "SELECT OBJECT_SCHEMA_NAME(object_id) AS schema_name, " + "OBJECT_NAME(object_id) AS table_name " + "FROM sys.fulltext_indexes" + ).fetchall() + + for schema_name, table_name in fulltext_indexes: + if schema_name: + qualified_name = f"[{schema_name}].[{table_name}]" + else: + qualified_name = f"[{table_name}]" + conn.exec_driver_sql(f"DROP FULLTEXT INDEX ON {qualified_name}") + + # Now drop all full-text catalogs + fulltext_catalogs = conn.exec_driver_sql( + "SELECT name FROM sys.fulltext_catalogs" + ).fetchall() + + for (catalog_name,) in fulltext_catalogs: + conn.exec_driver_sql(f"DROP FULLTEXT CATALOG [{catalog_name}]") + for schema in (None, "dbo", cfg.test_schema, cfg.test_schema_2): for tname in inspector.get_table_names(schema=schema): tb = Table( diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pymssql.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pymssql.py index 301a98eb4..7244bb0d3 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pymssql.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pymssql.py @@ -1,5 +1,5 @@ # dialects/mssql/pymssql.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pyodbc.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pyodbc.py index cbf0adbfe..5d3ae0b13 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pyodbc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mssql/pyodbc.py @@ -1,5 +1,5 @@ # dialects/mssql/pyodbc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/__init__.py index 9174c5441..4297414f0 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/__init__.py @@ -1,5 +1,5 @@ # dialects/mysql/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/aiomysql.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/aiomysql.py index bd5e7de6b..7e68c61da 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/aiomysql.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/aiomysql.py @@ -1,10 +1,9 @@ # dialects/mysql/aiomysql.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" .. dialect:: mysql+aiomysql @@ -29,207 +28,108 @@ ) """ # noqa -from collections import deque +from __future__ import annotations + +from types import ModuleType +from typing import Any +from typing import Dict +from typing import Optional +from typing import Tuple +from typing import TYPE_CHECKING +from typing import Union from .pymysql import MySQLDialect_pymysql from ... import pool from ... import util -from ...engine import AdaptedConnection -from ...util.concurrency import asyncio +from ...connectors.asyncio import AsyncAdapt_dbapi_connection +from ...connectors.asyncio import AsyncAdapt_dbapi_cursor +from ...connectors.asyncio import AsyncAdapt_dbapi_module +from ...connectors.asyncio import AsyncAdapt_dbapi_ss_cursor +from ...connectors.asyncio import AsyncAdapt_terminate from ...util.concurrency import await_fallback from ...util.concurrency import await_only +if TYPE_CHECKING: -class AsyncAdapt_aiomysql_cursor: - # TODO: base on connectors/asyncio.py - # see #10415 - server_side = False - __slots__ = ( - "_adapt_connection", - "_connection", - "await_", - "_cursor", - "_rows", - ) - - def __init__(self, adapt_connection): - self._adapt_connection = adapt_connection - self._connection = adapt_connection._connection - self.await_ = adapt_connection.await_ - - cursor = self._connection.cursor(adapt_connection.dbapi.Cursor) - - # see https://github.com/aio-libs/aiomysql/issues/543 - self._cursor = self.await_(cursor.__aenter__()) - self._rows = deque() - - @property - def description(self): - return self._cursor.description - - @property - def rowcount(self): - return self._cursor.rowcount - - @property - def arraysize(self): - return self._cursor.arraysize - - @arraysize.setter - def arraysize(self, value): - self._cursor.arraysize = value - - @property - def lastrowid(self): - return self._cursor.lastrowid - - def close(self): - # note we aren't actually closing the cursor here, - # we are just letting GC do it. to allow this to be async - # we would need the Result to change how it does "Safe close cursor". - # MySQL "cursors" don't actually have state to be "closed" besides - # exhausting rows, which we already have done for sync cursor. - # another option would be to emulate aiosqlite dialect and assign - # cursor only if we are doing server side cursor operation. - self._rows.clear() - - def execute(self, operation, parameters=None): - return self.await_(self._execute_async(operation, parameters)) - - def executemany(self, operation, seq_of_parameters): - return self.await_( - self._executemany_async(operation, seq_of_parameters) - ) - - async def _execute_async(self, operation, parameters): - async with self._adapt_connection._execute_mutex: - result = await self._cursor.execute(operation, parameters) - - if not self.server_side: - # aiomysql has a "fake" async result, so we have to pull it out - # of that here since our default result is not async. - # we could just as easily grab "_rows" here and be done with it - # but this is safer. - self._rows = deque(await self._cursor.fetchall()) - return result - - async def _executemany_async(self, operation, seq_of_parameters): - async with self._adapt_connection._execute_mutex: - return await self._cursor.executemany(operation, seq_of_parameters) - - def setinputsizes(self, *inputsizes): - pass - - def __iter__(self): - while self._rows: - yield self._rows.popleft() - - def fetchone(self): - if self._rows: - return self._rows.popleft() - else: - return None - - def fetchmany(self, size=None): - if size is None: - size = self.arraysize - - rr = self._rows - return [rr.popleft() for _ in range(min(size, len(rr)))] + from ...connectors.asyncio import AsyncIODBAPIConnection + from ...connectors.asyncio import AsyncIODBAPICursor + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import PoolProxiedConnection + from ...engine.url import URL - def fetchall(self): - retval = list(self._rows) - self._rows.clear() - return retval - -class AsyncAdapt_aiomysql_ss_cursor(AsyncAdapt_aiomysql_cursor): - # TODO: base on connectors/asyncio.py - # see #10415 +class AsyncAdapt_aiomysql_cursor(AsyncAdapt_dbapi_cursor): __slots__ = () - server_side = True - - def __init__(self, adapt_connection): - self._adapt_connection = adapt_connection - self._connection = adapt_connection._connection - self.await_ = adapt_connection.await_ - - cursor = self._connection.cursor(adapt_connection.dbapi.SSCursor) - - self._cursor = self.await_(cursor.__aenter__()) - def close(self): - if self._cursor is not None: - self.await_(self._cursor.close()) - self._cursor = None + def _make_new_cursor( + self, connection: AsyncIODBAPIConnection + ) -> AsyncIODBAPICursor: + return connection.cursor(self._adapt_connection.dbapi.Cursor) - def fetchone(self): - return self.await_(self._cursor.fetchone()) - def fetchmany(self, size=None): - return self.await_(self._cursor.fetchmany(size=size)) +class AsyncAdapt_aiomysql_ss_cursor( + AsyncAdapt_dbapi_ss_cursor, AsyncAdapt_aiomysql_cursor +): + __slots__ = () - def fetchall(self): - return self.await_(self._cursor.fetchall()) + def _make_new_cursor( + self, connection: AsyncIODBAPIConnection + ) -> AsyncIODBAPICursor: + return connection.cursor( + self._adapt_connection.dbapi.aiomysql.cursors.SSCursor + ) -class AsyncAdapt_aiomysql_connection(AdaptedConnection): - # TODO: base on connectors/asyncio.py - # see #10415 - await_ = staticmethod(await_only) - __slots__ = ("dbapi", "_execute_mutex") +class AsyncAdapt_aiomysql_connection( + AsyncAdapt_terminate, AsyncAdapt_dbapi_connection +): + __slots__ = () - def __init__(self, dbapi, connection): - self.dbapi = dbapi - self._connection = connection - self._execute_mutex = asyncio.Lock() + _cursor_cls = AsyncAdapt_aiomysql_cursor + _ss_cursor_cls = AsyncAdapt_aiomysql_ss_cursor - def ping(self, reconnect): - return self.await_(self._connection.ping(reconnect)) + def ping(self, reconnect: bool) -> None: + assert not reconnect + self.await_(self._connection.ping(reconnect)) - def character_set_name(self): - return self._connection.character_set_name() + def character_set_name(self) -> Optional[str]: + return self._connection.character_set_name() # type: ignore[no-any-return] # noqa: E501 - def autocommit(self, value): + def autocommit(self, value: Any) -> None: self.await_(self._connection.autocommit(value)) - def cursor(self, server_side=False): - if server_side: - return AsyncAdapt_aiomysql_ss_cursor(self) - else: - return AsyncAdapt_aiomysql_cursor(self) + def get_autocommit(self) -> bool: + return self._connection.get_autocommit() # type: ignore - def rollback(self): - self.await_(self._connection.rollback()) + def close(self) -> None: + self.await_(self._connection.ensure_closed()) - def commit(self): - self.await_(self._connection.commit()) + async def _terminate_graceful_close(self) -> None: + await self._connection.ensure_closed() - def terminate(self): + def _terminate_force_close(self) -> None: # it's not awaitable. self._connection.close() - def close(self) -> None: - self.await_(self._connection.ensure_closed()) - class AsyncAdaptFallback_aiomysql_connection(AsyncAdapt_aiomysql_connection): - # TODO: base on connectors/asyncio.py - # see #10415 __slots__ = () await_ = staticmethod(await_fallback) -class AsyncAdapt_aiomysql_dbapi: - def __init__(self, aiomysql, pymysql): +class AsyncAdapt_aiomysql_dbapi(AsyncAdapt_dbapi_module): + def __init__(self, aiomysql: ModuleType, pymysql: ModuleType): self.aiomysql = aiomysql self.pymysql = pymysql self.paramstyle = "format" self._init_dbapi_attributes() self.Cursor, self.SSCursor = self._init_cursors_subclasses() - def _init_dbapi_attributes(self): + def _init_dbapi_attributes(self) -> None: for name in ( "Warning", "Error", @@ -255,7 +155,7 @@ def _init_dbapi_attributes(self): ): setattr(self, name, getattr(self.pymysql, name)) - def connect(self, *arg, **kw): + def connect(self, *arg: Any, **kw: Any) -> AsyncAdapt_aiomysql_connection: async_fallback = kw.pop("async_fallback", False) creator_fn = kw.pop("async_creator_fn", self.aiomysql.connect) @@ -270,17 +170,23 @@ def connect(self, *arg, **kw): await_only(creator_fn(*arg, **kw)), ) - def _init_cursors_subclasses(self): + def _init_cursors_subclasses( + self, + ) -> Tuple[AsyncIODBAPICursor, AsyncIODBAPICursor]: # suppress unconditional warning emitted by aiomysql - class Cursor(self.aiomysql.Cursor): - async def _show_warnings(self, conn): + class Cursor(self.aiomysql.Cursor): # type: ignore[misc, name-defined] + async def _show_warnings( + self, conn: AsyncIODBAPIConnection + ) -> None: pass - class SSCursor(self.aiomysql.SSCursor): - async def _show_warnings(self, conn): + class SSCursor(self.aiomysql.SSCursor): # type: ignore[misc, name-defined] # noqa: E501 + async def _show_warnings( + self, conn: AsyncIODBAPIConnection + ) -> None: pass - return Cursor, SSCursor + return Cursor, SSCursor # type: ignore[return-value] class MySQLDialect_aiomysql(MySQLDialect_pymysql): @@ -294,13 +200,13 @@ class MySQLDialect_aiomysql(MySQLDialect_pymysql): has_terminate = True @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> AsyncAdapt_aiomysql_dbapi: return AsyncAdapt_aiomysql_dbapi( __import__("aiomysql"), __import__("pymysql") ) @classmethod - def get_pool_class(cls, url): + def get_pool_class(cls, url: URL) -> type: async_fallback = url.query.get("async_fallback", False) if util.asbool(async_fallback): @@ -308,28 +214,37 @@ def get_pool_class(cls, url): else: return pool.AsyncAdaptedQueuePool - def do_terminate(self, dbapi_connection) -> None: + def do_terminate(self, dbapi_connection: DBAPIConnection) -> None: dbapi_connection.terminate() - def create_connect_args(self, url): + def create_connect_args( + self, url: URL, _translate_args: Optional[Dict[str, Any]] = None + ) -> ConnectArgsType: return super().create_connect_args( url, _translate_args=dict(username="user", database="db") ) - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: if super().is_disconnect(e, connection, cursor): return True else: str_e = str(e).lower() return "not connected" in str_e - def _found_rows_client_flag(self): - from pymysql.constants import CLIENT + def _found_rows_client_flag(self) -> int: + from pymysql.constants import CLIENT # type: ignore - return CLIENT.FOUND_ROWS + return CLIENT.FOUND_ROWS # type: ignore[no-any-return] - def get_driver_connection(self, connection): - return connection._connection + def get_driver_connection( + self, connection: DBAPIConnection + ) -> AsyncIODBAPIConnection: + return connection._connection # type: ignore[no-any-return] dialect = MySQLDialect_aiomysql diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/asyncmy.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/asyncmy.py index 9ec54e694..575747617 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/asyncmy.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/asyncmy.py @@ -1,10 +1,9 @@ # dialects/mysql/asyncmy.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" .. dialect:: mysql+asyncmy @@ -27,209 +26,100 @@ ) """ # noqa -from collections import deque -from contextlib import asynccontextmanager +from __future__ import annotations + +from types import ModuleType +from typing import Any +from typing import NoReturn +from typing import Optional +from typing import TYPE_CHECKING +from typing import Union from .pymysql import MySQLDialect_pymysql from ... import pool from ... import util -from ...engine import AdaptedConnection -from ...util.concurrency import asyncio +from ...connectors.asyncio import AsyncAdapt_dbapi_connection +from ...connectors.asyncio import AsyncAdapt_dbapi_cursor +from ...connectors.asyncio import AsyncAdapt_dbapi_module +from ...connectors.asyncio import AsyncAdapt_dbapi_ss_cursor +from ...connectors.asyncio import AsyncAdapt_terminate from ...util.concurrency import await_fallback from ...util.concurrency import await_only +if TYPE_CHECKING: + from ...connectors.asyncio import AsyncIODBAPIConnection + from ...connectors.asyncio import AsyncIODBAPICursor + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import PoolProxiedConnection + from ...engine.url import URL -class AsyncAdapt_asyncmy_cursor: - # TODO: base on connectors/asyncio.py - # see #10415 - server_side = False - __slots__ = ( - "_adapt_connection", - "_connection", - "await_", - "_cursor", - "_rows", - ) - - def __init__(self, adapt_connection): - self._adapt_connection = adapt_connection - self._connection = adapt_connection._connection - self.await_ = adapt_connection.await_ - - cursor = self._connection.cursor() - - self._cursor = self.await_(cursor.__aenter__()) - self._rows = deque() - - @property - def description(self): - return self._cursor.description - - @property - def rowcount(self): - return self._cursor.rowcount - - @property - def arraysize(self): - return self._cursor.arraysize - - @arraysize.setter - def arraysize(self, value): - self._cursor.arraysize = value - - @property - def lastrowid(self): - return self._cursor.lastrowid - - def close(self): - # note we aren't actually closing the cursor here, - # we are just letting GC do it. to allow this to be async - # we would need the Result to change how it does "Safe close cursor". - # MySQL "cursors" don't actually have state to be "closed" besides - # exhausting rows, which we already have done for sync cursor. - # another option would be to emulate aiosqlite dialect and assign - # cursor only if we are doing server side cursor operation. - self._rows.clear() - - def execute(self, operation, parameters=None): - return self.await_(self._execute_async(operation, parameters)) - - def executemany(self, operation, seq_of_parameters): - return self.await_( - self._executemany_async(operation, seq_of_parameters) - ) - - async def _execute_async(self, operation, parameters): - async with self._adapt_connection._mutex_and_adapt_errors(): - if parameters is None: - result = await self._cursor.execute(operation) - else: - result = await self._cursor.execute(operation, parameters) - - if not self.server_side: - # asyncmy has a "fake" async result, so we have to pull it out - # of that here since our default result is not async. - # we could just as easily grab "_rows" here and be done with it - # but this is safer. - self._rows = deque(await self._cursor.fetchall()) - return result - - async def _executemany_async(self, operation, seq_of_parameters): - async with self._adapt_connection._mutex_and_adapt_errors(): - return await self._cursor.executemany(operation, seq_of_parameters) - - def setinputsizes(self, *inputsizes): - pass - - def __iter__(self): - while self._rows: - yield self._rows.popleft() - - def fetchone(self): - if self._rows: - return self._rows.popleft() - else: - return None - - def fetchmany(self, size=None): - if size is None: - size = self.arraysize - - rr = self._rows - return [rr.popleft() for _ in range(min(size, len(rr)))] - def fetchall(self): - retval = list(self._rows) - self._rows.clear() - return retval +class AsyncAdapt_asyncmy_cursor(AsyncAdapt_dbapi_cursor): + __slots__ = () -class AsyncAdapt_asyncmy_ss_cursor(AsyncAdapt_asyncmy_cursor): - # TODO: base on connectors/asyncio.py - # see #10415 +class AsyncAdapt_asyncmy_ss_cursor( + AsyncAdapt_dbapi_ss_cursor, AsyncAdapt_asyncmy_cursor +): __slots__ = () - server_side = True - - def __init__(self, adapt_connection): - self._adapt_connection = adapt_connection - self._connection = adapt_connection._connection - self.await_ = adapt_connection.await_ - cursor = self._connection.cursor( - adapt_connection.dbapi.asyncmy.cursors.SSCursor + def _make_new_cursor( + self, connection: AsyncIODBAPIConnection + ) -> AsyncIODBAPICursor: + return connection.cursor( + self._adapt_connection.dbapi.asyncmy.cursors.SSCursor ) - self._cursor = self.await_(cursor.__aenter__()) - - def close(self): - if self._cursor is not None: - self.await_(self._cursor.close()) - self._cursor = None - - def fetchone(self): - return self.await_(self._cursor.fetchone()) - - def fetchmany(self, size=None): - return self.await_(self._cursor.fetchmany(size=size)) - - def fetchall(self): - return self.await_(self._cursor.fetchall()) +class AsyncAdapt_asyncmy_connection( + AsyncAdapt_terminate, AsyncAdapt_dbapi_connection +): + __slots__ = () -class AsyncAdapt_asyncmy_connection(AdaptedConnection): - # TODO: base on connectors/asyncio.py - # see #10415 - await_ = staticmethod(await_only) - __slots__ = ("dbapi", "_execute_mutex") + _cursor_cls = AsyncAdapt_asyncmy_cursor + _ss_cursor_cls = AsyncAdapt_asyncmy_ss_cursor - def __init__(self, dbapi, connection): - self.dbapi = dbapi - self._connection = connection - self._execute_mutex = asyncio.Lock() + def _handle_exception(self, error: Exception) -> NoReturn: + if isinstance(error, AttributeError): + raise self.dbapi.InternalError( + "network operation failed due to asyncmy attribute error" + ) - @asynccontextmanager - async def _mutex_and_adapt_errors(self): - async with self._execute_mutex: - try: - yield - except AttributeError: - raise self.dbapi.InternalError( - "network operation failed due to asyncmy attribute error" - ) + raise error - def ping(self, reconnect): + def ping(self, reconnect: bool) -> None: assert not reconnect return self.await_(self._do_ping()) - async def _do_ping(self): - async with self._mutex_and_adapt_errors(): - return await self._connection.ping(False) + async def _do_ping(self) -> None: + try: + async with self._execute_mutex: + await self._connection.ping(False) + except Exception as error: + self._handle_exception(error) - def character_set_name(self): - return self._connection.character_set_name() + def character_set_name(self) -> Optional[str]: + return self._connection.character_set_name() # type: ignore[no-any-return] # noqa: E501 - def autocommit(self, value): + def autocommit(self, value: Any) -> None: self.await_(self._connection.autocommit(value)) - def cursor(self, server_side=False): - if server_side: - return AsyncAdapt_asyncmy_ss_cursor(self) - else: - return AsyncAdapt_asyncmy_cursor(self) + def get_autocommit(self) -> bool: + return self._connection.get_autocommit() # type: ignore - def rollback(self): - self.await_(self._connection.rollback()) + def close(self) -> None: + self.await_(self._connection.ensure_closed()) - def commit(self): - self.await_(self._connection.commit()) + async def _terminate_graceful_close(self) -> None: + await self._connection.ensure_closed() - def terminate(self): + def _terminate_force_close(self) -> None: # it's not awaitable. self._connection.close() - def close(self) -> None: - self.await_(self._connection.ensure_closed()) - class AsyncAdaptFallback_asyncmy_connection(AsyncAdapt_asyncmy_connection): __slots__ = () @@ -237,18 +127,13 @@ class AsyncAdaptFallback_asyncmy_connection(AsyncAdapt_asyncmy_connection): await_ = staticmethod(await_fallback) -def _Binary(x): - """Return x as a binary type.""" - return bytes(x) - - -class AsyncAdapt_asyncmy_dbapi: - def __init__(self, asyncmy): +class AsyncAdapt_asyncmy_dbapi(AsyncAdapt_dbapi_module): + def __init__(self, asyncmy: ModuleType): self.asyncmy = asyncmy self.paramstyle = "format" self._init_dbapi_attributes() - def _init_dbapi_attributes(self): + def _init_dbapi_attributes(self) -> None: for name in ( "Warning", "Error", @@ -269,9 +154,9 @@ def _init_dbapi_attributes(self): BINARY = util.symbol("BINARY") DATETIME = util.symbol("DATETIME") TIMESTAMP = util.symbol("TIMESTAMP") - Binary = staticmethod(_Binary) + Binary = staticmethod(bytes) - def connect(self, *arg, **kw): + def connect(self, *arg: Any, **kw: Any) -> AsyncAdapt_asyncmy_connection: async_fallback = kw.pop("async_fallback", False) creator_fn = kw.pop("async_creator_fn", self.asyncmy.connect) @@ -298,11 +183,11 @@ class MySQLDialect_asyncmy(MySQLDialect_pymysql): has_terminate = True @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> DBAPIModule: return AsyncAdapt_asyncmy_dbapi(__import__("asyncmy")) @classmethod - def get_pool_class(cls, url): + def get_pool_class(cls, url: URL) -> type: async_fallback = url.query.get("async_fallback", False) if util.asbool(async_fallback): @@ -310,15 +195,20 @@ def get_pool_class(cls, url): else: return pool.AsyncAdaptedQueuePool - def do_terminate(self, dbapi_connection) -> None: + def do_terminate(self, dbapi_connection: DBAPIConnection) -> None: dbapi_connection.terminate() - def create_connect_args(self, url): + def create_connect_args(self, url: URL) -> ConnectArgsType: # type: ignore[override] # noqa: E501 return super().create_connect_args( url, _translate_args=dict(username="user", database="db") ) - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: if super().is_disconnect(e, connection, cursor): return True else: @@ -327,13 +217,15 @@ def is_disconnect(self, e, connection, cursor): "not connected" in str_e or "network operation failed" in str_e ) - def _found_rows_client_flag(self): - from asyncmy.constants import CLIENT + def _found_rows_client_flag(self) -> int: + from asyncmy.constants import CLIENT # type: ignore - return CLIENT.FOUND_ROWS + return CLIENT.FOUND_ROWS # type: ignore[no-any-return] - def get_driver_connection(self, connection): - return connection._connection + def get_driver_connection( + self, connection: DBAPIConnection + ) -> AsyncIODBAPIConnection: + return connection._connection # type: ignore[no-any-return] dialect = MySQLDialect_asyncmy diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/base.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/base.py index 122a7cb2e..bc8875efc 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/base.py @@ -1,10 +1,9 @@ # dialects/mysql/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" @@ -1066,11 +1065,22 @@ class MyClass(Base): """ # noqa from __future__ import annotations -from array import array as _array from collections import defaultdict from itertools import compress import re +from typing import Any +from typing import Callable from typing import cast +from typing import DefaultDict +from typing import Dict +from typing import List +from typing import NoReturn +from typing import Optional +from typing import overload +from typing import Sequence +from typing import Tuple +from typing import TYPE_CHECKING +from typing import Union from . import reflection as _reflection from .enumerated import ENUM @@ -1113,7 +1123,6 @@ class MyClass(Base): from .types import YEAR from ... import exc from ... import literal_column -from ... import log from ... import schema as sa_schema from ... import sql from ... import util @@ -1137,10 +1146,47 @@ class MyClass(Base): from ...types import BLOB from ...types import BOOLEAN from ...types import DATE +from ...types import LargeBinary from ...types import UUID from ...types import VARBINARY from ...util import topological +if TYPE_CHECKING: + + from ...dialects.mysql import expression + from ...dialects.mysql.dml import OnDuplicateClause + from ...engine.base import Connection + from ...engine.cursor import CursorResult + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import IsolationLevel + from ...engine.interfaces import PoolProxiedConnection + from ...engine.interfaces import ReflectedCheckConstraint + from ...engine.interfaces import ReflectedColumn + from ...engine.interfaces import ReflectedForeignKeyConstraint + from ...engine.interfaces import ReflectedIndex + from ...engine.interfaces import ReflectedPrimaryKeyConstraint + from ...engine.interfaces import ReflectedTableComment + from ...engine.interfaces import ReflectedUniqueConstraint + from ...engine.row import Row + from ...engine.url import URL + from ...schema import Table + from ...sql import ddl + from ...sql import selectable + from ...sql.dml import _DMLTableElement + from ...sql.dml import Delete + from ...sql.dml import Update + from ...sql.dml import ValuesBase + from ...sql.functions import aggregate_strings + from ...sql.functions import random + from ...sql.functions import rollup + from ...sql.functions import sysdate + from ...sql.schema import IdentityOptions + from ...sql.schema import Sequence as Sequence_SchemaItem + from ...sql.type_api import TypeEngine + from ...sql.visitors import ExternallyTraversible + SET_RE = re.compile( r"\s*SET\s+(?:(?:GLOBAL|SESSION)\s+)?\w", re.I | re.UNICODE @@ -1235,7 +1281,7 @@ class MyClass(Base): class MySQLExecutionContext(default.DefaultExecutionContext): - def post_exec(self): + def post_exec(self) -> None: if ( self.isdelete and cast(SQLCompiler, self.compiled).effective_returning @@ -1252,7 +1298,7 @@ def post_exec(self): _cursor.FullyBufferedCursorFetchStrategy( self.cursor, [ - (entry.keyname, None) + (entry.keyname, None) # type: ignore[misc] for entry in cast( SQLCompiler, self.compiled )._result_columns @@ -1261,14 +1307,18 @@ def post_exec(self): ) ) - def create_server_side_cursor(self): + def create_server_side_cursor(self) -> DBAPICursor: if self.dialect.supports_server_side_cursors: - return self._dbapi_connection.cursor(self.dialect._sscursor) + return self._dbapi_connection.cursor( + self.dialect._sscursor # type: ignore[attr-defined] + ) else: raise NotImplementedError() - def fire_sequence(self, seq, type_): - return self._execute_scalar( + def fire_sequence( + self, seq: Sequence_SchemaItem, type_: sqltypes.Integer + ) -> int: + return self._execute_scalar( # type: ignore[no-any-return] ( "select nextval(%s)" % self.identifier_preparer.format_sequence(seq) @@ -1278,46 +1328,51 @@ def fire_sequence(self, seq, type_): class MySQLCompiler(compiler.SQLCompiler): + dialect: MySQLDialect render_table_with_column_in_update_from = True """Overridden from base SQLCompiler value""" extract_map = compiler.SQLCompiler.extract_map.copy() extract_map.update({"milliseconds": "millisecond"}) - def default_from(self): + def default_from(self) -> str: """Called when a ``SELECT`` statement has no froms, and no ``FROM`` clause is to be appended. """ if self.stack: stmt = self.stack[-1]["selectable"] - if stmt._where_criteria: + if stmt._where_criteria: # type: ignore[attr-defined] return " FROM DUAL" return "" - def visit_random_func(self, fn, **kw): + def visit_random_func(self, fn: random, **kw: Any) -> str: return "rand%s" % self.function_argspec(fn) - def visit_rollup_func(self, fn, **kw): + def visit_rollup_func(self, fn: rollup[Any], **kw: Any) -> str: clause = ", ".join( elem._compiler_dispatch(self, **kw) for elem in fn.clauses ) return f"{clause} WITH ROLLUP" - def visit_aggregate_strings_func(self, fn, **kw): - expr, delimeter = ( + def visit_aggregate_strings_func( + self, fn: aggregate_strings, **kw: Any + ) -> str: + expr, delimiter = ( elem._compiler_dispatch(self, **kw) for elem in fn.clauses ) - return f"group_concat({expr} SEPARATOR {delimeter})" + return f"group_concat({expr} SEPARATOR {delimiter})" - def visit_sequence(self, seq, **kw): - return "nextval(%s)" % self.preparer.format_sequence(seq) + def visit_sequence(self, sequence: sa_schema.Sequence, **kw: Any) -> str: + return "nextval(%s)" % self.preparer.format_sequence(sequence) - def visit_sysdate_func(self, fn, **kw): + def visit_sysdate_func(self, fn: sysdate, **kw: Any) -> str: return "SYSDATE()" - def _render_json_extract_from_binary(self, binary, operator, **kw): + def _render_json_extract_from_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: # note we are intentionally calling upon the process() calls in the # order in which they appear in the SQL String as this is used # by positional parameter rendering @@ -1344,9 +1399,10 @@ def _render_json_extract_from_binary(self, binary, operator, **kw): ) ) elif binary.type._type_affinity is sqltypes.Numeric: + binary_type = cast(sqltypes.Numeric[Any], binary.type) if ( - binary.type.scale is not None - and binary.type.precision is not None + binary_type.scale is not None + and binary_type.precision is not None ): # using DECIMAL here because MySQL does not recognize NUMERIC type_expression = ( @@ -1354,8 +1410,8 @@ def _render_json_extract_from_binary(self, binary, operator, **kw): % ( self.process(binary.left, **kw), self.process(binary.right, **kw), - binary.type.precision, - binary.type.scale, + binary_type.precision, + binary_type.scale, ) ) else: @@ -1389,15 +1445,22 @@ def _render_json_extract_from_binary(self, binary, operator, **kw): return case_expression + " " + type_expression + " END" - def visit_json_getitem_op_binary(self, binary, operator, **kw): + def visit_json_getitem_op_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return self._render_json_extract_from_binary(binary, operator, **kw) - def visit_json_path_getitem_op_binary(self, binary, operator, **kw): + def visit_json_path_getitem_op_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return self._render_json_extract_from_binary(binary, operator, **kw) - def visit_on_duplicate_key_update(self, on_duplicate, **kw): - statement = self.current_executable + def visit_on_duplicate_key_update( + self, on_duplicate: OnDuplicateClause, **kw: Any + ) -> str: + statement: ValuesBase = self.current_executable + cols: List[elements.KeyedColumnElement[Any]] if on_duplicate._parameter_ordering: parameter_ordering = [ coercions.expect(roles.DMLColumnRole, key) @@ -1410,7 +1473,7 @@ def visit_on_duplicate_key_update(self, on_duplicate, **kw): if key in statement.table.c ] + [c for c in statement.table.c if c.key not in ordered_keys] else: - cols = statement.table.c + cols = list(statement.table.c) clauses = [] @@ -1419,7 +1482,7 @@ def visit_on_duplicate_key_update(self, on_duplicate, **kw): ) if requires_mysql8_alias: - if statement.table.name.lower() == "new": + if statement.table.name.lower() == "new": # type: ignore[union-attr] # noqa: E501 _on_dup_alias_name = "new_1" else: _on_dup_alias_name = "new" @@ -1440,26 +1503,26 @@ def visit_on_duplicate_key_update(self, on_duplicate, **kw): value_text = self.process(val.self_group(), use_schema=False) else: - def replace(obj): + def replace( + element: ExternallyTraversible, **kw: Any + ) -> Optional[ExternallyTraversible]: if ( - isinstance(obj, elements.BindParameter) - and obj.type._isnull + isinstance(element, elements.BindParameter) + and element.type._isnull ): - obj = obj._clone() - obj.type = column.type - return obj + return element._with_binary_element_type(column.type) elif ( - isinstance(obj, elements.ColumnClause) - and obj.table is on_duplicate.inserted_alias + isinstance(element, elements.ColumnClause) + and element.table is on_duplicate.inserted_alias ): if requires_mysql8_alias: column_literal_clause = ( f"{_on_dup_alias_name}." - f"{self.preparer.quote(obj.name)}" + f"{self.preparer.quote(element.name)}" ) else: column_literal_clause = ( - f"VALUES({self.preparer.quote(obj.name)})" + f"VALUES({self.preparer.quote(element.name)})" ) return literal_column(column_literal_clause) else: @@ -1478,7 +1541,7 @@ def replace(obj): "Additional column names not matching " "any column keys in table '%s': %s" % ( - self.statement.table.name, + self.statement.table.name, # type: ignore[union-attr] (", ".join("'%s'" % c for c in non_matching)), ) ) @@ -1492,13 +1555,15 @@ def replace(obj): return f"ON DUPLICATE KEY UPDATE {', '.join(clauses)}" def visit_concat_op_expression_clauselist( - self, clauselist, operator, **kw - ): + self, clauselist: elements.ClauseList, operator: Any, **kw: Any + ) -> str: return "concat(%s)" % ( ", ".join(self.process(elem, **kw) for elem in clauselist.clauses) ) - def visit_concat_op_binary(self, binary, operator, **kw): + def visit_concat_op_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return "concat(%s, %s)" % ( self.process(binary.left, **kw), self.process(binary.right, **kw), @@ -1521,10 +1586,12 @@ def visit_concat_op_binary(self, binary, operator, **kw): "WITH QUERY EXPANSION", ) - def visit_mysql_match(self, element, **kw): + def visit_mysql_match(self, element: expression.match, **kw: Any) -> str: return self.visit_match_op_binary(element, element.operator, **kw) - def visit_match_op_binary(self, binary, operator, **kw): + def visit_match_op_binary( + self, binary: expression.match, operator: Any, **kw: Any + ) -> str: """ Note that `mysql_boolean_mode` is enabled by default because of backward compatibility @@ -1545,12 +1612,11 @@ def visit_match_op_binary(self, binary, operator, **kw): "with_query_expansion=%s" % query_expansion, ) - flags = ", ".join(flags) + flags_str = ", ".join(flags) - raise exc.CompileError("Invalid MySQL match flags: %s" % flags) + raise exc.CompileError("Invalid MySQL match flags: %s" % flags_str) - match_clause = binary.left - match_clause = self.process(match_clause, **kw) + match_clause = self.process(binary.left, **kw) against_clause = self.process(binary.right, **kw) if any(flag_combination): @@ -1559,21 +1625,25 @@ def visit_match_op_binary(self, binary, operator, **kw): flag_combination, ) - against_clause = [against_clause] - against_clause.extend(flag_expressions) - - against_clause = " ".join(against_clause) + against_clause = " ".join([against_clause, *flag_expressions]) return "MATCH (%s) AGAINST (%s)" % (match_clause, against_clause) - def get_from_hint_text(self, table, text): + def get_from_hint_text( + self, table: selectable.FromClause, text: Optional[str] + ) -> Optional[str]: return text - def visit_typeclause(self, typeclause, type_=None, **kw): + def visit_typeclause( + self, + typeclause: elements.TypeClause, + type_: Optional[TypeEngine[Any]] = None, + **kw: Any, + ) -> Optional[str]: if type_ is None: type_ = typeclause.type.dialect_impl(self.dialect) if isinstance(type_, sqltypes.TypeDecorator): - return self.visit_typeclause(typeclause, type_.impl, **kw) + return self.visit_typeclause(typeclause, type_.impl, **kw) # type: ignore[arg-type] # noqa: E501 elif isinstance(type_, sqltypes.Integer): if getattr(type_, "unsigned", False): return "UNSIGNED INTEGER" @@ -1612,7 +1682,7 @@ def visit_typeclause(self, typeclause, type_=None, **kw): else: return None - def visit_cast(self, cast, **kw): + def visit_cast(self, cast: elements.Cast[Any], **kw: Any) -> str: type_ = self.process(cast.typeclause) if type_ is None: util.warn( @@ -1626,7 +1696,9 @@ def visit_cast(self, cast, **kw): return "CAST(%s AS %s)" % (self.process(cast.clause, **kw), type_) - def render_literal_value(self, value, type_): + def render_literal_value( + self, value: Optional[str], type_: TypeEngine[Any] + ) -> str: value = super().render_literal_value(value, type_) if self.dialect._backslash_escapes: value = value.replace("\\", "\\\\") @@ -1634,13 +1706,15 @@ def render_literal_value(self, value, type_): # override native_boolean=False behavior here, as # MySQL still supports native boolean - def visit_true(self, element, **kw): + def visit_true(self, expr: elements.True_, **kw: Any) -> str: return "true" - def visit_false(self, element, **kw): + def visit_false(self, expr: elements.False_, **kw: Any) -> str: return "false" - def get_select_precolumns(self, select, **kw): + def get_select_precolumns( + self, select: selectable.Select[Any], **kw: Any + ) -> str: """Add special MySQL keywords in place of DISTINCT. .. deprecated:: 1.4 This usage is deprecated. @@ -1660,7 +1734,13 @@ def get_select_precolumns(self, select, **kw): return super().get_select_precolumns(select, **kw) - def visit_join(self, join, asfrom=False, from_linter=None, **kwargs): + def visit_join( + self, + join: selectable.Join, + asfrom: bool = False, + from_linter: Optional[compiler.FromLinter] = None, + **kwargs: Any, + ) -> str: if from_linter: from_linter.edges.add((join.left, join.right)) @@ -1681,18 +1761,24 @@ def visit_join(self, join, asfrom=False, from_linter=None, **kwargs): join.right, asfrom=True, from_linter=from_linter, **kwargs ), " ON ", - self.process(join.onclause, from_linter=from_linter, **kwargs), + self.process(join.onclause, from_linter=from_linter, **kwargs), # type: ignore[arg-type] # noqa: E501 ) ) - def for_update_clause(self, select, **kw): + def for_update_clause( + self, select: selectable.GenerativeSelect, **kw: Any + ) -> str: + assert select._for_update_arg is not None if select._for_update_arg.read: - tmp = " LOCK IN SHARE MODE" + if self.dialect.use_mysql_for_share: + tmp = " FOR SHARE" + else: + tmp = " LOCK IN SHARE MODE" else: tmp = " FOR UPDATE" if select._for_update_arg.of and self.dialect.supports_for_update_of: - tables = util.OrderedSet() + tables: util.OrderedSet[elements.ClauseElement] = util.OrderedSet() for c in select._for_update_arg.of: tables.update(sql_util.surface_selectables_only(c)) @@ -1709,7 +1795,9 @@ def for_update_clause(self, select, **kw): return tmp - def limit_clause(self, select, **kw): + def limit_clause( + self, select: selectable.GenerativeSelect, **kw: Any + ) -> str: # MySQL supports: # LIMIT # LIMIT , @@ -1745,24 +1833,31 @@ def limit_clause(self, select, **kw): self.process(limit_clause, **kw), ) else: + assert limit_clause is not None # No offset provided, so just use the limit return " \n LIMIT %s" % (self.process(limit_clause, **kw),) - def update_limit_clause(self, update_stmt): + def update_limit_clause(self, update_stmt: Update) -> Optional[str]: limit = update_stmt.kwargs.get("%s_limit" % self.dialect.name, None) if limit is not None: return f"LIMIT {int(limit)}" else: return None - def delete_limit_clause(self, delete_stmt): + def delete_limit_clause(self, delete_stmt: Delete) -> Optional[str]: limit = delete_stmt.kwargs.get("%s_limit" % self.dialect.name, None) if limit is not None: return f"LIMIT {int(limit)}" else: return None - def update_tables_clause(self, update_stmt, from_table, extra_froms, **kw): + def update_tables_clause( + self, + update_stmt: Update, + from_table: _DMLTableElement, + extra_froms: List[selectable.FromClause], + **kw: Any, + ) -> str: kw["asfrom"] = True return ", ".join( t._compiler_dispatch(self, **kw) @@ -1770,11 +1865,22 @@ def update_tables_clause(self, update_stmt, from_table, extra_froms, **kw): ) def update_from_clause( - self, update_stmt, from_table, extra_froms, from_hints, **kw - ): + self, + update_stmt: Update, + from_table: _DMLTableElement, + extra_froms: List[selectable.FromClause], + from_hints: Any, + **kw: Any, + ) -> None: return None - def delete_table_clause(self, delete_stmt, from_table, extra_froms, **kw): + def delete_table_clause( + self, + delete_stmt: Delete, + from_table: _DMLTableElement, + extra_froms: List[selectable.FromClause], + **kw: Any, + ) -> str: """If we have extra froms make sure we render any alias as hint.""" ashint = False if extra_froms: @@ -1784,8 +1890,13 @@ def delete_table_clause(self, delete_stmt, from_table, extra_froms, **kw): ) def delete_extra_from_clause( - self, delete_stmt, from_table, extra_froms, from_hints, **kw - ): + self, + delete_stmt: Delete, + from_table: _DMLTableElement, + extra_froms: List[selectable.FromClause], + from_hints: Any, + **kw: Any, + ) -> str: """Render the DELETE .. USING clause specific to MySQL.""" kw["asfrom"] = True return "USING " + ", ".join( @@ -1793,7 +1904,9 @@ def delete_extra_from_clause( for t in [from_table] + extra_froms ) - def visit_empty_set_expr(self, element_types, **kw): + def visit_empty_set_expr( + self, element_types: List[TypeEngine[Any]], **kw: Any + ) -> str: return ( "SELECT %(outer)s FROM (SELECT %(inner)s) " "as _empty_set WHERE 1!=1" @@ -1808,25 +1921,38 @@ def visit_empty_set_expr(self, element_types, **kw): } ) - def visit_is_distinct_from_binary(self, binary, operator, **kw): + def visit_is_distinct_from_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return "NOT (%s <=> %s)" % ( self.process(binary.left), self.process(binary.right), ) - def visit_is_not_distinct_from_binary(self, binary, operator, **kw): + def visit_is_not_distinct_from_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return "%s <=> %s" % ( self.process(binary.left), self.process(binary.right), ) - def _mariadb_regexp_flags(self, flags, pattern, **kw): + def _mariadb_regexp_flags( + self, flags: str, pattern: elements.ColumnElement[Any], **kw: Any + ) -> str: return "CONCAT('(?', %s, ')', %s)" % ( self.render_literal_value(flags, sqltypes.STRINGTYPE), self.process(pattern, **kw), ) - def _regexp_match(self, op_string, binary, operator, **kw): + def _regexp_match( + self, + op_string: str, + binary: elements.BinaryExpression[Any], + operator: Any, + **kw: Any, + ) -> str: + assert binary.modifiers is not None flags = binary.modifiers["flags"] if flags is None: return self._generate_generic_binary(binary, op_string, **kw) @@ -1847,13 +1973,20 @@ def _regexp_match(self, op_string, binary, operator, **kw): else: return text - def visit_regexp_match_op_binary(self, binary, operator, **kw): + def visit_regexp_match_op_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return self._regexp_match(" REGEXP ", binary, operator, **kw) - def visit_not_regexp_match_op_binary(self, binary, operator, **kw): + def visit_not_regexp_match_op_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return self._regexp_match(" NOT REGEXP ", binary, operator, **kw) - def visit_regexp_replace_op_binary(self, binary, operator, **kw): + def visit_regexp_replace_op_binary( + self, binary: elements.BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: + assert binary.modifiers is not None flags = binary.modifiers["flags"] if flags is None: return "REGEXP_REPLACE(%s, %s)" % ( @@ -1875,7 +2008,11 @@ def visit_regexp_replace_op_binary(self, binary, operator, **kw): class MySQLDDLCompiler(compiler.DDLCompiler): - def get_column_specification(self, column, **kw): + dialect: MySQLDialect + + def get_column_specification( + self, column: sa_schema.Column[Any], **kw: Any + ) -> str: """Builds column DDL.""" if ( self.dialect.is_mariadb is True @@ -1933,7 +2070,12 @@ def get_column_specification(self, column, **kw): if ( self.dialect._support_default_function and not re.match(r"^\s*[\'\"\(]", default) - and "ON UPDATE" not in default + and not re.search(r"ON +UPDATE", default, re.I) + and not re.match( + r"\bnow\(\d+\)|\bcurrent_timestamp\(\d+\)", + default, + re.I, + ) and re.match(r".*\W.*", default) ): colspec.append(f"DEFAULT ({default})") @@ -1941,7 +2083,7 @@ def get_column_specification(self, column, **kw): colspec.append("DEFAULT " + default) return " ".join(colspec) - def post_create_table(self, table): + def post_create_table(self, table: sa_schema.Table) -> str: """Build table-level CREATE options like ENGINE and COLLATE.""" table_opts = [] @@ -2025,16 +2167,16 @@ def post_create_table(self, table): return " ".join(table_opts) - def visit_create_index(self, create, **kw): + def visit_create_index(self, create: ddl.CreateIndex, **kw: Any) -> str: # type: ignore[override] # noqa: E501 index = create.element self._verify_index_table(index) preparer = self.preparer - table = preparer.format_table(index.table) + table = preparer.format_table(index.table) # type: ignore[arg-type] columns = [ self.sql_compiler.process( ( - elements.Grouping(expr) + elements.Grouping(expr) # type: ignore[arg-type] if ( isinstance(expr, elements.BinaryExpression) or ( @@ -2058,7 +2200,7 @@ def visit_create_index(self, create, **kw): if index.unique: text += "UNIQUE " - index_prefix = index.kwargs.get("%s_prefix" % self.dialect.name, None) + index_prefix = index.get_dialect_option(self.dialect, "prefix") if index_prefix: text += index_prefix + " " @@ -2067,16 +2209,16 @@ def visit_create_index(self, create, **kw): text += "IF NOT EXISTS " text += "%s ON %s " % (name, table) - length = index.dialect_options[self.dialect.name]["length"] + length = index.get_dialect_option(self.dialect, "length") if length is not None: if isinstance(length, dict): # length value can be a (column_name --> integer value) # mapping specifying the prefix length for each column of the # index - columns = ", ".join( + columns_str = ", ".join( ( - "%s(%d)" % (expr, length[col.name]) - if col.name in length + "%s(%d)" % (expr, length[col.name]) # type: ignore[union-attr] # noqa: E501 + if col.name in length # type: ignore[union-attr] else ( "%s(%d)" % (expr, length[expr]) if expr in length @@ -2088,31 +2230,39 @@ def visit_create_index(self, create, **kw): else: # or can be an integer value specifying the same # prefix length for all columns of the index - columns = ", ".join( + columns_str = ", ".join( "%s(%d)" % (col, length) for col in columns ) else: - columns = ", ".join(columns) - text += "(%s)" % columns + columns_str = ", ".join(columns) + text += "(%s)" % columns_str - parser = index.dialect_options["mysql"]["with_parser"] + parser = index.get_dialect_option( + self.dialect, "with_parser", deprecated_fallback="mysql" + ) if parser is not None: text += " WITH PARSER %s" % (parser,) - using = index.dialect_options["mysql"]["using"] + using = index.get_dialect_option( + self.dialect, "using", deprecated_fallback="mysql" + ) if using is not None: text += " USING %s" % (preparer.quote(using)) return text - def visit_primary_key_constraint(self, constraint, **kw): + def visit_primary_key_constraint( + self, constraint: sa_schema.PrimaryKeyConstraint, **kw: Any + ) -> str: text = super().visit_primary_key_constraint(constraint) - using = constraint.dialect_options["mysql"]["using"] + using = constraint.get_dialect_option( + self.dialect, "using", deprecated_fallback="mysql" + ) if using: text += " USING %s" % (self.preparer.quote(using)) return text - def visit_drop_index(self, drop, **kw): + def visit_drop_index(self, drop: ddl.DropIndex, **kw: Any) -> str: index = drop.element text = "\nDROP INDEX " if drop.if_exists: @@ -2120,10 +2270,12 @@ def visit_drop_index(self, drop, **kw): return text + "%s ON %s" % ( self._prepared_index_name(index, include_schema=False), - self.preparer.format_table(index.table), + self.preparer.format_table(index.table), # type: ignore[arg-type] ) - def visit_drop_constraint(self, drop, **kw): + def visit_drop_constraint( + self, drop: ddl.DropConstraint, **kw: Any + ) -> str: constraint = drop.element if isinstance(constraint, sa_schema.ForeignKeyConstraint): qual = "FOREIGN KEY " @@ -2149,7 +2301,9 @@ def visit_drop_constraint(self, drop, **kw): const, ) - def define_constraint_match(self, constraint): + def define_constraint_match( + self, constraint: sa_schema.ForeignKeyConstraint + ) -> str: if constraint.match is not None: raise exc.CompileError( "MySQL ignores the 'MATCH' keyword while at the same time " @@ -2157,7 +2311,9 @@ def define_constraint_match(self, constraint): ) return "" - def visit_set_table_comment(self, create, **kw): + def visit_set_table_comment( + self, create: ddl.SetTableComment, **kw: Any + ) -> str: return "ALTER TABLE %s COMMENT %s" % ( self.preparer.format_table(create.element), self.sql_compiler.render_literal_value( @@ -2165,21 +2321,34 @@ def visit_set_table_comment(self, create, **kw): ), ) - def visit_drop_table_comment(self, create, **kw): + def visit_drop_table_comment( + self, drop: ddl.DropTableComment, **kw: Any + ) -> str: return "ALTER TABLE %s COMMENT ''" % ( - self.preparer.format_table(create.element) + self.preparer.format_table(drop.element) ) - def visit_set_column_comment(self, create, **kw): + def visit_set_column_comment( + self, create: ddl.SetColumnComment, **kw: Any + ) -> str: return "ALTER TABLE %s CHANGE %s %s" % ( self.preparer.format_table(create.element.table), self.preparer.format_column(create.element), self.get_column_specification(create.element), ) + def get_identity_options(self, identity_options: IdentityOptions) -> str: + """mariadb-specific sequence option; this will move to a + mariadb-specific module in 2.1 + + """ + text = super().get_identity_options(identity_options) + text = text.replace("NO CYCLE", "NOCYCLE") + return text + class MySQLTypeCompiler(compiler.GenericTypeCompiler): - def _extend_numeric(self, type_, spec): + def _extend_numeric(self, type_: _NumericType, spec: str) -> str: "Extend a numeric-type declaration with MySQL specific extensions." if not self._mysql_type(type_): @@ -2191,13 +2360,15 @@ def _extend_numeric(self, type_, spec): spec += " ZEROFILL" return spec - def _extend_string(self, type_, defaults, spec): + def _extend_string( + self, type_: _StringType, defaults: Dict[str, Any], spec: str + ) -> str: """Extend a string-type declaration with standard SQL CHARACTER SET / COLLATE annotations and MySQL specific extensions. """ - def attr(name): + def attr(name: str) -> Any: return getattr(type_, name, defaults.get(name)) if attr("charset"): @@ -2207,6 +2378,7 @@ def attr(name): elif attr("unicode"): charset = "UNICODE" else: + charset = None if attr("collation"): @@ -2225,10 +2397,10 @@ def attr(name): [c for c in (spec, charset, collation) if c is not None] ) - def _mysql_type(self, type_): + def _mysql_type(self, type_: Any) -> bool: return isinstance(type_, (_StringType, _NumericType)) - def visit_NUMERIC(self, type_, **kw): + def visit_NUMERIC(self, type_: NUMERIC, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.precision is None: return self._extend_numeric(type_, "NUMERIC") elif type_.scale is None: @@ -2243,7 +2415,7 @@ def visit_NUMERIC(self, type_, **kw): % {"precision": type_.precision, "scale": type_.scale}, ) - def visit_DECIMAL(self, type_, **kw): + def visit_DECIMAL(self, type_: DECIMAL, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.precision is None: return self._extend_numeric(type_, "DECIMAL") elif type_.scale is None: @@ -2258,7 +2430,7 @@ def visit_DECIMAL(self, type_, **kw): % {"precision": type_.precision, "scale": type_.scale}, ) - def visit_DOUBLE(self, type_, **kw): + def visit_DOUBLE(self, type_: DOUBLE, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.precision is not None and type_.scale is not None: return self._extend_numeric( type_, @@ -2268,7 +2440,7 @@ def visit_DOUBLE(self, type_, **kw): else: return self._extend_numeric(type_, "DOUBLE") - def visit_REAL(self, type_, **kw): + def visit_REAL(self, type_: REAL, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.precision is not None and type_.scale is not None: return self._extend_numeric( type_, @@ -2278,7 +2450,7 @@ def visit_REAL(self, type_, **kw): else: return self._extend_numeric(type_, "REAL") - def visit_FLOAT(self, type_, **kw): + def visit_FLOAT(self, type_: FLOAT, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if ( self._mysql_type(type_) and type_.scale is not None @@ -2294,7 +2466,7 @@ def visit_FLOAT(self, type_, **kw): else: return self._extend_numeric(type_, "FLOAT") - def visit_INTEGER(self, type_, **kw): + def visit_INTEGER(self, type_: INTEGER, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if self._mysql_type(type_) and type_.display_width is not None: return self._extend_numeric( type_, @@ -2304,7 +2476,7 @@ def visit_INTEGER(self, type_, **kw): else: return self._extend_numeric(type_, "INTEGER") - def visit_BIGINT(self, type_, **kw): + def visit_BIGINT(self, type_: BIGINT, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if self._mysql_type(type_) and type_.display_width is not None: return self._extend_numeric( type_, @@ -2314,7 +2486,7 @@ def visit_BIGINT(self, type_, **kw): else: return self._extend_numeric(type_, "BIGINT") - def visit_MEDIUMINT(self, type_, **kw): + def visit_MEDIUMINT(self, type_: MEDIUMINT, **kw: Any) -> str: if self._mysql_type(type_) and type_.display_width is not None: return self._extend_numeric( type_, @@ -2324,7 +2496,7 @@ def visit_MEDIUMINT(self, type_, **kw): else: return self._extend_numeric(type_, "MEDIUMINT") - def visit_TINYINT(self, type_, **kw): + def visit_TINYINT(self, type_: TINYINT, **kw: Any) -> str: if self._mysql_type(type_) and type_.display_width is not None: return self._extend_numeric( type_, "TINYINT(%s)" % type_.display_width @@ -2332,7 +2504,7 @@ def visit_TINYINT(self, type_, **kw): else: return self._extend_numeric(type_, "TINYINT") - def visit_SMALLINT(self, type_, **kw): + def visit_SMALLINT(self, type_: SMALLINT, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if self._mysql_type(type_) and type_.display_width is not None: return self._extend_numeric( type_, @@ -2342,55 +2514,55 @@ def visit_SMALLINT(self, type_, **kw): else: return self._extend_numeric(type_, "SMALLINT") - def visit_BIT(self, type_, **kw): + def visit_BIT(self, type_: BIT, **kw: Any) -> str: if type_.length is not None: return "BIT(%s)" % type_.length else: return "BIT" - def visit_DATETIME(self, type_, **kw): + def visit_DATETIME(self, type_: DATETIME, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if getattr(type_, "fsp", None): - return "DATETIME(%d)" % type_.fsp + return "DATETIME(%d)" % type_.fsp # type: ignore[str-format] else: return "DATETIME" - def visit_DATE(self, type_, **kw): + def visit_DATE(self, type_: DATE, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 return "DATE" - def visit_TIME(self, type_, **kw): + def visit_TIME(self, type_: TIME, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if getattr(type_, "fsp", None): - return "TIME(%d)" % type_.fsp + return "TIME(%d)" % type_.fsp # type: ignore[str-format] else: return "TIME" - def visit_TIMESTAMP(self, type_, **kw): + def visit_TIMESTAMP(self, type_: TIMESTAMP, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if getattr(type_, "fsp", None): - return "TIMESTAMP(%d)" % type_.fsp + return "TIMESTAMP(%d)" % type_.fsp # type: ignore[str-format] else: return "TIMESTAMP" - def visit_YEAR(self, type_, **kw): + def visit_YEAR(self, type_: YEAR, **kw: Any) -> str: if type_.display_width is None: return "YEAR" else: return "YEAR(%s)" % type_.display_width - def visit_TEXT(self, type_, **kw): + def visit_TEXT(self, type_: TEXT, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.length is not None: return self._extend_string(type_, {}, "TEXT(%d)" % type_.length) else: return self._extend_string(type_, {}, "TEXT") - def visit_TINYTEXT(self, type_, **kw): + def visit_TINYTEXT(self, type_: TINYTEXT, **kw: Any) -> str: return self._extend_string(type_, {}, "TINYTEXT") - def visit_MEDIUMTEXT(self, type_, **kw): + def visit_MEDIUMTEXT(self, type_: MEDIUMTEXT, **kw: Any) -> str: return self._extend_string(type_, {}, "MEDIUMTEXT") - def visit_LONGTEXT(self, type_, **kw): + def visit_LONGTEXT(self, type_: LONGTEXT, **kw: Any) -> str: return self._extend_string(type_, {}, "LONGTEXT") - def visit_VARCHAR(self, type_, **kw): + def visit_VARCHAR(self, type_: VARCHAR, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.length is not None: return self._extend_string(type_, {}, "VARCHAR(%d)" % type_.length) else: @@ -2398,7 +2570,7 @@ def visit_VARCHAR(self, type_, **kw): "VARCHAR requires a length on dialect %s" % self.dialect.name ) - def visit_CHAR(self, type_, **kw): + def visit_CHAR(self, type_: CHAR, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if type_.length is not None: return self._extend_string( type_, {}, "CHAR(%(length)s)" % {"length": type_.length} @@ -2406,7 +2578,7 @@ def visit_CHAR(self, type_, **kw): else: return self._extend_string(type_, {}, "CHAR") - def visit_NVARCHAR(self, type_, **kw): + def visit_NVARCHAR(self, type_: NVARCHAR, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 # We'll actually generate the equiv. "NATIONAL VARCHAR" instead # of "NVARCHAR". if type_.length is not None: @@ -2420,7 +2592,7 @@ def visit_NVARCHAR(self, type_, **kw): "NVARCHAR requires a length on dialect %s" % self.dialect.name ) - def visit_NCHAR(self, type_, **kw): + def visit_NCHAR(self, type_: NCHAR, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 # We'll actually generate the equiv. # "NATIONAL CHAR" instead of "NCHAR". if type_.length is not None: @@ -2432,40 +2604,42 @@ def visit_NCHAR(self, type_, **kw): else: return self._extend_string(type_, {"national": True}, "CHAR") - def visit_UUID(self, type_, **kw): + def visit_UUID(self, type_: UUID[Any], **kw: Any) -> str: # type: ignore[override] # NOQA: E501 return "UUID" - def visit_VARBINARY(self, type_, **kw): - return "VARBINARY(%d)" % type_.length + def visit_VARBINARY(self, type_: VARBINARY, **kw: Any) -> str: + return "VARBINARY(%d)" % type_.length # type: ignore[str-format] - def visit_JSON(self, type_, **kw): + def visit_JSON(self, type_: JSON, **kw: Any) -> str: return "JSON" - def visit_large_binary(self, type_, **kw): + def visit_large_binary(self, type_: LargeBinary, **kw: Any) -> str: return self.visit_BLOB(type_) - def visit_enum(self, type_, **kw): + def visit_enum(self, type_: ENUM, **kw: Any) -> str: # type: ignore[override] # NOQA: E501 if not type_.native_enum: return super().visit_enum(type_) else: return self._visit_enumerated_values("ENUM", type_, type_.enums) - def visit_BLOB(self, type_, **kw): + def visit_BLOB(self, type_: LargeBinary, **kw: Any) -> str: if type_.length is not None: return "BLOB(%d)" % type_.length else: return "BLOB" - def visit_TINYBLOB(self, type_, **kw): + def visit_TINYBLOB(self, type_: TINYBLOB, **kw: Any) -> str: return "TINYBLOB" - def visit_MEDIUMBLOB(self, type_, **kw): + def visit_MEDIUMBLOB(self, type_: MEDIUMBLOB, **kw: Any) -> str: return "MEDIUMBLOB" - def visit_LONGBLOB(self, type_, **kw): + def visit_LONGBLOB(self, type_: LONGBLOB, **kw: Any) -> str: return "LONGBLOB" - def _visit_enumerated_values(self, name, type_, enumerated_values): + def _visit_enumerated_values( + self, name: str, type_: _StringType, enumerated_values: Sequence[str] + ) -> str: quoted_enums = [] for e in enumerated_values: if self.dialect.identifier_preparer._double_percents: @@ -2475,20 +2649,25 @@ def _visit_enumerated_values(self, name, type_, enumerated_values): type_, {}, "%s(%s)" % (name, ",".join(quoted_enums)) ) - def visit_ENUM(self, type_, **kw): + def visit_ENUM(self, type_: ENUM, **kw: Any) -> str: return self._visit_enumerated_values("ENUM", type_, type_.enums) - def visit_SET(self, type_, **kw): + def visit_SET(self, type_: SET, **kw: Any) -> str: return self._visit_enumerated_values("SET", type_, type_.values) - def visit_BOOLEAN(self, type_, **kw): + def visit_BOOLEAN(self, type_: sqltypes.Boolean, **kw: Any) -> str: return "BOOL" class MySQLIdentifierPreparer(compiler.IdentifierPreparer): reserved_words = RESERVED_WORDS_MYSQL - def __init__(self, dialect, server_ansiquotes=False, **kw): + def __init__( + self, + dialect: default.DefaultDialect, + server_ansiquotes: bool = False, + **kw: Any, + ): if not server_ansiquotes: quote = "`" else: @@ -2496,7 +2675,7 @@ def __init__(self, dialect, server_ansiquotes=False, **kw): super().__init__(dialect, initial_quote=quote, escape_quote=quote) - def _quote_free_identifiers(self, *ids): + def _quote_free_identifiers(self, *ids: Optional[str]) -> Tuple[str, ...]: """Unilaterally identifier-quote any number of strings.""" return tuple([self.quote_identifier(i) for i in ids if i is not None]) @@ -2506,7 +2685,6 @@ class MariaDBIdentifierPreparer(MySQLIdentifierPreparer): reserved_words = RESERVED_WORDS_MARIADB -@log.class_logger class MySQLDialect(default.DefaultDialect): """Details of the MySQL dialect. Not used directly in application code. @@ -2536,16 +2714,19 @@ class MySQLDialect(default.DefaultDialect): returns_native_bytes = True - supports_sequences = False # default for MySQL ... # ... may be updated to True for MariaDB 10.3+ in initialize() + supports_sequences = False sequences_optional = False - supports_for_update_of = False # default for MySQL ... # ... may be updated to True for MySQL 8+ in initialize() + supports_for_update_of = False + + # mysql 8.0.1 uses this syntax + use_mysql_for_share = False - _requires_alias_for_on_duplicate_key = False # Only available ... - # ... in MySQL 8+ + # Only available ... ... in MySQL 8+ + _requires_alias_for_on_duplicate_key = False # MySQL doesn't support "DEFAULT VALUES" but *does* support # "VALUES (DEFAULT)" @@ -2573,9 +2754,9 @@ class MySQLDialect(default.DefaultDialect): ddl_compiler = MySQLDDLCompiler type_compiler_cls = MySQLTypeCompiler ischema_names = ischema_names - preparer = MySQLIdentifierPreparer + preparer: type[MySQLIdentifierPreparer] = MySQLIdentifierPreparer - is_mariadb = False + is_mariadb: bool = False _mariadb_normalized_version_info = None # default SQL compilation settings - @@ -2584,6 +2765,9 @@ class MySQLDialect(default.DefaultDialect): _backslash_escapes = True _server_ansiquotes = False + server_version_info: Tuple[int, ...] + identifier_preparer: MySQLIdentifierPreparer + construct_arguments = [ (sa_schema.Table, {"*": None}), (sql.Update, {"limit": None}), @@ -2602,18 +2786,20 @@ class MySQLDialect(default.DefaultDialect): def __init__( self, - json_serializer=None, - json_deserializer=None, - is_mariadb=None, - **kwargs, - ): + json_serializer: Optional[Callable[..., Any]] = None, + json_deserializer: Optional[Callable[..., Any]] = None, + is_mariadb: Optional[bool] = None, + **kwargs: Any, + ) -> None: kwargs.pop("use_ansiquotes", None) # legacy default.DefaultDialect.__init__(self, **kwargs) self._json_serializer = json_serializer self._json_deserializer = json_deserializer - self._set_mariadb(is_mariadb, None) + self._set_mariadb(is_mariadb, ()) - def get_isolation_level_values(self, dbapi_conn): + def get_isolation_level_values( + self, dbapi_conn: DBAPIConnection + ) -> Sequence[IsolationLevel]: return ( "SERIALIZABLE", "READ UNCOMMITTED", @@ -2621,13 +2807,17 @@ def get_isolation_level_values(self, dbapi_conn): "REPEATABLE READ", ) - def set_isolation_level(self, dbapi_connection, level): + def set_isolation_level( + self, dbapi_connection: DBAPIConnection, level: IsolationLevel + ) -> None: cursor = dbapi_connection.cursor() cursor.execute(f"SET SESSION TRANSACTION ISOLATION LEVEL {level}") cursor.execute("COMMIT") cursor.close() - def get_isolation_level(self, dbapi_connection): + def get_isolation_level( + self, dbapi_connection: DBAPIConnection + ) -> IsolationLevel: cursor = dbapi_connection.cursor() if self._is_mysql and self.server_version_info >= (5, 7, 20): cursor.execute("SELECT @@transaction_isolation") @@ -2644,10 +2834,10 @@ def get_isolation_level(self, dbapi_connection): cursor.close() if isinstance(val, bytes): val = val.decode() - return val.upper().replace("-", " ") + return val.upper().replace("-", " ") # type: ignore[no-any-return] @classmethod - def _is_mariadb_from_url(cls, url): + def _is_mariadb_from_url(cls, url: URL) -> bool: dbapi = cls.import_dbapi() dialect = cls(dbapi=dbapi) @@ -2656,7 +2846,7 @@ def _is_mariadb_from_url(cls, url): try: cursor = conn.cursor() cursor.execute("SELECT VERSION() LIKE '%MariaDB%'") - val = cursor.fetchone()[0] + val = cursor.fetchone()[0] # type: ignore[index] except: raise else: @@ -2664,22 +2854,25 @@ def _is_mariadb_from_url(cls, url): finally: conn.close() - def _get_server_version_info(self, connection): + def _get_server_version_info( + self, connection: Connection + ) -> Tuple[int, ...]: # get database server version info explicitly over the wire # to avoid proxy servers like MaxScale getting in the # way with their own values, see #4205 dbapi_con = connection.connection cursor = dbapi_con.cursor() cursor.execute("SELECT VERSION()") - val = cursor.fetchone()[0] + + val = cursor.fetchone()[0] # type: ignore[index] cursor.close() if isinstance(val, bytes): val = val.decode() return self._parse_server_version(val) - def _parse_server_version(self, val): - version = [] + def _parse_server_version(self, val: str) -> Tuple[int, ...]: + version: List[int] = [] is_mariadb = False r = re.compile(r"[.\-+]") @@ -2700,7 +2893,7 @@ def _parse_server_version(self, val): server_version_info = tuple(version) self._set_mariadb( - server_version_info and is_mariadb, server_version_info + bool(server_version_info and is_mariadb), server_version_info ) if not is_mariadb: @@ -2716,7 +2909,9 @@ def _parse_server_version(self, val): self.server_version_info = server_version_info return server_version_info - def _set_mariadb(self, is_mariadb, server_version_info): + def _set_mariadb( + self, is_mariadb: Optional[bool], server_version_info: Tuple[int, ...] + ) -> None: if is_mariadb is None: return @@ -2740,38 +2935,54 @@ def _set_mariadb(self, is_mariadb, server_version_info): self.is_mariadb = is_mariadb - def do_begin_twophase(self, connection, xid): + def do_begin_twophase(self, connection: Connection, xid: Any) -> None: connection.execute(sql.text("XA BEGIN :xid"), dict(xid=xid)) - def do_prepare_twophase(self, connection, xid): + def do_prepare_twophase(self, connection: Connection, xid: Any) -> None: connection.execute(sql.text("XA END :xid"), dict(xid=xid)) connection.execute(sql.text("XA PREPARE :xid"), dict(xid=xid)) def do_rollback_twophase( - self, connection, xid, is_prepared=True, recover=False - ): + self, + connection: Connection, + xid: Any, + is_prepared: bool = True, + recover: bool = False, + ) -> None: if not is_prepared: connection.execute(sql.text("XA END :xid"), dict(xid=xid)) connection.execute(sql.text("XA ROLLBACK :xid"), dict(xid=xid)) def do_commit_twophase( - self, connection, xid, is_prepared=True, recover=False - ): + self, + connection: Connection, + xid: Any, + is_prepared: bool = True, + recover: bool = False, + ) -> None: if not is_prepared: self.do_prepare_twophase(connection, xid) connection.execute(sql.text("XA COMMIT :xid"), dict(xid=xid)) - def do_recover_twophase(self, connection): + def do_recover_twophase(self, connection: Connection) -> List[Any]: resultset = connection.exec_driver_sql("XA RECOVER") - return [row["data"][0 : row["gtrid_length"]] for row in resultset] + return [ + row["data"][0 : row["gtrid_length"]] + for row in resultset.mappings() + ] - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: if isinstance( e, ( - self.dbapi.OperationalError, - self.dbapi.ProgrammingError, - self.dbapi.InterfaceError, + self.dbapi.OperationalError, # type: ignore + self.dbapi.ProgrammingError, # type: ignore + self.dbapi.InterfaceError, # type: ignore ), ) and self._extract_error_code(e) in ( 1927, @@ -2784,7 +2995,7 @@ def is_disconnect(self, e, connection, cursor): ): return True elif isinstance( - e, (self.dbapi.InterfaceError, self.dbapi.InternalError) + e, (self.dbapi.InterfaceError, self.dbapi.InternalError) # type: ignore # noqa: E501 ): # if underlying connection is closed, # this is the error you get @@ -2792,13 +3003,17 @@ def is_disconnect(self, e, connection, cursor): else: return False - def _compat_fetchall(self, rp, charset=None): + def _compat_fetchall( + self, rp: CursorResult[Any], charset: Optional[str] = None + ) -> Union[Sequence[Row[Any]], Sequence[_DecodingRow]]: """Proxy result rows to smooth over MySQL-Python driver inconsistencies.""" return [_DecodingRow(row, charset) for row in rp.fetchall()] - def _compat_fetchone(self, rp, charset=None): + def _compat_fetchone( + self, rp: CursorResult[Any], charset: Optional[str] = None + ) -> Union[Row[Any], None, _DecodingRow]: """Proxy a result row to smooth over MySQL-Python driver inconsistencies.""" @@ -2808,7 +3023,9 @@ def _compat_fetchone(self, rp, charset=None): else: return None - def _compat_first(self, rp, charset=None): + def _compat_first( + self, rp: CursorResult[Any], charset: Optional[str] = None + ) -> Optional[_DecodingRow]: """Proxy a result row to smooth over MySQL-Python driver inconsistencies.""" @@ -2818,14 +3035,22 @@ def _compat_first(self, rp, charset=None): else: return None - def _extract_error_code(self, exception): + def _extract_error_code( + self, exception: DBAPIModule.Error + ) -> Optional[int]: raise NotImplementedError() - def _get_default_schema_name(self, connection): - return connection.exec_driver_sql("SELECT DATABASE()").scalar() + def _get_default_schema_name(self, connection: Connection) -> str: + return connection.exec_driver_sql("SELECT DATABASE()").scalar() # type: ignore[return-value] # noqa: E501 @reflection.cache - def has_table(self, connection, table_name, schema=None, **kw): + def has_table( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> bool: self._ensure_has_table_connection(connection) if schema is None: @@ -2866,12 +3091,18 @@ def has_table(self, connection, table_name, schema=None, **kw): # # there's more "doesn't exist" kinds of messages but they are # less clear if mysql 8 would suddenly start using one of those - if self._extract_error_code(e.orig) in (1146, 1049, 1051): + if self._extract_error_code(e.orig) in (1146, 1049, 1051): # type: ignore # noqa: E501 return False raise @reflection.cache - def has_sequence(self, connection, sequence_name, schema=None, **kw): + def has_sequence( + self, + connection: Connection, + sequence_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> bool: if not self.supports_sequences: self._sequences_not_supported() if not schema: @@ -2891,14 +3122,16 @@ def has_sequence(self, connection, sequence_name, schema=None, **kw): ) return cursor.first() is not None - def _sequences_not_supported(self): + def _sequences_not_supported(self) -> NoReturn: raise NotImplementedError( "Sequences are supported only by the " "MariaDB series 10.3 or greater" ) @reflection.cache - def get_sequence_names(self, connection, schema=None, **kw): + def get_sequence_names( + self, connection: Connection, schema: Optional[str] = None, **kw: Any + ) -> List[str]: if not self.supports_sequences: self._sequences_not_supported() if not schema: @@ -2918,10 +3151,12 @@ def get_sequence_names(self, connection, schema=None, **kw): ) ] - def initialize(self, connection): + def initialize(self, connection: Connection) -> None: # this is driver-based, does not need server version info # and is fairly critical for even basic SQL operations - self._connection_charset = self._detect_charset(connection) + self._connection_charset: Optional[str] = self._detect_charset( + connection + ) # call super().initialize() because we need to have # server_version_info set up. in 1.4 under python 2 only this does the @@ -2947,6 +3182,10 @@ def initialize(self, connection): self._is_mysql and self.server_version_info >= (8,) ) + self.use_mysql_for_share = ( + self._is_mysql and self.server_version_info >= (8, 0, 1) + ) + self._needs_correct_for_88718_96365 = ( not self.is_mariadb and self.server_version_info >= (8,) ) @@ -2965,9 +3204,10 @@ def initialize(self, connection): self._warn_for_known_db_issues() - def _warn_for_known_db_issues(self): + def _warn_for_known_db_issues(self) -> None: if self.is_mariadb: mdb_version = self._mariadb_normalized_version_info + assert mdb_version is not None if mdb_version > (10, 2) and mdb_version < (10, 2, 9): util.warn( "MariaDB %r before 10.2.9 has known issues regarding " @@ -2980,7 +3220,7 @@ def _warn_for_known_db_issues(self): ) @property - def _support_float_cast(self): + def _support_float_cast(self) -> bool: if not self.server_version_info: return False elif self.is_mariadb: @@ -2991,7 +3231,7 @@ def _support_float_cast(self): return self.server_version_info >= (8, 0, 17) @property - def _support_default_function(self): + def _support_default_function(self) -> bool: if not self.server_version_info: return False elif self.is_mariadb: @@ -3002,32 +3242,38 @@ def _support_default_function(self): return self.server_version_info >= (8, 0, 13) @property - def _is_mariadb(self): + def _is_mariadb(self) -> bool: return self.is_mariadb @property - def _is_mysql(self): + def _is_mysql(self) -> bool: return not self.is_mariadb @property - def _is_mariadb_102(self): - return self.is_mariadb and self._mariadb_normalized_version_info > ( - 10, - 2, + def _is_mariadb_102(self) -> bool: + return ( + self.is_mariadb + and self._mariadb_normalized_version_info # type:ignore[operator] + > ( + 10, + 2, + ) ) @reflection.cache - def get_schema_names(self, connection, **kw): + def get_schema_names(self, connection: Connection, **kw: Any) -> List[str]: rp = connection.exec_driver_sql("SHOW schemas") return [r[0] for r in rp] @reflection.cache - def get_table_names(self, connection, schema=None, **kw): + def get_table_names( + self, connection: Connection, schema: Optional[str] = None, **kw: Any + ) -> List[str]: """Return a Unicode SHOW TABLES from a given schema.""" if schema is not None: - current_schema = schema + current_schema: str = schema else: - current_schema = self.default_schema_name + current_schema = self.default_schema_name # type: ignore charset = self._connection_charset @@ -3043,9 +3289,12 @@ def get_table_names(self, connection, schema=None, **kw): ] @reflection.cache - def get_view_names(self, connection, schema=None, **kw): + def get_view_names( + self, connection: Connection, schema: Optional[str] = None, **kw: Any + ) -> List[str]: if schema is None: schema = self.default_schema_name + assert schema is not None charset = self._connection_charset rp = connection.exec_driver_sql( "SHOW FULL TABLES FROM %s" @@ -3058,7 +3307,13 @@ def get_view_names(self, connection, schema=None, **kw): ] @reflection.cache - def get_table_options(self, connection, table_name, schema=None, **kw): + def get_table_options( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> Dict[str, Any]: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) @@ -3068,7 +3323,13 @@ def get_table_options(self, connection, table_name, schema=None, **kw): return ReflectionDefaults.table_options() @reflection.cache - def get_columns(self, connection, table_name, schema=None, **kw): + def get_columns( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> List[ReflectedColumn]: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) @@ -3078,7 +3339,13 @@ def get_columns(self, connection, table_name, schema=None, **kw): return ReflectionDefaults.columns() @reflection.cache - def get_pk_constraint(self, connection, table_name, schema=None, **kw): + def get_pk_constraint( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> ReflectedPrimaryKeyConstraint: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) @@ -3090,13 +3357,19 @@ def get_pk_constraint(self, connection, table_name, schema=None, **kw): return ReflectionDefaults.pk_constraint() @reflection.cache - def get_foreign_keys(self, connection, table_name, schema=None, **kw): + def get_foreign_keys( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> List[ReflectedForeignKeyConstraint]: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) default_schema = None - fkeys = [] + fkeys: List[ReflectedForeignKeyConstraint] = [] for spec in parsed_state.fk_constraints: ref_name = spec["table"][-1] @@ -3116,7 +3389,7 @@ def get_foreign_keys(self, connection, table_name, schema=None, **kw): if spec.get(opt, False) not in ("NO ACTION", None): con_kw[opt] = spec[opt] - fkey_d = { + fkey_d: ReflectedForeignKeyConstraint = { "name": spec["name"], "constrained_columns": loc_names, "referred_schema": ref_schema, @@ -3131,7 +3404,11 @@ def get_foreign_keys(self, connection, table_name, schema=None, **kw): return fkeys if fkeys else ReflectionDefaults.foreign_keys() - def _correct_for_mysql_bugs_88718_96365(self, fkeys, connection): + def _correct_for_mysql_bugs_88718_96365( + self, + fkeys: List[ReflectedForeignKeyConstraint], + connection: Connection, + ) -> None: # Foreign key is always in lower case (MySQL 8.0) # https://bugs.mysql.com/bug.php?id=88718 # issue #4344 for SQLAlchemy @@ -3147,22 +3424,24 @@ def _correct_for_mysql_bugs_88718_96365(self, fkeys, connection): if self._casing in (1, 2): - def lower(s): + def lower(s: str) -> str: return s.lower() else: # if on case sensitive, there can be two tables referenced # with the same name different casing, so we need to use # case-sensitive matching. - def lower(s): + def lower(s: str) -> str: return s - default_schema_name = connection.dialect.default_schema_name + default_schema_name: str = connection.dialect.default_schema_name # type: ignore # noqa: E501 # NOTE: using (table_schema, table_name, lower(column_name)) in (...) # is very slow since mysql does not seem able to properly use indexse. # Unpack the where condition instead. - schema_by_table_by_column = defaultdict(lambda: defaultdict(list)) + schema_by_table_by_column: DefaultDict[ + str, DefaultDict[str, List[str]] + ] = DefaultDict(lambda: DefaultDict(list)) for rec in fkeys: sch = lower(rec["referred_schema"] or default_schema_name) tbl = lower(rec["referred_table"]) @@ -3197,7 +3476,9 @@ def lower(s): _info_columns.c.column_name, ).where(condition) - correct_for_wrong_fk_case = connection.execute(select) + correct_for_wrong_fk_case: CursorResult[Tuple[str, str, str]] = ( + connection.execute(select) + ) # in casing=0, table name and schema name come back in their # exact case. @@ -3209,35 +3490,41 @@ def lower(s): # SHOW CREATE TABLE converts them to *lower case*, therefore # not matching. So for this case, case-insensitive lookup # is necessary - d = defaultdict(dict) + d: DefaultDict[Tuple[str, str], Dict[str, str]] = defaultdict(dict) for schema, tname, cname in correct_for_wrong_fk_case: d[(lower(schema), lower(tname))]["SCHEMANAME"] = schema d[(lower(schema), lower(tname))]["TABLENAME"] = tname d[(lower(schema), lower(tname))][cname.lower()] = cname for fkey in fkeys: - rec = d[ + rec_b = d[ ( lower(fkey["referred_schema"] or default_schema_name), lower(fkey["referred_table"]), ) ] - fkey["referred_table"] = rec["TABLENAME"] + fkey["referred_table"] = rec_b["TABLENAME"] if fkey["referred_schema"] is not None: - fkey["referred_schema"] = rec["SCHEMANAME"] + fkey["referred_schema"] = rec_b["SCHEMANAME"] fkey["referred_columns"] = [ - rec[col.lower()] for col in fkey["referred_columns"] + rec_b[col.lower()] for col in fkey["referred_columns"] ] @reflection.cache - def get_check_constraints(self, connection, table_name, schema=None, **kw): + def get_check_constraints( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> List[ReflectedCheckConstraint]: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) - cks = [ + cks: List[ReflectedCheckConstraint] = [ {"name": spec["name"], "sqltext": spec["sqltext"]} for spec in parsed_state.ck_constraints ] @@ -3245,7 +3532,13 @@ def get_check_constraints(self, connection, table_name, schema=None, **kw): return cks if cks else ReflectionDefaults.check_constraints() @reflection.cache - def get_table_comment(self, connection, table_name, schema=None, **kw): + def get_table_comment( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> ReflectedTableComment: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) @@ -3256,12 +3549,18 @@ def get_table_comment(self, connection, table_name, schema=None, **kw): return ReflectionDefaults.table_comment() @reflection.cache - def get_indexes(self, connection, table_name, schema=None, **kw): + def get_indexes( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> List[ReflectedIndex]: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) - indexes = [] + indexes: List[ReflectedIndex] = [] for spec in parsed_state.keys: dialect_options = {} @@ -3273,32 +3572,30 @@ def get_indexes(self, connection, table_name, schema=None, **kw): unique = True elif flavor in ("FULLTEXT", "SPATIAL"): dialect_options["%s_prefix" % self.name] = flavor - elif flavor is None: - pass - else: - self.logger.info( + elif flavor is not None: + util.warn( "Converting unknown KEY type %s to a plain KEY", flavor ) - pass if spec["parser"]: dialect_options["%s_with_parser" % (self.name)] = spec[ "parser" ] - index_d = {} + index_d: ReflectedIndex = { + "name": spec["name"], + "column_names": [s[0] for s in spec["columns"]], + "unique": unique, + } - index_d["name"] = spec["name"] - index_d["column_names"] = [s[0] for s in spec["columns"]] mysql_length = { s[0]: s[1] for s in spec["columns"] if s[1] is not None } if mysql_length: dialect_options["%s_length" % self.name] = mysql_length - index_d["unique"] = unique if flavor: - index_d["type"] = flavor + index_d["type"] = flavor # type: ignore[typeddict-unknown-key] if dialect_options: index_d["dialect_options"] = dialect_options @@ -3309,13 +3606,17 @@ def get_indexes(self, connection, table_name, schema=None, **kw): @reflection.cache def get_unique_constraints( - self, connection, table_name, schema=None, **kw - ): + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> List[ReflectedUniqueConstraint]: parsed_state = self._parsed_state_or_create( connection, table_name, schema, **kw ) - ucs = [ + ucs: List[ReflectedUniqueConstraint] = [ { "name": key["name"], "column_names": [col[0] for col in key["columns"]], @@ -3331,7 +3632,13 @@ def get_unique_constraints( return ReflectionDefaults.unique_constraints() @reflection.cache - def get_view_definition(self, connection, view_name, schema=None, **kw): + def get_view_definition( + self, + connection: Connection, + view_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> str: charset = self._connection_charset full_name = ".".join( self.identifier_preparer._quote_free_identifiers(schema, view_name) @@ -3345,8 +3652,12 @@ def get_view_definition(self, connection, view_name, schema=None, **kw): return sql def _parsed_state_or_create( - self, connection, table_name, schema=None, **kw - ): + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> _reflection.ReflectedState: return self._setup_parser( connection, table_name, @@ -3355,7 +3666,7 @@ def _parsed_state_or_create( ) @util.memoized_property - def _tabledef_parser(self): + def _tabledef_parser(self) -> _reflection.MySQLTableDefinitionParser: """return the MySQLTableDefinitionParser, generate if needed. The deferred creation ensures that the dialect has @@ -3366,7 +3677,13 @@ def _tabledef_parser(self): return _reflection.MySQLTableDefinitionParser(self, preparer) @reflection.cache - def _setup_parser(self, connection, table_name, schema=None, **kw): + def _setup_parser( + self, + connection: Connection, + table_name: str, + schema: Optional[str] = None, + **kw: Any, + ) -> _reflection.ReflectedState: charset = self._connection_charset parser = self._tabledef_parser full_name = ".".join( @@ -3382,10 +3699,14 @@ def _setup_parser(self, connection, table_name, schema=None, **kw): columns = self._describe_table( connection, None, charset, full_name=full_name ) - sql = parser._describe_to_create(table_name, columns) + sql = parser._describe_to_create( + table_name, columns # type: ignore[arg-type] + ) return parser.parse(sql, charset) - def _fetch_setting(self, connection, setting_name): + def _fetch_setting( + self, connection: Connection, setting_name: str + ) -> Optional[str]: charset = self._connection_charset if self.server_version_info and self.server_version_info < (5, 6): @@ -3400,12 +3721,12 @@ def _fetch_setting(self, connection, setting_name): if not row: return None else: - return row[fetch_col] + return cast(Optional[str], row[fetch_col]) - def _detect_charset(self, connection): + def _detect_charset(self, connection: Connection) -> str: raise NotImplementedError() - def _detect_casing(self, connection): + def _detect_casing(self, connection: Connection) -> int: """Sniff out identifier case sensitivity. Cached per-connection. This value can not change without a server @@ -3429,7 +3750,7 @@ def _detect_casing(self, connection): self._casing = cs return cs - def _detect_collations(self, connection): + def _detect_collations(self, connection: Connection) -> Dict[str, str]: """Pull the active COLLATIONS list from the server. Cached per-connection. @@ -3442,7 +3763,7 @@ def _detect_collations(self, connection): collations[row[0]] = row[1] return collations - def _detect_sql_mode(self, connection): + def _detect_sql_mode(self, connection: Connection) -> None: setting = self._fetch_setting(connection, "sql_mode") if setting is None: @@ -3454,7 +3775,7 @@ def _detect_sql_mode(self, connection): else: self._sql_mode = setting or "" - def _detect_ansiquotes(self, connection): + def _detect_ansiquotes(self, connection: Connection) -> None: """Detect and adjust for the ANSI_QUOTES sql mode.""" mode = self._sql_mode @@ -3469,34 +3790,81 @@ def _detect_ansiquotes(self, connection): # as of MySQL 5.0.1 self._backslash_escapes = "NO_BACKSLASH_ESCAPES" not in mode + @overload def _show_create_table( - self, connection, table, charset=None, full_name=None - ): + self, + connection: Connection, + table: Optional[Table], + charset: Optional[str], + full_name: str, + ) -> str: ... + + @overload + def _show_create_table( + self, + connection: Connection, + table: Table, + charset: Optional[str] = None, + full_name: None = None, + ) -> str: ... + + def _show_create_table( + self, + connection: Connection, + table: Optional[Table], + charset: Optional[str] = None, + full_name: Optional[str] = None, + ) -> str: """Run SHOW CREATE TABLE for a ``Table``.""" if full_name is None: + assert table is not None full_name = self.identifier_preparer.format_table(table) st = "SHOW CREATE TABLE %s" % full_name - rp = None try: rp = connection.execution_options( skip_user_error_events=True ).exec_driver_sql(st) except exc.DBAPIError as e: - if self._extract_error_code(e.orig) == 1146: + if self._extract_error_code(e.orig) == 1146: # type: ignore[arg-type] # noqa: E501 raise exc.NoSuchTableError(full_name) from e else: raise row = self._compat_first(rp, charset=charset) if not row: raise exc.NoSuchTableError(full_name) - return row[1].strip() + return cast(str, row[1]).strip() + + @overload + def _describe_table( + self, + connection: Connection, + table: Optional[Table], + charset: Optional[str], + full_name: str, + ) -> Union[Sequence[Row[Any]], Sequence[_DecodingRow]]: ... + + @overload + def _describe_table( + self, + connection: Connection, + table: Table, + charset: Optional[str] = None, + full_name: None = None, + ) -> Union[Sequence[Row[Any]], Sequence[_DecodingRow]]: ... - def _describe_table(self, connection, table, charset=None, full_name=None): + def _describe_table( + self, + connection: Connection, + table: Optional[Table], + charset: Optional[str] = None, + full_name: Optional[str] = None, + ) -> Union[Sequence[Row[Any]], Sequence[_DecodingRow]]: """Run DESCRIBE for a ``Table`` and return processed rows.""" if full_name is None: + assert table is not None full_name = self.identifier_preparer.format_table(table) st = "DESCRIBE %s" % full_name @@ -3507,7 +3875,7 @@ def _describe_table(self, connection, table, charset=None, full_name=None): skip_user_error_events=True ).exec_driver_sql(st) except exc.DBAPIError as e: - code = self._extract_error_code(e.orig) + code = self._extract_error_code(e.orig) # type: ignore[arg-type] # noqa: E501 if code == 1146: raise exc.NoSuchTableError(full_name) from e @@ -3539,7 +3907,7 @@ class _DecodingRow: # sets.Set(['value']) (seriously) but thankfully that doesn't # seem to come up in DDL queries. - _encoding_compat = { + _encoding_compat: Dict[str, str] = { "koi8r": "koi8_r", "koi8u": "koi8_u", "utf16": "utf-16-be", # MySQL's uft16 is always bigendian @@ -3549,24 +3917,23 @@ class _DecodingRow: "eucjpms": "ujis", } - def __init__(self, rowproxy, charset): + def __init__(self, rowproxy: Row[Any], charset: Optional[str]): self.rowproxy = rowproxy - self.charset = self._encoding_compat.get(charset, charset) + self.charset = ( + self._encoding_compat.get(charset, charset) + if charset is not None + else None + ) - def __getitem__(self, index): + def __getitem__(self, index: int) -> Any: item = self.rowproxy[index] - if isinstance(item, _array): - item = item.tostring() - if self.charset and isinstance(item, bytes): return item.decode(self.charset) else: return item - def __getattr__(self, attr): + def __getattr__(self, attr: str) -> Any: item = getattr(self.rowproxy, attr) - if isinstance(item, _array): - item = item.tostring() if self.charset and isinstance(item, bytes): return item.decode(self.charset) else: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/cymysql.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/cymysql.py index 5c00ada9f..325d3321e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/cymysql.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/cymysql.py @@ -1,10 +1,9 @@ # dialects/mysql/cymysql.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" @@ -21,18 +20,36 @@ dialects are mysqlclient and PyMySQL. """ # noqa +from __future__ import annotations + +from typing import Any +from typing import Iterable +from typing import Optional +from typing import TYPE_CHECKING +from typing import Union -from .base import BIT from .base import MySQLDialect from .mysqldb import MySQLDialect_mysqldb +from .types import BIT from ... import util +if TYPE_CHECKING: + from ...engine.base import Connection + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import Dialect + from ...engine.interfaces import PoolProxiedConnection + from ...sql.type_api import _ResultProcessorType + class _cymysqlBIT(BIT): - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> Optional[_ResultProcessorType[Any]]: """Convert MySQL's 64 bit, variable length binary string to a long.""" - def process(value): + def process(value: Optional[Iterable[int]]) -> Optional[int]: if value is not None: v = 0 for i in iter(value): @@ -55,17 +72,22 @@ class MySQLDialect_cymysql(MySQLDialect_mysqldb): colspecs = util.update_copy(MySQLDialect.colspecs, {BIT: _cymysqlBIT}) @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> DBAPIModule: return __import__("cymysql") - def _detect_charset(self, connection): - return connection.connection.charset + def _detect_charset(self, connection: Connection) -> str: + return connection.connection.charset # type: ignore[no-any-return] - def _extract_error_code(self, exception): - return exception.errno + def _extract_error_code(self, exception: DBAPIModule.Error) -> int: + return exception.errno # type: ignore[no-any-return] - def is_disconnect(self, e, connection, cursor): - if isinstance(e, self.dbapi.OperationalError): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: + if isinstance(e, self.loaded_dbapi.OperationalError): return self._extract_error_code(e) in ( 2006, 2013, @@ -73,7 +95,7 @@ def is_disconnect(self, e, connection, cursor): 2045, 2055, ) - elif isinstance(e, self.dbapi.InterfaceError): + elif isinstance(e, self.loaded_dbapi.InterfaceError): # if underlying connection is closed, # this is the error you get return True diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/dml.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/dml.py index cceb0818f..d5bbf14bb 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/dml.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/dml.py @@ -1,5 +1,5 @@ # dialects/mysql/dml.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/enumerated.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/enumerated.py index 6745cae55..9e19d6440 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/enumerated.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/enumerated.py @@ -1,29 +1,46 @@ # dialects/mysql/enumerated.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors +from __future__ import annotations +import enum import re +from typing import Any +from typing import Dict +from typing import Optional +from typing import Set +from typing import Type +from typing import TYPE_CHECKING +from typing import Union from .types import _StringType from ... import exc from ... import sql from ... import util from ...sql import sqltypes +from ...sql import type_api +if TYPE_CHECKING: + from ...engine.interfaces import Dialect + from ...sql.elements import ColumnElement + from ...sql.type_api import _BindProcessorType + from ...sql.type_api import _ResultProcessorType + from ...sql.type_api import TypeEngine + from ...sql.type_api import TypeEngineMixin -class ENUM(sqltypes.NativeForEmulated, sqltypes.Enum, _StringType): + +class ENUM(type_api.NativeForEmulated, sqltypes.Enum, _StringType): """MySQL ENUM type.""" __visit_name__ = "ENUM" native_enum = True - def __init__(self, *enums, **kw): + def __init__(self, *enums: Union[str, Type[enum.Enum]], **kw: Any) -> None: """Construct an ENUM. E.g.:: @@ -62,21 +79,27 @@ def __init__(self, *enums, **kw): """ kw.pop("strict", None) - self._enum_init(enums, kw) + self._enum_init(enums, kw) # type: ignore[arg-type] _StringType.__init__(self, length=self.length, **kw) @classmethod - def adapt_emulated_to_native(cls, impl, **kw): + def adapt_emulated_to_native( + cls, + impl: Union[TypeEngine[Any], TypeEngineMixin], + **kw: Any, + ) -> ENUM: """Produce a MySQL native :class:`.mysql.ENUM` from plain :class:`.Enum`. """ + if TYPE_CHECKING: + assert isinstance(impl, ENUM) kw.setdefault("validate_strings", impl.validate_strings) kw.setdefault("values_callable", impl.values_callable) kw.setdefault("omit_aliases", impl._omit_aliases) return cls(**kw) - def _object_value_for_elem(self, elem): + def _object_value_for_elem(self, elem: str) -> Union[str, enum.Enum]: # mysql sends back a blank string for any value that # was persisted that was not in the enums; that is, it does no # validation on the incoming data, it "truncates" it to be @@ -86,18 +109,22 @@ def _object_value_for_elem(self, elem): else: return super()._object_value_for_elem(elem) - def __repr__(self): + def __repr__(self) -> str: return util.generic_repr( self, to_inspect=[ENUM, _StringType, sqltypes.Enum] ) +# TODO: SET is a string as far as configuration but does not act like +# a string at the python level. We either need to make a py-type agnostic +# version of String as a base to be used for this, make this some kind of +# TypeDecorator, or just vendor it out as its own type. class SET(_StringType): """MySQL SET type.""" __visit_name__ = "SET" - def __init__(self, *values, **kw): + def __init__(self, *values: str, **kw: Any): """Construct a SET. E.g.:: @@ -150,17 +177,19 @@ def __init__(self, *values, **kw): "setting retrieve_as_bitwise=True" ) if self.retrieve_as_bitwise: - self._bitmap = { + self._inversed_bitmap: Dict[str, int] = { value: 2**idx for idx, value in enumerate(self.values) } - self._bitmap.update( - (2**idx, value) for idx, value in enumerate(self.values) - ) + self._bitmap: Dict[int, str] = { + 2**idx: value for idx, value in enumerate(self.values) + } length = max([len(v) for v in values] + [0]) kw.setdefault("length", length) super().__init__(**kw) - def column_expression(self, colexpr): + def column_expression( + self, colexpr: ColumnElement[Any] + ) -> ColumnElement[Any]: if self.retrieve_as_bitwise: return sql.type_coerce( sql.type_coerce(colexpr, sqltypes.Integer) + 0, self @@ -168,10 +197,12 @@ def column_expression(self, colexpr): else: return colexpr - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: Dialect, coltype: Any + ) -> Optional[_ResultProcessorType[Any]]: if self.retrieve_as_bitwise: - def process(value): + def process(value: Union[str, int, None]) -> Optional[Set[str]]: if value is not None: value = int(value) @@ -182,11 +213,14 @@ def process(value): else: super_convert = super().result_processor(dialect, coltype) - def process(value): + def process(value: Union[str, Set[str], None]) -> Optional[Set[str]]: # type: ignore[misc] # noqa: E501 if isinstance(value, str): # MySQLdb returns a string, let's parse if super_convert: value = super_convert(value) + assert value is not None + if TYPE_CHECKING: + assert isinstance(value, str) return set(re.findall(r"[^,]+", value)) else: # mysql-connector-python does a naive @@ -197,43 +231,48 @@ def process(value): return process - def bind_processor(self, dialect): + def bind_processor( + self, dialect: Dialect + ) -> _BindProcessorType[Union[str, int]]: super_convert = super().bind_processor(dialect) if self.retrieve_as_bitwise: - def process(value): + def process( + value: Union[str, int, set[str], None], + ) -> Union[str, int, None]: if value is None: return None elif isinstance(value, (int, str)): if super_convert: - return super_convert(value) + return super_convert(value) # type: ignore[arg-type, no-any-return] # noqa: E501 else: return value else: int_value = 0 for v in value: - int_value |= self._bitmap[v] + int_value |= self._inversed_bitmap[v] return int_value else: - def process(value): + def process( + value: Union[str, int, set[str], None], + ) -> Union[str, int, None]: # accept strings and int (actually bitflag) values directly if value is not None and not isinstance(value, (int, str)): value = ",".join(value) - if super_convert: - return super_convert(value) + return super_convert(value) # type: ignore else: return value return process - def adapt(self, impltype, **kw): + def adapt(self, cls: type, **kw: Any) -> Any: kw["retrieve_as_bitwise"] = self.retrieve_as_bitwise - return util.constructor_copy(self, impltype, *self.values, **kw) + return util.constructor_copy(self, cls, *self.values, **kw) - def __repr__(self): + def __repr__(self) -> str: return util.generic_repr( self, to_inspect=[SET, _StringType], diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/expression.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/expression.py index b60a08885..914207e9e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/expression.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/expression.py @@ -1,11 +1,13 @@ # dialects/mysql/expression.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors +from __future__ import annotations + +from typing import Any from ... import exc from ... import util @@ -18,7 +20,7 @@ from ...util.typing import Self -class match(Generative, elements.BinaryExpression): +class match(Generative, elements.BinaryExpression[Any]): """Produce a ``MATCH (X, Y) AGAINST ('TEXT')`` clause. E.g.:: @@ -73,8 +75,9 @@ class match(Generative, elements.BinaryExpression): __visit_name__ = "mysql_match" inherit_cache = True + modifiers: util.immutabledict[str, Any] - def __init__(self, *cols, **kw): + def __init__(self, *cols: elements.ColumnElement[Any], **kw: Any): if not cols: raise exc.ArgumentError("columns are required") diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/json.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/json.py index 8912af366..7e2606ccf 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/json.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/json.py @@ -1,13 +1,21 @@ # dialects/mysql/json.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors +from __future__ import annotations + +from typing import Any +from typing import TYPE_CHECKING from ... import types as sqltypes +if TYPE_CHECKING: + from ...engine.interfaces import Dialect + from ...sql.type_api import _BindProcessorType + from ...sql.type_api import _LiteralProcessorType + class JSON(sqltypes.JSON): """MySQL JSON type. @@ -34,13 +42,13 @@ class JSON(sqltypes.JSON): class _FormatTypeMixin: - def _format_value(self, value): + def _format_value(self, value: Any) -> str: raise NotImplementedError() - def bind_processor(self, dialect): - super_proc = self.string_bind_processor(dialect) + def bind_processor(self, dialect: Dialect) -> _BindProcessorType[Any]: + super_proc = self.string_bind_processor(dialect) # type: ignore[attr-defined] # noqa: E501 - def process(value): + def process(value: Any) -> Any: value = self._format_value(value) if super_proc: value = super_proc(value) @@ -48,29 +56,31 @@ def process(value): return process - def literal_processor(self, dialect): - super_proc = self.string_literal_processor(dialect) + def literal_processor( + self, dialect: Dialect + ) -> _LiteralProcessorType[Any]: + super_proc = self.string_literal_processor(dialect) # type: ignore[attr-defined] # noqa: E501 - def process(value): + def process(value: Any) -> str: value = self._format_value(value) if super_proc: value = super_proc(value) - return value + return value # type: ignore[no-any-return] return process class JSONIndexType(_FormatTypeMixin, sqltypes.JSON.JSONIndexType): - def _format_value(self, value): + def _format_value(self, value: Any) -> str: if isinstance(value, int): - value = "$[%s]" % value + formatted_value = "$[%s]" % value else: - value = '$."%s"' % value - return value + formatted_value = '$."%s"' % value + return formatted_value class JSONPathType(_FormatTypeMixin, sqltypes.JSON.JSONPathType): - def _format_value(self, value): + def _format_value(self, value: Any) -> str: return "$%s" % ( "".join( [ diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadb.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadb.py index b84dee37a..70d9cb809 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadb.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadb.py @@ -1,12 +1,17 @@ # dialects/mysql/mariadb.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors + +from __future__ import annotations + +from typing import Any + from .base import MariaDBIdentifierPreparer from .base import MySQLDialect +from .base import MySQLIdentifierPreparer from .base import MySQLTypeCompiler from ...sql import sqltypes @@ -30,10 +35,10 @@ class INET6(sqltypes.TypeEngine[str]): class MariaDBTypeCompiler(MySQLTypeCompiler): - def visit_INET4(self, type_, **kwargs) -> str: + def visit_INET4(self, type_: INET4, **kwargs: Any) -> str: return "INET4" - def visit_INET6(self, type_, **kwargs) -> str: + def visit_INET6(self, type_: INET6, **kwargs: Any) -> str: return "INET6" @@ -41,11 +46,11 @@ class MariaDBDialect(MySQLDialect): is_mariadb = True supports_statement_cache = True name = "mariadb" - preparer = MariaDBIdentifierPreparer + preparer: type[MySQLIdentifierPreparer] = MariaDBIdentifierPreparer type_compiler_cls = MariaDBTypeCompiler -def loader(driver): +def loader(driver: str) -> type[MariaDBDialect]: dialect_mod = __import__( "sqlalchemy.dialects.mysql.%s" % driver ).dialects.mysql @@ -53,7 +58,7 @@ def loader(driver): driver_mod = getattr(dialect_mod, driver) if hasattr(driver_mod, "mariadb_dialect"): driver_cls = driver_mod.mariadb_dialect - return driver_cls + return driver_cls # type: ignore[no-any-return] else: driver_cls = driver_mod.dialect diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadbconnector.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadbconnector.py index 2d2ad1997..bd5d7a258 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadbconnector.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mariadbconnector.py @@ -1,11 +1,9 @@ # dialects/mysql/mariadbconnector.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors - """ @@ -29,7 +27,15 @@ .. mariadb: https://github.com/mariadb-corporation/mariadb-connector-python """ # noqa +from __future__ import annotations + import re +from typing import Any +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import TYPE_CHECKING +from typing import Union from uuid import UUID as _python_UUID from .base import MySQLCompiler @@ -39,6 +45,19 @@ from ... import util from ...sql import sqltypes +if TYPE_CHECKING: + from ...engine.base import Connection + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import Dialect + from ...engine.interfaces import IsolationLevel + from ...engine.interfaces import PoolProxiedConnection + from ...engine.url import URL + from ...sql.compiler import SQLCompiler + from ...sql.type_api import _ResultProcessorType + mariadb_cpy_minimum_version = (1, 0, 1) @@ -47,10 +66,12 @@ class _MariaDBUUID(sqltypes.UUID[sqltypes._UUID_RETURN]): # work around JIRA issue # https://jira.mariadb.org/browse/CONPY-270. When that issue is fixed, # this type can be removed. - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> Optional[_ResultProcessorType[Any]]: if self.as_uuid: - def process(value): + def process(value: Any) -> Any: if value is not None: if hasattr(value, "decode"): value = value.decode("ascii") @@ -60,7 +81,7 @@ def process(value): return process else: - def process(value): + def process(value: Any) -> Any: if value is not None: if hasattr(value, "decode"): value = value.decode("ascii") @@ -71,23 +92,27 @@ def process(value): class MySQLExecutionContext_mariadbconnector(MySQLExecutionContext): - _lastrowid = None + _lastrowid: Optional[int] = None - def create_server_side_cursor(self): + def create_server_side_cursor(self) -> DBAPICursor: return self._dbapi_connection.cursor(buffered=False) - def create_default_cursor(self): + def create_default_cursor(self) -> DBAPICursor: return self._dbapi_connection.cursor(buffered=True) - def post_exec(self): + def post_exec(self) -> None: super().post_exec() self._rowcount = self.cursor.rowcount + if TYPE_CHECKING: + assert isinstance(self.compiled, SQLCompiler) if self.isinsert and self.compiled.postfetch_lastrowid: self._lastrowid = self.cursor.lastrowid - def get_lastrowid(self): + def get_lastrowid(self) -> int: + if TYPE_CHECKING: + assert self._lastrowid is not None return self._lastrowid @@ -126,7 +151,7 @@ class MySQLDialect_mariadbconnector(MySQLDialect): ) @util.memoized_property - def _dbapi_version(self): + def _dbapi_version(self) -> Tuple[int, ...]: if self.dbapi and hasattr(self.dbapi, "__version__"): return tuple( [ @@ -139,7 +164,7 @@ def _dbapi_version(self): else: return (99, 99, 99) - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any) -> None: super().__init__(**kwargs) self.paramstyle = "qmark" if self.dbapi is not None: @@ -151,19 +176,24 @@ def __init__(self, **kwargs): ) @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> DBAPIModule: return __import__("mariadb") - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: if super().is_disconnect(e, connection, cursor): return True - elif isinstance(e, self.dbapi.Error): + elif isinstance(e, self.loaded_dbapi.Error): str_e = str(e).lower() return "not connected" in str_e or "isn't valid" in str_e else: return False - def create_connect_args(self, url): + def create_connect_args(self, url: URL) -> ConnectArgsType: opts = url.translate_connect_args() opts.update(url.query) @@ -200,19 +230,21 @@ def create_connect_args(self, url): except (AttributeError, ImportError): self.supports_sane_rowcount = False opts["client_flag"] = client_flag - return [[], opts] + return [], opts - def _extract_error_code(self, exception): + def _extract_error_code(self, exception: DBAPIModule.Error) -> int: try: - rc = exception.errno + rc: int = exception.errno except: rc = -1 return rc - def _detect_charset(self, connection): + def _detect_charset(self, connection: Connection) -> str: return "utf8mb4" - def get_isolation_level_values(self, dbapi_connection): + def get_isolation_level_values( + self, dbapi_conn: DBAPIConnection + ) -> Sequence[IsolationLevel]: return ( "SERIALIZABLE", "READ UNCOMMITTED", @@ -221,21 +253,26 @@ def get_isolation_level_values(self, dbapi_connection): "AUTOCOMMIT", ) - def set_isolation_level(self, connection, level): + def detect_autocommit_setting(self, dbapi_conn: DBAPIConnection) -> bool: + return bool(dbapi_conn.autocommit) + + def set_isolation_level( + self, dbapi_connection: DBAPIConnection, level: IsolationLevel + ) -> None: if level == "AUTOCOMMIT": - connection.autocommit = True + dbapi_connection.autocommit = True else: - connection.autocommit = False - super().set_isolation_level(connection, level) + dbapi_connection.autocommit = False + super().set_isolation_level(dbapi_connection, level) - def do_begin_twophase(self, connection, xid): + def do_begin_twophase(self, connection: Connection, xid: Any) -> None: connection.execute( sql.text("XA BEGIN :xid").bindparams( sql.bindparam("xid", xid, literal_execute=True) ) ) - def do_prepare_twophase(self, connection, xid): + def do_prepare_twophase(self, connection: Connection, xid: Any) -> None: connection.execute( sql.text("XA END :xid").bindparams( sql.bindparam("xid", xid, literal_execute=True) @@ -248,8 +285,12 @@ def do_prepare_twophase(self, connection, xid): ) def do_rollback_twophase( - self, connection, xid, is_prepared=True, recover=False - ): + self, + connection: Connection, + xid: Any, + is_prepared: bool = True, + recover: bool = False, + ) -> None: if not is_prepared: connection.execute( sql.text("XA END :xid").bindparams( @@ -263,8 +304,12 @@ def do_rollback_twophase( ) def do_commit_twophase( - self, connection, xid, is_prepared=True, recover=False - ): + self, + connection: Connection, + xid: Any, + is_prepared: bool = True, + recover: bool = False, + ) -> None: if not is_prepared: self.do_prepare_twophase(connection, xid) connection.execute( diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqlconnector.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqlconnector.py index 71ac58601..d97dbe219 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqlconnector.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqlconnector.py @@ -1,10 +1,9 @@ # dialects/mysql/mysqlconnector.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" @@ -22,11 +21,19 @@ with features such as server side cursors which remain disabled until upstream issues are repaired. +.. warning:: The MySQL Connector/Python driver published by Oracle is subject + to frequent, major regressions of essential functionality such as being able + to correctly persist simple binary strings which indicate it is not well + tested. The SQLAlchemy project is not able to maintain this dialect fully as + regressions in the driver prevent it from being included in continuous + integration. + .. versionchanged:: 2.0.39 The MySQL Connector/Python dialect has been updated to support the latest version of this DBAPI. Previously, MySQL Connector/Python - was not fully supported. + was not fully supported. However, support remains limited due to ongoing + regressions introduced in this driver. Connecting to MariaDB with MySQL Connector/Python -------------------------------------------------- @@ -38,29 +45,53 @@ """ # noqa +from __future__ import annotations import re +from typing import Any +from typing import cast +from typing import Optional +from typing import Sequence +from typing import Tuple +from typing import TYPE_CHECKING +from typing import Union -from .base import BIT from .base import MariaDBIdentifierPreparer from .base import MySQLCompiler from .base import MySQLDialect from .base import MySQLExecutionContext from .base import MySQLIdentifierPreparer from .mariadb import MariaDBDialect +from .types import BIT from ... import util +if TYPE_CHECKING: + + from ...engine.base import Connection + from ...engine.cursor import CursorResult + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import IsolationLevel + from ...engine.interfaces import PoolProxiedConnection + from ...engine.row import Row + from ...engine.url import URL + from ...sql.elements import BinaryExpression + class MySQLExecutionContext_mysqlconnector(MySQLExecutionContext): - def create_server_side_cursor(self): + def create_server_side_cursor(self) -> DBAPICursor: return self._dbapi_connection.cursor(buffered=False) - def create_default_cursor(self): + def create_default_cursor(self) -> DBAPICursor: return self._dbapi_connection.cursor(buffered=True) class MySQLCompiler_mysqlconnector(MySQLCompiler): - def visit_mod_binary(self, binary, operator, **kw): + def visit_mod_binary( + self, binary: BinaryExpression[Any], operator: Any, **kw: Any + ) -> str: return ( self.process(binary.left, **kw) + " % " @@ -70,15 +101,18 @@ def visit_mod_binary(self, binary, operator, **kw): class IdentifierPreparerCommon_mysqlconnector: @property - def _double_percents(self): + def _double_percents(self) -> bool: return False @_double_percents.setter - def _double_percents(self, value): + def _double_percents(self, value: Any) -> None: pass - def _escape_identifier(self, value): - value = value.replace(self.escape_quote, self.escape_to_quote) + def _escape_identifier(self, value: str) -> str: + value = value.replace( + self.escape_quote, # type:ignore[attr-defined] + self.escape_to_quote, # type:ignore[attr-defined] + ) return value @@ -95,7 +129,7 @@ class MariaDBIdentifierPreparer_mysqlconnector( class _myconnpyBIT(BIT): - def result_processor(self, dialect, coltype): + def result_processor(self, dialect: Any, coltype: Any) -> None: """MySQL-connector already converts mysql bits, so.""" return None @@ -120,21 +154,21 @@ class MySQLDialect_mysqlconnector(MySQLDialect): execution_ctx_cls = MySQLExecutionContext_mysqlconnector - preparer = MySQLIdentifierPreparer_mysqlconnector + preparer: type[MySQLIdentifierPreparer] = ( + MySQLIdentifierPreparer_mysqlconnector + ) colspecs = util.update_copy(MySQLDialect.colspecs, {BIT: _myconnpyBIT}) @classmethod - def import_dbapi(cls): - from mysql import connector + def import_dbapi(cls) -> DBAPIModule: + return cast("DBAPIModule", __import__("mysql.connector").connector) - return connector - - def do_ping(self, dbapi_connection): + def do_ping(self, dbapi_connection: DBAPIConnection) -> bool: dbapi_connection.ping(False) return True - def create_connect_args(self, url): + def create_connect_args(self, url: URL) -> ConnectArgsType: opts = url.translate_connect_args(username="user") opts.update(url.query) @@ -169,7 +203,9 @@ def create_connect_args(self, url): # supports_sane_rowcount. if self.dbapi is not None: try: - from mysql.connector.constants import ClientFlag + from mysql.connector import constants # type: ignore + + ClientFlag = constants.ClientFlag client_flags = opts.get( "client_flags", ClientFlag.get_default() @@ -179,27 +215,33 @@ def create_connect_args(self, url): except Exception: pass - return [[], opts] + return [], opts @util.memoized_property - def _mysqlconnector_version_info(self): + def _mysqlconnector_version_info(self) -> Optional[Tuple[int, ...]]: if self.dbapi and hasattr(self.dbapi, "__version__"): m = re.match(r"(\d+)\.(\d+)(?:\.(\d+))?", self.dbapi.__version__) if m: return tuple(int(x) for x in m.group(1, 2, 3) if x is not None) + return None - def _detect_charset(self, connection): - return connection.connection.charset + def _detect_charset(self, connection: Connection) -> str: + return connection.connection.charset # type: ignore - def _extract_error_code(self, exception): - return exception.errno + def _extract_error_code(self, exception: BaseException) -> int: + return exception.errno # type: ignore - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: Exception, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: errnos = (2006, 2013, 2014, 2045, 2055, 2048) exceptions = ( - self.dbapi.OperationalError, - self.dbapi.InterfaceError, - self.dbapi.ProgrammingError, + self.loaded_dbapi.OperationalError, # + self.loaded_dbapi.InterfaceError, + self.loaded_dbapi.ProgrammingError, ) if isinstance(e, exceptions): return ( @@ -210,13 +252,23 @@ def is_disconnect(self, e, connection, cursor): else: return False - def _compat_fetchall(self, rp, charset=None): + def _compat_fetchall( + self, + rp: CursorResult[Tuple[Any, ...]], + charset: Optional[str] = None, + ) -> Sequence[Row[Tuple[Any, ...]]]: return rp.fetchall() - def _compat_fetchone(self, rp, charset=None): + def _compat_fetchone( + self, + rp: CursorResult[Tuple[Any, ...]], + charset: Optional[str] = None, + ) -> Optional[Row[Tuple[Any, ...]]]: return rp.fetchone() - def get_isolation_level_values(self, dbapi_connection): + def get_isolation_level_values( + self, dbapi_conn: DBAPIConnection + ) -> Sequence[IsolationLevel]: return ( "SERIALIZABLE", "READ UNCOMMITTED", @@ -225,12 +277,17 @@ def get_isolation_level_values(self, dbapi_connection): "AUTOCOMMIT", ) - def set_isolation_level(self, connection, level): + def detect_autocommit_setting(self, dbapi_conn: DBAPIConnection) -> bool: + return bool(dbapi_conn.autocommit) + + def set_isolation_level( + self, dbapi_connection: DBAPIConnection, level: IsolationLevel + ) -> None: if level == "AUTOCOMMIT": - connection.autocommit = True + dbapi_connection.autocommit = True else: - connection.autocommit = False - super().set_isolation_level(connection, level) + dbapi_connection.autocommit = False + super().set_isolation_level(dbapi_connection, level) class MariaDBDialect_mysqlconnector( diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqldb.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqldb.py index 3cf56c1fd..188668be7 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqldb.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/mysqldb.py @@ -1,11 +1,9 @@ # dialects/mysql/mysqldb.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors - """ @@ -86,16 +84,35 @@ The mysqldb dialect supports server-side cursors. See :ref:`mysql_ss_cursors`. """ +from __future__ import annotations import re +from typing import Any +from typing import Callable +from typing import cast +from typing import Dict +from typing import Optional +from typing import Tuple +from typing import TYPE_CHECKING from .base import MySQLCompiler from .base import MySQLDialect from .base import MySQLExecutionContext from .base import MySQLIdentifierPreparer -from .base import TEXT -from ... import sql from ... import util +from ...util.typing import Literal + +if TYPE_CHECKING: + + from ...engine.base import Connection + from ...engine.interfaces import _DBAPIMultiExecuteParams + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import ExecutionContext + from ...engine.interfaces import IsolationLevel + from ...engine.url import URL class MySQLExecutionContext_mysqldb(MySQLExecutionContext): @@ -119,8 +136,9 @@ class MySQLDialect_mysqldb(MySQLDialect): execution_ctx_cls = MySQLExecutionContext_mysqldb statement_compiler = MySQLCompiler_mysqldb preparer = MySQLIdentifierPreparer + server_version_info: Tuple[int, ...] - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any): super().__init__(**kwargs) self._mysql_dbapi_version = ( self._parse_dbapi_version(self.dbapi.__version__) @@ -128,7 +146,7 @@ def __init__(self, **kwargs): else (0, 0, 0) ) - def _parse_dbapi_version(self, version): + def _parse_dbapi_version(self, version: str) -> Tuple[int, ...]: m = re.match(r"(\d+)\.(\d+)(?:\.(\d+))?", version) if m: return tuple(int(x) for x in m.group(1, 2, 3) if x is not None) @@ -136,7 +154,7 @@ def _parse_dbapi_version(self, version): return (0, 0, 0) @util.langhelpers.memoized_property - def supports_server_side_cursors(self): + def supports_server_side_cursors(self) -> bool: try: cursors = __import__("MySQLdb.cursors").cursors self._sscursor = cursors.SSCursor @@ -145,13 +163,13 @@ def supports_server_side_cursors(self): return False @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> DBAPIModule: return __import__("MySQLdb") - def on_connect(self): + def on_connect(self) -> Callable[[DBAPIConnection], None]: super_ = super().on_connect() - def on_connect(conn): + def on_connect(conn: DBAPIConnection) -> None: if super_ is not None: super_(conn) @@ -164,43 +182,24 @@ def on_connect(conn): return on_connect - def do_ping(self, dbapi_connection): + def do_ping(self, dbapi_connection: DBAPIConnection) -> Literal[True]: dbapi_connection.ping() return True - def do_executemany(self, cursor, statement, parameters, context=None): + def do_executemany( + self, + cursor: DBAPICursor, + statement: str, + parameters: _DBAPIMultiExecuteParams, + context: Optional[ExecutionContext] = None, + ) -> None: rowcount = cursor.executemany(statement, parameters) if context is not None: - context._rowcount = rowcount - - def _check_unicode_returns(self, connection): - # work around issue fixed in - # https://github.com/farcepest/MySQLdb1/commit/cd44524fef63bd3fcb71947392326e9742d520e8 - # specific issue w/ the utf8mb4_bin collation and unicode returns - - collation = connection.exec_driver_sql( - "show collation where %s = 'utf8mb4' and %s = 'utf8mb4_bin'" - % ( - self.identifier_preparer.quote("Charset"), - self.identifier_preparer.quote("Collation"), - ) - ).scalar() - has_utf8mb4_bin = self.server_version_info > (5,) and collation - if has_utf8mb4_bin: - additional_tests = [ - sql.collate( - sql.cast( - sql.literal_column("'test collated returns'"), - TEXT(charset="utf8mb4"), - ), - "utf8mb4_bin", - ) - ] - else: - additional_tests = [] - return super()._check_unicode_returns(connection, additional_tests) + cast(MySQLExecutionContext, context)._rowcount = rowcount - def create_connect_args(self, url, _translate_args=None): + def create_connect_args( + self, url: URL, _translate_args: Optional[Dict[str, Any]] = None + ) -> ConnectArgsType: if _translate_args is None: _translate_args = dict( database="db", username="user", password="passwd" @@ -249,9 +248,9 @@ def create_connect_args(self, url, _translate_args=None): if client_flag_found_rows is not None: client_flag |= client_flag_found_rows opts["client_flag"] = client_flag - return [[], opts] + return [], opts - def _found_rows_client_flag(self): + def _found_rows_client_flag(self) -> Optional[int]: if self.dbapi is not None: try: CLIENT_FLAGS = __import__( @@ -260,20 +259,23 @@ def _found_rows_client_flag(self): except (AttributeError, ImportError): return None else: - return CLIENT_FLAGS.FOUND_ROWS + return CLIENT_FLAGS.FOUND_ROWS # type: ignore else: return None - def _extract_error_code(self, exception): - return exception.args[0] + def _extract_error_code(self, exception: DBAPIModule.Error) -> int: + return exception.args[0] # type: ignore[no-any-return] - def _detect_charset(self, connection): + def _detect_charset(self, connection: Connection) -> str: """Sniff out the character set in use for connection results.""" try: # note: the SQL here would be # "SHOW VARIABLES LIKE 'character_set%%'" - cset_name = connection.connection.character_set_name + + cset_name: Callable[[], str] = ( + connection.connection.character_set_name + ) except AttributeError: util.warn( "No 'character_set_name' can be detected with " @@ -285,7 +287,9 @@ def _detect_charset(self, connection): else: return cset_name() - def get_isolation_level_values(self, dbapi_connection): + def get_isolation_level_values( + self, dbapi_conn: DBAPIConnection + ) -> Tuple[IsolationLevel, ...]: return ( "SERIALIZABLE", "READ UNCOMMITTED", @@ -294,7 +298,12 @@ def get_isolation_level_values(self, dbapi_connection): "AUTOCOMMIT", ) - def set_isolation_level(self, dbapi_connection, level): + def detect_autocommit_setting(self, dbapi_conn: DBAPIConnection) -> bool: + return dbapi_conn.get_autocommit() # type: ignore[no-any-return] + + def set_isolation_level( + self, dbapi_connection: DBAPIConnection, level: IsolationLevel + ) -> None: if level == "AUTOCOMMIT": dbapi_connection.autocommit(True) else: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/provision.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/provision.py index 46070848c..46cd8abf7 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/provision.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/provision.py @@ -1,14 +1,18 @@ # dialects/mysql/provision.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php # mypy: ignore-errors +import contextlib +from ... import event from ... import exc +from ...testing.provision import allow_stale_update_impl from ...testing.provision import configure_follower from ...testing.provision import create_db +from ...testing.provision import delete_from_all_tables from ...testing.provision import drop_db from ...testing.provision import generate_driver_url from ...testing.provision import temp_table_keyword_args @@ -96,7 +100,13 @@ def _mysql_temp_table_keyword_args(cfg, eng): @upsert.for_db("mariadb") def _upsert( - cfg, table, returning, *, set_lambda=None, sort_by_parameter_order=False + cfg, + table, + returning, + *, + set_lambda=None, + sort_by_parameter_order=False, + index_elements=None, ): from sqlalchemy.dialects.mysql import insert @@ -112,3 +122,32 @@ def _upsert( *returning, sort_by_parameter_order=sort_by_parameter_order ) return stmt + + +@delete_from_all_tables.for_db("mysql", "mariadb") +def _delete_from_all_tables(connection, cfg, metadata): + connection.exec_driver_sql("SET foreign_key_checks = 0") + try: + delete_from_all_tables.call_original(connection, cfg, metadata) + finally: + connection.exec_driver_sql("SET foreign_key_checks = 1") + + +@allow_stale_update_impl.for_db("mariadb") +def _allow_stale_update_impl(cfg): + @contextlib.contextmanager + def go(): + @event.listens_for(cfg.db, "engine_connect") + def turn_off_snapshot_isolation(conn): + conn.exec_driver_sql("SET innodb_snapshot_isolation = 'OFF'") + conn.rollback() + + try: + yield + finally: + event.remove(cfg.db, "engine_connect", turn_off_snapshot_isolation) + + # dispose the pool; quick way to just have those reset + cfg.db.dispose() + + return go() diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pymysql.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pymysql.py index 67cb4cdd7..ae86938e6 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pymysql.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pymysql.py @@ -1,11 +1,9 @@ # dialects/mysql/pymysql.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors - r""" @@ -49,9 +47,26 @@ to the pymysql driver as well. """ # noqa +from __future__ import annotations + +from typing import Any +from typing import Dict +from typing import Optional +from typing import TYPE_CHECKING +from typing import Union from .mysqldb import MySQLDialect_mysqldb from ...util import langhelpers +from ...util.typing import Literal + +if TYPE_CHECKING: + + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import PoolProxiedConnection + from ...engine.url import URL class MySQLDialect_pymysql(MySQLDialect_mysqldb): @@ -61,7 +76,7 @@ class MySQLDialect_pymysql(MySQLDialect_mysqldb): description_encoding = None @langhelpers.memoized_property - def supports_server_side_cursors(self): + def supports_server_side_cursors(self) -> bool: try: cursors = __import__("pymysql.cursors").cursors self._sscursor = cursors.SSCursor @@ -70,11 +85,11 @@ def supports_server_side_cursors(self): return False @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> DBAPIModule: return __import__("pymysql") @langhelpers.memoized_property - def _send_false_to_ping(self): + def _send_false_to_ping(self) -> bool: """determine if pymysql has deprecated, changed the default of, or removed the 'reconnect' argument of connection.ping(). @@ -101,7 +116,7 @@ def _send_false_to_ping(self): not insp.defaults or insp.defaults[0] is not False ) - def do_ping(self, dbapi_connection): + def do_ping(self, dbapi_connection: DBAPIConnection) -> Literal[True]: if self._send_false_to_ping: dbapi_connection.ping(False) else: @@ -109,17 +124,24 @@ def do_ping(self, dbapi_connection): return True - def create_connect_args(self, url, _translate_args=None): + def create_connect_args( + self, url: URL, _translate_args: Optional[Dict[str, Any]] = None + ) -> ConnectArgsType: if _translate_args is None: _translate_args = dict(username="user") return super().create_connect_args( url, _translate_args=_translate_args ) - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: if super().is_disconnect(e, connection, cursor): return True - elif isinstance(e, self.dbapi.Error): + elif isinstance(e, self.loaded_dbapi.Error): str_e = str(e).lower() return ( "already closed" in str_e or "connection was killed" in str_e @@ -127,7 +149,7 @@ def is_disconnect(self, e, connection, cursor): else: return False - def _extract_error_code(self, exception): + def _extract_error_code(self, exception: BaseException) -> Any: if isinstance(exception.args[0], Exception): exception = exception.args[0] return exception.args[0] diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pyodbc.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pyodbc.py index 6d44bd383..bb37ff0e5 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pyodbc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/pyodbc.py @@ -1,15 +1,13 @@ # dialects/mysql/pyodbc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" - .. dialect:: mysql+pyodbc :name: PyODBC :dbapi: pyodbc @@ -44,8 +42,16 @@ connection_uri = "mysql+pyodbc:///?odbc_connect=%s" % params """ # noqa +from __future__ import annotations +import datetime import re +from typing import Any +from typing import Callable +from typing import Optional +from typing import Tuple +from typing import TYPE_CHECKING +from typing import Union from .base import MySQLDialect from .base import MySQLExecutionContext @@ -55,23 +61,31 @@ from ...connectors.pyodbc import PyODBCConnector from ...sql.sqltypes import Time +if TYPE_CHECKING: + from ...engine import Connection + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import Dialect + from ...sql.type_api import _ResultProcessorType + class _pyodbcTIME(TIME): - def result_processor(self, dialect, coltype): - def process(value): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> _ResultProcessorType[datetime.time]: + def process(value: Any) -> Union[datetime.time, None]: # pyodbc returns a datetime.time object; no need to convert - return value + return value # type: ignore[no-any-return] return process class MySQLExecutionContext_pyodbc(MySQLExecutionContext): - def get_lastrowid(self): + def get_lastrowid(self) -> int: cursor = self.create_cursor() cursor.execute("SELECT LAST_INSERT_ID()") - lastrowid = cursor.fetchone()[0] + lastrowid = cursor.fetchone()[0] # type: ignore[index] cursor.close() - return lastrowid + return lastrowid # type: ignore[no-any-return] class MySQLDialect_pyodbc(PyODBCConnector, MySQLDialect): @@ -82,7 +96,7 @@ class MySQLDialect_pyodbc(PyODBCConnector, MySQLDialect): pyodbc_driver_name = "MySQL" - def _detect_charset(self, connection): + def _detect_charset(self, connection: Connection) -> str: """Sniff out the character set in use for connection results.""" # Prefer 'character_set_results' for the current connection over the @@ -107,21 +121,25 @@ def _detect_charset(self, connection): ) return "latin1" - def _get_server_version_info(self, connection): + def _get_server_version_info( + self, connection: Connection + ) -> Tuple[int, ...]: return MySQLDialect._get_server_version_info(self, connection) - def _extract_error_code(self, exception): + def _extract_error_code(self, exception: BaseException) -> Optional[int]: m = re.compile(r"\((\d+)\)").search(str(exception.args)) - c = m.group(1) + if m is None: + return None + c: Optional[str] = m.group(1) if c: return int(c) else: return None - def on_connect(self): + def on_connect(self) -> Callable[[DBAPIConnection], None]: super_ = super().on_connect() - def on_connect(conn): + def on_connect(conn: DBAPIConnection) -> None: if super_ is not None: super_(conn) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reflection.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reflection.py index d62390bb8..c9dfb1308 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reflection.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reflection.py @@ -1,46 +1,65 @@ # dialects/mysql/reflection.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors - +from __future__ import annotations import re +from typing import Any +from typing import Callable +from typing import Dict +from typing import List +from typing import Optional +from typing import overload +from typing import Sequence +from typing import Tuple +from typing import TYPE_CHECKING +from typing import Union from .enumerated import ENUM from .enumerated import SET from .types import DATETIME from .types import TIME from .types import TIMESTAMP -from ... import log from ... import types as sqltypes from ... import util +from ...util.typing import Literal + +if TYPE_CHECKING: + from .base import MySQLDialect + from .base import MySQLIdentifierPreparer + from ...engine.interfaces import ReflectedColumn class ReflectedState: """Stores raw information about a SHOW CREATE TABLE statement.""" - def __init__(self): - self.columns = [] - self.table_options = {} - self.table_name = None - self.keys = [] - self.fk_constraints = [] - self.ck_constraints = [] + charset: Optional[str] + + def __init__(self) -> None: + self.columns: List[ReflectedColumn] = [] + self.table_options: Dict[str, str] = {} + self.table_name: Optional[str] = None + self.keys: List[Dict[str, Any]] = [] + self.fk_constraints: List[Dict[str, Any]] = [] + self.ck_constraints: List[Dict[str, Any]] = [] -@log.class_logger class MySQLTableDefinitionParser: """Parses the results of a SHOW CREATE TABLE statement.""" - def __init__(self, dialect, preparer): + def __init__( + self, dialect: MySQLDialect, preparer: MySQLIdentifierPreparer + ): self.dialect = dialect self.preparer = preparer self._prep_regexes() - def parse(self, show_create, charset): + def parse( + self, show_create: str, charset: Optional[str] + ) -> ReflectedState: state = ReflectedState() state.charset = charset for line in re.split(r"\r?\n", show_create): @@ -65,11 +84,11 @@ def parse(self, show_create, charset): if type_ is None: util.warn("Unknown schema content: %r" % line) elif type_ == "key": - state.keys.append(spec) + state.keys.append(spec) # type: ignore[arg-type] elif type_ == "fk_constraint": - state.fk_constraints.append(spec) + state.fk_constraints.append(spec) # type: ignore[arg-type] elif type_ == "ck_constraint": - state.ck_constraints.append(spec) + state.ck_constraints.append(spec) # type: ignore[arg-type] else: pass return state @@ -77,7 +96,13 @@ def parse(self, show_create, charset): def _check_view(self, sql: str) -> bool: return bool(self._re_is_view.match(sql)) - def _parse_constraints(self, line): + def _parse_constraints(self, line: str) -> Union[ + Tuple[None, str], + Tuple[Literal["partition"], str], + Tuple[ + Literal["ck_constraint", "fk_constraint", "key"], Dict[str, str] + ], + ]: """Parse a KEY or CONSTRAINT line. :param line: A line of SHOW CREATE TABLE output @@ -127,7 +152,7 @@ def _parse_constraints(self, line): # No match. return (None, line) - def _parse_table_name(self, line, state): + def _parse_table_name(self, line: str, state: ReflectedState) -> None: """Extract the table name. :param line: The first line of SHOW CREATE TABLE @@ -138,7 +163,7 @@ def _parse_table_name(self, line, state): if m: state.table_name = cleanup(m.group("name")) - def _parse_table_options(self, line, state): + def _parse_table_options(self, line: str, state: ReflectedState) -> None: """Build a dictionary of all reflected table-level options. :param line: The final line of SHOW CREATE TABLE output. @@ -164,7 +189,9 @@ def _parse_table_options(self, line, state): for opt, val in options.items(): state.table_options["%s_%s" % (self.dialect.name, opt)] = val - def _parse_partition_options(self, line, state): + def _parse_partition_options( + self, line: str, state: ReflectedState + ) -> None: options = {} new_line = line[:] @@ -220,7 +247,7 @@ def _parse_partition_options(self, line, state): else: state.table_options["%s_%s" % (self.dialect.name, opt)] = val - def _parse_column(self, line, state): + def _parse_column(self, line: str, state: ReflectedState) -> None: """Extract column details. Falls back to a 'minimal support' variant if full parse fails. @@ -283,7 +310,7 @@ def _parse_column(self, line, state): type_instance = col_type(*type_args, **type_kw) - col_kw = {} + col_kw: Dict[str, Any] = {} # NOT NULL col_kw["nullable"] = True @@ -324,9 +351,13 @@ def _parse_column(self, line, state): name=name, type=type_instance, default=default, comment=comment ) col_d.update(col_kw) - state.columns.append(col_d) + state.columns.append(col_d) # type: ignore[arg-type] - def _describe_to_create(self, table_name, columns): + def _describe_to_create( + self, + table_name: str, + columns: Sequence[Tuple[str, str, str, str, str, str]], + ) -> str: """Re-format DESCRIBE output as a SHOW CREATE TABLE string. DESCRIBE is a much simpler reflection and is sufficient for @@ -379,7 +410,9 @@ def _describe_to_create(self, table_name, columns): ] ) - def _parse_keyexprs(self, identifiers): + def _parse_keyexprs( + self, identifiers: str + ) -> List[Tuple[str, Optional[int], str]]: """Unpack '"col"(2),"col" ASC'-ish strings into components.""" return [ @@ -389,11 +422,12 @@ def _parse_keyexprs(self, identifiers): ) ] - def _prep_regexes(self): + def _prep_regexes(self) -> None: """Pre-compile regular expressions.""" - self._re_columns = [] - self._pr_options = [] + self._pr_options: List[ + Tuple[re.Pattern[Any], Optional[Callable[[str], str]]] + ] = [] _final = self.preparer.final_quote @@ -582,21 +616,21 @@ def _prep_regexes(self): _optional_equals = r"(?:\s*(?:=\s*)|\s+)" - def _add_option_string(self, directive): + def _add_option_string(self, directive: str) -> None: regex = r"(?P%s)%s" r"'(?P(?:[^']|'')*?)'(?!')" % ( re.escape(directive), self._optional_equals, ) self._pr_options.append(_pr_compile(regex, cleanup_text)) - def _add_option_word(self, directive): + def _add_option_word(self, directive: str) -> None: regex = r"(?P%s)%s" r"(?P\w+)" % ( re.escape(directive), self._optional_equals, ) self._pr_options.append(_pr_compile(regex)) - def _add_partition_option_word(self, directive): + def _add_partition_option_word(self, directive: str) -> None: if directive == "PARTITION BY" or directive == "SUBPARTITION BY": regex = r"(?%s)%s" r"(?P\w+.*)" % ( re.escape(directive), @@ -611,7 +645,7 @@ def _add_partition_option_word(self, directive): regex = r"(?%s)(?!\S)" % (re.escape(directive),) self._pr_options.append(_pr_compile(regex)) - def _add_option_regex(self, directive, regex): + def _add_option_regex(self, directive: str, regex: str) -> None: regex = r"(?P%s)%s" r"(?P%s)" % ( re.escape(directive), self._optional_equals, @@ -629,21 +663,35 @@ def _add_option_regex(self, directive, regex): ) -def _pr_compile(regex, cleanup=None): +@overload +def _pr_compile( + regex: str, cleanup: Callable[[str], str] +) -> Tuple[re.Pattern[Any], Callable[[str], str]]: ... + + +@overload +def _pr_compile( + regex: str, cleanup: None = None +) -> Tuple[re.Pattern[Any], None]: ... + + +def _pr_compile( + regex: str, cleanup: Optional[Callable[[str], str]] = None +) -> Tuple[re.Pattern[Any], Optional[Callable[[str], str]]]: """Prepare a 2-tuple of compiled regex and callable.""" return (_re_compile(regex), cleanup) -def _re_compile(regex): +def _re_compile(regex: str) -> re.Pattern[Any]: """Compile a string to regex, I and UNICODE.""" return re.compile(regex, re.I | re.UNICODE) -def _strip_values(values): +def _strip_values(values: Sequence[str]) -> List[str]: "Strip reflected values quotes" - strip_values = [] + strip_values: List[str] = [] for a in values: if a[0:1] == '"' or a[0:1] == "'": # strip enclosing quotes and unquote interior @@ -655,7 +703,9 @@ def _strip_values(values): def cleanup_text(raw_text: str) -> str: if "\\" in raw_text: raw_text = re.sub( - _control_char_regexp, lambda s: _control_char_map[s[0]], raw_text + _control_char_regexp, + lambda s: _control_char_map[s[0]], # type: ignore[index] + raw_text, ) return raw_text.replace("''", "'") diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reserved_words.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reserved_words.py index 34fecf427..5f9e4573e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reserved_words.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/reserved_words.py @@ -1,5 +1,5 @@ # dialects/mysql/reserved_words.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -11,7 +11,6 @@ # https://mariadb.com/kb/en/reserved-words/ # includes: Reserved Words, Oracle Mode (separate set unioned) # excludes: Exceptions, Function Names -# mypy: ignore-errors RESERVED_WORDS_MARIADB = { "accessible", diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/types.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/types.py index ace6824a7..170324fa3 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/types.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/mysql/types.py @@ -1,18 +1,30 @@ # dialects/mysql/types.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors - +from __future__ import annotations import datetime +import decimal +from typing import Any +from typing import Iterable +from typing import Optional +from typing import TYPE_CHECKING +from typing import Union from ... import exc from ... import util from ...sql import sqltypes +if TYPE_CHECKING: + from .base import MySQLDialect + from ...engine.interfaces import Dialect + from ...sql.type_api import _BindProcessorType + from ...sql.type_api import _ResultProcessorType + from ...sql.type_api import TypeEngine + class _NumericType: """Base for MySQL numeric types. @@ -22,19 +34,27 @@ class _NumericType: """ - def __init__(self, unsigned=False, zerofill=False, **kw): + def __init__( + self, unsigned: bool = False, zerofill: bool = False, **kw: Any + ): self.unsigned = unsigned self.zerofill = zerofill super().__init__(**kw) - def __repr__(self): + def __repr__(self) -> str: return util.generic_repr( self, to_inspect=[_NumericType, sqltypes.Numeric] ) -class _FloatType(_NumericType, sqltypes.Float): - def __init__(self, precision=None, scale=None, asdecimal=True, **kw): +class _FloatType(_NumericType, sqltypes.Float[Union[decimal.Decimal, float]]): + def __init__( + self, + precision: Optional[int] = None, + scale: Optional[int] = None, + asdecimal: bool = True, + **kw: Any, + ): if isinstance(self, (REAL, DOUBLE)) and ( (precision is None and scale is not None) or (precision is not None and scale is None) @@ -46,18 +66,18 @@ def __init__(self, precision=None, scale=None, asdecimal=True, **kw): super().__init__(precision=precision, asdecimal=asdecimal, **kw) self.scale = scale - def __repr__(self): + def __repr__(self) -> str: return util.generic_repr( self, to_inspect=[_FloatType, _NumericType, sqltypes.Float] ) class _IntegerType(_NumericType, sqltypes.Integer): - def __init__(self, display_width=None, **kw): + def __init__(self, display_width: Optional[int] = None, **kw: Any): self.display_width = display_width super().__init__(**kw) - def __repr__(self): + def __repr__(self) -> str: return util.generic_repr( self, to_inspect=[_IntegerType, _NumericType, sqltypes.Integer] ) @@ -68,13 +88,13 @@ class _StringType(sqltypes.String): def __init__( self, - charset=None, - collation=None, - ascii=False, # noqa - binary=False, - unicode=False, - national=False, - **kw, + charset: Optional[str] = None, + collation: Optional[str] = None, + ascii: bool = False, # noqa + binary: bool = False, + unicode: bool = False, + national: bool = False, + **kw: Any, ): self.charset = charset @@ -87,25 +107,33 @@ def __init__( self.national = national super().__init__(**kw) - def __repr__(self): + def __repr__(self) -> str: return util.generic_repr( self, to_inspect=[_StringType, sqltypes.String] ) -class _MatchType(sqltypes.Float, sqltypes.MatchType): - def __init__(self, **kw): +class _MatchType( + sqltypes.Float[Union[decimal.Decimal, float]], sqltypes.MatchType +): + def __init__(self, **kw: Any): # TODO: float arguments? - sqltypes.Float.__init__(self) + sqltypes.Float.__init__(self) # type: ignore[arg-type] sqltypes.MatchType.__init__(self) -class NUMERIC(_NumericType, sqltypes.NUMERIC): +class NUMERIC(_NumericType, sqltypes.NUMERIC[Union[decimal.Decimal, float]]): """MySQL NUMERIC type.""" __visit_name__ = "NUMERIC" - def __init__(self, precision=None, scale=None, asdecimal=True, **kw): + def __init__( + self, + precision: Optional[int] = None, + scale: Optional[int] = None, + asdecimal: bool = True, + **kw: Any, + ): """Construct a NUMERIC. :param precision: Total digits in this number. If scale and precision @@ -126,12 +154,18 @@ def __init__(self, precision=None, scale=None, asdecimal=True, **kw): ) -class DECIMAL(_NumericType, sqltypes.DECIMAL): +class DECIMAL(_NumericType, sqltypes.DECIMAL[Union[decimal.Decimal, float]]): """MySQL DECIMAL type.""" __visit_name__ = "DECIMAL" - def __init__(self, precision=None, scale=None, asdecimal=True, **kw): + def __init__( + self, + precision: Optional[int] = None, + scale: Optional[int] = None, + asdecimal: bool = True, + **kw: Any, + ): """Construct a DECIMAL. :param precision: Total digits in this number. If scale and precision @@ -152,12 +186,18 @@ def __init__(self, precision=None, scale=None, asdecimal=True, **kw): ) -class DOUBLE(_FloatType, sqltypes.DOUBLE): +class DOUBLE(_FloatType, sqltypes.DOUBLE[Union[decimal.Decimal, float]]): """MySQL DOUBLE type.""" __visit_name__ = "DOUBLE" - def __init__(self, precision=None, scale=None, asdecimal=True, **kw): + def __init__( + self, + precision: Optional[int] = None, + scale: Optional[int] = None, + asdecimal: bool = True, + **kw: Any, + ): """Construct a DOUBLE. .. note:: @@ -186,12 +226,18 @@ def __init__(self, precision=None, scale=None, asdecimal=True, **kw): ) -class REAL(_FloatType, sqltypes.REAL): +class REAL(_FloatType, sqltypes.REAL[Union[decimal.Decimal, float]]): """MySQL REAL type.""" __visit_name__ = "REAL" - def __init__(self, precision=None, scale=None, asdecimal=True, **kw): + def __init__( + self, + precision: Optional[int] = None, + scale: Optional[int] = None, + asdecimal: bool = True, + **kw: Any, + ): """Construct a REAL. .. note:: @@ -220,12 +266,18 @@ def __init__(self, precision=None, scale=None, asdecimal=True, **kw): ) -class FLOAT(_FloatType, sqltypes.FLOAT): +class FLOAT(_FloatType, sqltypes.FLOAT[Union[decimal.Decimal, float]]): """MySQL FLOAT type.""" __visit_name__ = "FLOAT" - def __init__(self, precision=None, scale=None, asdecimal=False, **kw): + def __init__( + self, + precision: Optional[int] = None, + scale: Optional[int] = None, + asdecimal: bool = False, + **kw: Any, + ): """Construct a FLOAT. :param precision: Total digits in this number. If scale and precision @@ -245,7 +297,9 @@ def __init__(self, precision=None, scale=None, asdecimal=False, **kw): precision=precision, scale=scale, asdecimal=asdecimal, **kw ) - def bind_processor(self, dialect): + def bind_processor( + self, dialect: Dialect + ) -> Optional[_BindProcessorType[Union[decimal.Decimal, float]]]: return None @@ -254,7 +308,7 @@ class INTEGER(_IntegerType, sqltypes.INTEGER): __visit_name__ = "INTEGER" - def __init__(self, display_width=None, **kw): + def __init__(self, display_width: Optional[int] = None, **kw: Any): """Construct an INTEGER. :param display_width: Optional, maximum display width for this number. @@ -275,7 +329,7 @@ class BIGINT(_IntegerType, sqltypes.BIGINT): __visit_name__ = "BIGINT" - def __init__(self, display_width=None, **kw): + def __init__(self, display_width: Optional[int] = None, **kw: Any): """Construct a BIGINTEGER. :param display_width: Optional, maximum display width for this number. @@ -296,7 +350,7 @@ class MEDIUMINT(_IntegerType): __visit_name__ = "MEDIUMINT" - def __init__(self, display_width=None, **kw): + def __init__(self, display_width: Optional[int] = None, **kw: Any): """Construct a MEDIUMINTEGER :param display_width: Optional, maximum display width for this number. @@ -317,7 +371,7 @@ class TINYINT(_IntegerType): __visit_name__ = "TINYINT" - def __init__(self, display_width=None, **kw): + def __init__(self, display_width: Optional[int] = None, **kw: Any): """Construct a TINYINT. :param display_width: Optional, maximum display width for this number. @@ -332,13 +386,19 @@ def __init__(self, display_width=None, **kw): """ super().__init__(display_width=display_width, **kw) + def _compare_type_affinity(self, other: TypeEngine[Any]) -> bool: + return ( + self._type_affinity is other._type_affinity + or other._type_affinity is sqltypes.Boolean + ) + class SMALLINT(_IntegerType, sqltypes.SMALLINT): """MySQL SMALLINTEGER type.""" __visit_name__ = "SMALLINT" - def __init__(self, display_width=None, **kw): + def __init__(self, display_width: Optional[int] = None, **kw: Any): """Construct a SMALLINTEGER. :param display_width: Optional, maximum display width for this number. @@ -354,7 +414,7 @@ def __init__(self, display_width=None, **kw): super().__init__(display_width=display_width, **kw) -class BIT(sqltypes.TypeEngine): +class BIT(sqltypes.TypeEngine[Any]): """MySQL BIT type. This type is for MySQL 5.0.3 or greater for MyISAM, and 5.0.5 or greater @@ -365,7 +425,7 @@ class BIT(sqltypes.TypeEngine): __visit_name__ = "BIT" - def __init__(self, length=None): + def __init__(self, length: Optional[int] = None): """Construct a BIT. :param length: Optional, number of bits. @@ -373,19 +433,19 @@ def __init__(self, length=None): """ self.length = length - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: MySQLDialect, coltype: object # type: ignore[override] + ) -> Optional[_ResultProcessorType[Any]]: """Convert a MySQL's 64 bit, variable length binary string to a long.""" if dialect.supports_native_bit: return None - def process(value): + def process(value: Optional[Iterable[int]]) -> Optional[int]: if value is not None: v = 0 for i in value: - if not isinstance(i, int): - i = ord(i) # convert byte to int on Python 2 v = v << 8 | i return v return value @@ -398,7 +458,7 @@ class TIME(sqltypes.TIME): __visit_name__ = "TIME" - def __init__(self, timezone=False, fsp=None): + def __init__(self, timezone: bool = False, fsp: Optional[int] = None): """Construct a MySQL TIME type. :param timezone: not used by the MySQL dialect. @@ -417,10 +477,12 @@ def __init__(self, timezone=False, fsp=None): super().__init__(timezone=timezone) self.fsp = fsp - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> _ResultProcessorType[datetime.time]: time = datetime.time - def process(value): + def process(value: Any) -> Optional[datetime.time]: # convert from a timedelta value if value is not None: microseconds = value.microseconds @@ -443,7 +505,7 @@ class TIMESTAMP(sqltypes.TIMESTAMP): __visit_name__ = "TIMESTAMP" - def __init__(self, timezone=False, fsp=None): + def __init__(self, timezone: bool = False, fsp: Optional[int] = None): """Construct a MySQL TIMESTAMP type. :param timezone: not used by the MySQL dialect. @@ -468,7 +530,7 @@ class DATETIME(sqltypes.DATETIME): __visit_name__ = "DATETIME" - def __init__(self, timezone=False, fsp=None): + def __init__(self, timezone: bool = False, fsp: Optional[int] = None): """Construct a MySQL DATETIME type. :param timezone: not used by the MySQL dialect. @@ -488,12 +550,12 @@ def __init__(self, timezone=False, fsp=None): self.fsp = fsp -class YEAR(sqltypes.TypeEngine): +class YEAR(sqltypes.TypeEngine[Any]): """MySQL YEAR type, for single byte storage of years 1901-2155.""" __visit_name__ = "YEAR" - def __init__(self, display_width=None): + def __init__(self, display_width: Optional[int] = None): self.display_width = display_width @@ -502,7 +564,7 @@ class TEXT(_StringType, sqltypes.TEXT): __visit_name__ = "TEXT" - def __init__(self, length=None, **kw): + def __init__(self, length: Optional[int] = None, **kw: Any): """Construct a TEXT. :param length: Optional, if provided the server may optimize storage @@ -538,7 +600,7 @@ class TINYTEXT(_StringType): __visit_name__ = "TINYTEXT" - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any): """Construct a TINYTEXT. :param charset: Optional, a column-level character set for this string @@ -571,7 +633,7 @@ class MEDIUMTEXT(_StringType): __visit_name__ = "MEDIUMTEXT" - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any): """Construct a MEDIUMTEXT. :param charset: Optional, a column-level character set for this string @@ -603,7 +665,7 @@ class LONGTEXT(_StringType): __visit_name__ = "LONGTEXT" - def __init__(self, **kwargs): + def __init__(self, **kwargs: Any): """Construct a LONGTEXT. :param charset: Optional, a column-level character set for this string @@ -635,7 +697,7 @@ class VARCHAR(_StringType, sqltypes.VARCHAR): __visit_name__ = "VARCHAR" - def __init__(self, length=None, **kwargs): + def __init__(self, length: Optional[int] = None, **kwargs: Any) -> None: """Construct a VARCHAR. :param charset: Optional, a column-level character set for this string @@ -667,7 +729,7 @@ class CHAR(_StringType, sqltypes.CHAR): __visit_name__ = "CHAR" - def __init__(self, length=None, **kwargs): + def __init__(self, length: Optional[int] = None, **kwargs: Any): """Construct a CHAR. :param length: Maximum data length, in characters. @@ -683,7 +745,7 @@ def __init__(self, length=None, **kwargs): super().__init__(length=length, **kwargs) @classmethod - def _adapt_string_for_cast(cls, type_): + def _adapt_string_for_cast(cls, type_: sqltypes.String) -> sqltypes.CHAR: # copy the given string type into a CHAR # for the purposes of rendering a CAST expression type_ = sqltypes.to_instance(type_) @@ -712,7 +774,7 @@ class NVARCHAR(_StringType, sqltypes.NVARCHAR): __visit_name__ = "NVARCHAR" - def __init__(self, length=None, **kwargs): + def __init__(self, length: Optional[int] = None, **kwargs: Any): """Construct an NVARCHAR. :param length: Maximum data length, in characters. @@ -738,7 +800,7 @@ class NCHAR(_StringType, sqltypes.NCHAR): __visit_name__ = "NCHAR" - def __init__(self, length=None, **kwargs): + def __init__(self, length: Optional[int] = None, **kwargs: Any): """Construct an NCHAR. :param length: Maximum data length, in characters. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/__init__.py index 7ceb743d6..e4a92d186 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/__init__.py @@ -1,5 +1,5 @@ # dialects/oracle/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -32,6 +32,13 @@ from .base import TIMESTAMP from .base import VARCHAR from .base import VARCHAR2 +from .base import VECTOR +from .base import VectorIndexConfig +from .base import VectorIndexType +from .vector import SparseVector +from .vector import VectorDistanceType +from .vector import VectorStorageFormat +from .vector import VectorStorageType # Alias oracledb also as oracledb_async oracledb_async = type( @@ -64,4 +71,11 @@ "NVARCHAR2", "ROWID", "REAL", + "VECTOR", + "VectorDistanceType", + "VectorIndexType", + "VectorIndexConfig", + "VectorStorageFormat", + "VectorStorageType", + "SparseVector", ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/base.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/base.py index 02aa4d536..785ec92a6 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/base.py @@ -1,5 +1,5 @@ # dialects/oracle/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -722,11 +722,230 @@ number of prefix columns to compress, or ``True`` to use the default (all columns for non-unique indexes, all but the last column for unique indexes). +.. _oracle_vector_datatype: + +VECTOR Datatype +--------------- + +Oracle Database 23ai introduced a new VECTOR datatype for artificial intelligence +and machine learning search operations. The VECTOR datatype is a homogeneous array +of 8-bit signed integers, 8-bit unsigned integers (binary), 32-bit floating-point +numbers, or 64-bit floating-point numbers. + +A vector's storage type can be either DENSE or SPARSE. A dense vector contains +meaningful values in most or all of its dimensions. In contrast, a sparse vector +has non-zero values in only a few dimensions, with the majority being zero. + +Sparse vectors are represented by the total number of vector dimensions, an array +of indices, and an array of values where each value’s location in the vector is +indicated by the corresponding indices array position. All other vector values are +treated as zero. + +The storage formats that can be used with sparse vectors are float32, float64, and +int8. Note that the binary storage format cannot be used with sparse vectors. + +Sparse vectors are supported when you are using Oracle Database 23.7 or later. + +.. seealso:: + + `Using VECTOR Data + `_ - in the documentation + for the :ref:`oracledb` driver. + +.. versionadded:: 2.0.41 - Added VECTOR datatype + +.. versionadded:: 2.0.43 - Added DENSE/SPARSE support + +CREATE TABLE support for VECTOR +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +With the :class:`.VECTOR` datatype, you can specify the number of dimensions, +the storage format, and the storage type for the data. Valid values for the +storage format are enum members of :class:`.VectorStorageFormat`. Valid values +for the storage type are enum members of :class:`.VectorStorageType`. If +storage type is not specified, a DENSE vector is created by default. + +To create a table that includes a :class:`.VECTOR` column:: + + from sqlalchemy.dialects.oracle import ( + VECTOR, + VectorStorageFormat, + VectorStorageType, + ) + + t = Table( + "t1", + metadata, + Column("id", Integer, primary_key=True), + Column( + "embedding", + VECTOR( + dim=3, + storage_format=VectorStorageFormat.FLOAT32, + storage_type=VectorStorageType.SPARSE, + ), + ), + Column(...), + ..., + ) + +Vectors can also be defined with an arbitrary number of dimensions and formats. +This allows you to specify vectors of different dimensions with the various +storage formats mentioned below. + +**Examples** + +* In this case, the storage format is flexible, allowing any vector type data to be + inserted, such as INT8 or BINARY etc:: + + vector_col: Mapped[array.array] = mapped_column(VECTOR(dim=3)) + +* The dimension is flexible in this case, meaning that any dimension vector can + be used:: + + vector_col: Mapped[array.array] = mapped_column( + VECTOR(storage_format=VectorStorageType.INT8) + ) + +* Both the dimensions and the storage format are flexible. It creates a DENSE vector:: + + vector_col: Mapped[array.array] = mapped_column(VECTOR) + +* To create a SPARSE vector with both dimensions and the storage format as flexible, + use the :attr:`.VectorStorageType.SPARSE` storage type:: + + vector_col: Mapped[array.array] = mapped_column( + VECTOR(storage_type=VectorStorageType.SPARSE) + ) + +Python Datatypes for VECTOR +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +VECTOR data can be inserted using Python list or Python ``array.array()`` objects. +Python arrays of type FLOAT (32-bit), DOUBLE (64-bit), INT (8-bit signed integers), +or BINARY (8-bit unsigned integers) are used as bind values when inserting +VECTOR columns:: + + from sqlalchemy import insert, select + + with engine.begin() as conn: + conn.execute( + insert(t1), + {"id": 1, "embedding": [1, 2, 3]}, + ) + +Data can be inserted into a sparse vector using the :class:`_oracle.SparseVector` +class, creating an object consisting of the number of dimensions, an array of indices, and a +corresponding array of values:: + + from sqlalchemy import insert, select + from sqlalchemy.dialects.oracle import SparseVector + + sparse_val = SparseVector(10, [1, 2], array.array("d", [23.45, 221.22])) + + with engine.begin() as conn: + conn.execute( + insert(t1), + {"id": 1, "embedding": sparse_val}, + ) + +VECTOR Indexes +~~~~~~~~~~~~~~ + +The VECTOR feature supports an Oracle-specific parameter ``oracle_vector`` +on the :class:`.Index` construct, which allows the construction of VECTOR +indexes. + +SPARSE vectors cannot be used in the creation of vector indexes. + +To utilize VECTOR indexing, set the ``oracle_vector`` parameter to True to use +the default values provided by Oracle. HNSW is the default indexing method:: + + from sqlalchemy import Index + + Index( + "vector_index", + t1.c.embedding, + oracle_vector=True, + ) + +The full range of parameters for vector indexes are available by using the +:class:`.VectorIndexConfig` dataclass in place of a boolean; this dataclass +allows full configuration of the index:: + + Index( + "hnsw_vector_index", + t1.c.embedding, + oracle_vector=VectorIndexConfig( + index_type=VectorIndexType.HNSW, + distance=VectorDistanceType.COSINE, + accuracy=90, + hnsw_neighbors=5, + hnsw_efconstruction=20, + parallel=10, + ), + ) + + Index( + "ivf_vector_index", + t1.c.embedding, + oracle_vector=VectorIndexConfig( + index_type=VectorIndexType.IVF, + distance=VectorDistanceType.DOT, + accuracy=90, + ivf_neighbor_partitions=5, + ), + ) + +For complete explanation of these parameters, see the Oracle documentation linked +below. + +.. seealso:: + + `CREATE VECTOR INDEX `_ - in the Oracle documentation + + + +Similarity Searching +~~~~~~~~~~~~~~~~~~~~ + +When using the :class:`_oracle.VECTOR` datatype with a :class:`.Column` or similar +ORM mapped construct, additional comparison functions are available, including: + +* ``l2_distance`` +* ``cosine_distance`` +* ``inner_product`` + +Example Usage:: + + result_vector = connection.scalars( + select(t1).order_by(t1.embedding.l2_distance([2, 3, 4])).limit(3) + ) + + for user in vector: + print(user.id, user.embedding) + +FETCH APPROXIMATE support +~~~~~~~~~~~~~~~~~~~~~~~~~ + +Approximate vector search can only be performed when all syntax and semantic +rules are satisfied, the corresponding vector index is available, and the +query optimizer determines to perform it. If any of these conditions are +unmet, then an approximate search is not performed. In this case the query +returns exact results. + +To enable approximate searching during similarity searches on VECTORS, the +``oracle_fetch_approximate`` parameter may be used with the :meth:`.Select.fetch` +clause to add ``FETCH APPROX`` to the SELECT statement:: + + select(users_table).fetch(5, oracle_fetch_approximate=True) + """ # noqa from __future__ import annotations from collections import defaultdict +from dataclasses import fields from functools import lru_cache from functools import wraps import re @@ -749,6 +968,9 @@ from .types import ROWID # noqa from .types import TIMESTAMP from .types import VARCHAR2 # noqa +from .vector import VECTOR +from .vector import VectorIndexConfig +from .vector import VectorIndexType from ... import Computed from ... import exc from ... import schema as sa_schema @@ -767,6 +989,7 @@ from ...sql import null from ...sql import or_ from ...sql import select +from ...sql import selectable as sa_selectable from ...sql import sqltypes from ...sql import util as sql_util from ...sql import visitors @@ -828,6 +1051,7 @@ "BINARY_DOUBLE": BINARY_DOUBLE, "BINARY_FLOAT": BINARY_FLOAT, "ROWID": ROWID, + "VECTOR": VECTOR, } @@ -985,6 +1209,18 @@ def visit_RAW(self, type_, **kw): def visit_ROWID(self, type_, **kw): return "ROWID" + def visit_VECTOR(self, type_, **kw): + dim = type_.dim if type_.dim is not None else "*" + storage_format = ( + type_.storage_format.value + if type_.storage_format is not None + else "*" + ) + storage_type = ( + type_.storage_type.value if type_.storage_type is not None else "*" + ) + return f"VECTOR({dim},{storage_format},{storage_type})" + class OracleCompiler(compiler.SQLCompiler): """Oracle compiler modifies the lexical structure of Select @@ -1223,6 +1459,29 @@ def _get_limit_or_fetch(self, select): else: return select._fetch_clause + def fetch_clause( + self, + select, + fetch_clause=None, + require_offset=False, + use_literal_execute_for_simple_int=False, + **kw, + ): + text = super().fetch_clause( + select, + fetch_clause=fetch_clause, + require_offset=require_offset, + use_literal_execute_for_simple_int=( + use_literal_execute_for_simple_int + ), + **kw, + ) + + if select.dialect_options["oracle"]["fetch_approximate"]: + text = re.sub("FETCH FIRST", "FETCH APPROX FIRST", text) + + return text + def translate_select_structure(self, select_stmt, **kwargs): select = select_stmt @@ -1471,6 +1730,48 @@ def visit_bitwise_not_op_unary_operator(self, element, operator, **kw): class OracleDDLCompiler(compiler.DDLCompiler): + + def _build_vector_index_config( + self, vector_index_config: VectorIndexConfig + ) -> str: + parts = [] + sql_param_name = { + "hnsw_neighbors": "neighbors", + "hnsw_efconstruction": "efconstruction", + "ivf_neighbor_partitions": "neighbor partitions", + "ivf_sample_per_partition": "sample_per_partition", + "ivf_min_vectors_per_partition": "min_vectors_per_partition", + } + if vector_index_config.index_type == VectorIndexType.HNSW: + parts.append("ORGANIZATION INMEMORY NEIGHBOR GRAPH") + elif vector_index_config.index_type == VectorIndexType.IVF: + parts.append("ORGANIZATION NEIGHBOR PARTITIONS") + if vector_index_config.distance is not None: + parts.append(f"DISTANCE {vector_index_config.distance.value}") + + if vector_index_config.accuracy is not None: + parts.append( + f"WITH TARGET ACCURACY {vector_index_config.accuracy}" + ) + + parameters_str = [f"type {vector_index_config.index_type.name}"] + prefix = vector_index_config.index_type.name.lower() + "_" + + for field in fields(vector_index_config): + if field.name.startswith(prefix): + key = sql_param_name.get(field.name) + value = getattr(vector_index_config, field.name) + if value is not None: + parameters_str.append(f"{key} {value}") + + parameters_str = ", ".join(parameters_str) + parts.append(f"PARAMETERS ({parameters_str})") + + if vector_index_config.parallel is not None: + parts.append(f"PARALLEL {vector_index_config.parallel}") + + return " ".join(parts) + def define_constraint_cascades(self, constraint): text = "" if constraint.ondelete is not None: @@ -1503,6 +1804,9 @@ def visit_create_index(self, create, **kw): text += "UNIQUE " if index.dialect_options["oracle"]["bitmap"]: text += "BITMAP " + vector_options = index.dialect_options["oracle"]["vector"] + if vector_options: + text += "VECTOR " text += "INDEX %s ON %s (%s)" % ( self._prepared_index_name(index, include_schema=True), preparer.format_table(index.table, use_schema=True), @@ -1520,6 +1824,11 @@ def visit_create_index(self, create, **kw): text += " COMPRESS %d" % ( index.dialect_options["oracle"]["compress"] ) + if vector_options: + if vector_options is True: + vector_options = VectorIndexConfig() + + text += " " + self._build_vector_index_config(vector_options) return text def post_create_table(self, table): @@ -1670,7 +1979,16 @@ class OracleDialect(default.DefaultDialect): "tablespace": None, }, ), - (sa_schema.Index, {"bitmap": False, "compress": False}), + ( + sa_schema.Index, + { + "bitmap": False, + "compress": False, + "vector": False, + }, + ), + (sa_selectable.Select, {"fetch_approximate": False}), + (sa_selectable.CompoundSelect, {"fetch_approximate": False}), ] @util.deprecated_params( @@ -2300,7 +2618,7 @@ def _table_options_query( and ObjectKind.TABLE in kind and ObjectKind.MATERIALIZED_VIEW not in kind ): - # cant use EXCEPT ALL / MINUS here because we don't have an + # can't use EXCEPT ALL / MINUS here because we don't have an # excludable row vs. the query above # outerjoin + where null works better on oracle 21 but 11 does # not like it at all. this is the next best thing diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/cx_oracle.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/cx_oracle.py index 0514ebbcd..8750354c9 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/cx_oracle.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/cx_oracle.py @@ -1,5 +1,5 @@ # dialects/oracle/cx_oracle.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -1234,6 +1234,9 @@ def set_isolation_level(self, dbapi_connection, level): with dbapi_connection.cursor() as cursor: cursor.execute(f"ALTER SESSION SET ISOLATION_LEVEL={level}") + def detect_autocommit_setting(self, dbapi_conn) -> bool: + return bool(dbapi_conn.autocommit) + def _detect_decimal_char(self, connection): # we have the option to change this setting upon connect, # or just look at what it is upon connect and convert. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/dictionary.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/dictionary.py index f785a66ef..5f36041b4 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/dictionary.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/dictionary.py @@ -1,5 +1,5 @@ # dialects/oracle/dictionary.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/oracledb.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/oracledb.py index c09d2bae0..a41f6be87 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/oracledb.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/oracledb.py @@ -1,5 +1,5 @@ # dialects/oracle/oracledb.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -112,7 +112,7 @@ For example to use an `Easy Connect string `_ with a timeout to prevent connection establishment from hanging if the network -transport to the database cannot be establishd in 30 seconds, and also setting +transport to the database cannot be established in 30 seconds, and also setting a keep-alive time of 60 seconds to stop idle network connections from being terminated by a firewall:: @@ -236,12 +236,8 @@ is where the Oracle Autonomous Database wallet zip file was extracted. Note this directory should be protected. -Connection Pooling ------------------- - -Applications with multiple concurrent users should use connection pooling. A -minimal sized connection pool is also beneficial for long-running, single-user -applications that do not frequently use a connection. +Using python-oracledb Connection Pooling +---------------------------------------- The python-oracledb driver provides its own connection pool implementation that may be used in place of SQLAlchemy's pooling functionality. The driver pool @@ -736,6 +732,8 @@ def _check_max_identifier_length(self, connection): class AsyncAdapt_oracledb_cursor(AsyncAdapt_dbapi_cursor): _cursor: AsyncCursor + _awaitable_cursor_close: bool = False + __slots__ = () @property @@ -749,10 +747,6 @@ def outputtypehandler(self, value): def var(self, *args, **kwargs): return self._cursor.var(*args, **kwargs) - def close(self): - self._rows.clear() - self._cursor.close() - def setinputsizes(self, *args: Any, **kwargs: Any) -> Any: return self._cursor.setinputsizes(*args, **kwargs) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/provision.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/provision.py index 3587de9d0..3bdbddeb0 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/provision.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/provision.py @@ -1,11 +1,13 @@ # dialects/oracle/provision.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php # mypy: ignore-errors +import time + from ... import create_engine from ... import exc from ... import inspect @@ -16,13 +18,50 @@ from ...testing.provision import drop_all_schema_objects_pre_tables from ...testing.provision import drop_db from ...testing.provision import follower_url_from_main +from ...testing.provision import generate_driver_url +from ...testing.provision import is_preferred_driver from ...testing.provision import log from ...testing.provision import post_configure_engine +from ...testing.provision import post_configure_testing_engine from ...testing.provision import run_reap_dbs from ...testing.provision import set_default_schema_on_connection from ...testing.provision import stop_test_class_outside_fixtures from ...testing.provision import temp_table_keyword_args from ...testing.provision import update_db_opts +from ...testing.warnings import warn_test_suite + + +@generate_driver_url.for_db("oracle") +def _oracle_generate_driver_url(url, driver, query_str): + + backend = url.get_backend_name() + + new_url = url.set( + drivername="%s+%s" % (backend, driver), + ) + + # use oracledb's retry feature, which is essential for oracle 23c + # which otherwise frequently rejects connections under load + # for cx_oracle we have a connect event instead + if driver in ("oracledb", "oracledb_async"): + # oracledb is even nice enough to convert from string to int + # for these opts, apparently + new_url = new_url.update_query_pairs( + [("retry_count", "5"), ("retry_delay", "2")] + ) + else: + # remove these params for cx_oracle if we received an + # already-modified URL + new_url = new_url.difference_update_query( + ["retry_count", "retry_delay"] + ) + + try: + new_url.get_dialect() + except exc.NoSuchModuleError: + return None + else: + return new_url @create_db.for_db("oracle") @@ -103,20 +142,6 @@ def _ora_stop_test_class_outside_fixtures(config, db, cls): except exc.DatabaseError as err: log.warning("purge recyclebin command failed: %s", err) - # clear statement cache on all connections that were used - # https://github.com/oracle/python-cx_Oracle/issues/519 - - for cx_oracle_conn in _all_conns: - try: - sc = cx_oracle_conn.stmtcachesize - except db.dialect.dbapi.InterfaceError: - # connection closed - pass - else: - cx_oracle_conn.stmtcachesize = 0 - cx_oracle_conn.stmtcachesize = sc - _all_conns.clear() - def _purge_recyclebin(eng, schema=None): with eng.begin() as conn: @@ -134,24 +159,76 @@ def _purge_recyclebin(eng, schema=None): conn.exec_driver_sql(f'purge {type_} {owner}."{object_name}"') -_all_conns = set() +@is_preferred_driver.for_db("oracle") +def _oracle_is_preferred_driver(cfg, engine): + """establish oracledb as the preferred driver to use for tests, even + though cx_Oracle is still the "default" driver""" + + return engine.dialect.driver == "oracledb" and not engine.dialect.is_async + + +def _connect_with_retry(dialect, conn_rec, cargs, cparams): + assert dialect.driver == "cx_oracle" + + def _is_couldnt_connect(err): + return "DPY-6005" in str(err) or "ORA-12516" in str(err) + + err_ = None + for _ in range(5): + try: + return dialect.loaded_dbapi.connect(*cargs, **cparams) + except ( + dialect.loaded_dbapi.DatabaseError, + dialect.loaded_dbapi.OperationalError, + ) as err: + err_ = err + if _is_couldnt_connect(err): + warn_test_suite("Oracle database reconnecting...") + time.sleep(2) + continue + else: + raise + if err_ is not None: + raise Exception("connect failed after five attempts") from err_ + + +@post_configure_testing_engine.for_db("oracle") +def _oracle_post_configure_testing_engine(url, engine, options, scope): + from ... import event + + if engine.dialect.driver == "cx_oracle": + event.listen(engine, "do_connect", _connect_with_retry) @post_configure_engine.for_db("oracle") def _oracle_post_configure_engine(url, engine, follower_ident): - from sqlalchemy import event - @event.listens_for(engine, "checkout") - def checkout(dbapi_con, con_record, con_proxy): - _all_conns.add(dbapi_con) + from ... import event @event.listens_for(engine, "checkin") def checkin(dbapi_connection, connection_record): - # work around cx_Oracle issue: + # this was meant to work around this issue: # https://github.com/oracle/python-cx_Oracle/issues/530 # invalidate oracle connections that had 2pc set up - if "cx_oracle_xid" in connection_record.info: - connection_record.invalidate() + # however things are too complex with some of the 2pc tests, + # so just block cx_oracle from being used in 2pc tests (use oracledb + # instead) + # if "cx_oracle_xid" in connection_record.info: + # connection_record.invalidate() + + # clear statement cache on all connections that were used + # https://github.com/oracle/python-cx_Oracle/issues/519 + # TODO: oracledb claims to have this feature built in somehow, + # see if that's in use and/or if it needs to be enabled + # (or if this doesn't even apply to the newer oracle's we're using) + try: + sc = dbapi_connection.stmtcachesize + except: + # connection closed + pass + else: + dbapi_connection.stmtcachesize = 0 + dbapi_connection.stmtcachesize = sc @run_reap_dbs.for_db("oracle") diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/types.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/types.py index 06aeaace2..ae6cba213 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/types.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/types.py @@ -1,5 +1,5 @@ # dialects/oracle/types.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/vector.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/vector.py new file mode 100644 index 000000000..53057675b --- /dev/null +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/oracle/vector.py @@ -0,0 +1,365 @@ +# dialects/oracle/vector.py +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors +# +# +# This module is part of SQLAlchemy and is released under +# the MIT License: https://www.opensource.org/licenses/mit-license.php +# mypy: ignore-errors + + +from __future__ import annotations + +import array +from dataclasses import dataclass +from enum import Enum +from typing import Optional +from typing import Union + +from ... import types +from ...types import Float + + +class VectorIndexType(Enum): + """Enum representing different types of VECTOR index structures. + + See :ref:`oracle_vector_datatype` for background. + + .. versionadded:: 2.0.41 + + """ + + HNSW = "HNSW" + """ + The HNSW (Hierarchical Navigable Small World) index type. + """ + IVF = "IVF" + """ + The IVF (Inverted File Index) index type + """ + + +class VectorDistanceType(Enum): + """Enum representing different types of vector distance metrics. + + See :ref:`oracle_vector_datatype` for background. + + .. versionadded:: 2.0.41 + + """ + + EUCLIDEAN = "EUCLIDEAN" + """Euclidean distance (L2 norm). + + Measures the straight-line distance between two vectors in space. + """ + DOT = "DOT" + """Dot product similarity. + + Measures the algebraic similarity between two vectors. + """ + COSINE = "COSINE" + """Cosine similarity. + + Measures the cosine of the angle between two vectors. + """ + MANHATTAN = "MANHATTAN" + """Manhattan distance (L1 norm). + + Calculates the sum of absolute differences across dimensions. + """ + + +class VectorStorageFormat(Enum): + """Enum representing the data format used to store vector components. + + See :ref:`oracle_vector_datatype` for background. + + .. versionadded:: 2.0.41 + + """ + + INT8 = "INT8" + """ + 8-bit integer format. + """ + BINARY = "BINARY" + """ + Binary format. + """ + FLOAT32 = "FLOAT32" + """ + 32-bit floating-point format. + """ + FLOAT64 = "FLOAT64" + """ + 64-bit floating-point format. + """ + + +class VectorStorageType(Enum): + """Enum representing the vector type, + + See :ref:`oracle_vector_datatype` for background. + + .. versionadded:: 2.0.43 + + """ + + SPARSE = "SPARSE" + """ + A Sparse vector is a vector which has zero value for + most of its dimensions. + """ + DENSE = "DENSE" + """ + A Dense vector is a vector where most, if not all, elements + hold meaningful values. + """ + + +@dataclass +class VectorIndexConfig: + """Define the configuration for Oracle VECTOR Index. + + See :ref:`oracle_vector_datatype` for background. + + .. versionadded:: 2.0.41 + + :param index_type: Enum value from :class:`.VectorIndexType` + Specifies the indexing method. For HNSW, this must be + :attr:`.VectorIndexType.HNSW`. + + :param distance: Enum value from :class:`.VectorDistanceType` + specifies the metric for calculating distance between VECTORS. + + :param accuracy: integer. Should be in the range 0 to 100 + Specifies the accuracy of the nearest neighbor search during + query execution. + + :param parallel: integer. Specifies degree of parallelism. + + :param hnsw_neighbors: integer. Should be in the range 0 to + 2048. Specifies the number of nearest neighbors considered + during the search. The attribute :attr:`.VectorIndexConfig.hnsw_neighbors` + is HNSW index specific. + + :param hnsw_efconstruction: integer. Should be in the range 0 + to 65535. Controls the trade-off between indexing speed and + recall quality during index construction. The attribute + :attr:`.VectorIndexConfig.hnsw_efconstruction` is HNSW index + specific. + + :param ivf_neighbor_partitions: integer. Should be in the range + 0 to 10,000,000. Specifies the number of partitions used to + divide the dataset. The attribute + :attr:`.VectorIndexConfig.ivf_neighbor_partitions` is IVF index + specific. + + :param ivf_sample_per_partition: integer. Should be between 1 + and ``num_vectors / neighbor partitions``. Specifies the + number of samples used per partition. The attribute + :attr:`.VectorIndexConfig.ivf_sample_per_partition` is IVF index + specific. + + :param ivf_min_vectors_per_partition: integer. From 0 (no trimming) + to the total number of vectors (results in 1 partition). Specifies + the minimum number of vectors per partition. The attribute + :attr:`.VectorIndexConfig.ivf_min_vectors_per_partition` + is IVF index specific. + + """ + + index_type: VectorIndexType = VectorIndexType.HNSW + distance: Optional[VectorDistanceType] = None + accuracy: Optional[int] = None + hnsw_neighbors: Optional[int] = None + hnsw_efconstruction: Optional[int] = None + ivf_neighbor_partitions: Optional[int] = None + ivf_sample_per_partition: Optional[int] = None + ivf_min_vectors_per_partition: Optional[int] = None + parallel: Optional[int] = None + + def __post_init__(self): + self.index_type = VectorIndexType(self.index_type) + for field in [ + "hnsw_neighbors", + "hnsw_efconstruction", + "ivf_neighbor_partitions", + "ivf_sample_per_partition", + "ivf_min_vectors_per_partition", + "parallel", + "accuracy", + ]: + value = getattr(self, field) + if value is not None and not isinstance(value, int): + raise TypeError( + f"{field} must be an integer if" + f"provided, got {type(value).__name__}" + ) + + +class SparseVector: + """ + Lightweight SQLAlchemy-side version of SparseVector. + This mimics oracledb.SparseVector. + + .. versionadded:: 2.0.43 + + """ + + def __init__( + self, + num_dimensions: int, + indices: Union[list, array.array], + values: Union[list, array.array], + ): + if not isinstance(indices, array.array) or indices.typecode != "I": + indices = array.array("I", indices) + if not isinstance(values, array.array): + values = array.array("d", values) + if len(indices) != len(values): + raise TypeError("indices and values must be of the same length!") + + self.num_dimensions = num_dimensions + self.indices = indices + self.values = values + + def __str__(self): + return ( + f"SparseVector(num_dimensions={self.num_dimensions}, " + f"size={len(self.indices)}, typecode={self.values.typecode})" + ) + + +class VECTOR(types.TypeEngine): + """Oracle VECTOR datatype. + + For complete background on using this type, see + :ref:`oracle_vector_datatype`. + + .. versionadded:: 2.0.41 + + """ + + cache_ok = True + + __visit_name__ = "VECTOR" + + _typecode_map = { + VectorStorageFormat.INT8: "b", # Signed int + VectorStorageFormat.BINARY: "B", # Unsigned int + VectorStorageFormat.FLOAT32: "f", # Float + VectorStorageFormat.FLOAT64: "d", # Double + } + + def __init__(self, dim=None, storage_format=None, storage_type=None): + """Construct a VECTOR. + + :param dim: integer. The dimension of the VECTOR datatype. This + should be an integer value. + + :param storage_format: VectorStorageFormat. The VECTOR storage + type format. This should be Enum values form + :class:`.VectorStorageFormat` INT8, BINARY, FLOAT32, or FLOAT64. + + :param storage_type: VectorStorageType. The Vector storage type. This + should be Enum values from :class:`.VectorStorageType` SPARSE or + DENSE. + + """ + + if dim is not None and not isinstance(dim, int): + raise TypeError("dim must be an integer") + if storage_format is not None and not isinstance( + storage_format, VectorStorageFormat + ): + raise TypeError( + "storage_format must be an enum of type VectorStorageFormat" + ) + if storage_type is not None and not isinstance( + storage_type, VectorStorageType + ): + raise TypeError( + "storage_type must be an enum of type VectorStorageType" + ) + + self.dim = dim + self.storage_format = storage_format + self.storage_type = storage_type + + def _cached_bind_processor(self, dialect): + """ + Converts a Python-side SparseVector instance into an + oracledb.SparseVectormor a compatible array format before + binding it to the database. + """ + + def process(value): + if value is None or isinstance(value, array.array): + return value + + # Convert list to a array.array + elif isinstance(value, list): + typecode = self._array_typecode(self.storage_format) + value = array.array(typecode, value) + return value + + # Convert SqlAlchemy SparseVector to oracledb SparseVector object + elif isinstance(value, SparseVector): + return dialect.dbapi.SparseVector( + value.num_dimensions, + value.indices, + value.values, + ) + + else: + raise TypeError( + """ + Invalid input for VECTOR: expected a list, an array.array, + or a SparseVector object. + """ + ) + + return process + + def _cached_result_processor(self, dialect, coltype): + """ + Converts database-returned values into Python-native representations. + If the value is an oracledb.SparseVector, it is converted into the + SQLAlchemy-side SparseVector class. + If the value is a array.array, it is converted to a plain Python list. + + """ + + def process(value): + if value is None: + return None + + elif isinstance(value, array.array): + return list(value) + + # Convert Oracledb SparseVector to SqlAlchemy SparseVector object + elif isinstance(value, dialect.dbapi.SparseVector): + return SparseVector( + num_dimensions=value.num_dimensions, + indices=value.indices, + values=value.values, + ) + + return process + + def _array_typecode(self, typecode): + """ + Map storage format to array typecode. + """ + return self._typecode_map.get(typecode, "d") + + class comparator_factory(types.TypeEngine.Comparator): + def l2_distance(self, other): + return self.op("<->", return_type=Float)(other) + + def inner_product(self, other): + return self.op("<#>", return_type=Float)(other) + + def cosine_distance(self, other): + return self.op("<=>", return_type=Float)(other) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/__init__.py index 88935e202..a94cfef2c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/__init__.py @@ -1,5 +1,5 @@ # dialects/postgresql/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/_psycopg_common.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/_psycopg_common.py index d827e054c..03b0f76ec 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/_psycopg_common.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/_psycopg_common.py @@ -1,5 +1,5 @@ # dialects/postgresql/_psycopg_common.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -170,8 +170,10 @@ def get_deferrable(self, connection): def _do_autocommit(self, connection, value): connection.autocommit = value + def detect_autocommit_setting(self, dbapi_connection): + return bool(dbapi_connection.autocommit) + def do_ping(self, dbapi_connection): - cursor = None before_autocommit = dbapi_connection.autocommit if not before_autocommit: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/array.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/array.py index 9e094973c..17a6f59b2 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/array.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/array.py @@ -1,5 +1,5 @@ # dialects/postgresql/array.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -44,6 +44,7 @@ _T = TypeVar("_T", bound=typing_Any) +_CT = TypeVar("_CT", bound=typing_Any) def Any( @@ -357,7 +358,7 @@ def __init__( self.dimensions = dimensions self.zero_indexes = zero_indexes - class Comparator(sqltypes.ARRAY.Comparator[_T]): + class Comparator(sqltypes.ARRAY.Comparator[_CT]): """Define comparison operations for :class:`_types.ARRAY`. Note that these operations are in addition to those provided @@ -398,7 +399,7 @@ def overlap(self, other: typing_Any) -> ColumnElement[bool]: def _against_native_enum(self) -> bool: return ( isinstance(self.item_type, sqltypes.Enum) - and self.item_type.native_enum # type: ignore[attr-defined] + and self.item_type.native_enum ) def literal_processor( @@ -464,7 +465,7 @@ def process( super_rp = process pattern = re.compile(r"^{(.*)}$") - def handle_raw_string(value: str) -> list[str]: + def handle_raw_string(value: str) -> Sequence[Optional[str]]: inner = pattern.match(value).group(1) # type: ignore[union-attr] # noqa: E501 return _split_enum_values(inner) @@ -485,10 +486,13 @@ def process( return process -def _split_enum_values(array_string: str) -> list[str]: +def _split_enum_values(array_string: str) -> Sequence[Optional[str]]: if '"' not in array_string: # no escape char is present so it can just split on the comma - return array_string.split(",") if array_string else [] + return [ + r if r != "NULL" else None + for r in (array_string.split(",") if array_string else []) + ] # handles quoted strings from: # r'abc,"quoted","also\\\\quoted", "quoted, comma", "esc \" quot", qpr' @@ -505,5 +509,11 @@ def _split_enum_values(array_string: str) -> list[str]: elif in_quotes: result.append(tok.replace("_$ESC_QUOTE$_", '"')) else: - result.extend(re.findall(r"([^\s,]+),?", tok)) + # interpret NULL (without quotes!) as None + result.extend( + [ + r if r != "NULL" else None + for r in re.findall(r"([^\s,]+),?", tok) + ] + ) return result diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py index 096892127..616bc467f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py @@ -1,5 +1,5 @@ # dialects/postgresql/asyncpg.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors # # This module is part of SQLAlchemy and is released under @@ -205,6 +205,7 @@ from ... import exc from ... import pool from ... import util +from ...connectors.asyncio import AsyncAdapt_terminate from ...engine import AdaptedConnection from ...engine import processors from ...sql import sqltypes @@ -490,6 +491,7 @@ class AsyncAdapt_asyncpg_cursor: ) server_side = False + _awaitable_cursor_close: bool = False def __init__(self, adapt_connection): self._adapt_connection = adapt_connection @@ -501,6 +503,9 @@ def __init__(self, adapt_connection): self.rowcount = -1 self._invalidate_schema_cache_asof = 0 + async def _async_soft_close(self) -> None: + return + def close(self): self._rows.clear() @@ -691,7 +696,7 @@ def executemany(self, operation, seq_of_parameters): ) -class AsyncAdapt_asyncpg_connection(AdaptedConnection): +class AsyncAdapt_asyncpg_connection(AsyncAdapt_terminate, AdaptedConnection): __slots__ = ( "dbapi", "isolation_level", @@ -814,7 +819,7 @@ def ping(self): async def _async_ping(self): if self._transaction is None and self.isolation_level != "autocommit": - # create a tranasction explicitly to support pgbouncer + # create a transaction explicitly to support pgbouncer # transaction mode. See #10226 tr = self._connection.transaction() await tr.start() @@ -897,29 +902,18 @@ def close(self): self.await_(self._connection.close()) - def terminate(self): - if util.concurrency.in_greenlet(): - # in a greenlet; this is the connection was invalidated - # case. - try: - # try to gracefully close; see #10717 - # timeout added in asyncpg 0.14.0 December 2017 - self.await_(asyncio.shield(self._connection.close(timeout=2))) - except ( - asyncio.TimeoutError, - asyncio.CancelledError, - OSError, - self.dbapi.asyncpg.PostgresError, - ): - # in the case where we are recycling an old connection - # that may have already been disconnected, close() will - # fail with the above timeout. in this case, terminate - # the connection without any further waiting. - # see issue #8419 - self._connection.terminate() - else: - # not in a greenlet; this is the gc cleanup case - self._connection.terminate() + def _terminate_handled_exceptions(self): + return super()._terminate_handled_exceptions() + ( + self.dbapi.asyncpg.PostgresError, + ) + + async def _terminate_graceful_close(self) -> None: + # timeout added in asyncpg 0.14.0 December 2017 + await self._connection.close(timeout=2) + self._started = False + + def _terminate_force_close(self) -> None: + self._connection.terminate() self._started = False @staticmethod @@ -1114,6 +1108,9 @@ def get_isolation_level_values(self, dbapi_connection): def set_isolation_level(self, dbapi_connection, level): dbapi_connection.set_isolation_level(self._isolation_lookup[level]) + def detect_autocommit_setting(self, dbapi_conn) -> bool: + return bool(dbapi_conn.autocommit) + def set_readonly(self, connection, value): connection.readonly = value diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/base.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/base.py index ae97cc0ca..a5a15bb36 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/base.py @@ -1,5 +1,5 @@ # dialects/postgresql/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -266,7 +266,7 @@ def use_identity(element, compiler, **kw): from sqlalchemy import event postgresql_engine = create_engine( - "postgresql+pyscopg2://scott:tiger@hostname/dbname", + "postgresql+psycopg2://scott:tiger@hostname/dbname", # disable default reset-on-return scheme pool_reset_on_return=None, ) @@ -978,11 +978,18 @@ def set_search_path(dbapi_connection, connection_record): Several extensions to the :class:`.Index` construct are available, specific to the PostgreSQL dialect. +.. _postgresql_covering_indexes: + Covering Indexes ^^^^^^^^^^^^^^^^ -The ``postgresql_include`` option renders INCLUDE(colname) for the given -string names:: +A covering index includes additional columns that are not part of the index key +but are stored in the index, allowing PostgreSQL to satisfy queries using only +the index without accessing the table (an "index-only scan"). This is +indicated on the index using the ``INCLUDE`` clause. The +``postgresql_include`` option for :class:`.Index` (as well as +:class:`.UniqueConstraint`) renders ``INCLUDE(colname)`` for the given string +names:: Index("my_index", table.c.x, postgresql_include=["y"]) @@ -990,7 +997,13 @@ def set_search_path(dbapi_connection, connection_record): Note that this feature requires PostgreSQL 11 or later. -.. versionadded:: 1.4 +.. seealso:: + + :ref:`postgresql_constraint_options_include` - the same feature implemented + for :class:`.UniqueConstraint` + +.. versionadded:: 1.4 - support for covering indexes with :class:`.Index`. + support for :class:`.UniqueConstraint` was in 2.0.41 .. _postgresql_partial_indexes: @@ -1164,20 +1177,44 @@ def set_search_path(dbapi_connection, connection_record): ------------------------ Several options for CREATE TABLE are supported directly by the PostgreSQL -dialect in conjunction with the :class:`_schema.Table` construct: +dialect in conjunction with the :class:`_schema.Table` construct, listed in +the following sections. + +.. seealso:: + + `PostgreSQL CREATE TABLE options + `_ - + in the PostgreSQL documentation. + +``INHERITS`` +^^^^^^^^^^^^ -* ``INHERITS``:: +Specifies one or more parent tables from which this table inherits columns and +constraints, enabling table inheritance hierarchies in PostgreSQL. + +:: Table("some_table", metadata, ..., postgresql_inherits="some_supertable") Table("some_table", metadata, ..., postgresql_inherits=("t1", "t2", ...)) -* ``ON COMMIT``:: +``ON COMMIT`` +^^^^^^^^^^^^^ + +Controls the behavior of temporary tables at transaction commit, with options +to preserve rows, delete rows, or drop the table. + +:: Table("some_table", metadata, ..., postgresql_on_commit="PRESERVE ROWS") -* - ``PARTITION BY``:: +``PARTITION BY`` +^^^^^^^^^^^^^^^^ + +Declares the table as a partitioned table using the specified partitioning +strategy (RANGE, LIST, or HASH) on the given column(s). + +:: Table( "some_table", @@ -1186,105 +1223,171 @@ def set_search_path(dbapi_connection, connection_record): postgresql_partition_by="LIST (part_column)", ) - .. versionadded:: 1.2.6 +``TABLESPACE`` +^^^^^^^^^^^^^^ -* - ``TABLESPACE``:: +Specifies the tablespace where the table will be stored, allowing control over +the physical location of table data on disk. + +:: Table("some_table", metadata, ..., postgresql_tablespace="some_tablespace") - The above option is also available on the :class:`.Index` construct. +The above option is also available on the :class:`.Index` construct. + +``USING`` +^^^^^^^^^ -* - ``USING``:: +Specifies the table access method to use for storing table data, such as +``heap`` (the default) or other custom access methods. + +:: Table("some_table", metadata, ..., postgresql_using="heap") - .. versionadded:: 2.0.26 +.. versionadded:: 2.0.26 + +``WITH OIDS`` +^^^^^^^^^^^^^ -* ``WITH OIDS``:: +Enables the legacy OID (object identifier) system column for the table, which +assigns a unique identifier to each row. + +:: Table("some_table", metadata, ..., postgresql_with_oids=True) -* ``WITHOUT OIDS``:: +``WITHOUT OIDS`` +^^^^^^^^^^^^^^^^ - Table("some_table", metadata, ..., postgresql_with_oids=False) +Explicitly disables the OID system column for the table (the default behavior +in modern PostgreSQL versions). -.. seealso:: +:: - `PostgreSQL CREATE TABLE options - `_ - - in the PostgreSQL documentation. + Table("some_table", metadata, ..., postgresql_with_oids=False) .. _postgresql_constraint_options: PostgreSQL Constraint Options ----------------------------- -The following option(s) are supported by the PostgreSQL dialect in conjunction -with selected constraint constructs: - -* ``NOT VALID``: This option applies towards CHECK and FOREIGN KEY constraints - when the constraint is being added to an existing table via ALTER TABLE, - and has the effect that existing rows are not scanned during the ALTER - operation against the constraint being added. - - When using a SQL migration tool such as `Alembic `_ - that renders ALTER TABLE constructs, the ``postgresql_not_valid`` argument - may be specified as an additional keyword argument within the operation - that creates the constraint, as in the following Alembic example:: - - def update(): - op.create_foreign_key( - "fk_user_address", - "address", - "user", - ["user_id"], - ["id"], - postgresql_not_valid=True, - ) +The following sections indicate options which are supported by the PostgreSQL +dialect in conjunction with selected constraint constructs. - The keyword is ultimately accepted directly by the - :class:`_schema.CheckConstraint`, :class:`_schema.ForeignKeyConstraint` - and :class:`_schema.ForeignKey` constructs; when using a tool like - Alembic, dialect-specific keyword arguments are passed through to - these constructs from the migration operation directives:: - CheckConstraint("some_field IS NOT NULL", postgresql_not_valid=True) +``NOT VALID`` +^^^^^^^^^^^^^ - ForeignKeyConstraint( - ["some_id"], ["some_table.some_id"], postgresql_not_valid=True - ) +Allows a constraint to be added without validating existing rows, improving +performance when adding constraints to large tables. This option applies +towards CHECK and FOREIGN KEY constraints when the constraint is being added +to an existing table via ALTER TABLE, and has the effect that existing rows +are not scanned during the ALTER operation against the constraint being added. - .. versionadded:: 1.4.32 - - .. seealso:: - - `PostgreSQL ALTER TABLE options - `_ - - in the PostgreSQL documentation. - -* Column list with foreign key ``ON DELETE SET`` actions: This applies to - :class:`.ForeignKey` and :class:`.ForeignKeyConstraint`, the :paramref:`.ForeignKey.ondelete` - parameter will accept on the PostgreSQL backend only a string list of column - names inside parenthesis, following the ``SET NULL`` or ``SET DEFAULT`` - phrases, which will limit the set of columns that are subject to the - action:: - - fktable = Table( - "fktable", - metadata, - Column("tid", Integer), - Column("id", Integer), - Column("fk_id_del_set_null", Integer), - ForeignKeyConstraint( - columns=["tid", "fk_id_del_set_null"], - refcolumns=[pktable.c.tid, pktable.c.id], - ondelete="SET NULL (fk_id_del_set_null)", - ), - ) +When using a SQL migration tool such as `Alembic `_ +that renders ALTER TABLE constructs, the ``postgresql_not_valid`` argument +may be specified as an additional keyword argument within the operation +that creates the constraint, as in the following Alembic example:: + + def update(): + op.create_foreign_key( + "fk_user_address", + "address", + "user", + ["user_id"], + ["id"], + postgresql_not_valid=True, + ) + +The keyword is ultimately accepted directly by the +:class:`_schema.CheckConstraint`, :class:`_schema.ForeignKeyConstraint` +and :class:`_schema.ForeignKey` constructs; when using a tool like +Alembic, dialect-specific keyword arguments are passed through to +these constructs from the migration operation directives:: + + CheckConstraint("some_field IS NOT NULL", postgresql_not_valid=True) + + ForeignKeyConstraint( + ["some_id"], ["some_table.some_id"], postgresql_not_valid=True + ) + +.. versionadded:: 1.4.32 + +.. seealso:: + + `PostgreSQL ALTER TABLE options + `_ - + in the PostgreSQL documentation. + +.. _postgresql_constraint_options_include: + +``INCLUDE`` +^^^^^^^^^^^ + +This keyword is applicable to both a ``UNIQUE`` constraint as well as an +``INDEX``. The ``postgresql_include`` option available for +:class:`.UniqueConstraint` as well as :class:`.Index` creates a covering index +by including additional columns in the underlying index without making them +part of the key constraint. This option adds one or more columns as a "payload" +to the index created automatically by PostgreSQL for the constraint. For +example, the following table definition:: + + Table( + "mytable", + metadata, + Column("id", Integer, nullable=False), + Column("value", Integer, nullable=False), + UniqueConstraint("id", postgresql_include=["value"]), + ) + +would produce the DDL statement + +.. sourcecode:: sql + + CREATE TABLE mytable ( + id INTEGER NOT NULL, + value INTEGER NOT NULL, + UNIQUE (id) INCLUDE (value) + ) + +Note that this feature requires PostgreSQL 11 or later. + +.. versionadded:: 2.0.41 - added support for ``postgresql_include`` to + :class:`.UniqueConstraint`, to complement the existing feature in + :class:`.Index`. + +.. seealso:: + + :ref:`postgresql_covering_indexes` - background on ``postgresql_include`` + for the :class:`.Index` construct. - .. versionadded:: 2.0.40 + +Column list with foreign key ``ON DELETE SET`` actions +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Allows selective column updates when a foreign key action is triggered, limiting +which columns are set to NULL or DEFAULT upon deletion of a referenced row. +This applies to :class:`.ForeignKey` and :class:`.ForeignKeyConstraint`, the +:paramref:`.ForeignKey.ondelete` parameter will accept on the PostgreSQL +backend only a string list of column names inside parenthesis, following the +``SET NULL`` or ``SET DEFAULT`` phrases, which will limit the set of columns +that are subject to the action:: + + fktable = Table( + "fktable", + metadata, + Column("tid", Integer), + Column("id", Integer), + Column("fk_id_del_set_null", Integer), + ForeignKeyConstraint( + columns=["tid", "fk_id_del_set_null"], + refcolumns=[pktable.c.tid, pktable.c.id], + ondelete="SET NULL (fk_id_del_set_null)", + ), + ) + +.. versionadded:: 2.0.40 .. _postgresql_table_valued_overview: @@ -1569,6 +1672,7 @@ def update(): from ...sql import compiler from ...sql import elements from ...sql import expression +from ...sql import functions from ...sql import roles from ...sql import sqltypes from ...sql import util as sql_util @@ -1838,9 +1942,27 @@ def visit_json_getitem_op_binary( kw["eager_grouping"] = True - return self._generate_generic_binary( - binary, " -> " if not _cast_applied else " ->> ", **kw - ) + if ( + not _cast_applied + and isinstance(binary.left.type, _json.JSONB) + and self.dialect._supports_jsonb_subscripting + ): + left = binary.left + if isinstance(left, (functions.FunctionElement, elements.Cast)): + left = elements.Grouping(left) + + # for pg14+JSONB use subscript notation: col['key'] instead + # of col -> 'key' + return "%s[%s]" % ( + self.process(left, **kw), + self.process(binary.right, **kw), + ) + else: + # Fall back to arrow notation for older versions or when cast + # is applied + return self._generate_generic_binary( + binary, " -> " if not _cast_applied else " ->> ", **kw + ) def visit_json_path_getitem_op_binary( self, binary, operator, _cast_applied=False, **kw @@ -2073,10 +2195,11 @@ def _on_conflict_target(self, clause, **kw): for c in clause.inferred_target_elements ) if clause.inferred_target_whereclause is not None: + whereclause_kw = dict(kw) + whereclause_kw.update(include_table=False, use_schema=False) target_text += " WHERE %s" % self.process( clause.inferred_target_whereclause, - include_table=False, - use_schema=False, + **whereclause_kw, ) else: target_text = "" @@ -2103,6 +2226,8 @@ def visit_on_conflict_do_update(self, on_conflict, **kw): insert_statement = self.stack[-1]["selectable"] cols = insert_statement.table.c + set_kw = dict(kw) + set_kw.update(use_schema=False) for c in cols: col_key = c.key @@ -2125,7 +2250,9 @@ def visit_on_conflict_do_update(self, on_conflict, **kw): ): value = value._clone() value.type = c.type - value_text = self.process(value.self_group(), use_schema=False) + value_text = self.process( + value.self_group(), is_upsert_set=True, **set_kw + ) key_text = self.preparer.quote(c.name) action_set_ops.append("%s = %s" % (key_text, value_text)) @@ -2148,14 +2275,17 @@ def visit_on_conflict_do_update(self, on_conflict, **kw): ) value_text = self.process( coercions.expect(roles.ExpressionElementRole, v), - use_schema=False, + is_upsert_set=True, + **set_kw, ) action_set_ops.append("%s = %s" % (key_text, value_text)) action_text = ", ".join(action_set_ops) if clause.update_whereclause is not None: + where_kw = dict(kw) + where_kw.update(include_table=True, use_schema=False) action_text += " WHERE %s" % self.process( - clause.update_whereclause, include_table=True, use_schema=False + clause.update_whereclause, **where_kw ) return "ON CONFLICT %s DO UPDATE SET %s" % (target_text, action_text) @@ -2260,6 +2390,18 @@ def _define_constraint_validity(self, constraint): not_valid = constraint.dialect_options["postgresql"]["not_valid"] return " NOT VALID" if not_valid else "" + def _define_include(self, obj): + includeclause = obj.dialect_options["postgresql"]["include"] + if not includeclause: + return "" + inclusions = [ + obj.table.c[col] if isinstance(col, str) else col + for col in includeclause + ] + return " INCLUDE (%s)" % ", ".join( + [self.preparer.quote(c.name) for c in inclusions] + ) + def visit_check_constraint(self, constraint, **kw): if constraint._type_bound: typ = list(constraint.columns)[0].type @@ -2283,6 +2425,22 @@ def visit_foreign_key_constraint(self, constraint, **kw): text += self._define_constraint_validity(constraint) return text + def visit_primary_key_constraint(self, constraint, **kw): + text = self.define_constraint_preamble(constraint, **kw) + text += self.define_primary_key_body(constraint, **kw) + text += self._define_include(constraint) + text += self.define_constraint_deferrability(constraint) + return text + + def visit_unique_constraint(self, constraint, **kw): + if len(constraint) == 0: + return "" + text = self.define_constraint_preamble(constraint, **kw) + text += self.define_unique_body(constraint, **kw) + text += self._define_include(constraint) + text += self.define_constraint_deferrability(constraint) + return text + @util.memoized_property def _fk_ondelete_pattern(self): return re.compile( @@ -2397,15 +2555,7 @@ def visit_create_index(self, create, **kw): ) ) - includeclause = index.dialect_options["postgresql"]["include"] - if includeclause: - inclusions = [ - index.table.c[col] if isinstance(col, str) else col - for col in includeclause - ] - text += " INCLUDE (%s)" % ", ".join( - [preparer.quote(c.name) for c in inclusions] - ) + text += self._define_include(index) nulls_not_distinct = index.dialect_options["postgresql"][ "nulls_not_distinct" @@ -2891,8 +3041,8 @@ def get_domains( * nullable - Indicates if this domain can be ``NULL``. * default - The default value of the domain or ``None`` if the domain has no default. - * constraints - A list of dict wit the constraint defined by this - domain. Each element constaints two keys: ``name`` of the + * constraints - A list of dict with the constraint defined by this + domain. Each element contains two keys: ``name`` of the constraint and ``check`` with the constraint text. :param schema: schema name. If None, the default schema @@ -3153,9 +3303,16 @@ class PGDialect(default.DefaultDialect): "not_valid": False, }, ), + ( + schema.PrimaryKeyConstraint, + {"include": None}, + ), ( schema.UniqueConstraint, - {"nulls_not_distinct": None}, + { + "include": None, + "nulls_not_distinct": None, + }, ), ] @@ -3164,6 +3321,7 @@ class PGDialect(default.DefaultDialect): _backslash_escapes = True _supports_create_index_concurrently = True _supports_drop_index_concurrently = True + _supports_jsonb_subscripting = True def __init__( self, @@ -3192,6 +3350,8 @@ def initialize(self, connection): ) self.supports_identity_columns = self.server_version_info >= (10,) + self._supports_jsonb_subscripting = self.server_version_info >= (14,) + def get_isolation_level_values(self, dbapi_conn): # note the generic dialect doesn't have AUTOCOMMIT, however # all postgresql dialects should include AUTOCOMMIT. @@ -3695,6 +3855,32 @@ def _columns_query(self, schema, has_filter_names, scope, kind): .scalar_subquery() .label("default") ) + + # get the name of the collate when it's different from the default one + collate = sql.case( + ( + sql.and_( + pg_catalog.pg_attribute.c.attcollation != 0, + select(pg_catalog.pg_type.c.typcollation) + .where( + pg_catalog.pg_type.c.oid + == pg_catalog.pg_attribute.c.atttypid, + ) + .correlate(pg_catalog.pg_attribute) + .scalar_subquery() + != pg_catalog.pg_attribute.c.attcollation, + ), + select(pg_catalog.pg_collation.c.collname) + .where( + pg_catalog.pg_collation.c.oid + == pg_catalog.pg_attribute.c.attcollation + ) + .correlate(pg_catalog.pg_attribute) + .scalar_subquery(), + ), + else_=sql.null(), + ).label("collation") + relkinds = self._kind_to_relkinds(kind) query = ( select( @@ -3709,6 +3895,7 @@ def _columns_query(self, schema, has_filter_names, scope, kind): pg_catalog.pg_description.c.description.label("comment"), generated, identity, + collate, ) .select_from(pg_catalog.pg_class) # NOTE: postgresql support table with no user column, meaning @@ -3787,6 +3974,7 @@ def _reflect_type( domains: Dict[str, ReflectedDomain], enums: Dict[str, ReflectedEnum], type_description: str, + collation: Optional[str], ) -> sqltypes.TypeEngine[Any]: """ Attempts to reconstruct a column type defined in ischema_names based @@ -3855,7 +4043,8 @@ def _reflect_type( charlen = int(attype_args[0]) args = (charlen,) - elif attype.startswith("interval"): + # a domain or enum can start with interval, so be mindful of that. + elif attype == "interval" or attype.startswith("interval "): schema_type = INTERVAL field_match = re.match(r"interval (.+)", attype) @@ -3872,7 +4061,6 @@ def _reflect_type( schema_type = ENUM enum = enums[enum_or_domain_key] - args = tuple(enum["labels"]) kwargs["name"] = enum["name"] if not enum["visible"]: @@ -3887,6 +4075,7 @@ def _reflect_type( domains, enums, type_description="DOMAIN '%s'" % domain["name"], + collation=domain["collation"], ) args = (domain["name"], data_type) @@ -3919,6 +4108,9 @@ def _reflect_type( ) return sqltypes.NULLTYPE + if collation is not None: + kwargs["collation"] = collation + data_type = schema_type(*args, **kwargs) if array_dim >= 1: # postgres does not preserve dimensionality or size of array types. @@ -3937,11 +4129,14 @@ def _get_columns_info(self, rows, domains, enums, schema): continue table_cols = columns[(schema, row_dict["table_name"])] + collation = row_dict["collation"] + coltype = self._reflect_type( row_dict["format_type"], domains, enums, type_description="column '%s'" % row_dict["name"], + collation=collation, ) default = row_dict["default"] @@ -3952,7 +4147,7 @@ def _get_columns_info(self, rows, domains, enums, schema): if isinstance(coltype, DOMAIN): if not default: # domain can override the default value but - # cant set it to None + # can't set it to None if coltype.default is not None: default = coltype.default @@ -4037,21 +4232,35 @@ def _get_table_oids( result = connection.execute(oid_q, params) return result.all() - @lru_cache() - def _constraint_query(self, is_unique): + @util.memoized_property + def _constraint_query(self): + if self.server_version_info >= (11, 0): + indnkeyatts = pg_catalog.pg_index.c.indnkeyatts + else: + indnkeyatts = pg_catalog.pg_index.c.indnatts.label("indnkeyatts") + + if self.server_version_info >= (15,): + indnullsnotdistinct = pg_catalog.pg_index.c.indnullsnotdistinct + else: + indnullsnotdistinct = sql.false().label("indnullsnotdistinct") + con_sq = ( select( pg_catalog.pg_constraint.c.conrelid, pg_catalog.pg_constraint.c.conname, - pg_catalog.pg_constraint.c.conindid, - sql.func.unnest(pg_catalog.pg_constraint.c.conkey).label( - "attnum" - ), + sql.func.unnest(pg_catalog.pg_index.c.indkey).label("attnum"), sql.func.generate_subscripts( - pg_catalog.pg_constraint.c.conkey, 1 + pg_catalog.pg_index.c.indkey, 1 ).label("ord"), + indnkeyatts, + indnullsnotdistinct, pg_catalog.pg_description.c.description, ) + .join( + pg_catalog.pg_index, + pg_catalog.pg_constraint.c.conindid + == pg_catalog.pg_index.c.indexrelid, + ) .outerjoin( pg_catalog.pg_description, pg_catalog.pg_description.c.objoid @@ -4060,6 +4269,9 @@ def _constraint_query(self, is_unique): .where( pg_catalog.pg_constraint.c.contype == bindparam("contype"), pg_catalog.pg_constraint.c.conrelid.in_(bindparam("oids")), + # NOTE: filtering also on pg_index.indrelid for oids does + # not seem to have a performance effect, but it may be an + # option if perf problems are reported ) .subquery("con") ) @@ -4068,9 +4280,10 @@ def _constraint_query(self, is_unique): select( con_sq.c.conrelid, con_sq.c.conname, - con_sq.c.conindid, con_sq.c.description, con_sq.c.ord, + con_sq.c.indnkeyatts, + con_sq.c.indnullsnotdistinct, pg_catalog.pg_attribute.c.attname, ) .select_from(pg_catalog.pg_attribute) @@ -4087,13 +4300,13 @@ def _constraint_query(self, is_unique): # a sequential scan of pg_attribute. # The condition in the con_sq subquery is not actually needed # in pg15, but it may be needed in older versions. Keeping it - # does not seems to have any inpact in any case. + # does not seems to have any impact in any case. con_sq.c.conrelid.in_(bindparam("oids")) ) .subquery("attr") ) - constraint_query = ( + return ( select( attr_sq.c.conrelid, sql.func.array_agg( @@ -4105,31 +4318,15 @@ def _constraint_query(self, is_unique): ).label("cols"), attr_sq.c.conname, sql.func.min(attr_sq.c.description).label("description"), + sql.func.min(attr_sq.c.indnkeyatts).label("indnkeyatts"), + sql.func.bool_and(attr_sq.c.indnullsnotdistinct).label( + "indnullsnotdistinct" + ), ) .group_by(attr_sq.c.conrelid, attr_sq.c.conname) .order_by(attr_sq.c.conrelid, attr_sq.c.conname) ) - if is_unique: - if self.server_version_info >= (15,): - constraint_query = constraint_query.join( - pg_catalog.pg_index, - attr_sq.c.conindid == pg_catalog.pg_index.c.indexrelid, - ).add_columns( - sql.func.bool_and( - pg_catalog.pg_index.c.indnullsnotdistinct - ).label("indnullsnotdistinct") - ) - else: - constraint_query = constraint_query.add_columns( - sql.false().label("indnullsnotdistinct") - ) - else: - constraint_query = constraint_query.add_columns( - sql.null().label("extra") - ) - return constraint_query - def _reflect_constraint( self, connection, contype, schema, filter_names, scope, kind, **kw ): @@ -4145,26 +4342,42 @@ def _reflect_constraint( batches[0:3000] = [] result = connection.execute( - self._constraint_query(is_unique), + self._constraint_query, {"oids": [r[0] for r in batch], "contype": contype}, - ) + ).mappings() result_by_oid = defaultdict(list) - for oid, cols, constraint_name, comment, extra in result: - result_by_oid[oid].append( - (cols, constraint_name, comment, extra) - ) + for row_dict in result: + result_by_oid[row_dict["conrelid"]].append(row_dict) for oid, tablename in batch: for_oid = result_by_oid.get(oid, ()) if for_oid: - for cols, constraint, comment, extra in for_oid: - if is_unique: - yield tablename, cols, constraint, comment, { - "nullsnotdistinct": extra - } + for row in for_oid: + # See note in get_multi_indexes + all_cols = row["cols"] + indnkeyatts = row["indnkeyatts"] + if len(all_cols) > indnkeyatts: + inc_cols = all_cols[indnkeyatts:] + cst_cols = all_cols[:indnkeyatts] else: - yield tablename, cols, constraint, comment, None + inc_cols = [] + cst_cols = all_cols + + opts = {} + if self.server_version_info >= (11,): + opts["postgresql_include"] = inc_cols + if is_unique: + opts["postgresql_nulls_not_distinct"] = row[ + "indnullsnotdistinct" + ] + yield ( + tablename, + cst_cols, + row["conname"], + row["description"], + opts, + ) else: yield tablename, None, None, None, None @@ -4190,20 +4403,27 @@ def get_multi_pk_constraint( # only a single pk can be present for each table. Return an entry # even if a table has no primary key default = ReflectionDefaults.pk_constraint + + def pk_constraint(pk_name, cols, comment, opts): + info = { + "constrained_columns": cols, + "name": pk_name, + "comment": comment, + } + if opts: + info["dialect_options"] = opts + return info + return ( ( (schema, table_name), ( - { - "constrained_columns": [] if cols is None else cols, - "name": pk_name, - "comment": comment, - } + pk_constraint(pk_name, cols, comment, opts) if pk_name is not None else default() ), ) - for table_name, cols, pk_name, comment, _ in result + for table_name, cols, pk_name, comment, opts in result ) @reflection.cache @@ -4287,22 +4507,66 @@ def _foreing_key_query(self, schema, has_filter_names, scope, kind): @util.memoized_property def _fk_regex_pattern(self): # optionally quoted token - qtoken = '(?:"[^"]+"|[A-Za-z0-9_]+?)' + qtoken = r'(?:"[^"]+"|[\w]+?)' # https://www.postgresql.org/docs/current/static/sql-createtable.html return re.compile( r"FOREIGN KEY \((.*?)\) " rf"REFERENCES (?:({qtoken})\.)?({qtoken})\(((?:{qtoken}(?: *, *)?)+)\)" # noqa: E501 r"[\s]?(MATCH (FULL|PARTIAL|SIMPLE)+)?" - r"[\s]?(ON UPDATE " - r"(CASCADE|RESTRICT|NO ACTION|SET NULL|SET DEFAULT)+)?" - r"[\s]?(ON DELETE " + r"[\s]?(?:ON (UPDATE|DELETE) " + r"(CASCADE|RESTRICT|NO ACTION|" + r"SET (?:NULL|DEFAULT)(?:\s\(.+\))?)+)?" + r"[\s]?(?:ON (UPDATE|DELETE) " r"(CASCADE|RESTRICT|NO ACTION|" r"SET (?:NULL|DEFAULT)(?:\s\(.+\))?)+)?" r"[\s]?(DEFERRABLE|NOT DEFERRABLE)?" r"[\s]?(INITIALLY (DEFERRED|IMMEDIATE)+)?" ) + def _parse_fk(self, condef): + FK_REGEX = self._fk_regex_pattern + m = re.search(FK_REGEX, condef).groups() + + ( + constrained_columns, + referred_schema, + referred_table, + referred_columns, + _, + match, + upddelkey1, + upddelval1, + upddelkey2, + upddelval2, + deferrable, + _, + initially, + ) = m + + onupdate = ( + upddelval1 + if upddelkey1 == "UPDATE" + else upddelval2 if upddelkey2 == "UPDATE" else None + ) + ondelete = ( + upddelval1 + if upddelkey1 == "DELETE" + else upddelval2 if upddelkey2 == "DELETE" else None + ) + + return ( + constrained_columns, + referred_schema, + referred_table, + referred_columns, + match, + onupdate, + ondelete, + deferrable, + initially, + ) + def get_multi_foreign_keys( self, connection, @@ -4319,8 +4583,6 @@ def get_multi_foreign_keys( query = self._foreing_key_query(schema, has_filter_names, scope, kind) result = connection.execute(query, params) - FK_REGEX = self._fk_regex_pattern - fkeys = defaultdict(list) default = ReflectionDefaults.foreign_keys for table_name, conname, condef, conschema, comment in result: @@ -4330,23 +4592,18 @@ def get_multi_foreign_keys( fkeys[(schema, table_name)] = default() continue table_fks = fkeys[(schema, table_name)] - m = re.search(FK_REGEX, condef).groups() ( constrained_columns, referred_schema, referred_table, referred_columns, - _, match, - _, onupdate, - _, ondelete, deferrable, - _, initially, - ) = m + ) = self._parse_fk(condef) if deferrable is not None: deferrable = True if deferrable == "DEFERRABLE" else False @@ -4414,7 +4671,10 @@ def get_indexes(self, connection, table_name, schema=None, **kw): @util.memoized_property def _index_query(self): - pg_class_index = pg_catalog.pg_class.alias("cls_idx") + # NOTE: pg_index is used as from two times to improve performance, + # since extraing all the index information from `idx_sq` to avoid + # the second pg_index use leads to a worse performing query in + # particular when querying for a single table (as of pg 17) # NOTE: repeating oids clause improve query performance # subquery to get the columns @@ -4423,6 +4683,9 @@ def _index_query(self): pg_catalog.pg_index.c.indexrelid, pg_catalog.pg_index.c.indrelid, sql.func.unnest(pg_catalog.pg_index.c.indkey).label("attnum"), + sql.func.unnest(pg_catalog.pg_index.c.indclass).label( + "att_opclass" + ), sql.func.generate_subscripts( pg_catalog.pg_index.c.indkey, 1 ).label("ord"), @@ -4454,6 +4717,8 @@ def _index_query(self): else_=pg_catalog.pg_attribute.c.attname.cast(TEXT), ).label("element"), (idx_sq.c.attnum == 0).label("is_expr"), + pg_catalog.pg_opclass.c.opcname, + pg_catalog.pg_opclass.c.opcdefault, ) .select_from(idx_sq) .outerjoin( @@ -4464,6 +4729,10 @@ def _index_query(self): pg_catalog.pg_attribute.c.attrelid == idx_sq.c.indrelid, ), ) + .outerjoin( + pg_catalog.pg_opclass, + pg_catalog.pg_opclass.c.oid == idx_sq.c.att_opclass, + ) .where(idx_sq.c.indrelid.in_(bindparam("oids"))) .subquery("idx_attr") ) @@ -4478,6 +4747,12 @@ def _index_query(self): sql.func.array_agg( aggregate_order_by(attr_sq.c.is_expr, attr_sq.c.ord) ).label("elements_is_expr"), + sql.func.array_agg( + aggregate_order_by(attr_sq.c.opcname, attr_sq.c.ord) + ).label("elements_opclass"), + sql.func.array_agg( + aggregate_order_by(attr_sq.c.opcdefault, attr_sq.c.ord) + ).label("elements_opdefault"), ) .group_by(attr_sq.c.indexrelid) .subquery("idx_cols") @@ -4486,7 +4761,7 @@ def _index_query(self): if self.server_version_info >= (11, 0): indnkeyatts = pg_catalog.pg_index.c.indnkeyatts else: - indnkeyatts = sql.null().label("indnkeyatts") + indnkeyatts = pg_catalog.pg_index.c.indnatts.label("indnkeyatts") if self.server_version_info >= (15,): nulls_not_distinct = pg_catalog.pg_index.c.indnullsnotdistinct @@ -4496,13 +4771,13 @@ def _index_query(self): return ( select( pg_catalog.pg_index.c.indrelid, - pg_class_index.c.relname.label("relname_index"), + pg_catalog.pg_class.c.relname, pg_catalog.pg_index.c.indisunique, pg_catalog.pg_constraint.c.conrelid.is_not(None).label( "has_constraint" ), pg_catalog.pg_index.c.indoption, - pg_class_index.c.reloptions, + pg_catalog.pg_class.c.reloptions, pg_catalog.pg_am.c.amname, # NOTE: pg_get_expr is very fast so this case has almost no # performance impact @@ -4520,6 +4795,8 @@ def _index_query(self): nulls_not_distinct, cols_sq.c.elements, cols_sq.c.elements_is_expr, + cols_sq.c.elements_opclass, + cols_sq.c.elements_opdefault, ) .select_from(pg_catalog.pg_index) .where( @@ -4527,12 +4804,12 @@ def _index_query(self): ~pg_catalog.pg_index.c.indisprimary, ) .join( - pg_class_index, - pg_catalog.pg_index.c.indexrelid == pg_class_index.c.oid, + pg_catalog.pg_class, + pg_catalog.pg_index.c.indexrelid == pg_catalog.pg_class.c.oid, ) .join( pg_catalog.pg_am, - pg_class_index.c.relam == pg_catalog.pg_am.c.oid, + pg_catalog.pg_class.c.relam == pg_catalog.pg_am.c.oid, ) .outerjoin( cols_sq, @@ -4549,7 +4826,9 @@ def _index_query(self): == sql.any_(_array.array(("p", "u", "x"))), ), ) - .order_by(pg_catalog.pg_index.c.indrelid, pg_class_index.c.relname) + .order_by( + pg_catalog.pg_index.c.indrelid, pg_catalog.pg_class.c.relname + ) ) def get_multi_indexes( @@ -4584,17 +4863,19 @@ def get_multi_indexes( continue for row in result_by_oid[oid]: - index_name = row["relname_index"] + index_name = row["relname"] table_indexes = indexes[(schema, table_name)] all_elements = row["elements"] all_elements_is_expr = row["elements_is_expr"] + all_elements_opclass = row["elements_opclass"] + all_elements_opdefault = row["elements_opdefault"] indnkeyatts = row["indnkeyatts"] # "The number of key columns in the index, not counting any # included columns, which are merely stored and do not # participate in the index semantics" - if indnkeyatts and len(all_elements) > indnkeyatts: + if len(all_elements) > indnkeyatts: # this is a "covering index" which has INCLUDE columns # as well as regular index columns inc_cols = all_elements[indnkeyatts:] @@ -4609,10 +4890,18 @@ def get_multi_indexes( not is_expr for is_expr in all_elements_is_expr[indnkeyatts:] ) + idx_elements_opclass = all_elements_opclass[ + :indnkeyatts + ] + idx_elements_opdefault = all_elements_opdefault[ + :indnkeyatts + ] else: idx_elements = all_elements idx_elements_is_expr = all_elements_is_expr inc_cols = [] + idx_elements_opclass = all_elements_opclass + idx_elements_opdefault = all_elements_opdefault index = {"name": index_name, "unique": row["indisunique"]} if any(idx_elements_is_expr): @@ -4626,6 +4915,19 @@ def get_multi_indexes( else: index["column_names"] = idx_elements + dialect_options = {} + + if not all(idx_elements_opdefault): + dialect_options["postgresql_ops"] = { + name: opclass + for name, opclass, is_default in zip( + idx_elements, + idx_elements_opclass, + idx_elements_opdefault, + ) + if not is_default + } + sorting = {} for col_index, col_flags in enumerate(row["indoption"]): col_sorting = () @@ -4645,7 +4947,6 @@ def get_multi_indexes( if row["has_constraint"]: index["duplicates_constraint"] = index_name - dialect_options = {} if row["reloptions"]: dialect_options["postgresql_with"] = dict( [ @@ -4713,7 +5014,7 @@ def get_multi_unique_constraints( default = ReflectionDefaults.unique_constraints for table_name, cols, con_name, comment, options in result: # ensure a list is created for each table. leave it empty if - # the table has no unique cosntraint + # the table has no unique constraint if con_name is None: uniques[(schema, table_name)] = default() continue @@ -4724,12 +5025,7 @@ def get_multi_unique_constraints( "comment": comment, } if options: - if options["nullsnotdistinct"]: - uc_dict["dialect_options"] = { - "postgresql_nulls_not_distinct": options[ - "nullsnotdistinct" - ] - } + uc_dict["dialect_options"] = options uniques[(schema, table_name)].append(uc_dict) return uniques.items() diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/dml.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/dml.py index 1187b6bf5..053770e1c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/dml.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/dml.py @@ -1,5 +1,5 @@ # dialects/postgresql/dml.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ext.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ext.py index 94466ae0a..651f40f91 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ext.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ext.py @@ -1,5 +1,5 @@ # dialects/postgresql/ext.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -8,6 +8,11 @@ from __future__ import annotations from typing import Any +from typing import Iterable +from typing import List +from typing import Optional +from typing import overload +from typing import Tuple from typing import TYPE_CHECKING from typing import TypeVar @@ -23,13 +28,20 @@ from ...sql.sqltypes import TEXT from ...sql.visitors import InternalTraversal -_T = TypeVar("_T", bound=Any) - if TYPE_CHECKING: + from ...sql._typing import _ColumnExpressionArgument + from ...sql._typing import _DDLColumnArgument + from ...sql.elements import ClauseElement + from ...sql.elements import ColumnElement + from ...sql.operators import OperatorType + from ...sql.selectable import FromClause + from ...sql.visitors import _CloneCallableType from ...sql.visitors import _TraverseInternalsType +_T = TypeVar("_T", bound=Any) -class aggregate_order_by(expression.ColumnElement): + +class aggregate_order_by(expression.ColumnElement[_T]): """Represent a PostgreSQL aggregate order by expression. E.g.:: @@ -75,11 +87,32 @@ class aggregate_order_by(expression.ColumnElement): ("order_by", InternalTraversal.dp_clauseelement), ] - def __init__(self, target, *order_by): - self.target = coercions.expect(roles.ExpressionElementRole, target) + @overload + def __init__( + self, + target: ColumnElement[_T], + *order_by: _ColumnExpressionArgument[Any], + ): ... + + @overload + def __init__( + self, + target: _ColumnExpressionArgument[_T], + *order_by: _ColumnExpressionArgument[Any], + ): ... + + def __init__( + self, + target: _ColumnExpressionArgument[_T], + *order_by: _ColumnExpressionArgument[Any], + ): + self.target: ClauseElement = coercions.expect( + roles.ExpressionElementRole, target + ) self.type = self.target.type _lob = len(order_by) + self.order_by: ClauseElement if _lob == 0: raise TypeError("at least one ORDER BY element is required") elif _lob == 1: @@ -91,18 +124,22 @@ def __init__(self, target, *order_by): *order_by, _literal_as_text_role=roles.ExpressionElementRole ) - def self_group(self, against=None): + def self_group( + self, against: Optional[OperatorType] = None + ) -> ClauseElement: return self - def get_children(self, **kwargs): + def get_children(self, **kwargs: Any) -> Iterable[ClauseElement]: return self.target, self.order_by - def _copy_internals(self, clone=elements._clone, **kw): + def _copy_internals( + self, clone: _CloneCallableType = elements._clone, **kw: Any + ) -> None: self.target = clone(self.target, **kw) self.order_by = clone(self.order_by, **kw) @property - def _from_objects(self): + def _from_objects(self) -> List[FromClause]: return self.target._from_objects + self.order_by._from_objects @@ -128,7 +165,9 @@ class ExcludeConstraint(ColumnCollectionConstraint): ":class:`.ExcludeConstraint`", ":paramref:`.ExcludeConstraint.where`", ) - def __init__(self, *elements, **kw): + def __init__( + self, *elements: Tuple[_DDLColumnArgument, str], **kw: Any + ) -> None: r""" Create an :class:`.ExcludeConstraint` object. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/hstore.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/hstore.py index 0a915b17d..27005f063 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/hstore.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/hstore.py @@ -1,5 +1,5 @@ # dialects/postgresql/hstore.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/json.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/json.py index 06f8db5b2..3561929b2 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/json.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/json.py @@ -1,5 +1,5 @@ # dialects/postgresql/json.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -33,6 +33,7 @@ if TYPE_CHECKING: from ...engine.interfaces import Dialect from ...sql.elements import ColumnElement + from ...sql.operators import OperatorType from ...sql.type_api import _BindProcessorType from ...sql.type_api import _LiteralProcessorType from ...sql.type_api import TypeEngine @@ -279,10 +280,46 @@ class JSONB(JSON): :class:`_types.JSON` + .. warning:: + + **For applications that have indexes against JSONB subscript + expressions** + + SQLAlchemy 2.0.42 made a change in how the subscript operation for + :class:`.JSONB` is rendered, from ``-> 'element'`` to ``['element']``, + for PostgreSQL versions greater than 14. This change caused an + unintended side effect for indexes that were created against + expressions that use subscript notation, e.g. + ``Index("ix_entity_json_ab_text", data["a"]["b"].astext)``. If these + indexes were generated with the older syntax e.g. ``((entity.data -> + 'a') ->> 'b')``, they will not be used by the PostgreSQL query planner + when a query is made using SQLAlchemy 2.0.42 or higher on PostgreSQL + versions 14 or higher. This occurs because the new text will resemble + ``(entity.data['a'] ->> 'b')`` which will fail to produce the exact + textual syntax match required by the PostgreSQL query planner. + Therefore, for users upgrading to SQLAlchemy 2.0.42 or higher, existing + indexes that were created against :class:`.JSONB` expressions that use + subscripting would need to be dropped and re-created in order for them + to work with the new query syntax, e.g. an expression like + ``((entity.data -> 'a') ->> 'b')`` would become ``(entity.data['a'] ->> + 'b')``. + + .. seealso:: + + :ticket:`12868` - discussion of this issue + """ __visit_name__ = "JSONB" + def coerce_compared_value( + self, op: Optional[OperatorType], value: Any + ) -> TypeEngine[Any]: + if op in (PATH_MATCH, PATH_EXISTS): + return JSON.JSONPathType() + else: + return super().coerce_compared_value(op, value) + class Comparator(JSON.Comparator[_T]): """Define comparison operations for :class:`_types.JSON`.""" diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/named_types.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/named_types.py index e1b8e84ce..bd865452f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/named_types.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/named_types.py @@ -1,5 +1,5 @@ # dialects/postgresql/named_types.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -7,7 +7,9 @@ # mypy: ignore-errors from __future__ import annotations +from types import ModuleType from typing import Any +from typing import Dict from typing import Optional from typing import Type from typing import TYPE_CHECKING @@ -25,10 +27,11 @@ from ...sql.ddl import InvokeDropDDLBase if TYPE_CHECKING: + from ...sql._typing import _CreateDropBind from ...sql._typing import _TypeEngineArgument -class NamedType(sqltypes.TypeEngine): +class NamedType(schema.SchemaVisitable, sqltypes.TypeEngine): """Base for named types.""" __abstract__ = True @@ -36,7 +39,9 @@ class NamedType(sqltypes.TypeEngine): DDLDropper: Type[NamedTypeDropper] create_type: bool - def create(self, bind, checkfirst=True, **kw): + def create( + self, bind: _CreateDropBind, checkfirst: bool = True, **kw: Any + ) -> None: """Emit ``CREATE`` DDL for this type. :param bind: a connectable :class:`_engine.Engine`, @@ -50,7 +55,9 @@ def create(self, bind, checkfirst=True, **kw): """ bind._run_ddl_visitor(self.DDLGenerator, self, checkfirst=checkfirst) - def drop(self, bind, checkfirst=True, **kw): + def drop( + self, bind: _CreateDropBind, checkfirst: bool = True, **kw: Any + ) -> None: """Emit ``DROP`` DDL for this type. :param bind: a connectable :class:`_engine.Engine`, @@ -63,7 +70,9 @@ def drop(self, bind, checkfirst=True, **kw): """ bind._run_ddl_visitor(self.DDLDropper, self, checkfirst=checkfirst) - def _check_for_name_in_memos(self, checkfirst, kw): + def _check_for_name_in_memos( + self, checkfirst: bool, kw: Dict[str, Any] + ) -> bool: """Look in the 'ddl runner' for 'memos', then note our name in that collection. @@ -87,7 +96,13 @@ def _check_for_name_in_memos(self, checkfirst, kw): else: return False - def _on_table_create(self, target, bind, checkfirst=False, **kw): + def _on_table_create( + self, + target: Any, + bind: _CreateDropBind, + checkfirst: bool = False, + **kw: Any, + ) -> None: if ( checkfirst or ( @@ -97,7 +112,13 @@ def _on_table_create(self, target, bind, checkfirst=False, **kw): ) and not self._check_for_name_in_memos(checkfirst, kw): self.create(bind=bind, checkfirst=checkfirst) - def _on_table_drop(self, target, bind, checkfirst=False, **kw): + def _on_table_drop( + self, + target: Any, + bind: _CreateDropBind, + checkfirst: bool = False, + **kw: Any, + ) -> None: if ( not self.metadata and not kw.get("_is_metadata_operation", False) @@ -105,11 +126,23 @@ def _on_table_drop(self, target, bind, checkfirst=False, **kw): ): self.drop(bind=bind, checkfirst=checkfirst) - def _on_metadata_create(self, target, bind, checkfirst=False, **kw): + def _on_metadata_create( + self, + target: Any, + bind: _CreateDropBind, + checkfirst: bool = False, + **kw: Any, + ) -> None: if not self._check_for_name_in_memos(checkfirst, kw): self.create(bind=bind, checkfirst=checkfirst) - def _on_metadata_drop(self, target, bind, checkfirst=False, **kw): + def _on_metadata_drop( + self, + target: Any, + bind: _CreateDropBind, + checkfirst: bool = False, + **kw: Any, + ) -> None: if not self._check_for_name_in_memos(checkfirst, kw): self.drop(bind=bind, checkfirst=checkfirst) @@ -314,7 +347,7 @@ def adapt_emulated_to_native(cls, impl, **kw): return cls(**kw) - def create(self, bind=None, checkfirst=True): + def create(self, bind: _CreateDropBind, checkfirst: bool = True) -> None: """Emit ``CREATE TYPE`` for this :class:`_postgresql.ENUM`. @@ -335,7 +368,7 @@ def create(self, bind=None, checkfirst=True): super().create(bind, checkfirst=checkfirst) - def drop(self, bind=None, checkfirst=True): + def drop(self, bind: _CreateDropBind, checkfirst: bool = True) -> None: """Emit ``DROP TYPE`` for this :class:`_postgresql.ENUM`. @@ -355,7 +388,7 @@ def drop(self, bind=None, checkfirst=True): super().drop(bind, checkfirst=checkfirst) - def get_dbapi_type(self, dbapi): + def get_dbapi_type(self, dbapi: ModuleType) -> None: """dont return dbapi.STRING for ENUM in PostgreSQL, since that's a different type""" @@ -470,20 +503,6 @@ def __init__( def __test_init__(cls): return cls("name", sqltypes.Integer) - def adapt(self, impl, **kw): - if self.default: - kw["default"] = self.default - if self.constraint_name is not None: - kw["constraint_name"] = self.constraint_name - if self.not_null: - kw["not_null"] = self.not_null - if self.check is not None: - kw["check"] = str(self.check) - if self.create_type: - kw["create_type"] = self.create_type - - return super().adapt(impl, **kw) - class CreateEnumType(schema._CreateDropBase): __visit_name__ = "create_enum_type" diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/operators.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/operators.py index ebcafcba9..9e4d26570 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/operators.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/operators.py @@ -1,5 +1,5 @@ # dialects/postgresql/operators.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg8000.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg8000.py index bf113230e..cd233de13 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg8000.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg8000.py @@ -1,5 +1,5 @@ # dialects/postgresql/pg8000.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors # # This module is part of SQLAlchemy and is released under @@ -540,6 +540,9 @@ def set_isolation_level(self, dbapi_connection, level): cursor.execute("COMMIT") cursor.close() + def detect_autocommit_setting(self, dbapi_conn) -> bool: + return bool(dbapi_conn.autocommit) + def set_readonly(self, connection, value): cursor = connection.cursor() try: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg_catalog.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg_catalog.py index 78f390a21..08663baf4 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg_catalog.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/pg_catalog.py @@ -1,10 +1,16 @@ # dialects/postgresql/pg_catalog.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors + +from __future__ import annotations + +from typing import Any +from typing import Optional +from typing import Sequence +from typing import TYPE_CHECKING from .array import ARRAY from .types import OID @@ -23,31 +29,37 @@ from ...types import Text from ...types import TypeDecorator +if TYPE_CHECKING: + from ...engine.interfaces import Dialect + from ...sql.type_api import _ResultProcessorType + # types -class NAME(TypeDecorator): +class NAME(TypeDecorator[str]): impl = String(64, collation="C") cache_ok = True -class PG_NODE_TREE(TypeDecorator): +class PG_NODE_TREE(TypeDecorator[str]): impl = Text(collation="C") cache_ok = True -class INT2VECTOR(TypeDecorator): +class INT2VECTOR(TypeDecorator[Sequence[int]]): impl = ARRAY(SmallInteger) cache_ok = True -class OIDVECTOR(TypeDecorator): +class OIDVECTOR(TypeDecorator[Sequence[int]]): impl = ARRAY(OID) cache_ok = True class _SpaceVector: - def result_processor(self, dialect, coltype): - def process(value): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> _ResultProcessorType[list[int]]: + def process(value: Any) -> Optional[list[int]]: if value is None: return value return [int(p) for p in value.split(" ")] @@ -298,3 +310,17 @@ def process(value): Column("collicurules", Text, info={"server_version": (16,)}), Column("collversion", Text, info={"server_version": (10,)}), ) + +pg_opclass = Table( + "pg_opclass", + pg_catalog_meta, + Column("oid", OID, info={"server_version": (9, 3)}), + Column("opcmethod", NAME), + Column("opcname", NAME), + Column("opsnamespace", OID), + Column("opsowner", OID), + Column("opcfamily", OID), + Column("opcintype", OID), + Column("opcdefault", Boolean), + Column("opckeytype", OID), +) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/provision.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/provision.py index c76f5f518..dfe0f627d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/provision.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/provision.py @@ -1,5 +1,5 @@ # dialects/postgresql/provision.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -137,7 +137,13 @@ def prepare_for_drop_tables(config, connection): @upsert.for_db("postgresql") def _upsert( - cfg, table, returning, *, set_lambda=None, sort_by_parameter_order=False + cfg, + table, + returning, + *, + set_lambda=None, + sort_by_parameter_order=False, + index_elements=None, ): from sqlalchemy.dialects.postgresql import insert @@ -146,8 +152,10 @@ def _upsert( table_pk = inspect(table).selectable if set_lambda: + if index_elements is None: + index_elements = table_pk.primary_key stmt = stmt.on_conflict_do_update( - index_elements=table_pk.primary_key, set_=set_lambda(stmt.excluded) + index_elements=index_elements, set_=set_lambda(stmt.excluded) ) else: stmt = stmt.on_conflict_do_nothing() diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg.py index 0554048c2..67dc5ca86 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg.py @@ -1,5 +1,5 @@ # dialects/postgresql/psycopg.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -59,6 +59,82 @@ dialect shares most of its behavior with the ``psycopg2`` dialect. Further documentation is available there. +Using psycopg Connection Pooling +-------------------------------- + +The ``psycopg`` driver provides its own connection pool implementation that +may be used in place of SQLAlchemy's pooling functionality. +This pool implementation provides support for fixed and dynamic pool sizes +(including automatic downsizing for unused connections), connection health +pre-checks, and support for both synchronous and asynchronous code +environments. + +Here is an example that uses the sync version of the pool, using +``psycopg_pool >= 3.3`` that introduces support for ``close_returns=True``:: + + import psycopg_pool + from sqlalchemy import create_engine + from sqlalchemy.pool import NullPool + + # Create a psycopg_pool connection pool + my_pool = psycopg_pool.ConnectionPool( + conninfo="postgresql://scott:tiger@localhost/test", + close_returns=True, # Return "closed" active connections to the pool + # ... other pool parameters as desired ... + ) + + # Create an engine that uses the connection pool to get a connection + engine = create_engine( + url="postgresql+psycopg://", # Only need the dialect now + poolclass=NullPool, # Disable SQLAlchemy's default connection pool + creator=my_pool.getconn, # Use Psycopg 3 connection pool to obtain connections + ) + +Similarly an the async example:: + + import psycopg_pool + from sqlalchemy.ext.asyncio import create_async_engine + from sqlalchemy.pool import NullPool + + + async def define_engine(): + # Create a psycopg_pool connection pool + my_pool = psycopg_pool.AsyncConnectionPool( + conninfo="postgresql://scott:tiger@localhost/test", + open=False, # See comment below + close_returns=True, # Return "closed" active connections to the pool + # ... other pool parameters as desired ... + ) + + # Must explicitly open AsyncConnectionPool outside constructor + # https://www.psycopg.org/psycopg3/docs/api/pool.html#psycopg_pool.AsyncConnectionPool + await my_pool.open() + + # Create an engine that uses the connection pool to get a connection + engine = create_async_engine( + url="postgresql+psycopg://", # Only need the dialect now + poolclass=NullPool, # Disable SQLAlchemy's default connection pool + async_creator=my_pool.getconn, # Use Psycopg 3 connection pool to obtain connections + ) + + return engine, my_pool + +The resulting engine may then be used normally. Internally, Psycopg 3 handles +connection pooling:: + + with engine.connect() as conn: + print(conn.scalar(text("select 42"))) + +.. seealso:: + + `Connection pools `_ - + the Psycopg 3 documentation for ``psycopg_pool.ConnectionPool``. + + `Example for older version of psycopg_pool + `_ - + An example about using the ``psycopg_pool<3.3`` that did not have the + ``close_returns``` parameter. + Using a different Cursor class ------------------------------ @@ -585,6 +661,9 @@ def arraysize(self): def arraysize(self, value): self._cursor.arraysize = value + async def _async_soft_close(self) -> None: + return + def close(self): self._rows.clear() # Normal cursor just call _close() in a non-sync way. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2.py index eeb7604f7..189e6566c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2.py @@ -1,5 +1,5 @@ # dialects/postgresql/psycopg2.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2cffi.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2cffi.py index 55e176070..f4dcfc701 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2cffi.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/psycopg2cffi.py @@ -1,5 +1,5 @@ # dialects/postgresql/psycopg2cffi.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ranges.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ranges.py index 93253570c..73ac38d0f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ranges.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/ranges.py @@ -1,5 +1,5 @@ # dialects/postgresql/ranges.py -# Copyright (C) 2013-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2013-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -271,9 +271,9 @@ def _compare_edges( value2 += step value2_inc = False - if value1 < value2: # type: ignore + if value1 < value2: return -1 - elif value1 > value2: # type: ignore + elif value1 > value2: return 1 elif only_values: return 0 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/types.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/types.py index 1aed2bf47..d6210e217 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/types.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/postgresql/types.py @@ -1,5 +1,5 @@ # dialects/postgresql/types.py -# Copyright (C) 2013-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2013-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/__init__.py index 7b381fa6f..860908224 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/__init__.py @@ -1,5 +1,5 @@ # dialects/sqlite/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py index 828022454..afd3688ed 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/aiosqlite.py @@ -1,10 +1,9 @@ # dialects/sqlite/aiosqlite.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" @@ -50,33 +49,10 @@ Serializable isolation / Savepoints / Transactional DDL (asyncio version) ------------------------------------------------------------------------- -Similarly to pysqlite, aiosqlite does not support SAVEPOINT feature. +A newly revised version of this important section is now available +at the top level of the SQLAlchemy SQLite documentation, in the section +:ref:`sqlite_transactions`. -The solution is similar to :ref:`pysqlite_serializable`. This is achieved by the event listeners in async:: - - from sqlalchemy import create_engine, event - from sqlalchemy.ext.asyncio import create_async_engine - - engine = create_async_engine("sqlite+aiosqlite:///myfile.db") - - - @event.listens_for(engine.sync_engine, "connect") - def do_connect(dbapi_connection, connection_record): - # disable aiosqlite's emitting of the BEGIN statement entirely. - # also stops it from emitting COMMIT before any DDL. - dbapi_connection.isolation_level = None - - - @event.listens_for(engine.sync_engine, "begin") - def do_begin(conn): - # emit our own BEGIN - conn.exec_driver_sql("BEGIN") - -.. warning:: When using the above recipe, it is advised to not use the - :paramref:`.Connection.execution_options.isolation_level` setting on - :class:`_engine.Connection` and :func:`_sa.create_engine` - with the SQLite driver, - as this function necessarily will also alter the ".isolation_level" setting. .. _aiosqlite_pooling: @@ -101,19 +77,45 @@ def do_begin(conn): :paramref:`_sa.create_engine.poolclass` parameter. """ # noqa +from __future__ import annotations import asyncio from collections import deque from functools import partial +from threading import Thread +from types import ModuleType +from typing import Any +from typing import cast +from typing import Deque +from typing import Iterator +from typing import NoReturn +from typing import Optional +from typing import Sequence +from typing import TYPE_CHECKING +from typing import Union from .base import SQLiteExecutionContext from .pysqlite import SQLiteDialect_pysqlite from ... import pool from ... import util +from ...connectors.asyncio import AsyncAdapt_dbapi_module +from ...connectors.asyncio import AsyncAdapt_terminate from ...engine import AdaptedConnection from ...util.concurrency import await_fallback from ...util.concurrency import await_only +if TYPE_CHECKING: + from ...connectors.asyncio import AsyncIODBAPIConnection + from ...connectors.asyncio import AsyncIODBAPICursor + from ...engine.interfaces import _DBAPICursorDescription + from ...engine.interfaces import _DBAPIMultiExecuteParams + from ...engine.interfaces import _DBAPISingleExecuteParams + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.url import URL + from ...pool.base import PoolProxiedConnection + class AsyncAdapt_aiosqlite_cursor: # TODO: base on connectors/asyncio.py @@ -132,21 +134,29 @@ class AsyncAdapt_aiosqlite_cursor: server_side = False - def __init__(self, adapt_connection): + def __init__(self, adapt_connection: AsyncAdapt_aiosqlite_connection): self._adapt_connection = adapt_connection self._connection = adapt_connection._connection self.await_ = adapt_connection.await_ self.arraysize = 1 self.rowcount = -1 - self.description = None - self._rows = deque() + self.description: Optional[_DBAPICursorDescription] = None + self._rows: Deque[Any] = deque() + + async def _async_soft_close(self) -> None: + return - def close(self): + def close(self) -> None: self._rows.clear() - def execute(self, operation, parameters=None): + def execute( + self, + operation: Any, + parameters: Optional[_DBAPISingleExecuteParams] = None, + ) -> Any: + try: - _cursor = self.await_(self._connection.cursor()) + _cursor: AsyncIODBAPICursor = self.await_(self._connection.cursor()) # type: ignore[arg-type] # noqa: E501 if parameters is None: self.await_(_cursor.execute(operation)) @@ -167,13 +177,17 @@ def execute(self, operation, parameters=None): if not self.server_side: self.await_(_cursor.close()) else: - self._cursor = _cursor + self._cursor = _cursor # type: ignore[misc] except Exception as error: self._adapt_connection._handle_exception(error) - def executemany(self, operation, seq_of_parameters): + def executemany( + self, + operation: Any, + seq_of_parameters: _DBAPIMultiExecuteParams, + ) -> Any: try: - _cursor = self.await_(self._connection.cursor()) + _cursor: AsyncIODBAPICursor = self.await_(self._connection.cursor()) # type: ignore[arg-type] # noqa: E501 self.await_(_cursor.executemany(operation, seq_of_parameters)) self.description = None self.lastrowid = _cursor.lastrowid @@ -182,27 +196,27 @@ def executemany(self, operation, seq_of_parameters): except Exception as error: self._adapt_connection._handle_exception(error) - def setinputsizes(self, *inputsizes): + def setinputsizes(self, *inputsizes: Any) -> None: pass - def __iter__(self): + def __iter__(self) -> Iterator[Any]: while self._rows: yield self._rows.popleft() - def fetchone(self): + def fetchone(self) -> Optional[Any]: if self._rows: return self._rows.popleft() else: return None - def fetchmany(self, size=None): + def fetchmany(self, size: Optional[int] = None) -> Sequence[Any]: if size is None: size = self.arraysize rr = self._rows return [rr.popleft() for _ in range(min(size, len(rr)))] - def fetchall(self): + def fetchall(self) -> Sequence[Any]: retval = list(self._rows) self._rows.clear() return retval @@ -215,47 +229,52 @@ class AsyncAdapt_aiosqlite_ss_cursor(AsyncAdapt_aiosqlite_cursor): server_side = True - def __init__(self, *arg, **kw): + def __init__(self, *arg: Any, **kw: Any) -> None: super().__init__(*arg, **kw) - self._cursor = None + self._cursor: Optional[AsyncIODBAPICursor] = None - def close(self): + def close(self) -> None: if self._cursor is not None: self.await_(self._cursor.close()) self._cursor = None - def fetchone(self): + def fetchone(self) -> Optional[Any]: + assert self._cursor is not None return self.await_(self._cursor.fetchone()) - def fetchmany(self, size=None): + def fetchmany(self, size: Optional[int] = None) -> Sequence[Any]: + assert self._cursor is not None if size is None: size = self.arraysize return self.await_(self._cursor.fetchmany(size=size)) - def fetchall(self): + def fetchall(self) -> Sequence[Any]: + assert self._cursor is not None return self.await_(self._cursor.fetchall()) -class AsyncAdapt_aiosqlite_connection(AdaptedConnection): +class AsyncAdapt_aiosqlite_connection(AsyncAdapt_terminate, AdaptedConnection): await_ = staticmethod(await_only) __slots__ = ("dbapi",) - def __init__(self, dbapi, connection): + def __init__(self, dbapi: Any, connection: AsyncIODBAPIConnection) -> None: self.dbapi = dbapi self._connection = connection @property - def isolation_level(self): - return self._connection.isolation_level + def isolation_level(self) -> Optional[str]: + return cast(str, self._connection.isolation_level) @isolation_level.setter - def isolation_level(self, value): + def isolation_level(self, value: Optional[str]) -> None: # aiosqlite's isolation_level setter works outside the Thread # that it's supposed to, necessitating setting check_same_thread=False. # for improved stability, we instead invent our own awaitable version # using aiosqlite's async queue directly. - def set_iso(connection, value): + def set_iso( + connection: AsyncAdapt_aiosqlite_connection, value: Optional[str] + ) -> None: connection.isolation_level = value function = partial(set_iso, self._connection._conn, value) @@ -264,38 +283,38 @@ def set_iso(connection, value): self._connection._tx.put_nowait((future, function)) try: - return self.await_(future) + self.await_(future) except Exception as error: self._handle_exception(error) - def create_function(self, *args, **kw): + def create_function(self, *args: Any, **kw: Any) -> None: try: self.await_(self._connection.create_function(*args, **kw)) except Exception as error: self._handle_exception(error) - def cursor(self, server_side=False): + def cursor(self, server_side: bool = False) -> AsyncAdapt_aiosqlite_cursor: if server_side: return AsyncAdapt_aiosqlite_ss_cursor(self) else: return AsyncAdapt_aiosqlite_cursor(self) - def execute(self, *args, **kw): + def execute(self, *args: Any, **kw: Any) -> Any: return self.await_(self._connection.execute(*args, **kw)) - def rollback(self): + def rollback(self) -> None: try: self.await_(self._connection.rollback()) except Exception as error: self._handle_exception(error) - def commit(self): + def commit(self) -> None: try: self.await_(self._connection.commit()) except Exception as error: self._handle_exception(error) - def close(self): + def close(self) -> None: try: self.await_(self._connection.close()) except ValueError: @@ -311,7 +330,7 @@ def close(self): except Exception as error: self._handle_exception(error) - def _handle_exception(self, error): + def _handle_exception(self, error: Exception) -> NoReturn: if ( isinstance(error, ValueError) and error.args[0] == "no active connection" @@ -322,6 +341,24 @@ def _handle_exception(self, error): else: raise error + async def _terminate_graceful_close(self) -> None: + """Try to close connection gracefully""" + await self._connection.close() + + def _terminate_force_close(self) -> None: + """Terminate the connection""" + + # this was added in aiosqlite 0.22.1. if stop() is not present, + # the dialect should indicate has_terminate=False + try: + meth = self._connection.stop + except AttributeError as ae: + raise NotImplementedError( + "terminate_force_close() not implemented by this DBAPI shim" + ) from ae + else: + meth() + class AsyncAdaptFallback_aiosqlite_connection(AsyncAdapt_aiosqlite_connection): __slots__ = () @@ -329,14 +366,15 @@ class AsyncAdaptFallback_aiosqlite_connection(AsyncAdapt_aiosqlite_connection): await_ = staticmethod(await_fallback) -class AsyncAdapt_aiosqlite_dbapi: - def __init__(self, aiosqlite, sqlite): +class AsyncAdapt_aiosqlite_dbapi(AsyncAdapt_dbapi_module): + def __init__(self, aiosqlite: ModuleType, sqlite: ModuleType): self.aiosqlite = aiosqlite self.sqlite = sqlite self.paramstyle = "qmark" + self.has_stop = hasattr(aiosqlite.Connection, "stop") self._init_dbapi_attributes() - def _init_dbapi_attributes(self): + def _init_dbapi_attributes(self) -> None: for name in ( "DatabaseError", "Error", @@ -355,7 +393,7 @@ def _init_dbapi_attributes(self): for name in ("Binary",): setattr(self, name, getattr(self.sqlite, name)) - def connect(self, *arg, **kw): + def connect(self, *arg: Any, **kw: Any) -> AsyncAdapt_aiosqlite_connection: async_fallback = kw.pop("async_fallback", False) creator_fn = kw.pop("async_creator_fn", None) @@ -363,8 +401,14 @@ def connect(self, *arg, **kw): connection = creator_fn(*arg, **kw) else: connection = self.aiosqlite.connect(*arg, **kw) - # it's a Thread. you'll thank us later - connection.daemon = True + + # aiosqlite uses a Thread. you'll thank us later + if isinstance(connection, Thread): + # Connection itself was a thread in version prior to 0.22 + connection.daemon = True + else: + # in 0.22+ instead it contains a thread. + connection._thread.daemon = True if util.asbool(async_fallback): return AsyncAdaptFallback_aiosqlite_connection( @@ -379,7 +423,7 @@ def connect(self, *arg, **kw): class SQLiteExecutionContext_aiosqlite(SQLiteExecutionContext): - def create_server_side_cursor(self): + def create_server_side_cursor(self) -> DBAPICursor: return self._dbapi_connection.cursor(server_side=True) @@ -388,25 +432,37 @@ class SQLiteDialect_aiosqlite(SQLiteDialect_pysqlite): supports_statement_cache = True is_async = True + has_terminate = True supports_server_side_cursors = True execution_ctx_cls = SQLiteExecutionContext_aiosqlite + def __init__(self, **kwargs: Any): + super().__init__(**kwargs) + if self.dbapi and not self.dbapi.has_stop: + self.has_terminate = False + @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> AsyncAdapt_aiosqlite_dbapi: return AsyncAdapt_aiosqlite_dbapi( __import__("aiosqlite"), __import__("sqlite3") ) @classmethod - def get_pool_class(cls, url): + def get_pool_class(cls, url: URL) -> type[pool.Pool]: if cls._is_url_file_db(url): return pool.AsyncAdaptedQueuePool else: return pool.StaticPool - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: + self.dbapi = cast("DBAPIModule", self.dbapi) if isinstance( e, self.dbapi.OperationalError ) and "no active connection" in str(e): @@ -414,8 +470,13 @@ def is_disconnect(self, e, connection, cursor): return super().is_disconnect(e, connection, cursor) - def get_driver_connection(self, connection): - return connection._connection + def get_driver_connection( + self, connection: DBAPIConnection + ) -> AsyncIODBAPIConnection: + return connection._connection # type: ignore[no-any-return] + + def do_terminate(self, dbapi_connection: DBAPIConnection) -> None: + dbapi_connection.terminate() dialect = SQLiteDialect_aiosqlite diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/base.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/base.py index bf632f1fa..35eb74bfa 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/base.py @@ -1,5 +1,5 @@ # dialects/sqlite/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -136,99 +136,199 @@ def bi_c(element, compiler, **kw): `Datatypes In SQLite Version 3 `_ -.. _sqlite_concurrency: - -Database Locking Behavior / Concurrency ---------------------------------------- - -SQLite is not designed for a high level of write concurrency. The database -itself, being a file, is locked completely during write operations within -transactions, meaning exactly one "connection" (in reality a file handle) -has exclusive access to the database during this period - all other -"connections" will be blocked during this time. - -The Python DBAPI specification also calls for a connection model that is -always in a transaction; there is no ``connection.begin()`` method, -only ``connection.commit()`` and ``connection.rollback()``, upon which a -new transaction is to be begun immediately. This may seem to imply -that the SQLite driver would in theory allow only a single filehandle on a -particular database file at any time; however, there are several -factors both within SQLite itself as well as within the pysqlite driver -which loosen this restriction significantly. - -However, no matter what locking modes are used, SQLite will still always -lock the database file once a transaction is started and DML (e.g. INSERT, -UPDATE, DELETE) has at least been emitted, and this will block -other transactions at least at the point that they also attempt to emit DML. -By default, the length of time on this block is very short before it times out -with an error. - -This behavior becomes more critical when used in conjunction with the -SQLAlchemy ORM. SQLAlchemy's :class:`.Session` object by default runs -within a transaction, and with its autoflush model, may emit DML preceding -any SELECT statement. This may lead to a SQLite database that locks -more quickly than is expected. The locking mode of SQLite and the pysqlite -driver can be manipulated to some degree, however it should be noted that -achieving a high degree of write-concurrency with SQLite is a losing battle. - -For more information on SQLite's lack of write concurrency by design, please -see -`Situations Where Another RDBMS May Work Better - High Concurrency -`_ near the bottom of the page. - -The following subsections introduce areas that are impacted by SQLite's -file-based architecture and additionally will usually require workarounds to -work when using the pysqlite driver. +.. _sqlite_transactions: + +Transactions with SQLite and the sqlite3 driver +----------------------------------------------- + +As a file-based database, SQLite's approach to transactions differs from +traditional databases in many ways. Additionally, the ``sqlite3`` driver +standard with Python (as well as the async version ``aiosqlite`` which builds +on top of it) has several quirks, workarounds, and API features in the +area of transaction control, all of which generally need to be addressed when +constructing a SQLAlchemy application that uses SQLite. + +Legacy Transaction Mode with the sqlite3 driver +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The most important aspect of transaction handling with the sqlite3 driver is +that it defaults (which will continue through Python 3.15 before being +removed in Python 3.16) to legacy transactional behavior which does +not strictly follow :pep:`249`. The way in which the driver diverges from the +PEP is that it does not "begin" a transaction automatically as dictated by +:pep:`249` except in the case of DML statements, e.g. INSERT, UPDATE, and +DELETE. Normally, :pep:`249` dictates that a BEGIN must be emitted upon +the first SQL statement of any kind, so that all subsequent operations will +be established within a transaction until ``connection.commit()`` has been +called. The ``sqlite3`` driver, in an effort to be easier to use in +highly concurrent environments, skips this step for DQL (e.g. SELECT) statements, +and also skips it for DDL (e.g. CREATE TABLE etc.) statements for more legacy +reasons. Statements such as SAVEPOINT are also skipped. + +In modern versions of the ``sqlite3`` driver as of Python 3.12, this legacy +mode of operation is referred to as +`"legacy transaction control" `_, and is in +effect by default due to the ``Connection.autocommit`` parameter being set to +the constant ``sqlite3.LEGACY_TRANSACTION_CONTROL``. Prior to Python 3.12, +the ``Connection.autocommit`` attribute did not exist. + +The implications of legacy transaction mode include: + +* **Incorrect support for transactional DDL** - statements like CREATE TABLE, ALTER TABLE, + CREATE INDEX etc. will not automatically BEGIN a transaction if one were not + started already, leading to the changes by each statement being + "autocommitted" immediately unless BEGIN were otherwise emitted first. Very + old (pre Python 3.6) versions of SQLite would also force a COMMIT for these + operations even if a transaction were present, however this is no longer the + case. +* **SERIALIZABLE behavior not fully functional** - SQLite's transaction isolation + behavior is normally consistent with SERIALIZABLE isolation, as it is a file- + based system that locks the database file entirely for write operations, + preventing COMMIT until all reader transactions (and associated file locks) + have completed. However, sqlite3's legacy transaction mode fails to emit BEGIN for SELECT + statements, which causes these SELECT statements to no longer be "repeatable", + failing one of the consistency guarantees of SERIALIZABLE. +* **Incorrect behavior for SAVEPOINT** - as the SAVEPOINT statement does not + imply a BEGIN, a new SAVEPOINT emitted before a BEGIN will function on its + own but fails to participate in the enclosing transaction, meaning a ROLLBACK + of the transaction will not rollback elements that were part of a released + savepoint. + +Legacy transaction mode first existed in order to facilitate working around +SQLite's file locks. Because SQLite relies upon whole-file locks, it is easy to +get "database is locked" errors, particularly when newer features like "write +ahead logging" are disabled. This is a key reason why ``sqlite3``'s legacy +transaction mode is still the default mode of operation; disabling it will +produce behavior that is more susceptible to locked database errors. However +note that **legacy transaction mode will no longer be the default** in a future +Python version (3.16 as of this writing). + +.. _sqlite_enabling_transactions: + +Enabling Non-Legacy SQLite Transactional Modes with the sqlite3 or aiosqlite driver +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Current SQLAlchemy support allows either for setting the +``.Connection.autocommit`` attribute, most directly by using a +:func:`._sa.create_engine` parameter, or if on an older version of Python where +the attribute is not available, using event hooks to control the behavior of +BEGIN. + +* **Enabling modern sqlite3 transaction control via the autocommit connect parameter** (Python 3.12 and above) + + To use SQLite in the mode described at `Transaction control via the autocommit attribute `_, + the most straightforward approach is to set the attribute to its recommended value + of ``False`` at the connect level using :paramref:`_sa.create_engine.connect_args``:: + + from sqlalchemy import create_engine + + engine = create_engine( + "sqlite:///myfile.db", connect_args={"autocommit": False} + ) + + This parameter is also passed through when using the aiosqlite driver:: + + from sqlalchemy.ext.asyncio import create_async_engine + + engine = create_async_engine( + "sqlite+aiosqlite:///myfile.db", connect_args={"autocommit": False} + ) + + The parameter can also be set at the attribute level using the :meth:`.PoolEvents.connect` + event hook, however this will only work for sqlite3, as aiosqlite does not yet expose this + attribute on its ``Connection`` object:: + + from sqlalchemy import create_engine, event + + engine = create_engine("sqlite:///myfile.db") + + + @event.listens_for(engine, "connect") + def do_connect(dbapi_connection, connection_record): + # enable autocommit=False mode + dbapi_connection.autocommit = False + +* **Using SQLAlchemy to emit BEGIN in lieu of SQLite's transaction control** (all Python versions, sqlite3 and aiosqlite) + + For older versions of ``sqlite3`` or for cross-compatiblity with older and + newer versions, SQLAlchemy can also take over the job of transaction control. + This is achieved by using the :meth:`.ConnectionEvents.begin` hook + to emit the "BEGIN" command directly, while also disabling SQLite's control + of this command using the :meth:`.PoolEvents.connect` event hook to set the + ``Connection.isolation_level`` attribute to ``None``:: + + + from sqlalchemy import create_engine, event + + engine = create_engine("sqlite:///myfile.db") + + + @event.listens_for(engine, "connect") + def do_connect(dbapi_connection, connection_record): + # disable sqlite3's emitting of the BEGIN statement entirely. + dbapi_connection.isolation_level = None + + + @event.listens_for(engine, "begin") + def do_begin(conn): + # emit our own BEGIN. sqlite3 still emits COMMIT/ROLLBACK correctly + conn.exec_driver_sql("BEGIN") + + When using the asyncio variant ``aiosqlite``, refer to ``engine.sync_engine`` + as in the example below:: + + from sqlalchemy import create_engine, event + from sqlalchemy.ext.asyncio import create_async_engine + + engine = create_async_engine("sqlite+aiosqlite:///myfile.db") + + + @event.listens_for(engine.sync_engine, "connect") + def do_connect(dbapi_connection, connection_record): + # disable aiosqlite's emitting of the BEGIN statement entirely. + dbapi_connection.isolation_level = None + + + @event.listens_for(engine.sync_engine, "begin") + def do_begin(conn): + # emit our own BEGIN. aiosqlite still emits COMMIT/ROLLBACK correctly + conn.exec_driver_sql("BEGIN") .. _sqlite_isolation_level: -Transaction Isolation Level / Autocommit ----------------------------------------- - -SQLite supports "transaction isolation" in a non-standard way, along two -axes. One is that of the -`PRAGMA read_uncommitted `_ -instruction. This setting can essentially switch SQLite between its -default mode of ``SERIALIZABLE`` isolation, and a "dirty read" isolation -mode normally referred to as ``READ UNCOMMITTED``. - -SQLAlchemy ties into this PRAGMA statement using the -:paramref:`_sa.create_engine.isolation_level` parameter of -:func:`_sa.create_engine`. -Valid values for this parameter when used with SQLite are ``"SERIALIZABLE"`` -and ``"READ UNCOMMITTED"`` corresponding to a value of 0 and 1, respectively. -SQLite defaults to ``SERIALIZABLE``, however its behavior is impacted by -the pysqlite driver's default behavior. - -When using the pysqlite driver, the ``"AUTOCOMMIT"`` isolation level is also -available, which will alter the pysqlite connection using the ``.isolation_level`` -attribute on the DBAPI connection and set it to None for the duration -of the setting. - -.. versionadded:: 1.3.16 added support for SQLite AUTOCOMMIT isolation level - when using the pysqlite / sqlite3 SQLite driver. - - -The other axis along which SQLite's transactional locking is impacted is -via the nature of the ``BEGIN`` statement used. The three varieties -are "deferred", "immediate", and "exclusive", as described at -`BEGIN TRANSACTION `_. A straight -``BEGIN`` statement uses the "deferred" mode, where the database file is -not locked until the first read or write operation, and read access remains -open to other transactions until the first write operation. But again, -it is critical to note that the pysqlite driver interferes with this behavior -by *not even emitting BEGIN* until the first write operation. +Using SQLAlchemy's Driver Level AUTOCOMMIT Feature with SQLite +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. warning:: +SQLAlchemy has a comprehensive database isolation feature with optional +autocommit support that is introduced in the section :ref:`dbapi_autocommit`. - SQLite's transactional scope is impacted by unresolved - issues in the pysqlite driver, which defers BEGIN statements to a greater - degree than is often feasible. See the section :ref:`pysqlite_serializable` - or :ref:`aiosqlite_serializable` for techniques to work around this behavior. +For the ``sqlite3`` and ``aiosqlite`` drivers, SQLAlchemy only includes +built-in support for "AUTOCOMMIT". Note that this mode is currently incompatible +with the non-legacy isolation mode hooks documented in the previous +section at :ref:`sqlite_enabling_transactions`. -.. seealso:: +To use the ``sqlite3`` driver with SQLAlchemy driver-level autocommit, +create an engine setting the :paramref:`_sa.create_engine.isolation_level` +parameter to "AUTOCOMMIT":: + + eng = create_engine("sqlite:///myfile.db", isolation_level="AUTOCOMMIT") + +When using the above mode, any event hooks that set the sqlite3 ``Connection.autocommit`` +parameter away from its default of ``sqlite3.LEGACY_TRANSACTION_CONTROL`` +as well as hooks that emit ``BEGIN`` should be disabled. + +Additional Reading for SQLite / sqlite3 transaction control +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Links with important information on SQLite, the sqlite3 driver, +as well as long historical conversations on how things got to their current state: + +* `Isolation in SQLite `_ - on the SQLite website +* `Transaction control `_ - describes the sqlite3 autocommit attribute as well + as the legacy isolation_level attribute. +* `sqlite3 SELECT does not BEGIN a transaction, but should according to spec `_ - imported Python standard library issue on github +* `sqlite3 module breaks transactions and potentially corrupts data `_ - imported Python standard library issue on github - :ref:`dbapi_autocommit` INSERT/UPDATE/DELETE...RETURNING --------------------------------- @@ -268,38 +368,6 @@ def bi_c(element, compiler, **kw): .. versionadded:: 2.0 Added support for SQLite RETURNING -SAVEPOINT Support ----------------------------- - -SQLite supports SAVEPOINTs, which only function once a transaction is -begun. SQLAlchemy's SAVEPOINT support is available using the -:meth:`_engine.Connection.begin_nested` method at the Core level, and -:meth:`.Session.begin_nested` at the ORM level. However, SAVEPOINTs -won't work at all with pysqlite unless workarounds are taken. - -.. warning:: - - SQLite's SAVEPOINT feature is impacted by unresolved - issues in the pysqlite and aiosqlite drivers, which defer BEGIN statements - to a greater degree than is often feasible. See the sections - :ref:`pysqlite_serializable` and :ref:`aiosqlite_serializable` - for techniques to work around this behavior. - -Transactional DDL ----------------------------- - -The SQLite database supports transactional :term:`DDL` as well. -In this case, the pysqlite driver is not only failing to start transactions, -it also is ending any existing transaction when DDL is detected, so again, -workarounds are required. - -.. warning:: - - SQLite's transactional DDL is impacted by unresolved issues - in the pysqlite driver, which fails to emit BEGIN and additionally - forces a COMMIT to cancel any transaction when DDL is encountered. - See the section :ref:`pysqlite_serializable` - for techniques to work around this behavior. .. _sqlite_foreign_keys: @@ -328,10 +396,18 @@ def bi_c(element, compiler, **kw): @event.listens_for(Engine, "connect") def set_sqlite_pragma(dbapi_connection, connection_record): + # the sqlite3 driver will not set PRAGMA foreign_keys + # if autocommit=False; set to True temporarily + ac = dbapi_connection.autocommit + dbapi_connection.autocommit = True + cursor = dbapi_connection.cursor() cursor.execute("PRAGMA foreign_keys=ON") cursor.close() + # restore previous autocommit setting + dbapi_connection.autocommit = ac + .. warning:: When SQLite foreign keys are enabled, it is **not possible** @@ -916,7 +992,10 @@ def set_sqlite_pragma(dbapi_connection, connection_record): import datetime import numbers import re +from typing import Any +from typing import Callable from typing import Optional +from typing import TYPE_CHECKING from .json import JSON from .json import JSONIndexType @@ -949,6 +1028,13 @@ def set_sqlite_pragma(dbapi_connection, connection_record): from ...types import TIMESTAMP # noqa from ...types import VARCHAR # noqa +if TYPE_CHECKING: + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import Dialect + from ...engine.interfaces import IsolationLevel + from ...sql.type_api import _BindProcessorType + from ...sql.type_api import _ResultProcessorType + class _SQliteJson(JSON): def result_processor(self, dialect, coltype): @@ -1087,7 +1173,9 @@ def __init__(self, *args, **kwargs): "%(hour)02d:%(minute)02d:%(second)02d" ) - def bind_processor(self, dialect): + def bind_processor( + self, dialect: Dialect + ) -> Optional[_BindProcessorType[Any]]: datetime_datetime = datetime.datetime datetime_date = datetime.date format_ = self._storage_format @@ -1123,7 +1211,9 @@ def process(value): return process - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> Optional[_ResultProcessorType[Any]]: if self._reg: return processors.str_to_datetime_processor_factory( self._reg, datetime.datetime @@ -1178,7 +1268,9 @@ class DATE(_DateTimeMixin, sqltypes.Date): _storage_format = "%(year)04d-%(month)02d-%(day)02d" - def bind_processor(self, dialect): + def bind_processor( + self, dialect: Dialect + ) -> Optional[_BindProcessorType[Any]]: datetime_date = datetime.date format_ = self._storage_format @@ -1199,7 +1291,9 @@ def process(value): return process - def result_processor(self, dialect, coltype): + def result_processor( + self, dialect: Dialect, coltype: object + ) -> Optional[_ResultProcessorType[Any]]: if self._reg: return processors.str_to_datetime_processor_factory( self._reg, datetime.date @@ -1367,7 +1461,7 @@ def visit_now_func(self, fn, **kw): return "CURRENT_TIMESTAMP" def visit_localtimestamp_func(self, func, **kw): - return 'DATETIME(CURRENT_TIMESTAMP, "localtime")' + return "DATETIME(CURRENT_TIMESTAMP, 'localtime')" def visit_true(self, expr, **kw): return "1" @@ -1498,12 +1592,16 @@ def _on_conflict_target(self, clause, **kw): for c in clause.inferred_target_elements ) if clause.inferred_target_whereclause is not None: - target_text += " WHERE %s" % self.process( - clause.inferred_target_whereclause, + whereclause_kw = dict(kw) + whereclause_kw.update( include_table=False, use_schema=False, literal_execute=True, ) + target_text += " WHERE %s" % self.process( + clause.inferred_target_whereclause, + **whereclause_kw, + ) else: target_text = "" @@ -1530,6 +1628,8 @@ def visit_on_conflict_do_update(self, on_conflict, **kw): insert_statement = self.stack[-1]["selectable"] cols = insert_statement.table.c + set_kw = dict(kw) + set_kw.update(use_schema=False) for c in cols: col_key = c.key @@ -1550,7 +1650,9 @@ def visit_on_conflict_do_update(self, on_conflict, **kw): ): value = value._clone() value.type = c.type - value_text = self.process(value.self_group(), use_schema=False) + value_text = self.process( + value.self_group(), is_upsert_set=True, **set_kw + ) key_text = self.preparer.quote(c.name) action_set_ops.append("%s = %s" % (key_text, value_text)) @@ -1569,18 +1671,21 @@ def visit_on_conflict_do_update(self, on_conflict, **kw): key_text = ( self.preparer.quote(k) if isinstance(k, str) - else self.process(k, use_schema=False) + else self.process(k, **set_kw) ) value_text = self.process( coercions.expect(roles.ExpressionElementRole, v), - use_schema=False, + is_upsert_set=True, + **set_kw, ) action_set_ops.append("%s = %s" % (key_text, value_text)) action_text = ", ".join(action_set_ops) if clause.update_whereclause is not None: + where_kw = dict(kw) + where_kw.update(include_table=True, use_schema=False) action_text += " WHERE %s" % self.process( - clause.update_whereclause, include_table=True, use_schema=False + clause.update_whereclause, **where_kw ) return "ON CONFLICT %s DO UPDATE SET %s" % (target_text, action_text) @@ -2049,13 +2154,13 @@ class SQLiteDialect(default.DefaultDialect): ) def __init__( self, - native_datetime=False, - json_serializer=None, - json_deserializer=None, - _json_serializer=None, - _json_deserializer=None, - **kwargs, - ): + native_datetime: bool = False, + json_serializer: Optional[Callable[..., Any]] = None, + json_deserializer: Optional[Callable[..., Any]] = None, + _json_serializer: Optional[Callable[..., Any]] = None, + _json_deserializer: Optional[Callable[..., Any]] = None, + **kwargs: Any, + ) -> None: default.DefaultDialect.__init__(self, **kwargs) if _json_serializer: @@ -2123,7 +2228,9 @@ def __init__( def get_isolation_level_values(self, dbapi_connection): return list(self._isolation_lookup) - def set_isolation_level(self, dbapi_connection, level): + def set_isolation_level( + self, dbapi_connection: DBAPIConnection, level: IsolationLevel + ) -> None: isolation_level = self._isolation_lookup[level] cursor = dbapi_connection.cursor() @@ -2311,7 +2418,10 @@ def get_columns(self, connection, table_name, schema=None, **kw): ) # remove create table match = re.match( - r"create table .*?\((.*)\)$", + ( + r"create table .*?\((.*)\)" + r"(?:\s*,?\s*(?:WITHOUT\s+ROWID|STRICT))*$" + ), tablesql.strip(), re.DOTALL | re.IGNORECASE, ) @@ -2442,9 +2552,12 @@ def get_pk_constraint(self, connection, table_name, schema=None, **kw): constraint_name = None table_data = self._get_table_sql(connection, table_name, schema=schema) if table_data: - PK_PATTERN = r"CONSTRAINT (\w+) PRIMARY KEY" + PK_PATTERN = r'CONSTRAINT +(?:"(.+?)"|(\w+)) +PRIMARY KEY' result = re.search(PK_PATTERN, table_data, re.I) - constraint_name = result.group(1) if result else None + if result: + constraint_name = result.group(1) or result.group(2) + else: + constraint_name = None cols = self.get_columns(connection, table_name, schema, **kw) # consider only pk columns. This also avoids sorting the cached @@ -2544,7 +2657,7 @@ def parse_fks(): # so parsing the columns is really about matching it up to what # we already have. FK_PATTERN = ( - r"(?:CONSTRAINT (\w+) +)?" + r'(?:CONSTRAINT +(?:"(.+?)"|(\w+)) +)?' r"FOREIGN KEY *\( *(.+?) *\) +" r'REFERENCES +(?:(?:"(.+?)")|([a-z0-9_]+)) *\( *((?:(?:"[^"]+"|[a-z0-9_]+) *(?:, *)?)+)\) *' # noqa: E501 r"((?:ON (?:DELETE|UPDATE) " @@ -2554,6 +2667,7 @@ def parse_fks(): ) for match in re.finditer(FK_PATTERN, table_data, re.I): ( + constraint_quoted_name, constraint_name, constrained_columns, referred_quoted_name, @@ -2562,7 +2676,8 @@ def parse_fks(): onupdatedelete, deferrable, initially, - ) = match.group(1, 2, 3, 4, 5, 6, 7, 8) + ) = match.group(1, 2, 3, 4, 5, 6, 7, 8, 9) + constraint_name = constraint_quoted_name or constraint_name constrained_columns = list( self._find_cols_in_sig(constrained_columns) ) @@ -2657,14 +2772,17 @@ def get_unique_constraints( def parse_uqs(): if table_data is None: return - UNIQUE_PATTERN = r'(?:CONSTRAINT "?(.+?)"? +)?UNIQUE *\((.+?)\)' + UNIQUE_PATTERN = ( + r'(?:CONSTRAINT +(?:"(.+?)"|(\w+)) +)?UNIQUE *\((.+?)\)' + ) INLINE_UNIQUE_PATTERN = ( r'(?:(".+?")|(?:[\[`])?([a-z0-9_]+)(?:[\]`])?)[\t ]' r"+[a-z0-9_ ]+?[\t ]+UNIQUE" ) for match in re.finditer(UNIQUE_PATTERN, table_data, re.I): - name, cols = match.group(1, 2) + quoted_name, unquoted_name, cols = match.group(1, 2, 3) + name = quoted_name or unquoted_name yield name, list(self._find_cols_in_sig(cols)) # we need to match inlines as well, as we seek to differentiate @@ -2695,27 +2813,88 @@ def get_check_constraints(self, connection, table_name, schema=None, **kw): connection, table_name, schema=schema, **kw ) - # NOTE NOTE NOTE - # DO NOT CHANGE THIS REGULAR EXPRESSION. There is no known way - # to parse CHECK constraints that contain newlines themselves using - # regular expressions, and the approach here relies upon each - # individual - # CHECK constraint being on a single line by itself. This - # necessarily makes assumptions as to how the CREATE TABLE - # was emitted. A more comprehensive DDL parsing solution would be - # needed to improve upon the current situation. See #11840 for - # background - CHECK_PATTERN = r"(?:CONSTRAINT (.+) +)?CHECK *\( *(.+) *\),? *" - cks = [] + # Extract CHECK constraints by properly handling balanced parentheses + # and avoiding false matches when CHECK/CONSTRAINT appear in table + # names. See #12924 for context. + # + # SQLite supports 4 identifier quote styles (see + # sqlite.org/lang_keywords.html): + # - Double quotes "..." (standard SQL) + # - Brackets [...] (MS Access/SQL Server compatibility) + # - Backticks `...` (MySQL compatibility) + # - Single quotes '...' (SQLite extension) + # + # NOTE: there is not currently a way to parse CHECK constraints that + # contain newlines as the approach here relies upon each individual + # CHECK constraint being on a single line by itself. This necessarily + # makes assumptions as to how the CREATE TABLE was emitted. + CHECK_PATTERN = re.compile( + r""" + (? name + # Single quotes: 'name' -> name + # Brackets: [name] -> name + # Backticks: `name` -> name + constraint_name = re.sub( + r'^(["\'`])(.+)\1$|^\[(.+)\]$', + lambda m: m.group(2) or m.group(3), + constraint_name, + flags=re.DOTALL, + ) - if name: - name = re.sub(r'^"|"$', "", name) + # Find the matching closing parenthesis by counting balanced parens + # Must track string context to ignore parens inside string literals + start = match.end() # Position after 'CHECK (' + paren_count = 1 + in_single_quote = False + in_double_quote = False + + for pos, char in enumerate(table_data[start:], start): + # Track string literal context + if char == "'" and not in_double_quote: + in_single_quote = not in_single_quote + elif char == '"' and not in_single_quote: + in_double_quote = not in_double_quote + # Only count parens when not inside a string literal + elif not in_single_quote and not in_double_quote: + if char == "(": + paren_count += 1 + elif char == ")": + paren_count -= 1 + if paren_count == 0: + # Successfully found matching closing parenthesis + sqltext = table_data[start:pos].strip() + cks.append( + {"sqltext": sqltext, "name": constraint_name} + ) + break - cks.append({"sqltext": match.group(2), "name": name}) cks.sort(key=lambda d: d["name"] or "~") # sort None as last if cks: return cks diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/dml.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/dml.py index 84cdb8bec..6012da727 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/dml.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/dml.py @@ -1,5 +1,5 @@ # dialects/sqlite/dml.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/json.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/json.py index 02f4ea4c9..c2f4a205a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/json.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/json.py @@ -1,5 +1,5 @@ # dialects/sqlite/json.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/provision.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/provision.py index 97f882e7f..fa63ab5ed 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/provision.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/provision.py @@ -1,5 +1,5 @@ # dialects/sqlite/provision.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -9,20 +9,22 @@ import os import re +from ... import event from ... import exc from ...engine import url as sa_url +from ...testing import config from ...testing.provision import create_db from ...testing.provision import drop_db from ...testing.provision import follower_url_from_main from ...testing.provision import generate_driver_url from ...testing.provision import log from ...testing.provision import post_configure_engine +from ...testing.provision import post_configure_testing_engine from ...testing.provision import run_reap_dbs from ...testing.provision import stop_test_class_outside_fixtures from ...testing.provision import temp_table_keyword_args from ...testing.provision import upsert - # TODO: I can't get this to build dynamically with pytest-xdist procs _drivernames = { "pysqlite", @@ -52,8 +54,6 @@ def _format_url(url, driver, ident): assert "test_schema" not in filename tokens = re.split(r"[_\.]", filename) - new_filename = f"{driver}" - for token in tokens: if token in _drivernames: if driver is None: @@ -141,6 +141,31 @@ def dispose(engine): os.remove(filename) +@post_configure_testing_engine.for_db("sqlite") +def _sqlite_post_configure_testing_engine(url, engine, options, scope): + + sqlite_savepoint = options.get("sqlite_savepoint", False) + sqlite_share_pool = options.get("sqlite_share_pool", False) + + if sqlite_savepoint and engine.name == "sqlite": + # apply SQLite savepoint workaround + @event.listens_for(engine, "connect") + def do_connect(dbapi_connection, connection_record): + dbapi_connection.isolation_level = None + + @event.listens_for(engine, "begin") + def do_begin(conn): + conn.exec_driver_sql("BEGIN") + + if sqlite_share_pool: + # SingletonThreadPool, StaticPool both support "transfer" + # so a new pool can share the same SQLite connection + # (single thread only) + if hasattr(engine.pool, "_transfer_from"): + options["use_reaper"] = False + engine.pool._transfer_from(config.db.pool) + + @create_db.for_db("sqlite") def _sqlite_create_db(cfg, eng, ident): pass @@ -181,7 +206,13 @@ def _reap_sqlite_dbs(url, idents): @upsert.for_db("sqlite") def _upsert( - cfg, table, returning, *, set_lambda=None, sort_by_parameter_order=False + cfg, + table, + returning, + *, + set_lambda=None, + sort_by_parameter_order=False, + index_elements=None, ): from sqlalchemy.dialects.sqlite import insert diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlcipher.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlcipher.py index 7a3dc1bae..1a4c251a4 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlcipher.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlcipher.py @@ -1,5 +1,5 @@ # dialects/sqlite/pysqlcipher.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlite.py b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlite.py index 9dafda6d9..d2e84466c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlite.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/dialects/sqlite/pysqlite.py @@ -1,10 +1,9 @@ # dialects/sqlite/pysqlite.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors r""" @@ -258,7 +257,7 @@ def regexp(a, b): It's been observed that the :class:`.NullPool` implementation incurs an extremely small performance overhead for repeated checkouts due to the lack of -connection re-use implemented by :class:`.QueuePool`. However, it still +connection reuse implemented by :class:`.QueuePool`. However, it still may be beneficial to use this class if the application is experiencing issues with files being locked. @@ -354,76 +353,10 @@ def process_result_value(self, value, dialect): Serializable isolation / Savepoints / Transactional DDL ------------------------------------------------------- -In the section :ref:`sqlite_concurrency`, we refer to the pysqlite -driver's assortment of issues that prevent several features of SQLite -from working correctly. The pysqlite DBAPI driver has several -long-standing bugs which impact the correctness of its transactional -behavior. In its default mode of operation, SQLite features such as -SERIALIZABLE isolation, transactional DDL, and SAVEPOINT support are -non-functional, and in order to use these features, workarounds must -be taken. +A newly revised version of this important section is now available +at the top level of the SQLAlchemy SQLite documentation, in the section +:ref:`sqlite_transactions`. -The issue is essentially that the driver attempts to second-guess the user's -intent, failing to start transactions and sometimes ending them prematurely, in -an effort to minimize the SQLite databases's file locking behavior, even -though SQLite itself uses "shared" locks for read-only activities. - -SQLAlchemy chooses to not alter this behavior by default, as it is the -long-expected behavior of the pysqlite driver; if and when the pysqlite -driver attempts to repair these issues, that will be more of a driver towards -defaults for SQLAlchemy. - -The good news is that with a few events, we can implement transactional -support fully, by disabling pysqlite's feature entirely and emitting BEGIN -ourselves. This is achieved using two event listeners:: - - from sqlalchemy import create_engine, event - - engine = create_engine("sqlite:///myfile.db") - - - @event.listens_for(engine, "connect") - def do_connect(dbapi_connection, connection_record): - # disable pysqlite's emitting of the BEGIN statement entirely. - # also stops it from emitting COMMIT before any DDL. - dbapi_connection.isolation_level = None - - - @event.listens_for(engine, "begin") - def do_begin(conn): - # emit our own BEGIN - conn.exec_driver_sql("BEGIN") - -.. warning:: When using the above recipe, it is advised to not use the - :paramref:`.Connection.execution_options.isolation_level` setting on - :class:`_engine.Connection` and :func:`_sa.create_engine` - with the SQLite driver, - as this function necessarily will also alter the ".isolation_level" setting. - - -Above, we intercept a new pysqlite connection and disable any transactional -integration. Then, at the point at which SQLAlchemy knows that transaction -scope is to begin, we emit ``"BEGIN"`` ourselves. - -When we take control of ``"BEGIN"``, we can also control directly SQLite's -locking modes, introduced at -`BEGIN TRANSACTION `_, -by adding the desired locking mode to our ``"BEGIN"``:: - - @event.listens_for(engine, "begin") - def do_begin(conn): - conn.exec_driver_sql("BEGIN EXCLUSIVE") - -.. seealso:: - - `BEGIN TRANSACTION `_ - - on the SQLite site - - `sqlite3 SELECT does not BEGIN a transaction `_ - - on the Python bug tracker - - `sqlite3 module breaks transactions and potentially corrupts data `_ - - on the Python bug tracker .. _pysqlite_udfs: @@ -459,10 +392,19 @@ def connect(conn, rec): print(conn.scalar(text("SELECT UDF()"))) """ # noqa +from __future__ import annotations import math import os import re +from typing import Any +from typing import Callable +from typing import cast +from typing import Optional +from typing import Pattern +from typing import TYPE_CHECKING +from typing import TypeVar +from typing import Union from .base import DATE from .base import DATETIME @@ -471,16 +413,33 @@ def connect(conn, rec): from ... import pool from ... import types as sqltypes from ... import util +from ...util.typing import Self + +if TYPE_CHECKING: + from ...engine.interfaces import ConnectArgsType + from ...engine.interfaces import DBAPIConnection + from ...engine.interfaces import DBAPICursor + from ...engine.interfaces import DBAPIModule + from ...engine.interfaces import IsolationLevel + from ...engine.interfaces import VersionInfoType + from ...engine.url import URL + from ...pool.base import PoolProxiedConnection + from ...sql.type_api import _BindProcessorType + from ...sql.type_api import _ResultProcessorType class _SQLite_pysqliteTimeStamp(DATETIME): - def bind_processor(self, dialect): + def bind_processor( # type: ignore[override] + self, dialect: SQLiteDialect + ) -> Optional[_BindProcessorType[Any]]: if dialect.native_datetime: return None else: return DATETIME.bind_processor(self, dialect) - def result_processor(self, dialect, coltype): + def result_processor( # type: ignore[override] + self, dialect: SQLiteDialect, coltype: object + ) -> Optional[_ResultProcessorType[Any]]: if dialect.native_datetime: return None else: @@ -488,13 +447,17 @@ def result_processor(self, dialect, coltype): class _SQLite_pysqliteDate(DATE): - def bind_processor(self, dialect): + def bind_processor( # type: ignore[override] + self, dialect: SQLiteDialect + ) -> Optional[_BindProcessorType[Any]]: if dialect.native_datetime: return None else: return DATE.bind_processor(self, dialect) - def result_processor(self, dialect, coltype): + def result_processor( # type: ignore[override] + self, dialect: SQLiteDialect, coltype: object + ) -> Optional[_ResultProcessorType[Any]]: if dialect.native_datetime: return None else: @@ -519,13 +482,13 @@ class SQLiteDialect_pysqlite(SQLiteDialect): driver = "pysqlite" @classmethod - def import_dbapi(cls): + def import_dbapi(cls) -> DBAPIModule: from sqlite3 import dbapi2 as sqlite - return sqlite + return cast("DBAPIModule", sqlite) @classmethod - def _is_url_file_db(cls, url): + def _is_url_file_db(cls, url: URL) -> bool: if (url.database and url.database != ":memory:") and ( url.query.get("mode", None) != "memory" ): @@ -534,30 +497,35 @@ def _is_url_file_db(cls, url): return False @classmethod - def get_pool_class(cls, url): + def get_pool_class(cls, url: URL) -> type[pool.Pool]: if cls._is_url_file_db(url): return pool.QueuePool else: return pool.SingletonThreadPool - def _get_server_version_info(self, connection): - return self.dbapi.sqlite_version_info + def _get_server_version_info(self, connection: Any) -> VersionInfoType: + return self.dbapi.sqlite_version_info # type: ignore _isolation_lookup = SQLiteDialect._isolation_lookup.union( { - "AUTOCOMMIT": None, + "AUTOCOMMIT": None, # type: ignore[dict-item] } ) - def set_isolation_level(self, dbapi_connection, level): + def set_isolation_level( + self, dbapi_connection: DBAPIConnection, level: IsolationLevel + ) -> None: if level == "AUTOCOMMIT": dbapi_connection.isolation_level = None else: dbapi_connection.isolation_level = "" return super().set_isolation_level(dbapi_connection, level) - def on_connect(self): - def regexp(a, b): + def detect_autocommit_setting(self, dbapi_conn: DBAPIConnection) -> bool: + return dbapi_conn.isolation_level is None + + def on_connect(self) -> Callable[[DBAPIConnection], None]: + def regexp(a: str, b: Optional[str]) -> Optional[bool]: if b is None: return None return re.search(a, b) is not None @@ -571,12 +539,12 @@ def regexp(a, b): else: create_func_kw = {} - def set_regexp(dbapi_connection): + def set_regexp(dbapi_connection: DBAPIConnection) -> None: dbapi_connection.create_function( "regexp", 2, regexp, **create_func_kw ) - def floor_func(dbapi_connection): + def floor_func(dbapi_connection: DBAPIConnection) -> None: # NOTE: floor is optionally present in sqlite 3.35+ , however # as it is normally non-present we deliver floor() unconditionally # for now. @@ -587,13 +555,13 @@ def floor_func(dbapi_connection): fns = [set_regexp, floor_func] - def connect(conn): + def connect(conn: DBAPIConnection) -> None: for fn in fns: fn(conn) return connect - def create_connect_args(self, url): + def create_connect_args(self, url: URL) -> ConnectArgsType: if url.username or url.password or url.host or url.port: raise exc.ArgumentError( "Invalid SQLite URL: %s\n" @@ -618,7 +586,7 @@ def create_connect_args(self, url): ("cached_statements", int), ] opts = url.query - pysqlite_opts = {} + pysqlite_opts: dict[str, Any] = {} for key, type_ in pysqlite_args: util.coerce_kw_type(opts, key, type_, dest=pysqlite_opts) @@ -635,7 +603,7 @@ def create_connect_args(self, url): # to adjust for that here. for key, type_ in pysqlite_args: uri_opts.pop(key, None) - filename = url.database + filename: str = url.database # type: ignore[assignment] if uri_opts: # sorting of keys is for unit test support filename += "?" + ( @@ -655,7 +623,13 @@ def create_connect_args(self, url): return ([filename], pysqlite_opts) - def is_disconnect(self, e, connection, cursor): + def is_disconnect( + self, + e: DBAPIModule.Error, + connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], + cursor: Optional[DBAPICursor], + ) -> bool: + self.dbapi = cast("DBAPIModule", self.dbapi) return isinstance( e, self.dbapi.ProgrammingError ) and "Cannot operate on a closed database." in str(e) @@ -677,34 +651,36 @@ class _SQLiteDialect_pysqlite_numeric(SQLiteDialect_pysqlite): driver = "pysqlite_numeric" _first_bind = ":1" - _not_in_statement_regexp = None + _not_in_statement_regexp: Optional[Pattern[str]] = None - def __init__(self, *arg, **kw): + def __init__(self, *arg: Any, **kw: Any) -> None: kw.setdefault("paramstyle", "numeric") super().__init__(*arg, **kw) - def create_connect_args(self, url): + def create_connect_args(self, url: URL) -> ConnectArgsType: arg, opts = super().create_connect_args(url) opts["factory"] = self._fix_sqlite_issue_99953() return arg, opts - def _fix_sqlite_issue_99953(self): + def _fix_sqlite_issue_99953(self) -> Any: import sqlite3 first_bind = self._first_bind if self._not_in_statement_regexp: nis = self._not_in_statement_regexp - def _test_sql(sql): + def _test_sql(sql: str) -> None: m = nis.search(sql) assert not m, f"Found {nis.pattern!r} in {sql!r}" else: - def _test_sql(sql): + def _test_sql(sql: str) -> None: pass - def _numeric_param_as_dict(parameters): + def _numeric_param_as_dict( + parameters: Any, + ) -> Union[dict[str, Any], tuple[Any, ...]]: if parameters: assert isinstance(parameters, tuple) return { @@ -714,13 +690,13 @@ def _numeric_param_as_dict(parameters): return () class SQLiteFix99953Cursor(sqlite3.Cursor): - def execute(self, sql, parameters=()): + def execute(self, sql: str, parameters: Any = ()) -> Self: _test_sql(sql) if first_bind in sql: parameters = _numeric_param_as_dict(parameters) return super().execute(sql, parameters) - def executemany(self, sql, parameters): + def executemany(self, sql: str, parameters: Any) -> Self: _test_sql(sql) if first_bind in sql: parameters = [ @@ -729,18 +705,27 @@ def executemany(self, sql, parameters): return super().executemany(sql, parameters) class SQLiteFix99953Connection(sqlite3.Connection): - def cursor(self, factory=None): + _CursorT = TypeVar("_CursorT", bound=sqlite3.Cursor) + + def cursor( + self, + factory: Optional[ + Callable[[sqlite3.Connection], _CursorT] + ] = None, + ) -> _CursorT: if factory is None: - factory = SQLiteFix99953Cursor - return super().cursor(factory=factory) + factory = SQLiteFix99953Cursor # type: ignore[assignment] + return super().cursor(factory=factory) # type: ignore[return-value] # noqa[E501] - def execute(self, sql, parameters=()): + def execute( + self, sql: str, parameters: Any = () + ) -> sqlite3.Cursor: _test_sql(sql) if first_bind in sql: parameters = _numeric_param_as_dict(parameters) return super().execute(sql, parameters) - def executemany(self, sql, parameters): + def executemany(self, sql: str, parameters: Any) -> sqlite3.Cursor: _test_sql(sql) if first_bind in sql: parameters = [ @@ -766,6 +751,6 @@ class _SQLiteDialect_pysqlite_dollar(_SQLiteDialect_pysqlite_numeric): _first_bind = "$1" _not_in_statement_regexp = re.compile(r"[^\d]:\d+") - def __init__(self, *arg, **kw): + def __init__(self, *arg: Any, **kw: Any) -> None: kw.setdefault("paramstyle", "numeric_dollar") super().__init__(*arg, **kw) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/__init__.py index f4205d892..20a09189d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/__init__.py @@ -1,5 +1,5 @@ # engine/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_processors.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_processors.py index 8536d53d7..7b1d6b0db 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_processors.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_processors.py @@ -1,5 +1,5 @@ # engine/_py_processors.py -# Copyright (C) 2010-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2010-2026 the SQLAlchemy authors and contributors # # Copyright (C) 2010 Gaetan de Menten gdementen@gmail.com # diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_row.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_row.py index 38c60fcd2..b83038c2c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_row.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_row.py @@ -1,5 +1,5 @@ # engine/_py_row.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_util.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_util.py index 50badea2a..c62929b90 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_util.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/_py_util.py @@ -1,5 +1,5 @@ # engine/_py_util.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -32,9 +32,9 @@ def _distill_params_20( # Assume list is more likely than tuple elif isinstance(params, list) or isinstance(params, tuple): # collections_abc.MutableSequence): # avoid abc.__instancecheck__ - if params and not isinstance(params[0], (tuple, Mapping)): + if params and not isinstance(params[0], Mapping): raise exc.ArgumentError( - "List argument must consist only of tuples or dictionaries" + "List argument must consist only of dictionaries" ) return params diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/base.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/base.py index cbf11acf5..26f162b88 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/base.py @@ -1,12 +1,10 @@ # engine/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Defines :class:`_engine.Connection` and :class:`_engine.Engine`. - -""" +"""Defines :class:`_engine.Connection` and :class:`_engine.Engine`.""" from __future__ import annotations import contextlib @@ -70,12 +68,11 @@ from ..sql._typing import _InfoType from ..sql.compiler import Compiled from ..sql.ddl import ExecutableDDLElement - from ..sql.ddl import SchemaDropper - from ..sql.ddl import SchemaGenerator + from ..sql.ddl import InvokeDDLBase from ..sql.functions import FunctionElement from ..sql.schema import DefaultGenerator from ..sql.schema import HasSchemaAttr - from ..sql.schema import SchemaItem + from ..sql.schema import SchemaVisitable from ..sql.selectable import TypedReturnsRows @@ -1115,10 +1112,16 @@ def _rollback_impl(self) -> None: if self._still_open_and_dbapi_connection_is_valid: if self._echo: if self._is_autocommit_isolation(): - self._log_info( - "ROLLBACK using DBAPI connection.rollback(), " - "DBAPI should ignore due to autocommit mode" - ) + if self.dialect.skip_autocommit_rollback: + self._log_info( + "ROLLBACK will be skipped by " + "skip_autocommit_rollback" + ) + else: + self._log_info( + "ROLLBACK using DBAPI connection.rollback(); " + "set skip_autocommit_rollback to prevent fully" + ) else: self._log_info("ROLLBACK") try: @@ -1134,7 +1137,7 @@ def _commit_impl(self) -> None: if self._is_autocommit_isolation(): self._log_info( "COMMIT using DBAPI connection.commit(), " - "DBAPI should ignore due to autocommit mode" + "has no effect due to autocommit mode" ) else: self._log_info("COMMIT") @@ -2019,6 +2022,13 @@ def _exec_insertmany_context( else: do_execute_dispatch = () + if engine_events: + _WORKAROUND_ISSUE_13018 = getattr( + self, "_WORKAROUND_ISSUE_13018", False + ) + else: + _WORKAROUND_ISSUE_13018 = False + if self._echo: stats = context._get_cache_stats() + " (insertmanyvalues)" @@ -2133,8 +2143,9 @@ def _exec_insertmany_context( self.dispatch.after_cursor_execute( self, cursor, - str_statement, - effective_parameters, + # TODO: this will be fixed by #13018 + sub_stmt if _WORKAROUND_ISSUE_13018 else str_statement, + sub_params if _WORKAROUND_ISSUE_13018 else parameters, context, context.executemany, ) @@ -2428,9 +2439,7 @@ def _handle_dbapi_exception_noconnection( break if sqlalchemy_exception and is_disconnect != ctx.is_disconnect: - sqlalchemy_exception.connection_invalidated = is_disconnect = ( - ctx.is_disconnect - ) + sqlalchemy_exception.connection_invalidated = ctx.is_disconnect if newraise: raise newraise.with_traceback(exc_info[2]) from e @@ -2443,8 +2452,8 @@ def _handle_dbapi_exception_noconnection( def _run_ddl_visitor( self, - visitorcallable: Type[Union[SchemaGenerator, SchemaDropper]], - element: SchemaItem, + visitorcallable: Type[InvokeDDLBase], + element: SchemaVisitable, **kwargs: Any, ) -> None: """run a DDL visitor. @@ -2453,7 +2462,9 @@ def _run_ddl_visitor( options given to the visitor so that "checkfirst" is skipped. """ - visitorcallable(self.dialect, self, **kwargs).traverse_single(element) + visitorcallable( + dialect=self.dialect, connection=self, **kwargs + ).traverse_single(element) class ExceptionContextImpl(ExceptionContext): @@ -3169,6 +3180,12 @@ def dispose(self, close: bool = True) -> None: connections. The latter strategy is more appropriate for an initializer in a forked Python process. + Event listeners associated with the old pool via :class:`.PoolEvents` + are **transferred to the new pool**; this is to support the pattern + by which :class:`.PoolEvents` are set up in terms of the owning + :class:`.Engine` without the need to refer to the :class:`.Pool` + directly. + :param close: if left at its default of ``True``, has the effect of fully closing all **currently checked in** database connections. Connections that are still checked out @@ -3194,6 +3211,8 @@ def dispose(self, close: bool = True) -> None: :ref:`pooling_multiprocessing` + :meth:`.ConnectionEvents.engine_disposed` + """ if close: self.pool.dispose() @@ -3241,8 +3260,8 @@ def begin(self) -> Iterator[Connection]: def _run_ddl_visitor( self, - visitorcallable: Type[Union[SchemaGenerator, SchemaDropper]], - element: SchemaItem, + visitorcallable: Type[InvokeDDLBase], + element: SchemaVisitable, **kwargs: Any, ) -> None: with self.begin() as conn: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/characteristics.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/characteristics.py index 322c28b5a..ef7d65fec 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/characteristics.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/characteristics.py @@ -1,5 +1,5 @@ # engine/characteristics.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/create.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/create.py index 920f620bd..9ab94763b 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/create.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/create.py @@ -1,5 +1,5 @@ # engine/create.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -468,6 +468,9 @@ def create_engine(url: Union[str, _url.URL], **kwargs: Any) -> Engine: :ref:`pool_reset_on_return` + :ref:`dbapi_autocommit_skip_rollback` - a more modern approach + to using connections with no transactional instructions + :param pool_timeout=30: number of seconds to wait before giving up on getting a connection from the pool. This is only used with :class:`~sqlalchemy.pool.QueuePool`. This can be a float but is @@ -524,6 +527,18 @@ def create_engine(url: Union[str, _url.URL], **kwargs: Any) -> Engine: .. versionadded:: 1.4 + :param skip_autocommit_rollback: When True, the dialect will + unconditionally skip all calls to the DBAPI ``connection.rollback()`` + method if the DBAPI connection is confirmed to be in "autocommit" mode. + The availability of this feature is dialect specific; if not available, + a ``NotImplementedError`` is raised by the dialect when rollback occurs. + + .. seealso:: + + :ref:`dbapi_autocommit_skip_rollback` + + .. versionadded:: 2.0.43 + :param use_insertmanyvalues: True by default, use the "insertmanyvalues" execution style for INSERT..RETURNING statements by default. @@ -615,8 +630,8 @@ def pop_kwarg(key: str, default: Optional[Any] = None) -> Any: dialect = dialect_cls(**dialect_args) # assemble connection arguments - (cargs_tup, cparams) = dialect.create_connect_args(u) - cparams.update(pop_kwarg("connect_args", {})) + (cargs_tup, _cparams) = dialect.create_connect_args(u) + cparams = util.immutabledict(_cparams).union(pop_kwarg("connect_args", {})) if "async_fallback" in cparams and util.asbool(cparams["async_fallback"]): util.warn_deprecated( @@ -625,8 +640,6 @@ def pop_kwarg(key: str, default: Optional[Any] = None) -> Any: "2.0", ) - cargs = list(cargs_tup) # allow mutability - # look for existing pool or create pool = pop_kwarg("pool", None) if pool is None: @@ -635,15 +648,23 @@ def connect( connection_record: Optional[ConnectionPoolEntry] = None, ) -> DBAPIConnection: if dialect._has_events: + mutable_cargs = list(cargs_tup) + mutable_cparams = dict(cparams) for fn in dialect.dispatch.do_connect: connection = cast( DBAPIConnection, - fn(dialect, connection_record, cargs, cparams), + fn( + dialect, + connection_record, + mutable_cargs, + mutable_cparams, + ), ) if connection is not None: return connection - - return dialect.connect(*cargs, **cparams) + return dialect.connect(*mutable_cargs, **mutable_cparams) + else: + return dialect.connect(*cargs_tup, **cparams) creator = pop_kwarg("creator", connect) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/cursor.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/cursor.py index 54e9784e0..801fa4ff9 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/cursor.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/cursor.py @@ -1,10 +1,9 @@ # engine/cursor.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: allow-untyped-defs, allow-untyped-calls """Define cursor-specific result set constructs including :class:`.CursorResult`.""" @@ -19,6 +18,7 @@ from typing import Any from typing import cast from typing import ClassVar +from typing import Deque from typing import Dict from typing import Iterable from typing import Iterator @@ -52,6 +52,7 @@ from ..sql.compiler import RM_TYPE from ..sql.type_api import TypeEngine from ..util import compat +from ..util.typing import Final from ..util.typing import Literal from ..util.typing import Self @@ -60,7 +61,10 @@ from .base import Connection from .default import DefaultExecutionContext from .interfaces import _DBAPICursorDescription + from .interfaces import _MutableCoreSingleExecuteParams + from .interfaces import CoreExecuteOptionsParameter from .interfaces import DBAPICursor + from .interfaces import DBAPIType from .interfaces import Dialect from .interfaces import ExecutionContext from .result import _KeyIndexType @@ -69,56 +73,57 @@ from .result import _KeyType from .result import _ProcessorsType from .result import _TupleGetterType + from ..sql.schema import Column from ..sql.type_api import _ResultProcessorType _T = TypeVar("_T", bound=Any) - +TupleAny = Tuple[Any, ...] # metadata entry tuple indexes. # using raw tuple is faster than namedtuple. # these match up to the positions in # _CursorKeyMapRecType -MD_INDEX: Literal[0] = 0 +MD_INDEX: Final[Literal[0]] = 0 """integer index in cursor.description """ -MD_RESULT_MAP_INDEX: Literal[1] = 1 +MD_RESULT_MAP_INDEX: Final[Literal[1]] = 1 """integer index in compiled._result_columns""" -MD_OBJECTS: Literal[2] = 2 +MD_OBJECTS: Final[Literal[2]] = 2 """other string keys and ColumnElement obj that can match. This comes from compiler.RM_OBJECTS / compiler.ResultColumnsEntry.objects """ -MD_LOOKUP_KEY: Literal[3] = 3 +MD_LOOKUP_KEY: Final[Literal[3]] = 3 """string key we usually expect for key-based lookup this comes from compiler.RM_NAME / compiler.ResultColumnsEntry.name """ -MD_RENDERED_NAME: Literal[4] = 4 +MD_RENDERED_NAME: Final[Literal[4]] = 4 """name that is usually in cursor.description this comes from compiler.RENDERED_NAME / compiler.ResultColumnsEntry.keyname """ -MD_PROCESSOR: Literal[5] = 5 +MD_PROCESSOR: Final[Literal[5]] = 5 """callable to process a result value into a row""" -MD_UNTRANSLATED: Literal[6] = 6 +MD_UNTRANSLATED: Final[Literal[6]] = 6 """raw name from cursor.description""" _CursorKeyMapRecType = Tuple[ Optional[int], # MD_INDEX, None means the record is ambiguously named - int, # MD_RESULT_MAP_INDEX - List[Any], # MD_OBJECTS + int, # MD_RESULT_MAP_INDEX, -1 if MD_INDEX is None + TupleAny, # MD_OBJECTS str, # MD_LOOKUP_KEY str, # MD_RENDERED_NAME Optional["_ResultProcessorType[Any]"], # MD_PROCESSOR @@ -139,6 +144,16 @@ str, ] +_MergeColTuple = Tuple[ + int, + Optional[int], + str, + TypeEngine[Any], + "DBAPIType", + Optional[TupleAny], + Optional[str], +] + class CursorResultMetaData(ResultMetaData): """Result metadata for DBAPI cursors.""" @@ -222,21 +237,17 @@ def _splice_horizontally( keymap = dict(self._keymap) offset = len(self._keys) - keymap.update( - { - key: ( - # int index should be None for ambiguous key - ( - value[0] + offset - if value[0] is not None and key not in keymap - else None - ), - value[1] + offset, - *value[2:], - ) - for key, value in other._keymap.items() - } - ) + + for key, value in other._keymap.items(): + # int index should be None for ambiguous key + if value[MD_INDEX] is not None and key not in keymap: + md_index = value[MD_INDEX] + offset + md_object = value[MD_RESULT_MAP_INDEX] + offset + else: + md_index = None + md_object = -1 + keymap[key] = (md_index, md_object, *value[2:]) + return self._make_new_metadata( unpickled=self._unpickled, processors=self._processors + other._processors, # type: ignore @@ -317,7 +328,7 @@ def _adapt_to_context(self, context: ExecutionContext) -> ResultMetaData: keymap_by_position = self._keymap_by_result_column_idx if keymap_by_position is None: - # first retrival from cache, this map will not be set up yet, + # first retrieval from cache, this map will not be set up yet, # initialize lazily keymap_by_position = self._keymap_by_result_column_idx = { metadata_entry[MD_RESULT_MAP_INDEX]: metadata_entry @@ -401,7 +412,7 @@ def __init__( # column keys and other names if num_ctx_cols: # keymap by primary string... - by_key = { + by_key: Dict[_KeyType, _CursorKeyMapRecType] = { metadata_entry[MD_LOOKUP_KEY]: metadata_entry for metadata_entry in raw } @@ -447,7 +458,7 @@ def __init__( # record into by_key. by_key.update( { - key: (None, None, [], key, key, None, None) + key: (None, -1, (), key, key, None, None) for key in dupes } ) @@ -496,15 +507,15 @@ def __init__( def _merge_cursor_description( self, - context, - cursor_description, - result_columns, - num_ctx_cols, - cols_are_ordered, - textual_ordered, - ad_hoc_textual, - loose_column_name_matching, - ): + context: DefaultExecutionContext, + cursor_description: _DBAPICursorDescription, + result_columns: Sequence[ResultColumnsEntry], + num_ctx_cols: int, + cols_are_ordered: bool, + textual_ordered: bool, + ad_hoc_textual: bool, + loose_column_name_matching: bool, + ) -> List[_CursorKeyMapRecType]: """Merge a cursor.description with compiled result column information. There are at least four separate strategies used here, selected @@ -634,7 +645,7 @@ def _merge_cursor_description( mapped_type, cursor_colname, coltype ), untranslated, - ) + ) # type: ignore[misc] for ( idx, ridx, @@ -646,7 +657,11 @@ def _merge_cursor_description( ) in raw_iterator ] - def _colnames_from_description(self, context, cursor_description): + def _colnames_from_description( + self, + context: DefaultExecutionContext, + cursor_description: _DBAPICursorDescription, + ) -> Iterator[Tuple[int, str, Optional[str], DBAPIType]]: """Extract column names and data types from a cursor.description. Applies unicode decoding, column translation, "normalization", @@ -678,8 +693,11 @@ def _colnames_from_description(self, context, cursor_description): yield idx, colname, untranslated, coltype def _merge_textual_cols_by_position( - self, context, cursor_description, result_columns - ): + self, + context: DefaultExecutionContext, + cursor_description: _DBAPICursorDescription, + result_columns: Sequence[ResultColumnsEntry], + ) -> Iterator[_MergeColTuple]: num_ctx_cols = len(result_columns) if num_ctx_cols > len(cursor_description): @@ -715,11 +733,11 @@ def _merge_textual_cols_by_position( def _merge_cols_by_name( self, - context, - cursor_description, - result_columns, - loose_column_name_matching, - ): + context: DefaultExecutionContext, + cursor_description: _DBAPICursorDescription, + result_columns: Sequence[ResultColumnsEntry], + loose_column_name_matching: bool, + ) -> Iterator[_MergeColTuple]: match_map = self._create_description_match_map( result_columns, loose_column_name_matching ) @@ -754,11 +772,9 @@ def _merge_cols_by_name( @classmethod def _create_description_match_map( cls, - result_columns: List[ResultColumnsEntry], + result_columns: Sequence[ResultColumnsEntry], loose_column_name_matching: bool = False, - ) -> Dict[ - Union[str, object], Tuple[str, Tuple[Any, ...], TypeEngine[Any], int] - ]: + ) -> Dict[Union[str, object], Tuple[str, TupleAny, TypeEngine[Any], int]]: """when matching cursor.description to a set of names that are present in a Compiled object, as is the case with TextualSelect, get all the names we expect might match those in cursor.description. @@ -766,7 +782,7 @@ def _create_description_match_map( d: Dict[ Union[str, object], - Tuple[str, Tuple[Any, ...], TypeEngine[Any], int], + Tuple[str, TupleAny, TypeEngine[Any], int], ] = {} for ridx, elem in enumerate(result_columns): key = elem[RM_RENDERED_NAME] @@ -793,7 +809,13 @@ def _create_description_match_map( ) return d - def _merge_cols_by_none(self, context, cursor_description): + def _merge_cols_by_none( + self, + context: DefaultExecutionContext, + cursor_description: _DBAPICursorDescription, + ) -> Iterator[_MergeColTuple]: + self._keys = [] + for ( idx, colname, @@ -829,13 +851,17 @@ def _key_fallback( else: return None - def _raise_for_ambiguous_column_name(self, rec): + def _raise_for_ambiguous_column_name( + self, rec: _KeyMapRecType + ) -> NoReturn: raise exc.InvalidRequestError( "Ambiguous column name '%s' in " "result set column descriptions" % rec[MD_LOOKUP_KEY] ) - def _index_for_key(self, key: Any, raiseerr: bool = True) -> Optional[int]: + def _index_for_key( + self, key: _KeyIndexType, raiseerr: bool = True + ) -> Optional[int]: # TODO: can consider pre-loading ints and negative ints # into _keymap - also no coverage here if isinstance(key, int): @@ -854,22 +880,24 @@ def _index_for_key(self, key: Any, raiseerr: bool = True) -> Optional[int]: self._raise_for_ambiguous_column_name(rec) return index - def _indexes_for_keys(self, keys): + def _indexes_for_keys( + self, keys: Sequence[_KeyIndexType] + ) -> Sequence[int]: try: - return [self._keymap[key][0] for key in keys] + return [self._keymap[key][0] for key in keys] # type: ignore[index,misc] # noqa: E501 except KeyError as ke: # ensure it raises CursorResultMetaData._key_fallback(self, ke.args[0], ke) def _metadata_for_keys( - self, keys: Sequence[Any] + self, keys: Sequence[_KeyIndexType] ) -> Iterator[_NonAmbigCursorKeyMapRecType]: for key in keys: if int in key.__class__.__mro__: - key = self._keys[key] + key = self._keys[key] # type: ignore[index] try: - rec = self._keymap[key] + rec = self._keymap[key] # type: ignore[index] except KeyError as ke: # ensure it raises CursorResultMetaData._key_fallback(self, ke.args[0], ke) @@ -881,7 +909,7 @@ def _metadata_for_keys( yield cast(_NonAmbigCursorKeyMapRecType, rec) - def __getstate__(self): + def __getstate__(self) -> Dict[str, Any]: # TODO: consider serializing this as SimpleResultMetaData return { "_keymap": { @@ -901,7 +929,7 @@ def __getstate__(self): "_translated_indexes": self._translated_indexes, } - def __setstate__(self, state): + def __setstate__(self, state: Dict[str, Any]) -> None: self._processors = [None for _ in range(len(state["_keys"]))] self._keymap = state["_keymap"] self._keymap_by_result_column_idx = None @@ -942,7 +970,7 @@ def hard_close( def yield_per( self, result: CursorResult[Any], - dbapi_cursor: Optional[DBAPICursor], + dbapi_cursor: DBAPICursor, num: int, ) -> None: return @@ -990,22 +1018,47 @@ class NoCursorFetchStrategy(ResultFetchStrategy): __slots__ = () - def soft_close(self, result, dbapi_cursor): + def soft_close( + self, + result: CursorResult[Any], + dbapi_cursor: Optional[DBAPICursor], + ) -> None: pass - def hard_close(self, result, dbapi_cursor): + def hard_close( + self, + result: CursorResult[Any], + dbapi_cursor: Optional[DBAPICursor], + ) -> None: pass - def fetchone(self, result, dbapi_cursor, hard_close=False): + def fetchone( + self, + result: CursorResult[Any], + dbapi_cursor: DBAPICursor, + hard_close: bool = False, + ) -> Any: return self._non_result(result, None) - def fetchmany(self, result, dbapi_cursor, size=None): + def fetchmany( + self, + result: CursorResult[Any], + dbapi_cursor: DBAPICursor, + size: Optional[int] = None, + ) -> Any: return self._non_result(result, []) - def fetchall(self, result, dbapi_cursor): + def fetchall( + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor + ) -> Any: return self._non_result(result, []) - def _non_result(self, result, default, err=None): + def _non_result( + self, + result: CursorResult[Any], + default: Any, + err: Optional[BaseException] = None, + ) -> Any: raise NotImplementedError() @@ -1022,7 +1075,12 @@ class NoCursorDQLFetchStrategy(NoCursorFetchStrategy): __slots__ = () - def _non_result(self, result, default, err=None): + def _non_result( + self, + result: CursorResult[Any], + default: Any, + err: Optional[BaseException] = None, + ) -> Any: if result.closed: raise exc.ResourceClosedError( "This result object is closed." @@ -1044,10 +1102,15 @@ class NoCursorDMLFetchStrategy(NoCursorFetchStrategy): __slots__ = () - def _non_result(self, result, default, err=None): + def _non_result( + self, + result: CursorResult[Any], + default: Any, + err: Optional[BaseException] = None, + ) -> Any: # we only expect to have a _NoResultMetaData() here right now. assert not result._metadata.returns_rows - result._metadata._we_dont_return_rows(err) + result._metadata._we_dont_return_rows(err) # type: ignore[union-attr] _NO_CURSOR_DML = NoCursorDMLFetchStrategy() @@ -1084,10 +1147,7 @@ def handle_exception( ) def yield_per( - self, - result: CursorResult[Any], - dbapi_cursor: Optional[DBAPICursor], - num: int, + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor, num: int ) -> None: result.cursor_strategy = BufferedRowCursorFetchStrategy( dbapi_cursor, @@ -1176,11 +1236,11 @@ class BufferedRowCursorFetchStrategy(CursorFetchStrategy): def __init__( self, - dbapi_cursor, - execution_options, - growth_factor=5, - initial_buffer=None, - ): + dbapi_cursor: DBAPICursor, + execution_options: CoreExecuteOptionsParameter, + growth_factor: int = 5, + initial_buffer: Optional[Deque[Any]] = None, + ) -> None: self._max_row_buffer = execution_options.get("max_row_buffer", 1000) if initial_buffer is not None: @@ -1195,13 +1255,17 @@ def __init__( self._bufsize = self._max_row_buffer @classmethod - def create(cls, result): + def create( + cls, result: CursorResult[Any] + ) -> BufferedRowCursorFetchStrategy: return BufferedRowCursorFetchStrategy( result.cursor, result.context.execution_options, ) - def _buffer_rows(self, result, dbapi_cursor): + def _buffer_rows( + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor + ) -> None: """this is currently used only by fetchone().""" size = self._bufsize @@ -1221,19 +1285,30 @@ def _buffer_rows(self, result, dbapi_cursor): self._max_row_buffer, size * self._growth_factor ) - def yield_per(self, result, dbapi_cursor, num): + def yield_per( + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor, num: int + ) -> None: self._growth_factor = 0 self._max_row_buffer = self._bufsize = num - def soft_close(self, result, dbapi_cursor): + def soft_close( + self, result: CursorResult[Any], dbapi_cursor: Optional[DBAPICursor] + ) -> None: self._rowbuffer.clear() super().soft_close(result, dbapi_cursor) - def hard_close(self, result, dbapi_cursor): + def hard_close( + self, result: CursorResult[Any], dbapi_cursor: Optional[DBAPICursor] + ) -> None: self._rowbuffer.clear() super().hard_close(result, dbapi_cursor) - def fetchone(self, result, dbapi_cursor, hard_close=False): + def fetchone( + self, + result: CursorResult[Any], + dbapi_cursor: DBAPICursor, + hard_close: bool = False, + ) -> Any: if not self._rowbuffer: self._buffer_rows(result, dbapi_cursor) if not self._rowbuffer: @@ -1244,7 +1319,12 @@ def fetchone(self, result, dbapi_cursor, hard_close=False): return None return self._rowbuffer.popleft() - def fetchmany(self, result, dbapi_cursor, size=None): + def fetchmany( + self, + result: CursorResult[Any], + dbapi_cursor: DBAPICursor, + size: Optional[int] = None, + ) -> Any: if size is None: return self.fetchall(result, dbapi_cursor) @@ -1268,7 +1348,9 @@ def fetchmany(self, result, dbapi_cursor, size=None): result._soft_close() return res - def fetchall(self, result, dbapi_cursor): + def fetchall( + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor + ) -> Any: try: ret = list(self._rowbuffer) + list(dbapi_cursor.fetchall()) self._rowbuffer.clear() @@ -1302,25 +1384,41 @@ def __init__( assert dbapi_cursor is not None self._rowbuffer = collections.deque(dbapi_cursor.fetchall()) - def yield_per(self, result, dbapi_cursor, num): + def yield_per( + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor, num: int + ) -> Any: pass - def soft_close(self, result, dbapi_cursor): + def soft_close( + self, result: CursorResult[Any], dbapi_cursor: Optional[DBAPICursor] + ) -> None: self._rowbuffer.clear() super().soft_close(result, dbapi_cursor) - def hard_close(self, result, dbapi_cursor): + def hard_close( + self, result: CursorResult[Any], dbapi_cursor: Optional[DBAPICursor] + ) -> None: self._rowbuffer.clear() super().hard_close(result, dbapi_cursor) - def fetchone(self, result, dbapi_cursor, hard_close=False): + def fetchone( + self, + result: CursorResult[Any], + dbapi_cursor: DBAPICursor, + hard_close: bool = False, + ) -> Any: if self._rowbuffer: return self._rowbuffer.popleft() else: result._soft_close(hard=hard_close) return None - def fetchmany(self, result, dbapi_cursor, size=None): + def fetchmany( + self, + result: CursorResult[Any], + dbapi_cursor: DBAPICursor, + size: Optional[int] = None, + ) -> Any: if size is None: return self.fetchall(result, dbapi_cursor) @@ -1330,7 +1428,9 @@ def fetchmany(self, result, dbapi_cursor, size=None): result._soft_close() return rows - def fetchall(self, result, dbapi_cursor): + def fetchall( + self, result: CursorResult[Any], dbapi_cursor: DBAPICursor + ) -> Any: ret = self._rowbuffer self._rowbuffer = collections.deque() result._soft_close() @@ -1342,35 +1442,37 @@ class _NoResultMetaData(ResultMetaData): returns_rows = False - def _we_dont_return_rows(self, err=None): + def _we_dont_return_rows( + self, err: Optional[BaseException] = None + ) -> NoReturn: raise exc.ResourceClosedError( "This result object does not return rows. " "It has been closed automatically." ) from err - def _index_for_key(self, keys, raiseerr): + def _index_for_key(self, keys: _KeyIndexType, raiseerr: bool) -> NoReturn: self._we_dont_return_rows() - def _metadata_for_keys(self, key): + def _metadata_for_keys(self, keys: Sequence[_KeyIndexType]) -> NoReturn: self._we_dont_return_rows() - def _reduce(self, keys): + def _reduce(self, keys: Sequence[_KeyIndexType]) -> NoReturn: self._we_dont_return_rows() @property - def _keymap(self): + def _keymap(self) -> NoReturn: # type: ignore[override] self._we_dont_return_rows() @property - def _key_to_index(self): + def _key_to_index(self) -> NoReturn: # type: ignore[override] self._we_dont_return_rows() @property - def _processors(self): + def _processors(self) -> NoReturn: # type: ignore[override] self._we_dont_return_rows() @property - def keys(self): + def keys(self) -> NoReturn: self._we_dont_return_rows() @@ -1459,7 +1561,7 @@ def __init__( slice(-context._num_sentinel_cols) ) - def _sliced_row(raw_data): + def _sliced_row(raw_data: Any) -> Any: return _make_row(sentinel_filter(raw_data)) sliced_row = _sliced_row @@ -1469,25 +1571,30 @@ def _sliced_row(raw_data): if echo: log = self.context.connection._log_debug - def _log_row(row): + def _log_row(row: Any) -> Any: log("Row %r", sql_util._repr_row(row)) return row self._row_logging_fn = _log_row - def _make_row_2(row): + def _make_row_2(row: Any) -> Any: return _log_row(sliced_row(row)) make_row = _make_row_2 else: - make_row = sliced_row + make_row = sliced_row # type: ignore[assignment] self._set_memoized_attribute("_row_getter", make_row) else: assert context._num_sentinel_cols == 0 self._metadata = self._no_result_metadata - def _init_metadata(self, context, cursor_description): + def _init_metadata( + self, + context: DefaultExecutionContext, + cursor_description: _DBAPICursorDescription, + ) -> CursorResultMetaData: + if context.compiled: compiled = context.compiled @@ -1518,9 +1625,9 @@ def _init_metadata(self, context, cursor_description): ) and compiled._result_columns and context.cache_hit is context.dialect.CACHE_HIT - and compiled.statement is not context.invoked_statement + and compiled.statement is not context.invoked_statement # type: ignore[comparison-overlap] # noqa: E501 ): - metadata = metadata._adapt_to_context(context) + metadata = metadata._adapt_to_context(context) # type: ignore[assignment] # noqa: E501 self._metadata = metadata @@ -1534,7 +1641,7 @@ def _init_metadata(self, context, cursor_description): ) return metadata - def _soft_close(self, hard=False): + def _soft_close(self, hard: bool = False) -> None: """Soft close this :class:`_engine.CursorResult`. This releases all DBAPI cursor resources, but leaves the @@ -1572,7 +1679,7 @@ def _soft_close(self, hard=False): self._soft_closed = True @property - def inserted_primary_key_rows(self): + def inserted_primary_key_rows(self) -> List[Optional[Any]]: """Return the value of :attr:`_engine.CursorResult.inserted_primary_key` as a row contained within a list; some dialects may support a @@ -1631,10 +1738,10 @@ def inserted_primary_key_rows(self): "when returning() " "is used." ) - return self.context.inserted_primary_key_rows + return self.context.inserted_primary_key_rows # type: ignore[no-any-return] # noqa: E501 @property - def inserted_primary_key(self): + def inserted_primary_key(self) -> Optional[Any]: """Return the primary key for the row just inserted. The return value is a :class:`_result.Row` object representing @@ -1679,7 +1786,11 @@ def inserted_primary_key(self): else: return None - def last_updated_params(self): + def last_updated_params( + self, + ) -> Union[ + List[_MutableCoreSingleExecuteParams], _MutableCoreSingleExecuteParams + ]: """Return the collection of updated parameters from this execution. @@ -1701,7 +1812,11 @@ def last_updated_params(self): else: return self.context.compiled_parameters[0] - def last_inserted_params(self): + def last_inserted_params( + self, + ) -> Union[ + List[_MutableCoreSingleExecuteParams], _MutableCoreSingleExecuteParams + ]: """Return the collection of inserted parameters from this execution. @@ -1724,7 +1839,9 @@ def last_inserted_params(self): return self.context.compiled_parameters[0] @property - def returned_defaults_rows(self): + def returned_defaults_rows( + self, + ) -> Optional[Sequence[Row[Any]]]: """Return a list of rows each containing the values of default columns that were fetched using the :meth:`.ValuesBase.return_defaults` feature. @@ -1736,7 +1853,7 @@ def returned_defaults_rows(self): """ return self.context.returned_default_rows - def splice_horizontally(self, other): + def splice_horizontally(self, other: CursorResult[Any]) -> Self: """Return a new :class:`.CursorResult` that "horizontally splices" together the rows of this :class:`.CursorResult` with that of another :class:`.CursorResult`. @@ -1800,7 +1917,7 @@ def splice_horizontally(self, other): ) ] - clone._metadata = clone._metadata._splice_horizontally(other._metadata) + clone._metadata = clone._metadata._splice_horizontally(other._metadata) # type: ignore[union-attr, arg-type] # noqa: E501 clone.cursor_strategy = FullyBufferedCursorFetchStrategy( None, @@ -1809,7 +1926,7 @@ def splice_horizontally(self, other): clone._reset_memoizations() return clone - def splice_vertically(self, other): + def splice_vertically(self, other: CursorResult[Any]) -> Self: """Return a new :class:`.CursorResult` that "vertically splices", i.e. "extends", the rows of this :class:`.CursorResult` with that of another :class:`.CursorResult`. @@ -1841,7 +1958,7 @@ def splice_vertically(self, other): clone._reset_memoizations() return clone - def _rewind(self, rows): + def _rewind(self, rows: Any) -> Self: """rewind this result back to the given rowset. this is used internally for the case where an :class:`.Insert` @@ -1874,7 +1991,7 @@ def _rewind(self, rows): return self @property - def returned_defaults(self): + def returned_defaults(self) -> Optional[Row[Any]]: """Return the values of default columns that were fetched using the :meth:`.ValuesBase.return_defaults` feature. @@ -1900,7 +2017,7 @@ def returned_defaults(self): else: return None - def lastrow_has_defaults(self): + def lastrow_has_defaults(self) -> bool: """Return ``lastrow_has_defaults()`` from the underlying :class:`.ExecutionContext`. @@ -1910,7 +2027,7 @@ def lastrow_has_defaults(self): return self.context.lastrow_has_defaults() - def postfetch_cols(self): + def postfetch_cols(self) -> Optional[Sequence[Column[Any]]]: """Return ``postfetch_cols()`` from the underlying :class:`.ExecutionContext`. @@ -1933,7 +2050,7 @@ def postfetch_cols(self): ) return self.context.postfetch_cols - def prefetch_cols(self): + def prefetch_cols(self) -> Optional[Sequence[Column[Any]]]: """Return ``prefetch_cols()`` from the underlying :class:`.ExecutionContext`. @@ -1956,7 +2073,7 @@ def prefetch_cols(self): ) return self.context.prefetch_cols - def supports_sane_rowcount(self): + def supports_sane_rowcount(self) -> bool: """Return ``supports_sane_rowcount`` from the dialect. See :attr:`_engine.CursorResult.rowcount` for background. @@ -1965,7 +2082,7 @@ def supports_sane_rowcount(self): return self.dialect.supports_sane_rowcount - def supports_sane_multi_rowcount(self): + def supports_sane_multi_rowcount(self) -> bool: """Return ``supports_sane_multi_rowcount`` from the dialect. See :attr:`_engine.CursorResult.rowcount` for background. @@ -2057,7 +2174,7 @@ def rowcount(self) -> int: raise # not called @property - def lastrowid(self): + def lastrowid(self) -> int: """Return the 'lastrowid' accessor on the DBAPI cursor. This is a DBAPI specific method and is only functional @@ -2078,7 +2195,7 @@ def lastrowid(self): self.cursor_strategy.handle_exception(self, self.cursor, e) @property - def returns_rows(self): + def returns_rows(self) -> bool: """True if this :class:`_engine.CursorResult` returns zero or more rows. @@ -2106,7 +2223,7 @@ def returns_rows(self): return self._metadata.returns_rows @property - def is_insert(self): + def is_insert(self) -> bool: """True if this :class:`_engine.CursorResult` is the result of a executing an expression language compiled :func:`_expression.insert` construct. @@ -2119,7 +2236,7 @@ def is_insert(self): """ return self.context.isinsert - def _fetchiter_impl(self): + def _fetchiter_impl(self) -> Iterator[Any]: fetchone = self.cursor_strategy.fetchone while True: @@ -2128,16 +2245,16 @@ def _fetchiter_impl(self): break yield row - def _fetchone_impl(self, hard_close=False): + def _fetchone_impl(self, hard_close: bool = False) -> Any: return self.cursor_strategy.fetchone(self, self.cursor, hard_close) - def _fetchall_impl(self): + def _fetchall_impl(self) -> Any: return self.cursor_strategy.fetchall(self, self.cursor) - def _fetchmany_impl(self, size=None): + def _fetchmany_impl(self, size: Optional[int] = None) -> Any: return self.cursor_strategy.fetchmany(self, self.cursor, size) - def _raw_row_iterator(self): + def _raw_row_iterator(self) -> Any: return self._fetchiter_impl() def merge(self, *others: Result[Any]) -> MergedResult[Any]: @@ -2149,7 +2266,7 @@ def merge(self, *others: Result[Any]) -> MergedResult[Any]: ) return merged_result - def close(self) -> Any: + def close(self) -> None: """Close this :class:`_engine.CursorResult`. This closes out the underlying DBAPI cursor corresponding to the diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/default.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/default.py index f0b58b634..8cd718b39 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/default.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/default.py @@ -1,5 +1,5 @@ # engine/default.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -83,6 +83,8 @@ from .interfaces import _ParamStyle from .interfaces import ConnectArgsType from .interfaces import DBAPIConnection + from .interfaces import DBAPIModule + from .interfaces import DBAPIType from .interfaces import IsolationLevel from .row import Row from .url import URL @@ -306,6 +308,7 @@ def __init__( # Linting.NO_LINTING constant compiler_linting: Linting = int(compiler.NO_LINTING), # type: ignore server_side_cursors: bool = False, + skip_autocommit_rollback: bool = False, **kwargs: Any, ): if server_side_cursors: @@ -330,6 +333,8 @@ def __init__( self.dbapi = dbapi + self.skip_autocommit_rollback = skip_autocommit_rollback + if paramstyle is not None: self.paramstyle = paramstyle elif self.dbapi is not None: @@ -428,7 +433,7 @@ def insert_executemany_returning_sort_by_parameter_order(self): delete_executemany_returning = False @util.memoized_property - def loaded_dbapi(self) -> ModuleType: + def loaded_dbapi(self) -> DBAPIModule: if self.dbapi is None: raise exc.InvalidRequestError( f"Dialect {self} does not have a Python DBAPI established " @@ -477,7 +482,7 @@ def _type_memos(self): return weakref.WeakKeyDictionary() @property - def dialect_description(self): + def dialect_description(self): # type: ignore[override] return self.name + "+" + self.driver @property @@ -554,7 +559,7 @@ def initialize(self, connection: Connection) -> None: % (self.label_length, self.max_identifier_length) ) - def on_connect(self) -> Optional[Callable[[Any], Any]]: + def on_connect(self) -> Optional[Callable[[Any], None]]: # inherits the docstring from interfaces.Dialect.on_connect return None @@ -700,6 +705,10 @@ def do_begin(self, dbapi_connection): pass def do_rollback(self, dbapi_connection): + if self.skip_autocommit_rollback and self.detect_autocommit_setting( + dbapi_connection + ): + return dbapi_connection.rollback() def do_commit(self, dbapi_connection): @@ -739,8 +748,6 @@ def _do_ping_w_event(self, dbapi_connection: DBAPIConnection) -> bool: raise def do_ping(self, dbapi_connection: DBAPIConnection) -> bool: - cursor = None - cursor = dbapi_connection.cursor() try: cursor.execute(self._dialect_specific_select_one) @@ -949,7 +956,7 @@ def do_execute_no_params(self, cursor, statement, context=None): def is_disconnect( self, - e: Exception, + e: DBAPIModule.Error, connection: Union[ pool.PoolProxiedConnection, interfaces.DBAPIConnection, None ], @@ -1054,7 +1061,7 @@ def denormalize_name(self, name): name = name_upper return name - def get_driver_connection(self, connection): + def get_driver_connection(self, connection: DBAPIConnection) -> Any: return connection def _overrides_default(self, method): @@ -1231,7 +1238,9 @@ class DefaultExecutionContext(ExecutionContext): # a hook for SQLite's translation of # result column names # NOTE: pyhive is using this hook, can't remove it :( - _translate_colname: Optional[Callable[[str], str]] = None + _translate_colname: Optional[ + Callable[[str], Tuple[str, Optional[str]]] + ] = None _expanded_parameters: Mapping[str, List[str]] = util.immutabledict() """used by set_input_sizes(). @@ -1628,7 +1637,7 @@ def _get_cache_stats(self) -> str: return "unknown" @property - def executemany(self): + def executemany(self): # type: ignore[override] return self.execute_style in ( ExecuteStyle.EXECUTEMANY, ExecuteStyle.INSERTMANYVALUES, @@ -1787,7 +1796,9 @@ def get_out_parameter_values(self, names): def post_exec(self): pass - def get_result_processor(self, type_, colname, coltype): + def get_result_processor( + self, type_: TypeEngine[Any], colname: str, coltype: DBAPIType + ) -> Optional[_ResultProcessorType[Any]]: """Return a 'result processor' for a given type as present in cursor.description. @@ -1797,7 +1808,7 @@ def get_result_processor(self, type_, colname, coltype): """ return type_._cached_result_processor(self.dialect, coltype) - def get_lastrowid(self): + def get_lastrowid(self) -> int: """return self.cursor.lastrowid, or equivalent, after an INSERT. This may involve calling special cursor functions, issuing a new SELECT @@ -1842,9 +1853,10 @@ def _setup_result_proxy(self): if self._rowcount is None and exec_opt.get("preserve_rowcount", False): self._rowcount = self.cursor.rowcount + yp: Optional[Union[int, bool]] if self.is_crud or self.is_text: result = self._setup_dml_or_text_result() - yp = sr = False + yp = False else: yp = exec_opt.get("yield_per", None) sr = self._is_server_side or exec_opt.get("stream_results", False) @@ -2053,7 +2065,7 @@ def _setup_ins_pk_from_implicit_returning(self, result, rows): getter(row, param) for row, param in zip(rows, compiled_params) ] - def lastrow_has_defaults(self): + def lastrow_has_defaults(self) -> bool: return (self.isinsert or self.isupdate) and bool( cast(SQLCompiler, self.compiled).postfetch ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/events.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/events.py index b759382cb..b01eec5fb 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/events.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/events.py @@ -1,5 +1,5 @@ # engine/events.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/interfaces.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/interfaces.py index 1823c97fc..ac082b0d3 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/interfaces.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/interfaces.py @@ -1,5 +1,5 @@ # engine/interfaces.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -10,7 +10,6 @@ from __future__ import annotations from enum import Enum -from types import ModuleType from typing import Any from typing import Awaitable from typing import Callable @@ -34,7 +33,7 @@ from .. import util from ..event import EventTarget from ..pool import Pool -from ..pool import PoolProxiedConnection +from ..pool import PoolProxiedConnection as PoolProxiedConnection from ..sql.compiler import Compiled as Compiled from ..sql.compiler import Compiled # noqa from ..sql.compiler import TypeCompiler as TypeCompiler @@ -51,6 +50,7 @@ from .base import Engine from .cursor import CursorResult from .url import URL + from ..connectors.asyncio import AsyncIODBAPIConnection from ..event import _ListenerFnType from ..event import dispatcher from ..exc import StatementError @@ -70,6 +70,7 @@ from ..sql.sqltypes import Integer from ..sql.type_api import _TypeMemoDict from ..sql.type_api import TypeEngine + from ..util.langhelpers import generic_fn_descriptor ConnectArgsType = Tuple[Sequence[str], MutableMapping[str, Any]] @@ -106,6 +107,22 @@ class ExecuteStyle(Enum): """ +class DBAPIModule(Protocol): + class Error(Exception): + def __getattr__(self, key: str) -> Any: ... + + class OperationalError(Error): + pass + + class InterfaceError(Error): + pass + + class IntegrityError(Error): + pass + + def __getattr__(self, key: str) -> Any: ... + + class DBAPIConnection(Protocol): """protocol representing a :pep:`249` database connection. @@ -126,7 +143,9 @@ def cursor(self, *args: Any, **kwargs: Any) -> DBAPICursor: ... def rollback(self) -> None: ... - autocommit: bool + def __getattr__(self, key: str) -> Any: ... + + def __setattr__(self, key: str, value: Any) -> None: ... class DBAPIType(Protocol): @@ -658,7 +677,7 @@ class Dialect(EventTarget): dialect_description: str - dbapi: Optional[ModuleType] + dbapi: Optional[DBAPIModule] """A reference to the DBAPI module object itself. SQLAlchemy dialects import DBAPI modules using the classmethod @@ -682,7 +701,7 @@ class Dialect(EventTarget): """ @util.non_memoized_property - def loaded_dbapi(self) -> ModuleType: + def loaded_dbapi(self) -> DBAPIModule: """same as .dbapi, but is never None; will raise an error if no DBAPI was set up. @@ -760,6 +779,14 @@ def loaded_dbapi(self) -> ModuleType: default_isolation_level: Optional[IsolationLevel] """the isolation that is implicitly present on new connections""" + skip_autocommit_rollback: bool + """Whether or not the :paramref:`.create_engine.skip_autocommit_rollback` + parameter was set. + + .. versionadded:: 2.0.43 + + """ + # create_engine() -> isolation_level currently goes here _on_connect_isolation_level: Optional[IsolationLevel] @@ -786,7 +813,7 @@ def loaded_dbapi(self) -> ModuleType: """The maximum length of constraint names if different from ``max_identifier_length``.""" - supports_server_side_cursors: bool + supports_server_side_cursors: Union[generic_fn_descriptor[bool], bool] """indicates if the dialect supports server side cursors""" server_side_cursors: bool @@ -1198,6 +1225,13 @@ def loaded_dbapi(self) -> ModuleType: tuple_in_values: bool """target database supports tuple IN, i.e. (x, y) IN ((q, p), (r, z))""" + requires_name_normalize: bool + """Indicates symbol names are returned by the database in + UPPERCASED if they are case insensitive within the database. + If this is True, the methods normalize_name() + and denormalize_name() must be provided. + """ + _bind_typing_render_casts: bool _type_memos: MutableMapping[TypeEngine[Any], _TypeMemoDict] @@ -1239,7 +1273,7 @@ def create_connect_args(self, url): raise NotImplementedError() @classmethod - def import_dbapi(cls) -> ModuleType: + def import_dbapi(cls) -> DBAPIModule: """Import the DBAPI module that is used by this dialect. The Python module object returned here will be assigned as an @@ -2209,7 +2243,7 @@ def do_execute_no_params( def is_disconnect( self, - e: Exception, + e: DBAPIModule.Error, connection: Optional[Union[PoolProxiedConnection, DBAPIConnection]], cursor: Optional[DBAPICursor], ) -> bool: @@ -2313,7 +2347,7 @@ def do_on_connect(connection): """ return self.on_connect() - def on_connect(self) -> Optional[Callable[[Any], Any]]: + def on_connect(self) -> Optional[Callable[[Any], None]]: """return a callable which sets up a newly created DBAPI connection. The callable should accept a single argument "conn" which is the @@ -2462,6 +2496,30 @@ def get_isolation_level( raise NotImplementedError() + def detect_autocommit_setting(self, dbapi_conn: DBAPIConnection) -> bool: + """Detect the current autocommit setting for a DBAPI connection. + + :param dbapi_connection: a DBAPI connection object + :return: True if autocommit is enabled, False if disabled + :rtype: bool + + This method inspects the given DBAPI connection to determine + whether autocommit mode is currently enabled. The specific + mechanism for detecting autocommit varies by database dialect + and DBAPI driver, however it should be done **without** network + round trips. + + .. note:: + + Not all dialects support autocommit detection. Dialects + that do not support this feature will raise + :exc:`NotImplementedError`. + + """ + raise NotImplementedError( + "This dialect cannot detect autocommit on a DBAPI connection" + ) + def get_default_isolation_level( self, dbapi_conn: DBAPIConnection ) -> IsolationLevel: @@ -3370,7 +3428,7 @@ class AdaptedConnection: __slots__ = ("_connection",) - _connection: Any + _connection: AsyncIODBAPIConnection @property def driver_connection(self) -> Any: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/mock.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/mock.py index 08dba5a64..a5173b9d7 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/mock.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/mock.py @@ -1,5 +1,5 @@ # engine/mock.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -27,10 +27,9 @@ from .interfaces import Dialect from .url import URL from ..sql.base import Executable - from ..sql.ddl import SchemaDropper - from ..sql.ddl import SchemaGenerator + from ..sql.ddl import InvokeDDLBase from ..sql.schema import HasSchemaAttr - from ..sql.schema import SchemaItem + from ..sql.visitors import Visitable class MockConnection: @@ -53,12 +52,14 @@ def execution_options(self, **kw: Any) -> MockConnection: def _run_ddl_visitor( self, - visitorcallable: Type[Union[SchemaGenerator, SchemaDropper]], - element: SchemaItem, + visitorcallable: Type[InvokeDDLBase], + element: Visitable, **kwargs: Any, ) -> None: kwargs["checkfirst"] = False - visitorcallable(self.dialect, self, **kwargs).traverse_single(element) + visitorcallable( + dialect=self.dialect, connection=self, **kwargs + ).traverse_single(element) def execute( self, diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/processors.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/processors.py index b3f933084..0888257f2 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/processors.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/processors.py @@ -1,5 +1,5 @@ # engine/processors.py -# Copyright (C) 2010-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2010-2026 the SQLAlchemy authors and contributors # # Copyright (C) 2010 Gaetan de Menten gdementen@gmail.com # diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/reflection.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/reflection.py index 5d754c670..c976ae0f1 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/reflection.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/reflection.py @@ -1,5 +1,5 @@ # engine/reflection.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -1714,9 +1714,12 @@ def _reflect_pk( if pk in cols_by_orig_name and pk not in exclude_columns ] - # update pk constraint name and comment + # update pk constraint name, comment and dialect_kwargs table.primary_key.name = pk_cons.get("name") table.primary_key.comment = pk_cons.get("comment", None) + dialect_options = pk_cons.get("dialect_options") + if dialect_options: + table.primary_key.dialect_kwargs.update(dialect_options) # tell the PKConstraint to re-initialize # its column collection diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/result.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/result.py index 3c81fc605..b0788a607 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/result.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/result.py @@ -1,5 +1,5 @@ # engine/result.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -52,10 +52,22 @@ from sqlalchemy.cyextension.resultproxy import tuplegetter as tuplegetter if typing.TYPE_CHECKING: + from typing import Type + + from .. import inspection + from ..sql import roles + from ..sql._typing import _HasClauseElement from ..sql.elements import SQLCoreOperations from ..sql.type_api import _ResultProcessorType -_KeyType = Union[str, "SQLCoreOperations[Any]"] +_KeyType = Union[ + str, + "SQLCoreOperations[Any]", + "roles.TypedColumnsClauseRole[Any]", + "roles.ColumnsClauseRole", + "Type[Any]", + "inspection.Inspectable[_HasClauseElement[Any]]", +] _KeyIndexType = Union[_KeyType, int] # is overridden in cursor using _CursorKeyMapRecType @@ -722,6 +734,14 @@ def manyrows( return manyrows + @overload + def _only_one_row( + self: ResultInternal[Row[Any]], + raise_for_second_row: bool, + raise_for_none: bool, + scalar: Literal[True], + ) -> Any: ... + @overload def _only_one_row( self, @@ -809,7 +829,6 @@ def _only_one_row( "was required" ) else: - next_row = _NO_ROW # if we checked for second row then that would have # closed us :) self._soft_close(hard=True) @@ -1489,8 +1508,8 @@ def scalar_one_or_none(self) -> Optional[Any]: def one(self) -> Row[_TP]: """Return exactly one row or raise an exception. - Raises :class:`.NoResultFound` if the result returns no - rows, or :class:`.MultipleResultsFound` if multiple rows + Raises :class:`_exc.NoResultFound` if the result returns no + rows, or :class:`_exc.MultipleResultsFound` if multiple rows would be returned. .. note:: This method returns one **row**, e.g. tuple, by default. @@ -2006,7 +2025,7 @@ def unique(self, strategy: Optional[_UniqueFilterType] = None) -> Self: return self def columns(self, *col_expressions: _KeyIndexType) -> Self: - r"""Establish the columns that should be returned in each row.""" + """Establish the columns that should be returned in each row.""" return self._column_slices(col_expressions) def partitions( diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/row.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/row.py index da7ae9af2..cd818c651 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/row.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/row.py @@ -1,5 +1,5 @@ # engine/row.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/strategies.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/strategies.py index 5dd7bca9a..a7eb81b43 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/strategies.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/strategies.py @@ -1,14 +1,11 @@ # engine/strategies.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Deprecated mock engine strategy used by Alembic. - - -""" +"""Deprecated mock engine strategy used by Alembic.""" from __future__ import annotations diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/url.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/url.py index bb004f11c..5d6612013 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/url.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/url.py @@ -1,5 +1,5 @@ # engine/url.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -920,5 +920,5 @@ def _parse_url(name: str) -> URL: else: raise exc.ArgumentError( - "Could not parse SQLAlchemy URL from string '%s'" % name + "Could not parse SQLAlchemy URL from given URL string" ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/engine/util.py b/addons/source-python/packages/site-packages/sqlalchemy/engine/util.py index e499efa91..b8cc1d23a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/engine/util.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/engine/util.py @@ -1,5 +1,5 @@ # engine/util.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/event/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/event/__init__.py index 309b7bd33..a48af7ef5 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/event/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/event/__init__.py @@ -1,5 +1,5 @@ # event/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -20,6 +20,7 @@ from .base import dispatcher as dispatcher from .base import Events as Events from .legacy import _legacy_signature as _legacy_signature +from .legacy import _omit_standard_example as _omit_standard_example from .registry import _EventKey as _EventKey from .registry import _ListenerFnType as _ListenerFnType from .registry import EventTarget as EventTarget diff --git a/addons/source-python/packages/site-packages/sqlalchemy/event/api.py b/addons/source-python/packages/site-packages/sqlalchemy/event/api.py index b6ec8f6d3..38b2716b8 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/event/api.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/event/api.py @@ -1,13 +1,11 @@ # event/api.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Public API functions for the event system. - -""" +"""Public API functions for the event system.""" from __future__ import annotations from typing import Any diff --git a/addons/source-python/packages/site-packages/sqlalchemy/event/attr.py b/addons/source-python/packages/site-packages/sqlalchemy/event/attr.py index ec5d5822f..e09cb4d5a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/event/attr.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/event/attr.py @@ -1,5 +1,5 @@ # event/attr.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -343,11 +343,20 @@ def for_modify( obj = cast("_Dispatch[_ET]", obj) assert obj._instance_cls is not None - result = _ListenerCollection(self.parent, obj._instance_cls) - if getattr(obj, self.name) is self: - setattr(obj, self.name, result) - else: - assert isinstance(getattr(obj, self.name), _JoinedListener) + existing = getattr(obj, self.name) + + with util.mini_gil: + if existing is self or isinstance(existing, _JoinedListener): + result = _ListenerCollection(self.parent, obj._instance_cls) + else: + # this codepath is an extremely rare race condition + # that has been observed in test_pool.py->test_timeout_race + # with freethreaded. + assert isinstance(existing, _ListenerCollection) + return existing + + if existing is self: + setattr(obj, self.name, result) return result def _needs_modify(self, *args: Any, **kw: Any) -> NoReturn: @@ -409,7 +418,7 @@ class _CompoundListener(_InstanceLevelDispatch[_ET]): "_is_asyncio", ) - _exec_once_mutex: _MutexProtocol + _exec_once_mutex: Optional[_MutexProtocol] parent_listeners: Collection[_ListenerFnType] listeners: Collection[_ListenerFnType] _exec_once: bool @@ -422,16 +431,23 @@ def __init__(self, *arg: Any, **kw: Any): def _set_asyncio(self) -> None: self._is_asyncio = True - def _memoized_attr__exec_once_mutex(self) -> _MutexProtocol: - if self._is_asyncio: - return AsyncAdaptedLock() - else: - return threading.Lock() + def _get_exec_once_mutex(self) -> _MutexProtocol: + with util.mini_gil: + if self._exec_once_mutex is not None: + return self._exec_once_mutex + + if self._is_asyncio: + mutex = AsyncAdaptedLock() + else: + mutex = threading.Lock() # type: ignore[assignment] + self._exec_once_mutex = mutex + + return mutex def _exec_once_impl( self, retry_on_exception: bool, *args: Any, **kw: Any ) -> None: - with self._exec_once_mutex: + with self._get_exec_once_mutex(): if not self._exec_once: try: self(*args, **kw) @@ -472,13 +488,15 @@ def _exec_w_sync_on_first_run(self, *args: Any, **kw: Any) -> None: raised an exception. If _exec_w_sync_on_first_run was already called and didn't raise an - exception, then a mutex is not used. + exception, then a mutex is not used. It's not guaranteed + the mutex won't be used more than once in the case of very rare + race conditions. .. versionadded:: 1.4.11 """ if not self._exec_w_sync_once: - with self._exec_once_mutex: + with self._get_exec_once_mutex(): try: self(*args, **kw) except: @@ -540,6 +558,7 @@ def __init__(self, parent: _ClsLevelDispatch[_ET], target_cls: Type[_ET]): parent.update_subclass(target_cls) self._exec_once = False self._exec_w_sync_once = False + self._exec_once_mutex = None self.parent_listeners = parent._clslevel[target_cls] self.parent = parent self.name = parent.name @@ -617,6 +636,8 @@ def __init__( local: _EmptyListener[_ET], ): self._exec_once = False + self._exec_w_sync_once = False + self._exec_once_mutex = None self.parent_dispatch = parent_dispatch self.name = name self.local = local diff --git a/addons/source-python/packages/site-packages/sqlalchemy/event/base.py b/addons/source-python/packages/site-packages/sqlalchemy/event/base.py index 66dc12996..9f6e410d6 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/event/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/event/base.py @@ -1,5 +1,5 @@ # event/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/event/legacy.py b/addons/source-python/packages/site-packages/sqlalchemy/event/legacy.py index e60fd9a5e..63fc1ee9a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/event/legacy.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/event/legacy.py @@ -1,5 +1,5 @@ # event/legacy.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -18,6 +18,7 @@ from typing import Optional from typing import Tuple from typing import Type +from typing import TypeVar from .registry import _ET from .registry import _ListenerFnType @@ -29,14 +30,16 @@ from .base import _HasEventsDispatch -_LegacySignatureType = Tuple[str, List[str], Optional[Callable[..., Any]]] +_F = TypeVar("_F", bound=Callable[..., Any]) + +_LegacySignatureType = Tuple[str, List[str], Callable[..., Any]] def _legacy_signature( since: str, argnames: List[str], converter: Optional[Callable[..., Any]] = None, -) -> Callable[[Callable[..., Any]], Callable[..., Any]]: +) -> Callable[[_F], _F]: """legacy sig decorator @@ -48,7 +51,7 @@ def _legacy_signature( """ - def leg(fn: Callable[..., Any]) -> Callable[..., Any]: + def leg(fn: _F) -> _F: if not hasattr(fn, "_legacy_signatures"): fn._legacy_signatures = [] # type: ignore[attr-defined] fn._legacy_signatures.append((since, argnames, converter)) # type: ignore[attr-defined] # noqa: E501 @@ -57,6 +60,11 @@ def leg(fn: Callable[..., Any]) -> Callable[..., Any]: return leg +def _omit_standard_example(fn: _F) -> _F: + fn._omit_standard_example = True # type: ignore[attr-defined] + return fn + + def _wrap_fn_for_legacy( dispatch_collection: _ClsLevelDispatch[_ET], fn: _ListenerFnType, @@ -222,6 +230,10 @@ def _augment_fn_docs( parent_dispatch_cls: Type[_HasEventsDispatch[_ET]], fn: _ListenerFnType, ) -> str: + if getattr(fn, "_omit_standard_example", False): + assert fn.__doc__ + return fn.__doc__ + header = ( ".. container:: event_signatures\n\n" " Example argument forms::\n" diff --git a/addons/source-python/packages/site-packages/sqlalchemy/event/registry.py b/addons/source-python/packages/site-packages/sqlalchemy/event/registry.py index d7e4b3215..22be5628e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/event/registry.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/event/registry.py @@ -1,5 +1,5 @@ # event/registry.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/events.py b/addons/source-python/packages/site-packages/sqlalchemy/events.py index ce8324395..501d79ed6 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/events.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/events.py @@ -1,5 +1,5 @@ # events.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/exc.py b/addons/source-python/packages/site-packages/sqlalchemy/exc.py index 71e5dd81e..c31c16b4d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/exc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/exc.py @@ -1,5 +1,5 @@ # exc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/__init__.py index 2751bcf93..5d61ac765 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/__init__.py @@ -1,5 +1,5 @@ # ext/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/associationproxy.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/associationproxy.py index 8f2c19b87..5fbabe578 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/associationproxy.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/associationproxy.py @@ -1,5 +1,5 @@ # ext/associationproxy.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -99,6 +99,7 @@ def association_proxy( compare: Union[_NoArg, bool] = _NoArg.NO_ARG, kw_only: Union[_NoArg, bool] = _NoArg.NO_ARG, hash: Union[_NoArg, bool, None] = _NoArg.NO_ARG, # noqa: A002 + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, ) -> AssociationProxy[Any]: r"""Return a Python property implementing a view of a target attribute which references an attribute on members of the @@ -162,7 +163,7 @@ def association_proxy( the proxied value to ``None`` should **create** the source object if it does not exist, using the creator. Only applies to scalar attributes. This is mutually exclusive - vs. the :paramref:`.assocation_proxy.cascade_scalar_deletes`. + vs. the :paramref:`.association_proxy.cascade_scalar_deletes`. .. versionadded:: 2.0.18 @@ -206,6 +207,12 @@ def association_proxy( .. versionadded:: 2.0.36 + :param dataclass_metadata: Specific to + :ref:`orm_declarative_native_dataclasses`, supplies metadata + to be attached to the generated dataclass field. + + .. versionadded:: 2.0.42 + :param info: optional, will be assigned to :attr:`.AssociationProxy.info` if present. @@ -245,7 +252,14 @@ def association_proxy( cascade_scalar_deletes=cascade_scalar_deletes, create_on_none_assignment=create_on_none_assignment, attribute_options=_AttributeOptions( - init, repr, default, default_factory, compare, kw_only, hash + init, + repr, + default, + default_factory, + compare, + kw_only, + hash, + dataclass_metadata, ), ) @@ -658,7 +672,7 @@ def for_proxy( except Exception as err: raise exc.InvalidRequestError( f"Association proxy received an unexpected error when " - f"trying to retreive attribute " + f"trying to retrieve attribute " f'"{target_class.__name__}.{parent.value_attr}" from ' f'class "{target_class.__name__}": {err}' ) from err diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/__init__.py index 7d8a04bd7..e0b688cb0 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/__init__.py @@ -1,5 +1,5 @@ # ext/asyncio/__init__.py -# Copyright (C) 2020-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2020-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/base.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/base.py index ce2c439f1..84fd9f23a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/base.py @@ -1,5 +1,5 @@ # ext/asyncio/base.py -# Copyright (C) 2020-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2020-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -193,7 +193,7 @@ async def __aexit__( # (see PEP 479 for sync generators; async generators also # have this behavior). But do this only if the exception # wrapped - # by the RuntimeError is actully Stop(Async)Iteration (see + # by the RuntimeError is actually Stop(Async)Iteration (see # issue29692). if ( isinstance(value, (StopIteration, StopAsyncIteration)) @@ -215,7 +215,7 @@ async def __aexit__( def asyncstartablecontext( - func: Callable[..., AsyncIterator[_T_co]] + func: Callable[..., AsyncIterator[_T_co]], ) -> Callable[..., GeneratorStartableContext[_T_co]]: """@asyncstartablecontext decorator. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/engine.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/engine.py index 65c019954..263bd75cf 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/engine.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/engine.py @@ -1,5 +1,5 @@ # ext/asyncio/engine.py -# Copyright (C) 2020-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2020-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -186,7 +186,8 @@ def _no_async_engine_events(cls) -> NoReturn: "default_isolation_level", ], ) -class AsyncConnection( +# "Class has incompatible disjoint bases" - no idea +class AsyncConnection( # type:ignore[misc] ProxyComparable[Connection], StartableContext["AsyncConnection"], AsyncConnectable, @@ -576,7 +577,7 @@ async def stream( """ if not self.dialect.supports_server_side_cursors: raise exc.InvalidRequestError( - "Cant use `stream` or `stream_scalars` with the current " + "Can't use `stream` or `stream_scalars` with the current " "dialect since it does not support server side cursors." ) @@ -994,7 +995,8 @@ def default_isolation_level(self) -> Any: ], attributes=["url", "pool", "dialect", "engine", "name", "driver", "echo"], ) -class AsyncEngine(ProxyComparable[Engine], AsyncConnectable): +# "Class has incompatible disjoint bases" - no idea +class AsyncEngine(ProxyComparable[Engine], AsyncConnectable): # type: ignore[misc] # noqa:E501 """An asyncio proxy for a :class:`_engine.Engine`. :class:`_asyncio.AsyncEngine` is acquired using the @@ -1431,7 +1433,7 @@ def _get_sync_engine_or_connection( def _get_sync_engine_or_connection( - async_engine: Union[AsyncEngine, AsyncConnection] + async_engine: Union[AsyncEngine, AsyncConnection], ) -> Union[Engine, Connection]: if isinstance(async_engine, AsyncConnection): return async_engine._proxied diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/exc.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/exc.py index 558187c0b..6f61a71c1 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/exc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/exc.py @@ -1,5 +1,5 @@ # ext/asyncio/exc.py -# Copyright (C) 2020-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2020-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/result.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/result.py index 8003f66af..483126a7f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/result.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/result.py @@ -1,5 +1,5 @@ # ext/asyncio/result.py -# Copyright (C) 2020-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2020-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -825,7 +825,7 @@ async def all(self) -> Sequence[_R]: # noqa: A001 """ ... - async def __aiter__(self) -> AsyncIterator[_R]: ... + def __aiter__(self) -> AsyncIterator[_R]: ... async def __anext__(self) -> _R: ... @@ -959,4 +959,7 @@ async def _ensure_sync_result(result: _RT, calling_method: Any) -> _RT: calling_method.__self__.__class__.__name__, ) ) + + if is_cursor and cursor_result.cursor is not None: + await cursor_result.cursor._async_soft_close() return result diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/scoping.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/scoping.py index 7ecab37b4..47099248d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/scoping.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/scoping.py @@ -1,5 +1,5 @@ # ext/asyncio/scoping.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -38,7 +38,6 @@ from .result import AsyncScalarResult from .session import AsyncSessionTransaction from ...engine import Connection - from ...engine import CursorResult from ...engine import Engine from ...engine import Result from ...engine import Row @@ -55,7 +54,6 @@ from ...orm.session import _PKIdentityArgument from ...orm.session import _SessionBind from ...sql.base import Executable - from ...sql.dml import UpdateBase from ...sql.elements import ClauseElement from ...sql.selectable import ForUpdateParameter from ...sql.selectable import TypedReturnsRows @@ -538,18 +536,6 @@ async def execute( _add_event: Optional[Any] = None, ) -> Result[_T]: ... - @overload - async def execute( - self, - statement: UpdateBase, - params: Optional[_CoreAnyExecuteParams] = None, - *, - execution_options: OrmExecuteOptionsParameter = util.EMPTY_DICT, - bind_arguments: Optional[_BindArguments] = None, - _parent_execute_state: Optional[Any] = None, - _add_event: Optional[Any] = None, - ) -> CursorResult[Any]: ... - @overload async def execute( self, @@ -1175,8 +1161,7 @@ async def get_one( Proxied for the :class:`_asyncio.AsyncSession` class on behalf of the :class:`_asyncio.scoping.async_scoped_session` class. - Raises ``sqlalchemy.orm.exc.NoResultFound`` if the query selects - no rows. + Raises :class:`_exc.NoResultFound` if the query selects no rows. ..versionadded: 2.0.22 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/session.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/session.py index 1b8c9695c..c547b9781 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/session.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/asyncio/session.py @@ -1,5 +1,5 @@ # ext/asyncio/session.py -# Copyright (C) 2020-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2020-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -46,7 +46,6 @@ from .engine import AsyncConnection from .engine import AsyncEngine from ...engine import Connection - from ...engine import CursorResult from ...engine import Engine from ...engine import Result from ...engine import Row @@ -67,7 +66,6 @@ from ...orm.session import _SessionBindKey from ...sql._typing import _InfoType from ...sql.base import Executable - from ...sql.dml import UpdateBase from ...sql.elements import ClauseElement from ...sql.selectable import ForUpdateParameter from ...sql.selectable import TypedReturnsRows @@ -411,18 +409,6 @@ async def execute( _add_event: Optional[Any] = None, ) -> Result[_T]: ... - @overload - async def execute( - self, - statement: UpdateBase, - params: Optional[_CoreAnyExecuteParams] = None, - *, - execution_options: OrmExecuteOptionsParameter = util.EMPTY_DICT, - bind_arguments: Optional[_BindArguments] = None, - _parent_execute_state: Optional[Any] = None, - _add_event: Optional[Any] = None, - ) -> CursorResult[Any]: ... - @overload async def execute( self, @@ -628,8 +614,7 @@ async def get_one( """Return an instance based on the given primary key identifier, or raise an exception if not found. - Raises ``sqlalchemy.orm.exc.NoResultFound`` if the query selects - no rows. + Raises :class:`_exc.NoResultFound` if the query selects no rows. ..versionadded: 2.0.22 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/automap.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/automap.py index 817f91d26..a810b82e8 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/automap.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/automap.py @@ -1,5 +1,5 @@ # ext/automap.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/baked.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/baked.py index cd3e08793..2377c7d12 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/baked.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/baked.py @@ -1,5 +1,5 @@ # ext/baked.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/compiler.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/compiler.py index cc64477ed..2de5001ee 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/compiler.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/compiler.py @@ -1,5 +1,5 @@ # ext/compiler.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/__init__.py index 0383f9d34..e13464168 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/__init__.py @@ -1,5 +1,5 @@ # ext/declarative/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/extensions.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/extensions.py index 3dc6bf698..d119aaebe 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/extensions.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/declarative/extensions.py @@ -1,5 +1,5 @@ # ext/declarative/extensions.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/horizontal_shard.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/horizontal_shard.py index 3ea3304eb..4722353f3 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/horizontal_shard.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/horizontal_shard.py @@ -1,5 +1,5 @@ # ext/horizontal_shard.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -16,7 +16,7 @@ .. deepalchemy:: The horizontal sharding extension is an advanced feature, involving a complex statement -> database interaction as well as use of semi-public APIs for non-trivial cases. Simpler approaches to - refering to multiple database "shards", most commonly using a distinct + referring to multiple database "shards", most commonly using a distinct :class:`_orm.Session` per "shard", should always be considered first before using this more complex and less-production-tested system. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/hybrid.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/hybrid.py index c1c46e7c5..f9a9459bf 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/hybrid.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/hybrid.py @@ -1,5 +1,5 @@ # ext/hybrid.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -253,7 +253,7 @@ def radius(cls): In order to produce a reasonable syntax while remaining typing compliant, the :attr:`.hybrid_property.inplace` decorator allows the same -decorator to be re-used with different method names, while still producing +decorator to be reused with different method names, while still producing a single decorator under one name:: # correct use which is also accepted by pep-484 tooling @@ -465,7 +465,7 @@ def _balance_expression(cls) -> SQLColumnExpression[Optional[Decimal]]: list available on ``self``. .. tip:: The ``User.balance`` getter in the above example accesses the - ``self.acccounts`` collection, which will normally be loaded via the + ``self.accounts`` collection, which will normally be loaded via the :func:`.selectinload` loader strategy configured on the ``User.balance`` :func:`_orm.relationship`. The default loader strategy when not otherwise stated on :func:`_orm.relationship` is :func:`.lazyload`, which emits SQL on @@ -923,11 +923,11 @@ class HybridExtensionType(InspectionAttrExtensionType): class _HybridGetterType(Protocol[_T_co]): - def __call__(s, self: Any) -> _T_co: ... + def __call__(s, __self: Any) -> _T_co: ... class _HybridSetterType(Protocol[_T_con]): - def __call__(s, self: Any, value: _T_con) -> None: ... + def __call__(s, __self: Any, value: _T_con) -> None: ... class _HybridUpdaterType(Protocol[_T_con]): @@ -939,12 +939,12 @@ def __call__( class _HybridDeleterType(Protocol[_T_co]): - def __call__(s, self: Any) -> None: ... + def __call__(s, __self: Any) -> None: ... class _HybridExprCallableType(Protocol[_T_co]): def __call__( - s, cls: Any + s, __cls: Any ) -> Union[_HasClauseElement[_T_co], SQLColumnExpression[_T_co]]: ... @@ -1140,10 +1140,12 @@ def __get__( else: return self.fget(instance) - def __set__(self, instance: object, value: Any) -> None: + def __set__( + self, instance: object, value: Union[SQLCoreOperations[_T], _T] + ) -> None: if self.fset is None: raise AttributeError("can't set attribute") - self.fset(instance, value) + self.fset(instance, value) # type: ignore[arg-type] def __delete__(self, instance: object) -> None: if self.fdel is None: @@ -1244,7 +1246,7 @@ def inplace(self) -> _InPlace[_T]: """Return the inplace mutator for this :class:`.hybrid_property`. This is to allow in-place mutation of the hybrid, allowing the first - hybrid method of a certain name to be re-used in order to add + hybrid method of a certain name to be reused in order to add more methods without having to name those methods the same, e.g.:: class Interval(Base): diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/indexable.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/indexable.py index 886069ce0..17b3cff5f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/indexable.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/indexable.py @@ -1,10 +1,9 @@ # ext/indexable.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors """Define attributes on ORM-mapped classes that have "index" attributes for columns with :class:`_types.Indexable` types. @@ -216,6 +215,7 @@ class Person(Base): >>> query = session.query(Person).filter(Person.age < 20) The above query will render: + .. sourcecode:: sql SELECT person.id, person.data @@ -223,15 +223,32 @@ class Person(Base): WHERE CAST(person.data ->> %(data_1)s AS INTEGER) < %(param_1)s """ # noqa + +from __future__ import annotations + +from typing import Any +from typing import Callable +from typing import cast +from typing import Optional +from typing import TYPE_CHECKING +from typing import TypeVar +from typing import Union + from .. import inspect from ..ext.hybrid import hybrid_property from ..orm.attributes import flag_modified +if TYPE_CHECKING: + from ..sql import SQLColumnExpression + from ..sql._typing import _HasClauseElement + __all__ = ["index_property"] +_T = TypeVar("_T") + -class index_property(hybrid_property): # noqa +class index_property(hybrid_property[_T]): """A property generator. The generated property describes an object attribute that corresponds to an :class:`_types.Indexable` column. @@ -242,16 +259,16 @@ class index_property(hybrid_property): # noqa """ - _NO_DEFAULT_ARGUMENT = object() + _NO_DEFAULT_ARGUMENT = cast(_T, object()) def __init__( self, - attr_name, - index, - default=_NO_DEFAULT_ARGUMENT, - datatype=None, - mutable=True, - onebased=True, + attr_name: str, + index: Union[int, str], + default: _T = _NO_DEFAULT_ARGUMENT, + datatype: Optional[Callable[[], Any]] = None, + mutable: bool = True, + onebased: bool = True, ): """Create a new :class:`.index_property`. @@ -290,20 +307,20 @@ def __init__( self.datatype = datatype else: if is_numeric: - self.datatype = lambda: [None for x in range(index + 1)] + self.datatype = lambda: [None for x in range(index + 1)] # type: ignore[operator] # noqa: E501 else: self.datatype = dict self.onebased = onebased - def _fget_default(self, err=None): + def _fget_default(self, err: Optional[BaseException] = None) -> _T: if self.default == self._NO_DEFAULT_ARGUMENT: raise AttributeError(self.attr_name) from err else: return self.default - def fget(self, instance): + def fget(self, __instance: Any) -> _T: attr_name = self.attr_name - column_value = getattr(instance, attr_name) + column_value = getattr(__instance, attr_name) if column_value is None: return self._fget_default() try: @@ -311,9 +328,9 @@ def fget(self, instance): except (KeyError, IndexError) as err: return self._fget_default(err) else: - return value + return value # type: ignore[no-any-return] - def fset(self, instance, value): + def fset(self, instance: Any, value: _T) -> None: attr_name = self.attr_name column_value = getattr(instance, attr_name, None) if column_value is None: @@ -324,7 +341,7 @@ def fset(self, instance, value): if attr_name in inspect(instance).mapper.attrs: flag_modified(instance, attr_name) - def fdel(self, instance): + def fdel(self, instance: Any) -> None: attr_name = self.attr_name column_value = getattr(instance, attr_name) if column_value is None: @@ -337,9 +354,11 @@ def fdel(self, instance): setattr(instance, attr_name, column_value) flag_modified(instance, attr_name) - def expr(self, model): + def expr( + self, model: Any + ) -> Union[_HasClauseElement[_T], SQLColumnExpression[_T]]: column = getattr(model, self.attr_name) index = self.index if self.onebased: - index += 1 - return column[index] + index += 1 # type: ignore[operator] + return column[index] # type: ignore[no-any-return] diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/instrumentation.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/instrumentation.py index 8bb01985e..08d55dbdb 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/instrumentation.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/instrumentation.py @@ -1,5 +1,5 @@ # ext/instrumentation.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mutable.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mutable.py index ed618c381..43967b784 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mutable.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mutable.py @@ -1,5 +1,5 @@ # ext/mutable.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -397,7 +397,6 @@ def __setstate__(self, state): from .. import event from .. import inspect from .. import types -from .. import util from ..orm import Mapper from ..orm._typing import _ExternalEntityType from ..orm._typing import _O @@ -416,7 +415,6 @@ def __setstate__(self, state): from ..sql.type_api import TypeEngine from ..util import memoized_property from ..util.typing import SupportsIndex -from ..util.typing import TypeGuard _KT = TypeVar("_KT") # Key type. _VT = TypeVar("_VT") # Value type. @@ -524,6 +522,7 @@ def load(state: InstanceState[_O], *args: Any) -> None: if val is not None: if coerce: val = cls.coerce(key, val) + assert val is not None state.dict[key] = val val._parents[state] = key @@ -813,7 +812,7 @@ class MutableDict(Mutable, Dict[_KT, _VT]): def __setitem__(self, key: _KT, value: _VT) -> None: """Detect dictionary set events and emit change events.""" - super().__setitem__(key, value) + dict.__setitem__(self, key, value) self.changed() if TYPE_CHECKING: @@ -832,17 +831,17 @@ def setdefault(self, key: _KT, value: object = None) -> object: ... else: def setdefault(self, *arg): # noqa: F811 - result = super().setdefault(*arg) + result = dict.setdefault(self, *arg) self.changed() return result def __delitem__(self, key: _KT) -> None: """Detect dictionary del events and emit change events.""" - super().__delitem__(key) + dict.__delitem__(self, key) self.changed() def update(self, *a: Any, **kw: _VT) -> None: - super().update(*a, **kw) + dict.update(self, *a, **kw) self.changed() if TYPE_CHECKING: @@ -860,17 +859,17 @@ def pop( else: def pop(self, *arg): # noqa: F811 - result = super().pop(*arg) + result = dict.pop(self, *arg) self.changed() return result def popitem(self) -> Tuple[_KT, _VT]: - result = super().popitem() + result = dict.popitem(self) self.changed() return result def clear(self) -> None: - super().clear() + dict.clear(self) self.changed() @classmethod @@ -925,38 +924,29 @@ def __reduce_ex__( def __setstate__(self, state: Iterable[_T]) -> None: self[:] = state - def is_scalar(self, value: _T | Iterable[_T]) -> TypeGuard[_T]: - return not util.is_non_string_iterable(value) - - def is_iterable(self, value: _T | Iterable[_T]) -> TypeGuard[Iterable[_T]]: - return util.is_non_string_iterable(value) - def __setitem__( self, index: SupportsIndex | slice, value: _T | Iterable[_T] ) -> None: """Detect list set events and emit change events.""" - if isinstance(index, SupportsIndex) and self.is_scalar(value): - super().__setitem__(index, value) - elif isinstance(index, slice) and self.is_iterable(value): - super().__setitem__(index, value) + list.__setitem__(self, index, value) self.changed() def __delitem__(self, index: SupportsIndex | slice) -> None: """Detect list del events and emit change events.""" - super().__delitem__(index) + list.__delitem__(self, index) self.changed() def pop(self, *arg: SupportsIndex) -> _T: - result = super().pop(*arg) + result = list.pop(self, *arg) self.changed() return result def append(self, x: _T) -> None: - super().append(x) + list.append(self, x) self.changed() def extend(self, x: Iterable[_T]) -> None: - super().extend(x) + list.extend(self, x) self.changed() def __iadd__(self, x: Iterable[_T]) -> MutableList[_T]: # type: ignore[override,misc] # noqa: E501 @@ -964,23 +954,23 @@ def __iadd__(self, x: Iterable[_T]) -> MutableList[_T]: # type: ignore[override return self def insert(self, i: SupportsIndex, x: _T) -> None: - super().insert(i, x) + list.insert(self, i, x) self.changed() def remove(self, i: _T) -> None: - super().remove(i) + list.remove(self, i) self.changed() def clear(self) -> None: - super().clear() + list.clear(self) self.changed() def sort(self, **kw: Any) -> None: - super().sort(**kw) + list.sort(self, **kw) self.changed() def reverse(self) -> None: - super().reverse() + list.reverse(self) self.changed() @classmethod @@ -1021,19 +1011,19 @@ class MutableSet(Mutable, Set[_T]): """ def update(self, *arg: Iterable[_T]) -> None: - super().update(*arg) + set.update(self, *arg) self.changed() def intersection_update(self, *arg: Iterable[Any]) -> None: - super().intersection_update(*arg) + set.intersection_update(self, *arg) self.changed() def difference_update(self, *arg: Iterable[Any]) -> None: - super().difference_update(*arg) + set.difference_update(self, *arg) self.changed() def symmetric_difference_update(self, *arg: Iterable[_T]) -> None: - super().symmetric_difference_update(*arg) + set.symmetric_difference_update(self, *arg) self.changed() def __ior__(self, other: AbstractSet[_T]) -> MutableSet[_T]: # type: ignore[override,misc] # noqa: E501 @@ -1053,24 +1043,24 @@ def __isub__(self, other: AbstractSet[object]) -> MutableSet[_T]: # type: ignor return self def add(self, elem: _T) -> None: - super().add(elem) + set.add(self, elem) self.changed() def remove(self, elem: _T) -> None: - super().remove(elem) + set.remove(self, elem) self.changed() def discard(self, elem: _T) -> None: - super().discard(elem) + set.discard(self, elem) self.changed() def pop(self, *arg: Any) -> _T: - result = super().pop(*arg) + result = set.pop(self, *arg) self.changed() return result def clear(self) -> None: - super().clear() + set.clear(self) self.changed() @classmethod diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/__init__.py index b5827cb8d..09094508a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/__init__.py @@ -1,5 +1,5 @@ # ext/mypy/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/apply.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/apply.py index 02908cc14..cfc9c0537 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/apply.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/apply.py @@ -1,5 +1,5 @@ # ext/mypy/apply.py -# Copyright (C) 2021-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2021-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/decl_class.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/decl_class.py index 2ce7ad56c..788b64f1d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/decl_class.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/decl_class.py @@ -1,5 +1,5 @@ # ext/mypy/decl_class.py -# Copyright (C) 2021-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2021-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/infer.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/infer.py index 26a83cca8..5e1e1f01e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/infer.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/infer.py @@ -1,5 +1,5 @@ # ext/mypy/infer.py -# Copyright (C) 2021-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2021-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/names.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/names.py index 319786288..be08a8540 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/names.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/names.py @@ -1,5 +1,5 @@ # ext/mypy/names.py -# Copyright (C) 2021-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2021-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -297,7 +297,7 @@ def type_id_for_callee(callee: Expression) -> Optional[int]: def type_id_for_named_node( - node: Union[NameExpr, MemberExpr, SymbolNode] + node: Union[NameExpr, MemberExpr, SymbolNode], ) -> Optional[int]: type_id, fullnames = _lookup.get(node.name, (None, None)) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/plugin.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/plugin.py index 1ec2c02b9..73b0d6d26 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/plugin.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/plugin.py @@ -1,5 +1,5 @@ # ext/mypy/plugin.py -# Copyright (C) 2021-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2021-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/util.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/util.py index 16761b9ab..855f6171b 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/util.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/mypy/util.py @@ -1,5 +1,5 @@ # ext/mypy/util.py -# Copyright (C) 2021-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2021-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/orderinglist.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/orderinglist.py index 3cc67b189..fcd483cf5 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/orderinglist.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/orderinglist.py @@ -1,10 +1,9 @@ # ext/orderinglist.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -# mypy: ignore-errors """A custom list that manages index/position information for contained elements. @@ -129,17 +128,24 @@ class Bullet(Base): """ from __future__ import annotations +from typing import Any from typing import Callable +from typing import Dict +from typing import Iterable from typing import List from typing import Optional +from typing import overload from typing import Sequence +from typing import Type from typing import TypeVar +from typing import Union from ..orm.collections import collection from ..orm.collections import collection_adapter +from ..util.typing import SupportsIndex _T = TypeVar("_T") -OrderingFunc = Callable[[int, Sequence[_T]], int] +OrderingFunc = Callable[[int, Sequence[_T]], object] __all__ = ["ordering_list"] @@ -148,9 +154,9 @@ class Bullet(Base): def ordering_list( attr: str, count_from: Optional[int] = None, - ordering_func: Optional[OrderingFunc] = None, + ordering_func: Optional[OrderingFunc[_T]] = None, reorder_on_append: bool = False, -) -> Callable[[], OrderingList]: +) -> Callable[[], OrderingList[_T]]: """Prepares an :class:`OrderingList` factory for use in mapper definitions. Returns an object suitable for use as an argument to a Mapper @@ -196,22 +202,22 @@ class Slide(Base): # Ordering utility functions -def count_from_0(index, collection): +def count_from_0(index: int, collection: object) -> int: """Numbering function: consecutive integers starting at 0.""" return index -def count_from_1(index, collection): +def count_from_1(index: int, collection: object) -> int: """Numbering function: consecutive integers starting at 1.""" return index + 1 -def count_from_n_factory(start): +def count_from_n_factory(start: int) -> OrderingFunc[Any]: """Numbering function: consecutive integers starting at arbitrary start.""" - def f(index, collection): + def f(index: int, collection: object) -> int: return index + start try: @@ -221,7 +227,7 @@ def f(index, collection): return f -def _unsugar_count_from(**kw): +def _unsugar_count_from(**kw: Any) -> Dict[str, Any]: """Builds counting functions from keyword arguments. Keyword argument filter, prepares a simple ``ordering_func`` from a @@ -249,13 +255,13 @@ class OrderingList(List[_T]): """ ordering_attr: str - ordering_func: OrderingFunc + ordering_func: OrderingFunc[_T] reorder_on_append: bool def __init__( self, - ordering_attr: Optional[str] = None, - ordering_func: Optional[OrderingFunc] = None, + ordering_attr: str, + ordering_func: Optional[OrderingFunc[_T]] = None, reorder_on_append: bool = False, ): """A custom list that manages position information for its children. @@ -315,10 +321,10 @@ def __init__( # More complex serialization schemes (multi column, e.g.) are possible by # subclassing and reimplementing these two methods. - def _get_order_value(self, entity): + def _get_order_value(self, entity: _T) -> Any: return getattr(entity, self.ordering_attr) - def _set_order_value(self, entity, value): + def _set_order_value(self, entity: _T, value: Any) -> None: setattr(entity, self.ordering_attr, value) def reorder(self) -> None: @@ -334,7 +340,9 @@ def reorder(self) -> None: # As of 0.5, _reorder is no longer semi-private _reorder = reorder - def _order_entity(self, index, entity, reorder=True): + def _order_entity( + self, index: int, entity: _T, reorder: bool = True + ) -> None: have = self._get_order_value(entity) # Don't disturb existing ordering if reorder is False @@ -345,34 +353,44 @@ def _order_entity(self, index, entity, reorder=True): if have != should_be: self._set_order_value(entity, should_be) - def append(self, entity): + def append(self, entity: _T) -> None: super().append(entity) self._order_entity(len(self) - 1, entity, self.reorder_on_append) - def _raw_append(self, entity): + def _raw_append(self, entity: _T) -> None: """Append without any ordering behavior.""" super().append(entity) _raw_append = collection.adds(1)(_raw_append) - def insert(self, index, entity): + def insert(self, index: SupportsIndex, entity: _T) -> None: super().insert(index, entity) self._reorder() - def remove(self, entity): + def remove(self, entity: _T) -> None: super().remove(entity) adapter = collection_adapter(self) if adapter and adapter._referenced_by_owner: self._reorder() - def pop(self, index=-1): + def pop(self, index: SupportsIndex = -1) -> _T: entity = super().pop(index) self._reorder() return entity - def __setitem__(self, index, entity): + @overload + def __setitem__(self, index: SupportsIndex, entity: _T) -> None: ... + + @overload + def __setitem__(self, index: slice, entity: Iterable[_T]) -> None: ... + + def __setitem__( + self, + index: Union[SupportsIndex, slice], + entity: Union[_T, Iterable[_T]], + ) -> None: if isinstance(index, slice): step = index.step or 1 start = index.start or 0 @@ -381,26 +399,18 @@ def __setitem__(self, index, entity): stop = index.stop or len(self) if stop < 0: stop += len(self) - + entities = list(entity) # type: ignore[arg-type] for i in range(start, stop, step): - self.__setitem__(i, entity[i]) + self.__setitem__(i, entities[i]) else: - self._order_entity(index, entity, True) - super().__setitem__(index, entity) + self._order_entity(int(index), entity, True) # type: ignore[arg-type] # noqa: E501 + super().__setitem__(index, entity) # type: ignore[assignment] - def __delitem__(self, index): + def __delitem__(self, index: Union[SupportsIndex, slice]) -> None: super().__delitem__(index) self._reorder() - def __setslice__(self, start, end, values): - super().__setslice__(start, end, values) - self._reorder() - - def __delslice__(self, start, end): - super().__delslice__(start, end) - self._reorder() - - def __reduce__(self): + def __reduce__(self) -> Any: return _reconstitute, (self.__class__, self.__dict__, list(self)) for func_name, func in list(locals().items()): @@ -414,7 +424,9 @@ def __reduce__(self): del func_name, func -def _reconstitute(cls, dict_, items): +def _reconstitute( + cls: Type[OrderingList[_T]], dict_: Dict[str, Any], items: List[_T] +) -> OrderingList[_T]: """Reconstitute an :class:`.OrderingList`. This is the adjoint to :meth:`.OrderingList.__reduce__`. It is used for diff --git a/addons/source-python/packages/site-packages/sqlalchemy/ext/serializer.py b/addons/source-python/packages/site-packages/sqlalchemy/ext/serializer.py index b7032b659..2fb022c34 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/ext/serializer.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/ext/serializer.py @@ -1,5 +1,5 @@ # ext/serializer.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/future/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/future/__init__.py index ef9afb1a5..3a0641864 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/future/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/future/__init__.py @@ -1,5 +1,5 @@ # future/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/future/engine.py b/addons/source-python/packages/site-packages/sqlalchemy/future/engine.py index 0449c3d9f..e53286c45 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/future/engine.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/future/engine.py @@ -1,5 +1,5 @@ # future/engine.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/inspection.py b/addons/source-python/packages/site-packages/sqlalchemy/inspection.py index 2e5b22018..c6380c7ca 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/inspection.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/inspection.py @@ -1,5 +1,5 @@ # inspection.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/log.py b/addons/source-python/packages/site-packages/sqlalchemy/log.py index 849a0bfa0..732708942 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/log.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/log.py @@ -1,5 +1,5 @@ # log.py -# Copyright (C) 2006-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2006-2026 the SQLAlchemy authors and contributors # # Includes alterations by Vinay Sajip vinay_sajip@yahoo.co.uk # diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/__init__.py index 7771de47e..3521c6cfd 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/__init__.py @@ -1,5 +1,5 @@ # orm/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -63,6 +63,7 @@ from .decl_api import DeclarativeMeta as DeclarativeMeta from .decl_api import declared_attr as declared_attr from .decl_api import has_inherited_table as has_inherited_table +from .decl_api import mapped_as_dataclass as mapped_as_dataclass from .decl_api import MappedAsDataclass as MappedAsDataclass from .decl_api import registry as registry from .decl_api import synonym_for as synonym_for diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/_orm_constructors.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/_orm_constructors.py index d9e3ec37b..299485d03 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/_orm_constructors.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/_orm_constructors.py @@ -1,5 +1,5 @@ # orm/_orm_constructors.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -12,6 +12,7 @@ from typing import Callable from typing import Collection from typing import Iterable +from typing import Mapping from typing import NoReturn from typing import Optional from typing import overload @@ -134,6 +135,7 @@ def mapped_column( system: bool = False, comment: Optional[str] = None, sort_order: Union[_NoArg, int] = _NoArg.NO_ARG, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, **kw: Any, ) -> MappedColumn[Any]: r"""declare a new ORM-mapped :class:`_schema.Column` construct @@ -187,9 +189,9 @@ def mapped_column( :class:`_schema.Column`. :param nullable: Optional bool, whether the column should be "NULL" or "NOT NULL". If omitted, the nullability is derived from the type - annotation based on whether or not ``typing.Optional`` is present. - ``nullable`` defaults to ``True`` otherwise for non-primary key columns, - and ``False`` for primary key columns. + annotation based on whether or not ``typing.Optional`` (or its equivalent) + is present. ``nullable`` defaults to ``True`` otherwise for non-primary + key columns, and ``False`` for primary key columns. :param primary_key: optional bool, indicates the :class:`_schema.Column` would be part of the table's primary key or not. :param deferred: Optional bool - this keyword argument is consumed by the @@ -339,6 +341,12 @@ def mapped_column( .. versionadded:: 2.0.36 + :param dataclass_metadata: Specific to + :ref:`orm_declarative_native_dataclasses`, supplies metadata + to be attached to the generated dataclass field. + + .. versionadded:: 2.0.42 + :param \**kw: All remaining keyword arguments are passed through to the constructor for the :class:`_schema.Column`. @@ -353,7 +361,14 @@ def mapped_column( autoincrement=autoincrement, insert_default=insert_default, attribute_options=_AttributeOptions( - init, repr, default, default_factory, compare, kw_only, hash + init, + repr, + default, + default_factory, + compare, + kw_only, + hash, + dataclass_metadata, ), doc=doc, key=key, @@ -459,6 +474,7 @@ def column_property( expire_on_flush: bool = True, info: Optional[_InfoType] = None, doc: Optional[str] = None, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, ) -> MappedSQLExpression[_T]: r"""Provide a column-level property for use with a mapping. @@ -581,6 +597,12 @@ def column_property( .. versionadded:: 2.0.36 + :param dataclass_metadata: Specific to + :ref:`orm_declarative_native_dataclasses`, supplies metadata + to be attached to the generated dataclass field. + + .. versionadded:: 2.0.42 + """ return MappedSQLExpression( column, @@ -593,6 +615,7 @@ def column_property( compare, kw_only, hash, + dataclass_metadata, ), group=group, deferred=deferred, @@ -624,6 +647,7 @@ def composite( hash: Union[_NoArg, bool, None] = _NoArg.NO_ARG, # noqa: A002 info: Optional[_InfoType] = None, doc: Optional[str] = None, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, **__kw: Any, ) -> Composite[Any]: ... @@ -691,6 +715,7 @@ def composite( hash: Union[_NoArg, bool, None] = _NoArg.NO_ARG, # noqa: A002 info: Optional[_InfoType] = None, doc: Optional[str] = None, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, **__kw: Any, ) -> Composite[Any]: r"""Return a composite column-based property for use with a Mapper. @@ -769,6 +794,13 @@ def composite( class. .. versionadded:: 2.0.36 + + :param dataclass_metadata: Specific to + :ref:`orm_declarative_native_dataclasses`, supplies metadata + to be attached to the generated dataclass field. + + .. versionadded:: 2.0.42 + """ if __kw: raise _no_kw() @@ -777,7 +809,14 @@ def composite( _class_or_attr, *attrs, attribute_options=_AttributeOptions( - init, repr, default, default_factory, compare, kw_only, hash + init, + repr, + default, + default_factory, + compare, + kw_only, + hash, + dataclass_metadata, ), group=group, deferred=deferred, @@ -1031,6 +1070,7 @@ def relationship( info: Optional[_InfoType] = None, omit_join: Literal[None, False] = None, sync_backref: Optional[bool] = None, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, **kw: Any, ) -> _RelationshipDeclared[Any]: """Provide a relationship between two mapped classes. @@ -1841,6 +1881,13 @@ class that will be synchronized with this one. It is usually class. .. versionadded:: 2.0.36 + + :param dataclass_metadata: Specific to + :ref:`orm_declarative_native_dataclasses`, supplies metadata + to be attached to the generated dataclass field. + + .. versionadded:: 2.0.42 + """ return _RelationshipDeclared( @@ -1858,7 +1905,14 @@ class that will be synchronized with this one. It is usually cascade=cascade, viewonly=viewonly, attribute_options=_AttributeOptions( - init, repr, default, default_factory, compare, kw_only, hash + init, + repr, + default, + default_factory, + compare, + kw_only, + hash, + dataclass_metadata, ), lazy=lazy, passive_deletes=passive_deletes, @@ -1896,6 +1950,7 @@ def synonym( hash: Union[_NoArg, bool, None] = _NoArg.NO_ARG, # noqa: A002 info: Optional[_InfoType] = None, doc: Optional[str] = None, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, ) -> Synonym[Any]: """Denote an attribute name as a synonym to a mapped property, in that the attribute will mirror the value and expression behavior @@ -2009,7 +2064,14 @@ def _job_status_descriptor(self): descriptor=descriptor, comparator_factory=comparator_factory, attribute_options=_AttributeOptions( - init, repr, default, default_factory, compare, kw_only, hash + init, + repr, + default, + default_factory, + compare, + kw_only, + hash, + dataclass_metadata, ), doc=doc, info=info, @@ -2144,6 +2206,7 @@ def deferred( expire_on_flush: bool = True, info: Optional[_InfoType] = None, doc: Optional[str] = None, + dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] = _NoArg.NO_ARG, ) -> MappedSQLExpression[_T]: r"""Indicate a column-based mapped attribute that by default will not load unless accessed. @@ -2174,7 +2237,14 @@ def deferred( column, *additional_columns, attribute_options=_AttributeOptions( - init, repr, default, default_factory, compare, kw_only, hash + init, + repr, + default, + default_factory, + compare, + kw_only, + hash, + dataclass_metadata, ), group=group, deferred=True, @@ -2218,6 +2288,7 @@ def query_expression( compare, _NoArg.NO_ARG, _NoArg.NO_ARG, + _NoArg.NO_ARG, ), expire_on_flush=expire_on_flush, info=info, @@ -2246,7 +2317,7 @@ def clear_mappers() -> None: are never discarded independently of their class. If a mapped class itself is garbage collected, its mapper is automatically disposed of as well. As such, :func:`.clear_mappers` is only for usage in test suites - that re-use the same classes with different mappings, which is itself an + that reuse the same classes with different mappings, which is itself an extremely rare use case - the only such use case is in fact SQLAlchemy's own test suite, and possibly the test suites of other ORM extension libraries which intend to test various combinations of mapper construction diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/_typing.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/_typing.py index ccb8413b5..934e5644c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/_typing.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/_typing.py @@ -1,5 +1,5 @@ # orm/_typing.py -# Copyright (C) 2022-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2022-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/attributes.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/attributes.py index 8207b4cac..1a935e3ff 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/attributes.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/attributes.py @@ -1,5 +1,5 @@ # orm/attributes.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -462,6 +462,9 @@ def hasparent( ) -> bool: return self.impl.hasparent(state, optimistic=optimistic) is not False + def _column_strategy_attrs(self) -> Sequence[QueryableAttribute[Any]]: + return (self,) + def __getattr__(self, key: str) -> Any: try: return util.MemoizedSlots.__getattr__(self, key) @@ -595,7 +598,7 @@ def create_proxied_attribute( # TODO: can move this to descriptor_props if the need for this # function is removed from ext/hybrid.py - class Proxy(QueryableAttribute[Any]): + class Proxy(QueryableAttribute[_T_co]): """Presents the :class:`.QueryableAttribute` interface as a proxy on top of a Python descriptor / :class:`.PropComparator` combination. @@ -610,13 +613,13 @@ class Proxy(QueryableAttribute[Any]): def __init__( self, - class_, - key, - descriptor, - comparator, - adapt_to_entity=None, - doc=None, - original_property=None, + class_: _ExternalEntityType[Any], + key: str, + descriptor: Any, + comparator: interfaces.PropComparator[_T_co], + adapt_to_entity: Optional[AliasedInsp[Any]] = None, + doc: Optional[str] = None, + original_property: Optional[QueryableAttribute[_T_co]] = None, ): self.class_ = class_ self.key = key @@ -627,11 +630,11 @@ def __init__( self._doc = self.__doc__ = doc @property - def _parententity(self): + def _parententity(self): # type: ignore[override] return inspection.inspect(self.class_, raiseerr=False) @property - def parent(self): + def parent(self): # type: ignore[override] return inspection.inspect(self.class_, raiseerr=False) _is_internal_proxy = True @@ -641,6 +644,13 @@ def parent(self): ("_parententity", visitors.ExtendedInternalTraversal.dp_multi), ] + def _column_strategy_attrs(self) -> Sequence[QueryableAttribute[Any]]: + prop = self.original_property + if prop is None: + return () + else: + return prop._column_strategy_attrs() + @property def _impl_uses_objects(self): return ( @@ -2707,7 +2717,7 @@ def init_state_collection( return adapter -def set_committed_value(instance, key, value): +def set_committed_value(instance: object, key: str, value: Any) -> None: """Set the value of an attribute with no history events. Cancels any previous history present. The value should be diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/base.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/base.py index ae0ba1029..64afede2e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/base.py @@ -1,13 +1,11 @@ # orm/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Constants and rudimental functions used throughout the ORM. - -""" +"""Constants and rudimental functions used throughout the ORM.""" from __future__ import annotations @@ -435,7 +433,7 @@ def _inspect_mapped_object(instance: _T) -> Optional[InstanceState[_T]]: def _class_to_mapper( - class_or_mapper: Union[Mapper[_T], Type[_T]] + class_or_mapper: Union[Mapper[_T], Type[_T]], ) -> Mapper[_T]: # can't get mypy to see an overload for this insp = inspection.inspect(class_or_mapper, False) @@ -447,7 +445,7 @@ def _class_to_mapper( def _mapper_or_none( - entity: Union[Type[_T], _InternalEntityType[_T]] + entity: Union[Type[_T], _InternalEntityType[_T]], ) -> Optional[Mapper[_T]]: """Return the :class:`_orm.Mapper` for the given class or None if the class is not mapped. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/bulk_persistence.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/bulk_persistence.py index 402d7bede..22baf8943 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/bulk_persistence.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/bulk_persistence.py @@ -1,5 +1,5 @@ # orm/bulk_persistence.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -444,11 +444,24 @@ def _get_orm_crud_kv_pairs( ), ) + @classmethod + def _get_dml_plugin_subject(cls, statement): + plugin_subject = statement.table._propagate_attrs.get("plugin_subject") + + if ( + not plugin_subject + or not plugin_subject.mapper + or plugin_subject + is not statement._propagate_attrs["plugin_subject"] + ): + return None + return plugin_subject + @classmethod def _get_multi_crud_kv_pairs(cls, statement, kv_iterator): - plugin_subject = statement._propagate_attrs["plugin_subject"] + plugin_subject = cls._get_dml_plugin_subject(statement) - if not plugin_subject or not plugin_subject.mapper: + if not plugin_subject: return UpdateDMLState._get_multi_crud_kv_pairs( statement, kv_iterator ) @@ -468,13 +481,12 @@ def _get_crud_kv_pairs(cls, statement, kv_iterator, needs_to_be_cacheable): needs_to_be_cacheable ), "no test coverage for needs_to_be_cacheable=False" - plugin_subject = statement._propagate_attrs["plugin_subject"] + plugin_subject = cls._get_dml_plugin_subject(statement) - if not plugin_subject or not plugin_subject.mapper: + if not plugin_subject: return UpdateDMLState._get_crud_kv_pairs( statement, kv_iterator, needs_to_be_cacheable ) - return list( cls._get_orm_crud_kv_pairs( plugin_subject.mapper, @@ -1095,7 +1107,7 @@ def _do_pre_synchronize_fetch( # call can_use_returning() before invoking the statement and get # answer?, why does this go through the whole execute phase using an # event? Answer: because we are integrating with extensions such - # as the horizontal sharding extention that "multiplexes" an individual + # as the horizontal sharding extension that "multiplexes" an individual # statement run through multiple engines, and it uses # do_orm_execute() to do that. @@ -1206,7 +1218,7 @@ def orm_pre_session_exec( # for ORM object loading, like ORMContext, we have to disable # result set adapt_to_context, because we will be generating a # new statement with specific columns that's cached inside of - # an ORMFromStatementCompileState, which we will re-use for + # an ORMFromStatementCompileState, which we will reuse for # each result. if not execution_options: execution_options = context._orm_load_exec_options diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/clsregistry.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/clsregistry.py index 70307ec76..2b02446c0 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/clsregistry.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/clsregistry.py @@ -1,5 +1,5 @@ # orm/clsregistry.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -72,7 +72,7 @@ def add_class( # class already exists. existing = decl_class_registry[classname] if not isinstance(existing, _MultipleClassMarker): - existing = decl_class_registry[classname] = _MultipleClassMarker( + decl_class_registry[classname] = _MultipleClassMarker( [cls, cast("Type[Any]", existing)] ) else: @@ -317,7 +317,7 @@ def add_class(self, name: str, cls: Type[Any]) -> None: else: raise else: - existing = self.contents[name] = _MultipleClassMarker( + self.contents[name] = _MultipleClassMarker( [cls], on_remove=lambda: self._remove_item(name) ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/collections.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/collections.py index 336b1133d..742ebfb05 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/collections.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/collections.py @@ -1,5 +1,5 @@ # orm/collections.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -359,7 +359,7 @@ def convert(self, other): ... return fn @staticmethod - def adds(arg): + def adds(arg: int) -> Callable[[_FN], _FN]: """Mark the method as adding an entity to the collection. Adds "add to collection" handling to the method. The decorator diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/context.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/context.py index b04d6d48c..9acc59314 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/context.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/context.py @@ -1,5 +1,5 @@ # orm/context.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -231,7 +231,7 @@ def _init_global_attributes( if compiler is None: # this is the legacy / testing only ORM _compile_state() use case. # there is no need to apply criteria options for this. - self.global_attributes = ga = {} + self.global_attributes = {} assert toplevel return else: @@ -1864,8 +1864,6 @@ def _join(self, args, entities_collection): "selectable/table as join target" ) - of_type = None - if isinstance(onclause, interfaces.PropComparator): # descriptor/property given (or determined); this tells us # explicitly what the expected "left" side of the join is. @@ -2527,7 +2525,7 @@ def _column_descriptions( def _legacy_filter_by_entity_zero( - query_or_augmented_select: Union[Query[Any], Select[Any]] + query_or_augmented_select: Union[Query[Any], Select[Any]], ) -> Optional[_InternalEntityType[Any]]: self = query_or_augmented_select if self._setup_joins: @@ -2542,7 +2540,7 @@ def _legacy_filter_by_entity_zero( def _entity_from_pre_ent_zero( - query_or_augmented_select: Union[Query[Any], Select[Any]] + query_or_augmented_select: Union[Query[Any], Select[Any]], ) -> Optional[_InternalEntityType[Any]]: self = query_or_augmented_select if not self._raw_columns: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_api.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_api.py index 60468237e..9f455d602 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_api.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_api.py @@ -1,5 +1,5 @@ # orm/decl_api.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -78,6 +78,7 @@ from ..util.typing import is_generic from ..util.typing import is_literal from ..util.typing import is_newtype +from ..util.typing import is_pep593 from ..util.typing import is_pep695 from ..util.typing import Literal from ..util.typing import LITERAL_TYPES @@ -248,7 +249,7 @@ def __init__( cascading: bool = False, quiet: bool = False, ): - # suppport + # support # @declared_attr # @classmethod # def foo(cls) -> Mapped[thing]: @@ -512,6 +513,9 @@ class MyModel(MyMixin, Base): .. versionadded:: 1.4.6 + .. legacy:: This api is considered legacy and will be deprecated in the next + SQLAlchemy version. + .. seealso:: :ref:`orm_mixins_toplevel` @@ -682,7 +686,7 @@ class Base(DeclarativeBase): :param metadata: optional :class:`_schema.MetaData` collection. If a :class:`_orm.registry` is constructed automatically, this :class:`_schema.MetaData` collection will be used to construct it. - Otherwise, the local :class:`_schema.MetaData` collection will supercede + Otherwise, the local :class:`_schema.MetaData` collection will supersede that used by an existing :class:`_orm.registry` passed using the :paramref:`_orm.DeclarativeBase.registry` parameter. :param type_annotation_map: optional type annotation map that will be @@ -1233,7 +1237,7 @@ def update_type_annotation_map( ) def _resolve_type( - self, python_type: _MatchedOnType, _do_fallbacks: bool = True + self, python_type: _MatchedOnType, _do_fallbacks: bool = False ) -> Optional[sqltypes.TypeEngine[Any]]: python_type_type: Type[Any] search: Iterable[Tuple[_MatchedOnType, Type[Any]]] @@ -1285,12 +1289,14 @@ def _resolve_type( if is_pep695(python_type): # NOTE: assume there aren't type alias types of new types. python_type_to_check = python_type - while is_pep695(python_type_to_check): + while is_pep695(python_type_to_check) and not is_pep593( + python_type_to_check + ): python_type_to_check = python_type_to_check.__value__ python_type_to_check = de_optionalize_union_types( python_type_to_check ) - kind = "TypeAliasType" + kind = "pep-695 type" if is_newtype(python_type): python_type_to_check = flatten_newtype(python_type) kind = "NewType" @@ -1301,14 +1307,27 @@ def _resolve_type( ) if res_after_fallback is not None: assert kind is not None - warn_deprecated( - f"Matching the provided {kind} '{python_type}' on " - "its resolved value without matching it in the " - "type_annotation_map is deprecated; add this type to " - "the type_annotation_map to allow it to match " - "explicitly.", - "2.0", - ) + if kind == "pep-695 type": + warn_deprecated( + f"Matching to {kind} '{python_type}' in " + "a recursive " + "fashion without the recursed type being present " + "in the type_annotation_map is deprecated; add " + "this type or its recursed value to " + "the type_annotation_map to allow it to match " + "explicitly.", + "2.0", + ) + else: + warn_deprecated( + f"Matching the provided {kind} '{python_type}' on " + "its resolved value without matching it in the " + "type_annotation_map is deprecated; add this " + "type to " + "the type_annotation_map to allow it to match " + "explicitly.", + "2.0", + ) return res_after_fallback return None @@ -1643,6 +1662,8 @@ def mapped_as_dataclass( :ref:`orm_declarative_native_dataclasses` - complete background on SQLAlchemy native dataclass mapping + :func:`_orm.mapped_as_dataclass` - functional version that may + provide better compatibility with mypy .. versionadded:: 2.0 @@ -1906,6 +1927,72 @@ class MyMappedClass(Base): ... ).as_declarative_base(**kw) +@compat_typing.dataclass_transform( + field_specifiers=( + MappedColumn, + RelationshipProperty, + Composite, + Synonym, + mapped_column, + relationship, + composite, + synonym, + deferred, + ), +) +def mapped_as_dataclass( + registry: RegistryType, + *, + init: Union[_NoArg, bool] = _NoArg.NO_ARG, + repr: Union[_NoArg, bool] = _NoArg.NO_ARG, # noqa: A002 + eq: Union[_NoArg, bool] = _NoArg.NO_ARG, + order: Union[_NoArg, bool] = _NoArg.NO_ARG, + unsafe_hash: Union[_NoArg, bool] = _NoArg.NO_ARG, + match_args: Union[_NoArg, bool] = _NoArg.NO_ARG, + kw_only: Union[_NoArg, bool] = _NoArg.NO_ARG, + dataclass_callable: Union[ + _NoArg, Callable[..., Type[Any]] + ] = _NoArg.NO_ARG, +) -> Callable[[Type[_O]], Type[_O]]: + """Standalone function form of :meth:`_orm.registry.mapped_as_dataclass` + which may have better compatibility with mypy. + + The :class:`_orm.registry` is passed as the first argument to the + decorator. + + e.g.:: + + from sqlalchemy.orm import Mapped + from sqlalchemy.orm import mapped_as_dataclass + from sqlalchemy.orm import mapped_column + from sqlalchemy.orm import registry + + some_registry = registry() + + + @mapped_as_dataclass(some_registry) + class Relationships: + __tablename__ = "relationships" + + entity_id1: Mapped[int] = mapped_column(primary_key=True) + entity_id2: Mapped[int] = mapped_column(primary_key=True) + level: Mapped[int] = mapped_column(Integer) + + .. versionadded:: 2.0.44 + + """ + return registry.mapped_as_dataclass( + init=init, + repr=repr, + eq=eq, + order=order, + unsafe_hash=unsafe_hash, + match_args=match_args, + kw_only=kw_only, + dataclass_callable=dataclass_callable, + ) + + @inspection._inspects( DeclarativeMeta, DeclarativeBase, DeclarativeAttributeIntercept ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_base.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_base.py index f17717b53..d4f35414c 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/decl_base.py @@ -1,5 +1,5 @@ # orm/decl_base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -103,6 +103,7 @@ def __call__(self, **kw: Any) -> _O: ... class _DeclMappedClassProtocol(MappedClassProtocol[_O], Protocol): "Internal more detailed version of ``MappedClassProtocol``." + metadata: MetaData __tablename__: str __mapper_args__: _MapperKwArgs @@ -1217,15 +1218,15 @@ def _apply_dataclasses_to_any_class( # dataclasses callable, based on the fields present. This # means remove the Mapped[] container and ensure all Field # entries have an annotation - restored = getattr(klass, "__annotations__", None) + restored = util.get_annotations(klass) klass.__annotations__ = cast("Dict[str, Any]", use_annotations) else: restored = None try: - dataclass_callable( + dataclass_callable( # type: ignore[call-overload] klass, - **{ + **{ # type: ignore[call-overload,unused-ignore] k: v for k, v in dataclass_setup_arguments.items() if v is not _NoArg.NO_ARG and k != "dataclass_callable" @@ -1248,7 +1249,7 @@ def _apply_dataclasses_to_any_class( if restored is None: del klass.__annotations__ else: - klass.__annotations__ = restored + klass.__annotations__ = restored # type: ignore[assignment] # noqa: E501 @classmethod def _assert_dc_arguments(cls, arguments: _DataclassArguments) -> None: @@ -1296,8 +1297,6 @@ def _collect_annotation( or isinstance(attr_value, _MappedAttribute) ) ) - else: - is_dataclass_field = False is_dataclass_field = False extracted = _extract_mapped_subtype( @@ -1601,9 +1600,15 @@ def _extract_mappable_attributes(self) -> None: "default_factory", "repr", "default", + "dataclass_metadata", ] else: - argnames = ["init", "default_factory", "repr"] + argnames = [ + "init", + "default_factory", + "repr", + "dataclass_metadata", + ] args = { a @@ -2018,8 +2023,7 @@ class _DeferredMapperConfig(_ClassScanMapperConfig): def _early_mapping(self, mapper_kw: _MapperKwArgs) -> None: pass - # mypy disallows plain property override of variable - @property # type: ignore + @property def cls(self) -> Type[Any]: return self._cls() # type: ignore diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/dependency.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/dependency.py index 595306245..0019bcd68 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/dependency.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/dependency.py @@ -1,5 +1,5 @@ # orm/dependency.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -7,9 +7,7 @@ # mypy: ignore-errors -"""Relationship dependencies. - -""" +"""Relationship dependencies.""" from __future__ import annotations @@ -1054,7 +1052,7 @@ def presort_saves(self, uowcommit, states): # so that prop_has_changes() returns True for state in states: if self._pks_changed(uowcommit, state): - history = uowcommit.get_attribute_history( + uowcommit.get_attribute_history( state, self.key, attributes.PASSIVE_OFF ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/descriptor_props.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/descriptor_props.py index f01cc1788..a493373e6 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/descriptor_props.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/descriptor_props.py @@ -1,5 +1,5 @@ # orm/descriptor_props.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -99,6 +99,11 @@ class DescriptorProperty(MapperProperty[_T]): descriptor: DescriptorReference[Any] + def _column_strategy_attrs(self) -> Sequence[QueryableAttribute[Any]]: + raise NotImplementedError( + "This MapperProperty does not implement column loader strategies" + ) + def get_history( self, state: InstanceState[Any], @@ -388,7 +393,9 @@ def declarative_scan( self.composite_class = argument if is_dataclass(self.composite_class): - self._setup_for_dataclass(registry, cls, originating_module, key) + self._setup_for_dataclass( + decl_scan, registry, cls, originating_module, key + ) else: for attr in self.attrs: if ( @@ -432,6 +439,7 @@ def _init_accessor(self) -> None: @util.preload_module("sqlalchemy.orm.decl_base") def _setup_for_dataclass( self, + decl_scan: _ClassScanMapperConfig, registry: _RegistryType, cls: Type[Any], originating_module: Optional[str], @@ -459,6 +467,7 @@ def _setup_for_dataclass( if isinstance(attr, MappedColumn): attr.declarative_scan_for_composite( + decl_scan, registry, cls, originating_module, @@ -500,6 +509,9 @@ def props(self) -> Sequence[MapperProperty[Any]]: props.append(prop) return props + def _column_strategy_attrs(self) -> Sequence[QueryableAttribute[Any]]: + return self._comparable_elements + @util.non_memoized_property @util.preload_module("orm.properties") def columns(self) -> Sequence[Column[Any]]: @@ -989,7 +1001,7 @@ def _proxied_object( if isinstance(attr, attributes.QueryableAttribute): return attr.comparator elif isinstance(attr, SQLORMOperations): - # assocaition proxy comes here + # association proxy comes here return attr raise sa_exc.InvalidRequestError( @@ -999,6 +1011,9 @@ def _proxied_object( ) return attr.property + def _column_strategy_attrs(self) -> Sequence[QueryableAttribute[Any]]: + return (getattr(self.parent.class_, self.name),) + def _comparator_factory(self, mapper: Mapper[Any]) -> SQLORMOperations[_T]: prop = self._proxied_object diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/dynamic.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/dynamic.py index 3c81c396f..e8a97d6cc 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/dynamic.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/dynamic.py @@ -1,5 +1,5 @@ # orm/dynamic.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/evaluator.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/evaluator.py index 57aae5a3c..392d726e9 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/evaluator.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/evaluator.py @@ -1,5 +1,5 @@ # orm/evaluator.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/events.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/events.py index f161760e6..2affb0002 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/events.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/events.py @@ -1,13 +1,11 @@ # orm/events.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""ORM event interfaces. - -""" +"""ORM event interfaces.""" from __future__ import annotations from typing import Any @@ -737,7 +735,8 @@ class _InstanceEventsHold(_EventsHold[_ET]): def resolve(self, class_: Type[_O]) -> Optional[ClassManager[_O]]: return instrumentation.opt_manager_of_class(class_) - class HoldInstanceEvents(_EventsHold.HoldEvents[_ET], InstanceEvents): # type: ignore [misc] # noqa: E501 + # this fails on pyright if you use Any. Fails on mypy if you use _ET + class HoldInstanceEvents(_EventsHold.HoldEvents[_ET], InstanceEvents): # type: ignore[valid-type,misc] # noqa: E501 pass dispatch = event.dispatcher(HoldInstanceEvents) @@ -976,44 +975,42 @@ def after_mapper_constructed( """ + @event._omit_standard_example def before_mapper_configured( self, mapper: Mapper[_O], class_: Type[_O] ) -> None: """Called right before a specific mapper is to be configured. - This event is intended to allow a specific mapper to be skipped during - the configure step, by returning the :attr:`.orm.interfaces.EXT_SKIP` - symbol which indicates to the :func:`.configure_mappers` call that this - particular mapper (or hierarchy of mappers, if ``propagate=True`` is - used) should be skipped in the current configuration run. When one or - more mappers are skipped, the "new mappers" flag will remain set, - meaning the :func:`.configure_mappers` function will continue to be - called when mappers are used, to continue to try to configure all - available mappers. - - In comparison to the other configure-level events, - :meth:`.MapperEvents.before_configured`, - :meth:`.MapperEvents.after_configured`, and - :meth:`.MapperEvents.mapper_configured`, the - :meth:`.MapperEvents.before_mapper_configured` event provides for a - meaningful return value when it is registered with the ``retval=True`` - parameter. - - .. versionadded:: 1.3 - - e.g.:: - + The :meth:`.MapperEvents.before_mapper_configured` event is invoked + for each mapper that is encountered when the + :func:`_orm.configure_mappers` function proceeds through the current + list of not-yet-configured mappers. It is similar to the + :meth:`.MapperEvents.mapper_configured` event, except that it's invoked + right before the configuration occurs, rather than afterwards. + + The :meth:`.MapperEvents.before_mapper_configured` event includes + the special capability where it can force the configure step for a + specific mapper to be skipped; to use this feature, establish + the event using the ``retval=True`` parameter and return + the :attr:`.orm.interfaces.EXT_SKIP` symbol to indicate the mapper + should be left unconfigured:: + + from sqlalchemy import event from sqlalchemy.orm import EXT_SKIP + from sqlalchemy.orm import DeclarativeBase - Base = declarative_base() - DontConfigureBase = declarative_base() + class DontConfigureBase(DeclarativeBase): + pass @event.listens_for( DontConfigureBase, "before_mapper_configured", + # support return values for the event retval=True, + # propagate the listener to all subclasses of + # DontConfigureBase propagate=True, ) def dont_configure(mapper, cls): @@ -1058,15 +1055,14 @@ def mapper_configured(self, mapper: Mapper[_O], class_: Type[_O]) -> None: event; this event invokes only after all known mappings have been fully configured. - The :meth:`.MapperEvents.mapper_configured` event, unlike + The :meth:`.MapperEvents.mapper_configured` event, unlike the :meth:`.MapperEvents.before_configured` or - :meth:`.MapperEvents.after_configured`, - is called for each mapper/class individually, and the mapper is - passed to the event itself. It also is called exactly once for - a particular mapper. The event is therefore useful for - configurational steps that benefit from being invoked just once - on a specific mapper basis, which don't require that "backref" - configurations are necessarily ready yet. + :meth:`.MapperEvents.after_configured` events, is called for each + mapper/class individually, and the mapper is passed to the event + itself. It also is called exactly once for a particular mapper. The + event is therefore useful for configurational steps that benefit from + being invoked just once on a specific mapper basis, which don't require + that "backref" configurations are necessarily ready yet. :param mapper: the :class:`_orm.Mapper` which is the target of this event. @@ -1083,6 +1079,7 @@ def mapper_configured(self, mapper: Mapper[_O], class_: Type[_O]) -> None: """ # TODO: need coverage for this event + @event._omit_standard_example def before_configured(self) -> None: """Called before a series of mappers have been configured. @@ -1094,9 +1091,15 @@ def before_configured(self) -> None: new mappers have been made available and new mapper use is detected. + Similar events to this one include + :meth:`.MapperEvents.after_configured`, which is invoked after a series + of mappers has been configured, as well as + :meth:`.MapperEvents.before_mapper_configured` and + :meth:`.MapperEvents.mapper_configured`, which are both invoked on a + per-mapper basis. + This event can **only** be applied to the :class:`_orm.Mapper` class, - and not to individual mappings or mapped classes. It is only invoked - for all mappings as a whole:: + and not to individual mappings or mapped classes:: from sqlalchemy.orm import Mapper @@ -1104,25 +1107,11 @@ def before_configured(self) -> None: @event.listens_for(Mapper, "before_configured") def go(): ... - Contrast this event to :meth:`.MapperEvents.after_configured`, - which is invoked after the series of mappers has been configured, - as well as :meth:`.MapperEvents.before_mapper_configured` - and :meth:`.MapperEvents.mapper_configured`, which are both invoked - on a per-mapper basis. - - Theoretically this event is called once per - application, but is actually called any time new mappers - are to be affected by a :func:`_orm.configure_mappers` - call. If new mappings are constructed after existing ones have - already been used, this event will likely be called again. To ensure - that a particular event is only called once and no further, the - ``once=True`` argument (new in 0.9.4) can be applied:: - - from sqlalchemy.orm import mapper - - - @event.listens_for(mapper, "before_configured", once=True) - def go(): ... + Typically, this event is called once per application, but in practice + may be called more than once, any time new mappers are to be affected + by a :func:`_orm.configure_mappers` call. If new mappings are + constructed after existing ones have already been used, this event will + likely be called again. .. seealso:: @@ -1134,6 +1123,7 @@ def go(): ... """ + @event._omit_standard_example def after_configured(self) -> None: """Called after a series of mappers have been configured. @@ -1145,17 +1135,15 @@ def after_configured(self) -> None: new mappers have been made available and new mapper use is detected. - Contrast this event to the :meth:`.MapperEvents.mapper_configured` - event, which is called on a per-mapper basis while the configuration - operation proceeds; unlike that event, when this event is invoked, - all cross-configurations (e.g. backrefs) will also have been made - available for any mappers that were pending. - Also contrast to :meth:`.MapperEvents.before_configured`, - which is invoked before the series of mappers has been configured. + Similar events to this one include + :meth:`.MapperEvents.before_configured`, which is invoked before a + series of mappers are configured, as well as + :meth:`.MapperEvents.before_mapper_configured` and + :meth:`.MapperEvents.mapper_configured`, which are both invoked on a + per-mapper basis. This event can **only** be applied to the :class:`_orm.Mapper` class, - and not to individual mappings or - mapped classes. It is only invoked for all mappings as a whole:: + and not to individual mappings or mapped classes:: from sqlalchemy.orm import Mapper @@ -1163,19 +1151,11 @@ def after_configured(self) -> None: @event.listens_for(Mapper, "after_configured") def go(): ... - Theoretically this event is called once per - application, but is actually called any time new mappers - have been affected by a :func:`_orm.configure_mappers` - call. If new mappings are constructed after existing ones have - already been used, this event will likely be called again. To ensure - that a particular event is only called once and no further, the - ``once=True`` argument (new in 0.9.4) can be applied:: - - from sqlalchemy.orm import mapper - - - @event.listens_for(mapper, "after_configured", once=True) - def go(): ... + Typically, this event is called once per application, but in practice + may be called more than once, any time new mappers are to be affected + by a :func:`_orm.configure_mappers` call. If new mappings are + constructed after existing ones have already been used, this event will + likely be called again. .. seealso:: @@ -1545,7 +1525,8 @@ def resolve( ) -> Optional[Mapper[_T]]: return _mapper_or_none(class_) - class HoldMapperEvents(_EventsHold.HoldEvents[_ET], MapperEvents): # type: ignore [misc] # noqa: E501 + # this fails on pyright if you use Any. Fails on mypy if you use _ET + class HoldMapperEvents(_EventsHold.HoldEvents[_ET], MapperEvents): # type: ignore[valid-type,misc] # noqa: E501 pass dispatch = event.dispatcher(HoldMapperEvents) @@ -1602,7 +1583,7 @@ def my_before_commit(session): _dispatch_target = Session def _lifecycle_event( # type: ignore [misc] - fn: Callable[[SessionEvents, Session, Any], None] + fn: Callable[[SessionEvents, Session, Any], None], ) -> Callable[[SessionEvents, Session, Any], None]: _sessionevents_lifecycle_event_names.add(fn.__name__) return fn diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/exc.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/exc.py index a2f7c9f78..fec401b74 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/exc.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/exc.py @@ -1,5 +1,5 @@ # orm/exc.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/identity.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/identity.py index 1808b2d5e..61a5f4c1b 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/identity.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/identity.py @@ -1,5 +1,5 @@ # orm/identity.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/instrumentation.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/instrumentation.py index f87023f18..7091d369b 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/instrumentation.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/instrumentation.py @@ -1,5 +1,5 @@ # orm/instrumentation.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/interfaces.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/interfaces.py index b4462e545..84806a0f3 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/interfaces.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/interfaces.py @@ -1,5 +1,5 @@ # orm/interfaces.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -29,6 +29,7 @@ from typing import Generic from typing import Iterator from typing import List +from typing import Mapping from typing import NamedTuple from typing import NoReturn from typing import Optional @@ -174,7 +175,7 @@ def declarative_scan( extracted_mapped_annotation: Optional[_AnnotationScanType], is_dataclass_field: bool, ) -> None: - """Perform class-specific initializaton at early declarative scanning + """Perform class-specific initialization at early declarative scanning time. .. versionadded:: 2.0 @@ -207,6 +208,7 @@ class _AttributeOptions(NamedTuple): dataclasses_compare: Union[_NoArg, bool] dataclasses_kw_only: Union[_NoArg, bool] dataclasses_hash: Union[_NoArg, bool, None] + dataclasses_dataclass_metadata: Union[_NoArg, Mapping[Any, Any], None] def _as_dataclass_field(self, key: str) -> Any: """Return a ``dataclasses.Field`` object given these arguments.""" @@ -226,6 +228,8 @@ def _as_dataclass_field(self, key: str) -> Any: kw["kw_only"] = self.dataclasses_kw_only if self.dataclasses_hash is not _NoArg.NO_ARG: kw["hash"] = self.dataclasses_hash + if self.dataclasses_dataclass_metadata is not _NoArg.NO_ARG: + kw["metadata"] = self.dataclasses_dataclass_metadata if "default" in kw and callable(kw["default"]): # callable defaults are ambiguous. deprecate them in favour of @@ -263,7 +267,7 @@ def _get_arguments_for_make_dataclass( key: str, annotation: _AnnotationScanType, mapped_container: Optional[Any], - elem: _T, + elem: Any, ) -> Union[ Tuple[str, _AnnotationScanType], Tuple[str, _AnnotationScanType, dataclasses.Field[Any]], @@ -306,6 +310,7 @@ def _get_arguments_for_make_dataclass( _NoArg.NO_ARG, _NoArg.NO_ARG, _NoArg.NO_ARG, + _NoArg.NO_ARG, ) _DEFAULT_READONLY_ATTRIBUTE_OPTIONS = _AttributeOptions( @@ -316,6 +321,7 @@ def _get_arguments_for_make_dataclass( _NoArg.NO_ARG, _NoArg.NO_ARG, _NoArg.NO_ARG, + _NoArg.NO_ARG, ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/loading.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/loading.py index 679286f54..fb7efa76e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/loading.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/loading.py @@ -1,5 +1,5 @@ # orm/loading.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -39,6 +39,7 @@ from .context import FromStatement from .context import ORMCompileState from .context import QueryContext +from .strategies import SelectInLoader from .util import _none_set from .util import state_str from .. import exc as sa_exc @@ -1309,15 +1310,18 @@ def do_load(context, path, states, load_only, effective_entity): if context.populate_existing: q2 = q2.execution_options(populate_existing=True) - context.session.execute( - q2, - dict( - primary_keys=[ - state.key[1][0] if zero_idx else state.key[1] - for state, load_attrs in states - ] - ), - ).unique().scalars().all() + while states: + chunk = states[0 : SelectInLoader._chunksize] + states = states[SelectInLoader._chunksize :] + context.session.execute( + q2, + dict( + primary_keys=[ + state.key[1][0] if zero_idx else state.key[1] + for state, load_attrs in chunk + ] + ), + ).unique().scalars().all() return do_load diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/mapped_collection.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/mapped_collection.py index ca085c403..2b4a2d9c7 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/mapped_collection.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/mapped_collection.py @@ -1,5 +1,5 @@ # orm/mapped_collection.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -443,8 +443,8 @@ def _raise_for_unpopulated( f"parameter on the mapped collection factory." ) - @collection.appender # type: ignore[misc] - @collection.internally_instrumented # type: ignore[misc] + @collection.appender # type: ignore[untyped-decorator] + @collection.internally_instrumented # type: ignore[untyped-decorator] def set( self, value: _KT, @@ -472,8 +472,8 @@ def set( self.__setitem__(key, value, _sa_initiator) # type: ignore[call-arg] - @collection.remover # type: ignore[misc] - @collection.internally_instrumented # type: ignore[misc] + @collection.remover # type: ignore[untyped-decorator] + @collection.internally_instrumented # type: ignore[untyped-decorator] def remove( self, value: _KT, diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/mapper.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/mapper.py index eab2be558..8ee0ac4ff 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/mapper.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/mapper.py @@ -1,5 +1,5 @@ # orm/mapper.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -1056,7 +1056,7 @@ def entity(self): """ - primary_key: Tuple[Column[Any], ...] + primary_key: Tuple[ColumnElement[Any], ...] """An iterable containing the collection of :class:`_schema.Column` objects which comprise the 'primary key' of the mapped table, from the @@ -2100,13 +2100,21 @@ def _configure_property( "_configure_property(%s, %s)", key, prop_arg.__class__.__name__ ) + # early setup mode - don't assign any props, only + # ensure a Column is turned into a ColumnProperty. + # see #12858 + early_setup = not hasattr(self, "_props") + if not isinstance(prop_arg, MapperProperty): prop: MapperProperty[Any] = self._property_from_column( - key, prop_arg + key, prop_arg, early_setup ) else: prop = prop_arg + if early_setup: + return prop + if isinstance(prop, properties.ColumnProperty): col = self.persist_selectable.corresponding_column(prop.columns[0]) @@ -2355,16 +2363,17 @@ def _reconcile_prop_with_incoming_columns( @util.preload_module("sqlalchemy.orm.descriptor_props") def _property_from_column( - self, - key: str, - column: KeyedColumnElement[Any], + self, key: str, column: KeyedColumnElement[Any], early_setup: bool ) -> ColumnProperty[Any]: """generate/update a :class:`.ColumnProperty` given a :class:`_schema.Column` or other SQL expression object.""" descriptor_props = util.preloaded.orm_descriptor_props - prop = self._props.get(key) + if early_setup: + prop = None + else: + prop = self._props.get(key) if isinstance(prop, properties.ColumnProperty): return self._reconcile_prop_with_incoming_columns( @@ -2554,7 +2563,7 @@ def _mappers_from_spec( if spec == "*": mappers = list(self.self_and_descendants) elif spec: - mapper_set = set() + mapper_set: Set[Mapper[Any]] = set() for m in util.to_list(spec): m = _class_to_mapper(m) if not m.isa(self): @@ -3428,9 +3437,11 @@ def primary_base_mapper(self) -> Mapper[Any]: return self.class_manager.mapper.base_mapper def _result_has_identity_key(self, result, adapter=None): - pk_cols: Sequence[ColumnClause[Any]] = self.primary_key - if adapter: - pk_cols = [adapter.columns[c] for c in pk_cols] + pk_cols: Sequence[ColumnElement[Any]] + if adapter is not None: + pk_cols = [adapter.columns[c] for c in self.primary_key] + else: + pk_cols = self.primary_key rk = result.keys() for col in pk_cols: if col not in rk: @@ -3455,9 +3466,11 @@ def identity_key_from_row( for the "row" argument """ - pk_cols: Sequence[ColumnClause[Any]] = self.primary_key - if adapter: - pk_cols = [adapter.columns[c] for c in pk_cols] + pk_cols: Sequence[ColumnElement[Any]] + if adapter is not None: + pk_cols = [adapter.columns[c] for c in self.primary_key] + else: + pk_cols = self.primary_key mapping: RowMapping if hasattr(row, "_mapping"): @@ -4304,7 +4317,7 @@ def _dispose_registries(registries: Set[_RegistryType], cascade: bool) -> None: reg._new_mappers = False -def reconstructor(fn): +def reconstructor(fn: _Fn) -> _Fn: """Decorate a method as the 'reconstructor' hook. Designates a single method as the "reconstructor", an ``__init__``-like @@ -4330,7 +4343,7 @@ def reconstructor(fn): :meth:`.InstanceEvents.load` """ - fn.__sa_reconstructor__ = True + fn.__sa_reconstructor__ = True # type: ignore[attr-defined] return fn @@ -4364,7 +4377,7 @@ def validates( :func:`.validates` usage where only one validator should emit per attribute operation. - .. versionchanged:: 2.0.16 This paramter inadvertently defaulted to + .. versionchanged:: 2.0.16 This parameter inadvertently defaulted to ``False`` for releases 2.0.0 through 2.0.15. Its correct default of ``True`` is restored in 2.0.16. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/path_registry.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/path_registry.py index 388e46098..97065d585 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/path_registry.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/path_registry.py @@ -1,12 +1,10 @@ # orm/path_registry.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Path tracking utilities, representing mapper graph traversals. - -""" +"""Path tracking utilities, representing mapper graph traversals.""" from __future__ import annotations diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/persistence.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/persistence.py index cbe8557ad..0b7a218ca 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/persistence.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/persistence.py @@ -1,5 +1,5 @@ # orm/persistence.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -1374,7 +1374,13 @@ def update_stmt(): ) rows += c.rowcount - for state, state_dict, mapper_rec, connection, params in records: + for i, ( + state, + state_dict, + mapper_rec, + connection, + params, + ) in enumerate(records): _postfetch_post_update( mapper_rec, uowtransaction, @@ -1382,7 +1388,7 @@ def update_stmt(): state, state_dict, c, - c.context.compiled_parameters[0], + c.context.compiled_parameters[i], ) if check_rowcount: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/properties.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/properties.py index 218285cab..65d3fcc3f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/properties.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/properties.py @@ -1,5 +1,5 @@ # orm/properties.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -234,7 +234,7 @@ def _memoized_attr__renders_in_subqueries(self) -> bool: return self.strategy._have_default_expression # type: ignore return ("deferred", True) not in self.strategy_key or ( - self not in self.parent._readonly_props # type: ignore + self not in self.parent._readonly_props ) @util.preload_module("sqlalchemy.orm.state", "sqlalchemy.orm.strategies") @@ -663,20 +663,12 @@ def found_in_pep593_annotated(self) -> Any: # Column will be merged into it in _init_column_for_annotation(). return MappedColumn() - def declarative_scan( + def _adjust_for_existing_column( self, decl_scan: _ClassScanMapperConfig, - registry: _RegistryType, - cls: Type[Any], - originating_module: Optional[str], key: str, - mapped_container: Optional[Type[Mapped[Any]]], - annotation: Optional[_AnnotationScanType], - extracted_mapped_annotation: Optional[_AnnotationScanType], - is_dataclass_field: bool, - ) -> None: - column = self.column - + given_column: Column[_T], + ) -> Column[_T]: if ( self._use_existing_column and decl_scan.inherits @@ -688,10 +680,31 @@ def declarative_scan( ) supercls_mapper = class_mapper(decl_scan.inherits, False) - colname = column.name if column.name is not None else key - column = self.column = supercls_mapper.local_table.c.get( # type: ignore[assignment] # noqa: E501 - colname, column + colname = ( + given_column.name if given_column.name is not None else key ) + given_column = supercls_mapper.local_table.c.get( # type: ignore[assignment] # noqa: E501 + colname, given_column + ) + return given_column + + def declarative_scan( + self, + decl_scan: _ClassScanMapperConfig, + registry: _RegistryType, + cls: Type[Any], + originating_module: Optional[str], + key: str, + mapped_container: Optional[Type[Mapped[Any]]], + annotation: Optional[_AnnotationScanType], + extracted_mapped_annotation: Optional[_AnnotationScanType], + is_dataclass_field: bool, + ) -> None: + column = self.column + + column = self.column = self._adjust_for_existing_column( + decl_scan, key, self.column + ) if column.key is None: column.key = key @@ -708,6 +721,8 @@ def declarative_scan( self._init_column_for_annotation( cls, + decl_scan, + key, registry, extracted_mapped_annotation, originating_module, @@ -716,6 +731,7 @@ def declarative_scan( @util.preload_module("sqlalchemy.orm.decl_base") def declarative_scan_for_composite( self, + decl_scan: _ClassScanMapperConfig, registry: _RegistryType, cls: Type[Any], originating_module: Optional[str], @@ -726,12 +742,14 @@ def declarative_scan_for_composite( decl_base = util.preloaded.orm_decl_base decl_base._undefer_column_name(param_name, self.column) self._init_column_for_annotation( - cls, registry, param_annotation, originating_module + cls, decl_scan, key, registry, param_annotation, originating_module ) def _init_column_for_annotation( self, cls: Type[Any], + decl_scan: _ClassScanMapperConfig, + key: str, registry: _RegistryType, argument: _AnnotationScanType, originating_module: Optional[str], @@ -751,11 +769,19 @@ def _init_column_for_annotation( if not self._has_nullable: self.column.nullable = nullable - our_type = de_optionalize_union_types(argument) - find_mapped_in: Tuple[Any, ...] = () our_type_is_pep593 = False raw_pep_593_type = None + raw_pep_695_type = None + + our_type: Any = de_optionalize_union_types(argument) + + if is_pep695(our_type): + raw_pep_695_type = our_type + our_type = de_optionalize_union_types(raw_pep_695_type.__value__) + our_args = get_args(raw_pep_695_type) + if our_args: + our_type = our_type[our_args] if is_pep593(our_type): our_type_is_pep593 = True @@ -765,9 +791,6 @@ def _init_column_for_annotation( if nullable: raw_pep_593_type = de_optionalize_union_types(raw_pep_593_type) find_mapped_in = pep_593_components[1:] - elif is_pep695(argument) and is_pep593(argument.__value__): - # do not support nested annotation inside unions ets - find_mapped_in = get_args(argument.__value__)[1:] use_args_from: Optional[MappedColumn[Any]] for elem in find_mapped_in: @@ -778,6 +801,11 @@ def _init_column_for_annotation( use_args_from = None if use_args_from is not None: + + self.column = use_args_from._adjust_for_existing_column( + decl_scan, key, self.column + ) + if ( not self._has_insert_default and use_args_from.column.default is not None @@ -847,16 +875,19 @@ def _init_column_for_annotation( ) if sqltype._isnull and not self.column.foreign_keys: - new_sqltype = None - checks: List[Any] if our_type_is_pep593: checks = [our_type, raw_pep_593_type] else: checks = [our_type] + if raw_pep_695_type is not None: + checks.insert(0, raw_pep_695_type) + for check_type in checks: - new_sqltype = registry._resolve_type(check_type) + new_sqltype = registry._resolve_type( + check_type, _do_fallbacks=check_type is our_type + ) if new_sqltype is not None: break else: @@ -869,17 +900,35 @@ def _init_column_for_annotation( "attribute Mapped annotation is the SQLAlchemy type " f"{our_type}. Expected a Python type instead" ) - elif is_a_type(our_type): + elif is_a_type(checks[0]): + if len(checks) == 1: + detail = ( + "the type object is not resolvable by the registry" + ) + elif len(checks) == 2: + detail = ( + f"neither '{checks[0]}' nor '{checks[1]}' " + "are resolvable by the registry" + ) + else: + detail = ( + f"""none of { + ", ".join(f"'{t}'" for t in checks) + } """ + "are resolvable by the registry" + ) raise orm_exc.MappedAnnotationError( - "Could not locate SQLAlchemy Core type for Python " - f"type {our_type} inside the {self.column.key!r} " - "attribute Mapped annotation" + "Could not locate SQLAlchemy Core type when resolving " + f"for Python type indicated by '{checks[0]}' inside " + "the " + f"Mapped[] annotation for the {self.column.key!r} " + f"attribute; {detail}" ) else: raise orm_exc.MappedAnnotationError( f"The object provided inside the {self.column.key!r} " "attribute Mapped annotation is not a Python type, " - f"it's the object {our_type!r}. Expected a Python " + f"it's the object {argument!r}. Expected a Python " "type." ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/query.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/query.py index af496b245..5552b1168 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/query.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/query.py @@ -1,5 +1,5 @@ # orm/query.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -1042,7 +1042,7 @@ def yield_per(self, count: int) -> Self: ":meth:`_orm.Query.get`", alternative="The method is now available as :meth:`_orm.Session.get`", ) - def get(self, ident: _PKIdentityArgument) -> Optional[Any]: + def get(self, ident: _PKIdentityArgument) -> Optional[_T]: """Return an instance based on the given primary key identifier, or ``None`` if not found. @@ -2787,11 +2787,10 @@ def one_or_none(self) -> Optional[_T]: def one(self) -> _T: """Return exactly one result or raise an exception. - Raises ``sqlalchemy.orm.exc.NoResultFound`` if the query selects - no rows. Raises ``sqlalchemy.orm.exc.MultipleResultsFound`` - if multiple object identities are returned, or if multiple - rows are returned for a query that returns only scalar values - as opposed to full identity-mapped entities. + Raises :class:`_exc.NoResultFound` if the query selects no rows. + Raises :class:`_exc.MultipleResultsFound` if multiple object identities + are returned, or if multiple rows are returned for a query that returns + only scalar values as opposed to full identity-mapped entities. Calling :meth:`.one` results in an execution of the underlying query. @@ -2811,7 +2810,7 @@ def one(self) -> _T: def scalar(self) -> Any: """Return the first element of the first result or None if no rows present. If multiple rows are returned, - raises MultipleResultsFound. + raises :class:`_exc.MultipleResultsFound`. >>> session.query(Item).scalar() @@ -2845,7 +2844,7 @@ def __iter__(self) -> Iterator[_T]: try: yield from result # type: ignore except GeneratorExit: - # issue #8710 - direct iteration is not re-usable after + # issue #8710 - direct iteration is not reusable after # an iterable block is broken, so close the result result._soft_close() raise @@ -3206,11 +3205,14 @@ def delete( delete_ = delete_.with_dialect_options(**delete_args) delete_._where_criteria = self._where_criteria - result: CursorResult[Any] = self.session.execute( - delete_, - self._params, - execution_options=self._execution_options.union( - {"synchronize_session": synchronize_session} + result = cast( + "CursorResult[Any]", + self.session.execute( + delete_, + self._params, + execution_options=self._execution_options.union( + {"synchronize_session": synchronize_session} + ), ), ) bulk_del.result = result # type: ignore @@ -3297,11 +3299,14 @@ def update( upd = upd.with_dialect_options(**update_args) upd._where_criteria = self._where_criteria - result: CursorResult[Any] = self.session.execute( - upd, - self._params, - execution_options=self._execution_options.union( - {"synchronize_session": synchronize_session} + result = cast( + "CursorResult[Any]", + self.session.execute( + upd, + self._params, + execution_options=self._execution_options.union( + {"synchronize_session": synchronize_session} + ), ), ) bulk_ud.result = result # type: ignore diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/relationships.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/relationships.py index 0d0bc7089..b185ef604 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/relationships.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/relationships.py @@ -1,5 +1,5 @@ # orm/relationships.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -486,8 +486,7 @@ def __init__( else: self._overlaps = () - # mypy ignoring the @property setter - self.cascade = cascade # type: ignore + self.cascade = cascade self.back_populates = back_populates @@ -1758,8 +1757,6 @@ def declarative_scan( extracted_mapped_annotation: Optional[_AnnotationScanType], is_dataclass_field: bool, ) -> None: - argument = extracted_mapped_annotation - if extracted_mapped_annotation is None: if self.argument is None: self._raise_for_required(key, cls) @@ -2912,9 +2909,6 @@ def _check_foreign_cols( ) -> None: """Check the foreign key columns collected and emit error messages.""" - - can_sync = False - foreign_cols = self._gather_columns_with_annotation( join_condition, "foreign" ) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/scoping.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/scoping.py index a0e9f17e4..b8ae381a4 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/scoping.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/scoping.py @@ -1,5 +1,5 @@ # orm/scoping.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -49,7 +49,6 @@ from .session import sessionmaker from .session import SessionTransaction from ..engine import Connection - from ..engine import CursorResult from ..engine import Engine from ..engine import Result from ..engine import Row @@ -69,7 +68,6 @@ from ..sql._typing import _T7 from ..sql._typing import _TypedColumnClauseArgument as _TCCA from ..sql.base import Executable - from ..sql.dml import UpdateBase from ..sql.elements import ClauseElement from ..sql.roles import TypedColumnsClauseRole from ..sql.selectable import ForUpdateParameter @@ -550,7 +548,7 @@ def reset(self) -> None: :meth:`_orm.Session.close` and :meth:`_orm.Session.reset`. :meth:`_orm.Session.close` - a similar method will additionally - prevent re-use of the Session when the parameter + prevent reuse of the Session when the parameter :paramref:`_orm.Session.close_resets_only` is set to ``False``. """ # noqa: E501 @@ -685,18 +683,6 @@ def execute( _add_event: Optional[Any] = None, ) -> Result[_T]: ... - @overload - def execute( - self, - statement: UpdateBase, - params: Optional[_CoreAnyExecuteParams] = None, - *, - execution_options: OrmExecuteOptionsParameter = util.EMPTY_DICT, - bind_arguments: Optional[_BindArguments] = None, - _parent_execute_state: Optional[Any] = None, - _add_event: Optional[Any] = None, - ) -> CursorResult[Any]: ... - @overload def execute( self, @@ -1086,8 +1072,7 @@ def get_one( Proxied for the :class:`_orm.Session` class on behalf of the :class:`_orm.scoping.scoped_session` class. - Raises ``sqlalchemy.orm.exc.NoResultFound`` if the query - selects no rows. + Raises :class:`_exc.NoResultFound` if the query selects no rows. For a detailed documentation of the arguments see the method :meth:`.Session.get`. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/session.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/session.py index 6cd7cd633..61bf180ec 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/session.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/session.py @@ -1,5 +1,5 @@ # orm/session.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -102,7 +102,6 @@ from .mapper import Mapper from .path_registry import PathRegistry from .query import RowReturningQuery - from ..engine import CursorResult from ..engine import Result from ..engine import Row from ..engine import RowMapping @@ -127,7 +126,6 @@ from ..sql._typing import _TypedColumnClauseArgument as _TCCA from ..sql.base import Executable from ..sql.base import ExecutableOption - from ..sql.dml import UpdateBase from ..sql.elements import ClauseElement from ..sql.roles import TypedColumnsClauseRole from ..sql.selectable import ForUpdateParameter @@ -836,7 +834,7 @@ class SessionTransactionOrigin(Enum): """transaction were started by calling :meth:`_orm.Session.begin`""" BEGIN_NESTED = 2 - """tranaction were started by :meth:`_orm.Session.begin_nested`""" + """transaction were started by :meth:`_orm.Session.begin_nested`""" SUBTRANSACTION = 3 """transaction is an internal "subtransaction" """ @@ -1728,7 +1726,7 @@ def __init__( :param close_resets_only: Defaults to ``True``. Determines if the session should reset itself after calling ``.close()`` - or should pass in a no longer usable state, disabling re-use. + or should pass in a no longer usable state, disabling reuse. .. versionadded:: 2.0.22 added flag ``close_resets_only``. A future SQLAlchemy version may change the default value of @@ -2278,18 +2276,6 @@ def execute( _add_event: Optional[Any] = None, ) -> Result[_T]: ... - @overload - def execute( - self, - statement: UpdateBase, - params: Optional[_CoreAnyExecuteParams] = None, - *, - execution_options: OrmExecuteOptionsParameter = util.EMPTY_DICT, - bind_arguments: Optional[_BindArguments] = None, - _parent_execute_state: Optional[Any] = None, - _add_event: Optional[Any] = None, - ) -> CursorResult[Any]: ... - @overload def execute( self, @@ -2540,7 +2526,7 @@ def reset(self) -> None: :meth:`_orm.Session.close` and :meth:`_orm.Session.reset`. :meth:`_orm.Session.close` - a similar method will additionally - prevent re-use of the Session when the parameter + prevent reuse of the Session when the parameter :paramref:`_orm.Session.close_resets_only` is set to ``False``. """ self._close_impl(invalidate=False, is_reset=True) @@ -3045,7 +3031,7 @@ def no_autoflush(self) -> Iterator[Session]: "This warning originated from the Session 'autoflush' process, " "which was invoked automatically in response to a user-initiated " "operation. Consider using ``no_autoflush`` context manager if this " - "warning happended while initializing objects.", + "warning happened while initializing objects.", sa_exc.SAWarning, ) def _autoflush(self) -> None: @@ -3718,8 +3704,7 @@ def get_one( """Return exactly one instance based on the given primary key identifier, or raise an exception if not found. - Raises ``sqlalchemy.orm.exc.NoResultFound`` if the query - selects no rows. + Raises :class:`_exc.NoResultFound` if the query selects no rows. For a detailed documentation of the arguments see the method :meth:`.Session.get`. @@ -4015,14 +4000,7 @@ def _merge( else: key_is_persistent = True - if key in self.identity_map: - try: - merged = self.identity_map[key] - except KeyError: - # object was GC'ed right as we checked for it - merged = None - else: - merged = None + merged = self.identity_map.get(key) if merged is None: if key_is_persistent and key in _resolve_conflict_map: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/state.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/state.py index d4bbf9209..2f6f58e9f 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/state.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/state.py @@ -1,5 +1,5 @@ # orm/state.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -511,6 +511,31 @@ def _dispose(self) -> None: # used by the test suite, apparently self._detach() + def _force_dereference(self) -> None: + """Force this InstanceState to act as though its weakref has + been GC'ed. + + this is used for test code that has to test reactions to objects + being GC'ed. We can't reliably force GCs to happen under all + CI circumstances. + + """ + + # if _strong_obj is set, then our object would not be getting + # GC'ed (at least within the scope of what we use this for in tests). + # so make sure this is not set + assert self._strong_obj is None + + obj = self.obj() + if obj is None: + # object was GC'ed and we're done! woop + return + + del obj + + self._cleanup(self.obj) + self.obj = lambda: None # type: ignore + def _cleanup(self, ref: weakref.ref[_O]) -> None: """Weakref callback cleanup. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/state_changes.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/state_changes.py index 10e417e85..f12041f6d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/state_changes.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/state_changes.py @@ -1,13 +1,11 @@ # orm/state_changes.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""State tracking utilities used by :class:`_orm.Session`. - -""" +"""State tracking utilities used by :class:`_orm.Session`.""" from __future__ import annotations @@ -82,7 +80,7 @@ def declare_states( indicate state should not change at the end of the method. """ - assert prerequisite_states, "no prequisite states sent" + assert prerequisite_states, "no prerequisite states sent" has_prerequisite_states = ( prerequisite_states is not _StateChangeStates.ANY ) @@ -127,7 +125,7 @@ def _go(fn: _F, self: Any, *arg: Any, **kw: Any) -> Any: ) else: raise sa_exc.IllegalStateChangeError( - f"Cant run operation '{fn.__name__}()' here; " + f"Can't run operation '{fn.__name__}()' here; " f"will move to state {moves_to!r} where we are " f"expecting {next_state!r}", code="isce", diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/strategies.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/strategies.py index f2d165145..966abfd6a 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/strategies.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/strategies.py @@ -1,5 +1,5 @@ # orm/strategies.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -8,7 +8,7 @@ """sqlalchemy.orm.interfaces.LoaderStrategy - implementations, and related MapperOptions.""" +implementations, and related MapperOptions.""" from __future__ import annotations @@ -1435,7 +1435,6 @@ def _load_for_path( alternate_effective_path = path._truncate_recursive() extra_options = (new_opt,) else: - new_opt = None alternate_effective_path = path extra_options = () @@ -1736,7 +1735,7 @@ def _setup_options( loadopt, ): # note that because the subqueryload object - # does not re-use the cached query, instead always making + # does not reuse the cached query, instead always making # use of the current invoked query, while we have two queries # here (orig and context.query), they are both non-cached # queries and we can transfer the options as is without @@ -2165,8 +2164,6 @@ def setup_query( path = path[self.parent_property] - with_polymorphic = None - user_defined_adapter = ( self._init_user_defined_eager_proc( loadopt, compile_state, compile_state.attributes diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/strategy_options.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/strategy_options.py index f4f292ee7..bd94e3251 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/strategy_options.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/strategy_options.py @@ -1,14 +1,12 @@ # orm/strategy_options.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php # mypy: allow-untyped-defs, allow-untyped-calls -""" - -""" +""" """ from __future__ import annotations @@ -224,7 +222,7 @@ def load_only(self, *attrs: _AttrType, raiseload: bool = False) -> Self: """ cloned = self._set_column_strategy( - attrs, + _expand_column_strategy_attrs(attrs), {"deferred": False, "instrument": True}, ) @@ -638,7 +636,9 @@ def defer(self, key: _AttrType, raiseload: bool = False) -> Self: strategy = {"deferred": True, "instrument": True} if raiseload: strategy["raiseload"] = True - return self._set_column_strategy((key,), strategy) + return self._set_column_strategy( + _expand_column_strategy_attrs((key,)), strategy + ) def undefer(self, key: _AttrType) -> Self: r"""Indicate that the given column-oriented attribute should be @@ -677,7 +677,8 @@ def undefer(self, key: _AttrType) -> Self: """ # noqa: E501 return self._set_column_strategy( - (key,), {"deferred": False, "instrument": True} + _expand_column_strategy_attrs((key,)), + {"deferred": False, "instrument": True}, ) def undefer_group(self, name: str) -> Self: @@ -1103,7 +1104,6 @@ def _reconcile_query_entities_with_us(self, mapper_entities, raiseerr): """ path = self.path - ezero = None for ent in mapper_entities: ezero = ent.entity_zero if ezero and orm_util._entity_corresponds_to( @@ -1252,7 +1252,7 @@ def _clone_for_bind_strategy( ) elif path_is_property(self.path): - # re-use the lookup which will raise a nicely formatted + # reuse the lookup which will raise a nicely formatted # LoaderStrategyException if strategy: self.path.prop._strategy_lookup(self.path.prop, strategy[0]) @@ -2395,6 +2395,23 @@ def loader_unbound_fn(fn: _FN) -> _FN: return fn +def _expand_column_strategy_attrs( + attrs: Tuple[_AttrType, ...], +) -> Tuple[_AttrType, ...]: + return cast( + "Tuple[_AttrType, ...]", + tuple( + a + for attr in attrs + for a in ( + cast("QueryableAttribute[Any]", attr)._column_strategy_attrs() + if hasattr(attr, "_column_strategy_attrs") + else (attr,) + ) + ), + ) + + # standalone functions follow. docstrings are filled in # by the ``@loader_unbound_fn`` decorator. @@ -2408,6 +2425,7 @@ def contains_eager(*keys: _AttrType, **kw: Any) -> _AbstractLoad: def load_only(*attrs: _AttrType, raiseload: bool = False) -> _AbstractLoad: # TODO: attrs against different classes. we likely have to # add some extra state to Load of some kind + attrs = _expand_column_strategy_attrs(attrs) _, lead_element, _ = _parse_attr_argument(attrs[0]) return Load(lead_element).load_only(*attrs, raiseload=raiseload) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/sync.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/sync.py index 8f85a41a2..b894e27bc 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/sync.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/sync.py @@ -1,5 +1,5 @@ # orm/sync.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/unitofwork.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/unitofwork.py index 80897f292..c65b37e54 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/unitofwork.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/unitofwork.py @@ -1,5 +1,5 @@ # orm/unitofwork.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/util.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/util.py index 874c4f53b..090a27412 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/util.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/util.py @@ -1,5 +1,5 @@ # orm/util.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -1566,7 +1566,7 @@ class Bundle( _propagate_attrs: _PropagateAttrsType = util.immutabledict() - proxy_set = util.EMPTY_SET # type: ignore + proxy_set = util.EMPTY_SET exprs: List[_ColumnsClauseElement] diff --git a/addons/source-python/packages/site-packages/sqlalchemy/orm/writeonly.py b/addons/source-python/packages/site-packages/sqlalchemy/orm/writeonly.py index ac034a09e..e090c07c1 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/orm/writeonly.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/orm/writeonly.py @@ -1,5 +1,5 @@ # orm/writeonly.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -236,15 +236,11 @@ def get_collection( return DynamicCollectionAdapter(data) # type: ignore[return-value] @util.memoized_property - def _append_token( # type:ignore[override] - self, - ) -> attributes.AttributeEventToken: + def _append_token(self) -> attributes.AttributeEventToken: return attributes.AttributeEventToken(self, attributes.OP_APPEND) @util.memoized_property - def _remove_token( # type:ignore[override] - self, - ) -> attributes.AttributeEventToken: + def _remove_token(self) -> attributes.AttributeEventToken: return attributes.AttributeEventToken(self, attributes.OP_REMOVE) def fire_append_event( @@ -415,7 +411,7 @@ def append( initiator: Optional[AttributeEventToken], passive: PassiveFlag = PassiveFlag.PASSIVE_NO_FETCH, ) -> None: - if initiator is not self: + if initiator is not self: # type: ignore[comparison-overlap] self.fire_append_event(state, dict_, value, initiator) def remove( @@ -426,7 +422,7 @@ def remove( initiator: Optional[AttributeEventToken], passive: PassiveFlag = PassiveFlag.PASSIVE_NO_FETCH, ) -> None: - if initiator is not self: + if initiator is not self: # type: ignore[comparison-overlap] self.fire_remove_event(state, dict_, value, initiator) def pop( diff --git a/addons/source-python/packages/site-packages/sqlalchemy/pool/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/pool/__init__.py index 51bf0ec79..3a043e884 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/pool/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/pool/__init__.py @@ -1,5 +1,5 @@ # pool/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/pool/base.py b/addons/source-python/packages/site-packages/sqlalchemy/pool/base.py index b070bff19..d2090af6d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/pool/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/pool/base.py @@ -1,14 +1,12 @@ # pool/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Base constructs for connection pools. - -""" +"""Base constructs for connection pools.""" from __future__ import annotations @@ -36,6 +34,7 @@ from .. import util from ..util.typing import Literal from ..util.typing import Protocol +from ..util.typing import Self if TYPE_CHECKING: from ..engine.interfaces import DBAPIConnection @@ -601,7 +600,7 @@ class ConnectionPoolEntry(ManagesConnection): connection on behalf of a :class:`_pool.Pool` instance. The :class:`.ConnectionPoolEntry` object represents the long term - maintainance of a particular connection for a pool, including expiring or + maintenance of a particular connection for a pool, including expiring or invalidating that connection to have it replaced with a new one, which will continue to be maintained by that same :class:`.ConnectionPoolEntry` instance. Compared to :class:`.PoolProxiedConnection`, which is the @@ -1079,6 +1078,8 @@ def cursor(self, *args: Any, **kwargs: Any) -> DBAPICursor: ... def rollback(self) -> None: ... + def __getattr__(self, key: str) -> Any: ... + @property def is_valid(self) -> bool: """Return True if this :class:`.PoolProxiedConnection` still refers @@ -1124,6 +1125,13 @@ def close(self) -> None: """ raise NotImplementedError() + def __enter__(self) -> Self: + return self + + def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None: + self.close() + return None + class _AdhocProxiedConnection(PoolProxiedConnection): """provides the :class:`.PoolProxiedConnection` interface for cases where diff --git a/addons/source-python/packages/site-packages/sqlalchemy/pool/events.py b/addons/source-python/packages/site-packages/sqlalchemy/pool/events.py index 4ceb260f7..2fd024316 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/pool/events.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/pool/events.py @@ -1,5 +1,5 @@ # pool/events.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -31,27 +31,30 @@ class PoolEvents(event.Events[Pool]): as the names of members that are passed to listener functions. - e.g.:: + When using an :class:`.Engine` object created via :func:`_sa.create_engine` + (or indirectly via :func:`.create_async_engine`), :class:`.PoolEvents` + listeners are expected to be registered in terms of the :class:`.Engine`, + which will direct the listeners to the :class:`.Pool` contained within:: + from sqlalchemy import create_engine from sqlalchemy import event + engine = create_engine("postgresql+psycopg2://scott:tiger@localhost/test") + + @event.listens_for(engine, "checkout") def my_on_checkout(dbapi_conn, connection_rec, connection_proxy): "handle an on checkout event" + :class:`.PoolEvents` may also be registered with the :class:`_pool.Pool` + class, with the :class:`.Engine` class, as well as with instances of + :class:`_pool.Pool`. - event.listen(Pool, "checkout", my_on_checkout) - - In addition to accepting the :class:`_pool.Pool` class and - :class:`_pool.Pool` instances, :class:`_events.PoolEvents` also accepts - :class:`_engine.Engine` objects and the :class:`_engine.Engine` class as - targets, which will be resolved to the ``.pool`` attribute of the - given engine or the :class:`_pool.Pool` class:: - - engine = create_engine("postgresql+psycopg2://scott:tiger@localhost/test") + .. tip:: - # will associate with engine.pool - event.listen(engine, "checkout", my_on_checkout) + Registering :class:`.PoolEvents` with the :class:`.Engine`, if present, + is recommended since the :meth:`.Engine.dispose` method will carry + along event listeners from the old pool to the new pool. """ # noqa: E501 diff --git a/addons/source-python/packages/site-packages/sqlalchemy/pool/impl.py b/addons/source-python/packages/site-packages/sqlalchemy/pool/impl.py index f2b951d8e..f3a5c2dd8 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/pool/impl.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/pool/impl.py @@ -1,14 +1,12 @@ # pool/impl.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Pool implementation classes. - -""" +"""Pool implementation classes.""" from __future__ import annotations import threading @@ -62,7 +60,7 @@ class QueuePool(Pool): """ - _is_asyncio = False # type: ignore[assignment] + _is_asyncio = False _queue_class: Type[sqla_queue.QueueCommon[ConnectionPoolEntry]] = ( sqla_queue.Queue @@ -271,7 +269,7 @@ class AsyncAdaptedQueuePool(QueuePool): """ - _is_asyncio = True # type: ignore[assignment] + _is_asyncio = True _queue_class: Type[sqla_queue.QueueCommon[ConnectionPoolEntry]] = ( sqla_queue.AsyncAdaptedQueue ) @@ -280,7 +278,7 @@ class AsyncAdaptedQueuePool(QueuePool): class FallbackAsyncAdaptedQueuePool(AsyncAdaptedQueuePool): - _queue_class = sqla_queue.FallbackAsyncAdaptedQueue + _queue_class = sqla_queue.FallbackAsyncAdaptedQueue # type: ignore[assignment] # noqa: E501 class NullPool(Pool): @@ -358,7 +356,7 @@ class SingletonThreadPool(Pool): """ - _is_asyncio = False # type: ignore[assignment] + _is_asyncio = False def __init__( self, @@ -386,6 +384,15 @@ def recreate(self) -> SingletonThreadPool: dialect=self._dialect, ) + def _transfer_from( + self, other_singleton_pool: SingletonThreadPool + ) -> None: + # used by the test suite to make a new engine / pool without + # losing the state of an existing SQLite :memory: connection + assert not hasattr(other_singleton_pool._fairy, "current") + self._conn = other_singleton_pool._conn + self._all_conns = other_singleton_pool._all_conns + def dispose(self) -> None: """Dispose of this pool.""" diff --git a/addons/source-python/packages/site-packages/sqlalchemy/schema.py b/addons/source-python/packages/site-packages/sqlalchemy/schema.py index 32adc9bb2..3e4e15e8e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/schema.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/schema.py @@ -1,13 +1,11 @@ # schema.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -"""Compatibility namespace for sqlalchemy.sql.schema and related. - -""" +"""Compatibility namespace for sqlalchemy.sql.schema and related.""" from __future__ import annotations @@ -65,6 +63,7 @@ from .sql.schema import PrimaryKeyConstraint as PrimaryKeyConstraint from .sql.schema import SchemaConst as SchemaConst from .sql.schema import SchemaItem as SchemaItem +from .sql.schema import SchemaVisitable as SchemaVisitable from .sql.schema import Sequence as Sequence from .sql.schema import Table as Table from .sql.schema import UniqueConstraint as UniqueConstraint diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/__init__.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/__init__.py index 188f709d7..152263617 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/__init__.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/__init__.py @@ -1,5 +1,5 @@ # sql/__init__.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/_dml_constructors.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/_dml_constructors.py index 0a6f60115..374055cfc 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/_dml_constructors.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/_dml_constructors.py @@ -1,5 +1,5 @@ # sql/_dml_constructors.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/_elements_constructors.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/_elements_constructors.py index 3359998f3..6f3f8127e 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/_elements_constructors.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/_elements_constructors.py @@ -1,5 +1,5 @@ # sql/_elements_constructors.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/_orm_types.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/_orm_types.py index c37d805ef..39754a3c2 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/_orm_types.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/_orm_types.py @@ -1,5 +1,5 @@ # sql/_orm_types.py -# Copyright (C) 2022-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2022-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/_py_util.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/_py_util.py index 9e1a084a3..c65e96c0d 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/_py_util.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/_py_util.py @@ -1,5 +1,5 @@ # sql/_py_util.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/_selectable_constructors.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/_selectable_constructors.py index ae83efa5d..4dfb7ea76 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/_selectable_constructors.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/_selectable_constructors.py @@ -1,5 +1,5 @@ # sql/_selectable_constructors.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -35,6 +35,7 @@ if TYPE_CHECKING: from ._typing import _FromClauseArgument from ._typing import _OnClauseArgument + from ._typing import _OnlyColumnArgument from ._typing import _SelectStatementForCompoundArgument from ._typing import _T0 from ._typing import _T1 @@ -674,32 +675,78 @@ def union_all( def values( - *columns: ColumnClause[Any], + *columns: _OnlyColumnArgument[Any], name: Optional[str] = None, literal_binds: bool = False, ) -> Values: - r"""Construct a :class:`_expression.Values` construct. + r"""Construct a :class:`_expression.Values` construct representing the + SQL ``VALUES`` clause. - The column expressions and the actual data for - :class:`_expression.Values` are given in two separate steps. The - constructor receives the column expressions typically as - :func:`_expression.column` constructs, - and the data is then passed via the - :meth:`_expression.Values.data` method as a list, - which can be called multiple - times to add more data, e.g.:: + The column expressions and the actual data for :class:`_expression.Values` + are given in two separate steps. The constructor receives the column + expressions typically as :func:`_expression.column` constructs, and the + data is then passed via the :meth:`_expression.Values.data` method as a + list, which can be called multiple times to add more data, e.g.:: from sqlalchemy import column from sqlalchemy import values from sqlalchemy import Integer from sqlalchemy import String + value_expr = ( + values( + column("id", Integer), + column("name", String), + ) + .data([(1, "name1"), (2, "name2")]) + .data([(3, "name3")]) + ) + + Would represent a SQL fragment like:: + + VALUES(1, "name1"), (2, "name2"), (3, "name3") + + The :class:`_sql.values` construct has an optional + :paramref:`_sql.values.name` field; when using this field, the + PostgreSQL-specific "named VALUES" clause may be generated:: + value_expr = values( - column("id", Integer), - column("name", String), - name="my_values", + column("id", Integer), column("name", String), name="somename" ).data([(1, "name1"), (2, "name2"), (3, "name3")]) + When selecting from the above construct, the name and column names will + be listed out using a PostgreSQL-specific syntax:: + + >>> print(value_expr.select()) + SELECT somename.id, somename.name + FROM (VALUES (:param_1, :param_2), (:param_3, :param_4), + (:param_5, :param_6)) AS somename (id, name) + + For a more database-agnostic means of SELECTing named columns from a + VALUES expression, the :meth:`.Values.cte` method may be used, which + produces a named CTE with explicit column names against the VALUES + construct within; this syntax works on PostgreSQL, SQLite, and MariaDB:: + + value_expr = ( + values( + column("id", Integer), + column("name", String), + ) + .data([(1, "name1"), (2, "name2"), (3, "name3")]) + .cte() + ) + + Rendering as:: + + >>> print(value_expr.select()) + WITH anon_1(id, name) AS + (VALUES (:param_1, :param_2), (:param_3, :param_4), (:param_5, :param_6)) + SELECT anon_1.id, anon_1.name + FROM anon_1 + + .. versionadded:: 2.0.42 Added the :meth:`.Values.cte` method to + :class:`.Values` + :param \*columns: column expressions, typically composed using :func:`_expression.column` objects. @@ -711,5 +758,6 @@ def values( the data values inline in the SQL output, rather than using bound parameters. - """ + """ # noqa: E501 + return Values(*columns, literal_binds=literal_binds, name=name) diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/_typing.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/_typing.py index b1af53f77..99d3defad 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/_typing.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/_typing.py @@ -1,5 +1,5 @@ # sql/_typing.py -# Copyright (C) 2022-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2022-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -70,7 +70,10 @@ from .sqltypes import TableValueType from .sqltypes import TupleType from .type_api import TypeEngine + from ..engine import Connection from ..engine import Dialect + from ..engine import Engine + from ..engine.mock import MockConnection from ..util.typing import TypeGuard _T = TypeVar("_T", bound=Any) @@ -183,6 +186,19 @@ def dialect(self) -> Dialect: ... _T9 = TypeVar("_T9", bound=Any) +_OnlyColumnArgument = Union[ + "ColumnElement[_T]", + _HasClauseElement[_T], + roles.DMLColumnRole, +] +"""A narrow type that is looking for a ColumnClause (e.g. table column with a +name) or an ORM element that produces this. + +This is used for constructs that need a named column to represent a +position in a selectable, like TextClause().columns() or values(...). + +""" + _ColumnExpressionArgument = Union[ "ColumnElement[_T]", _HasClauseElement[_T], @@ -225,6 +241,7 @@ def dialect(self) -> Dialect: ... _FromClauseArgument = Union[ roles.FromClauseRole, + roles.TypedColumnsClauseRole[Any], Type[Any], Inspectable[_HasClauseElement[Any]], _HasClauseElement[Any], @@ -301,6 +318,8 @@ def dialect(self) -> Dialect: ... _AutoIncrementType = Union[bool, Literal["auto", "ignore_fk"]] +_CreateDropBind = Union["Engine", "Connection", "MockConnection"] + if TYPE_CHECKING: def is_sql_compiler(c: Compiled) -> TypeGuard[SQLCompiler]: ... @@ -332,11 +351,11 @@ def is_table_value_type( def is_selectable(t: Any) -> TypeGuard[Selectable]: ... def is_select_base( - t: Union[Executable, ReturnsRows] + t: Union[Executable, ReturnsRows], ) -> TypeGuard[SelectBase]: ... def is_select_statement( - t: Union[Executable, ReturnsRows] + t: Union[Executable, ReturnsRows], ) -> TypeGuard[Select[Any]]: ... def is_table(t: FromClause) -> TypeGuard[TableClause]: ... diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/annotation.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/annotation.py index bf445ff33..cbd262d15 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/annotation.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/annotation.py @@ -1,5 +1,5 @@ # sql/annotation.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -465,7 +465,9 @@ def clone(elem: SupportsAnnotations, **kw: Any) -> SupportsAnnotations: newelem = elem newelem._copy_internals( - clone=clone, ind_cols_on_fromclause=ind_cols_on_fromclause + clone=clone, + ind_cols_on_fromclause=ind_cols_on_fromclause, + _annotations_traversal=True, ) cloned_ids[id_] = newelem @@ -505,7 +507,7 @@ def clone(elem: SupportsAnnotations, **kw: Any) -> SupportsAnnotations: if key not in cloned: newelem = elem._deannotate(values=values, clone=True) - newelem._copy_internals(clone=clone) + newelem._copy_internals(clone=clone, _annotations_traversal=True) cloned[key] = newelem return newelem else: @@ -526,7 +528,7 @@ def _shallow_annotate(element: _SA, annotations: _AnnotationDict) -> _SA: structure wasting time. """ element = element._annotate(annotations) - element._copy_internals() + element._copy_internals(_annotations_traversal=True) return element diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/base.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/base.py index 7ccef84e0..39772c9e7 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/base.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/base.py @@ -1,14 +1,12 @@ # sql/base.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php # mypy: allow-untyped-defs, allow-untyped-calls -"""Foundational utilities common to many sql modules. - -""" +"""Foundational utilities common to many sql modules.""" from __future__ import annotations @@ -24,6 +22,7 @@ from typing import cast from typing import Dict from typing import FrozenSet +from typing import Generator from typing import Generic from typing import Iterable from typing import Iterator @@ -57,6 +56,8 @@ from ..util import HasMemoized as HasMemoized from ..util import hybridmethod from ..util import typing as compat_typing +from ..util import warn_deprecated +from ..util.typing import Final from ..util.typing import Protocol from ..util.typing import Self from ..util.typing import TypeGuard @@ -68,6 +69,7 @@ from ._orm_types import DMLStrategyArgument from ._orm_types import SynchronizeSessionArgument from ._typing import _CLE + from .cache_key import CacheKey from .compiler import SQLCompiler from .elements import BindParameter from .elements import ClauseList @@ -81,6 +83,7 @@ from .selectable import _JoinTargetElement from .selectable import _SelectIterable from .selectable import FromClause + from .visitors import anon_map from ..engine import Connection from ..engine import CursorResult from ..engine.interfaces import _CoreMultiExecuteParams @@ -108,7 +111,7 @@ def __repr__(self): return f"_NoArg.{self.name}" -NO_ARG = _NoArg.NO_ARG +NO_ARG: Final = _NoArg.NO_ARG class _NoneName(Enum): @@ -116,7 +119,7 @@ class _NoneName(Enum): """indicate a 'deferred' name that was ultimately the value None.""" -_NONE_NAME = _NoneName.NONE_NAME +_NONE_NAME: Final = _NoneName.NONE_NAME _T = TypeVar("_T", bound=Any) @@ -151,7 +154,9 @@ def _from_column_default( ) -_never_select_column = operator.attrgetter("_omit_from_statements") +_never_select_column: operator.attrgetter[Any] = operator.attrgetter( + "_omit_from_statements" +) class _EntityNamespace(Protocol): @@ -186,12 +191,12 @@ class Immutable: __slots__ = () - _is_immutable = True + _is_immutable: bool = True - def unique_params(self, *optionaldict, **kwargs): + def unique_params(self, *optionaldict: Any, **kwargs: Any) -> NoReturn: raise NotImplementedError("Immutable objects do not support copying") - def params(self, *optionaldict, **kwargs): + def params(self, *optionaldict: Any, **kwargs: Any) -> NoReturn: raise NotImplementedError("Immutable objects do not support copying") def _clone(self: _Self, **kw: Any) -> _Self: @@ -206,7 +211,7 @@ def _copy_internals( class SingletonConstant(Immutable): """Represent SQL constants like NULL, TRUE, FALSE""" - _is_singleton_constant = True + _is_singleton_constant: bool = True _singleton: SingletonConstant @@ -218,7 +223,7 @@ def proxy_set(self) -> FrozenSet[ColumnElement[Any]]: raise NotImplementedError() @classmethod - def _create_singleton(cls): + def _create_singleton(cls) -> None: obj = object.__new__(cls) obj.__init__() # type: ignore @@ -287,17 +292,17 @@ def _generative( def _exclusive_against(*names: str, **kw: Any) -> Callable[[_Fn], _Fn]: - msgs = kw.pop("msgs", {}) + msgs: Dict[str, str] = kw.pop("msgs", {}) - defaults = kw.pop("defaults", {}) + defaults: Dict[str, str] = kw.pop("defaults", {}) - getters = [ + getters: List[Tuple[str, operator.attrgetter[Any], Optional[str]]] = [ (name, operator.attrgetter(name), defaults.get(name, None)) for name in names ] @util.decorator - def check(fn, *args, **kw): + def check(fn: _Fn, *args: Any, **kw: Any) -> Any: # make pylance happy by not including "self" in the argument # list self = args[0] @@ -346,12 +351,16 @@ def _cloned_intersection(a: Iterable[_CLE], b: Iterable[_CLE]) -> Set[_CLE]: The returned set is in terms of the entities present within 'a'. """ - all_overlap = set(_expand_cloned(a)).intersection(_expand_cloned(b)) + all_overlap: Set[_CLE] = set(_expand_cloned(a)).intersection( + _expand_cloned(b) + ) return {elem for elem in a if all_overlap.intersection(elem._cloned_set)} def _cloned_difference(a: Iterable[_CLE], b: Iterable[_CLE]) -> Set[_CLE]: - all_overlap = set(_expand_cloned(a)).intersection(_expand_cloned(b)) + all_overlap: Set[_CLE] = set(_expand_cloned(a)).intersection( + _expand_cloned(b) + ) return { elem for elem in a if not all_overlap.intersection(elem._cloned_set) } @@ -363,10 +372,12 @@ class _DialectArgView(MutableMapping[str, Any]): """ - def __init__(self, obj): + __slots__ = ("obj",) + + def __init__(self, obj: DialectKWArgs) -> None: self.obj = obj - def _key(self, key): + def _key(self, key: str) -> Tuple[str, str]: try: dialect, value_key = key.split("_", 1) except ValueError as err: @@ -374,7 +385,7 @@ def _key(self, key): else: return dialect, value_key - def __getitem__(self, key): + def __getitem__(self, key: str) -> Any: dialect, value_key = self._key(key) try: @@ -384,7 +395,7 @@ def __getitem__(self, key): else: return opt[value_key] - def __setitem__(self, key, value): + def __setitem__(self, key: str, value: Any) -> None: try: dialect, value_key = self._key(key) except KeyError as err: @@ -394,17 +405,17 @@ def __setitem__(self, key, value): else: self.obj.dialect_options[dialect][value_key] = value - def __delitem__(self, key): + def __delitem__(self, key: str) -> None: dialect, value_key = self._key(key) del self.obj.dialect_options[dialect][value_key] - def __len__(self): + def __len__(self) -> int: return sum( len(args._non_defaults) for args in self.obj.dialect_options.values() ) - def __iter__(self): + def __iter__(self) -> Generator[str, None, None]: return ( "%s_%s" % (dialect_name, value_name) for dialect_name in self.obj.dialect_options @@ -423,31 +434,31 @@ class _DialectArgDict(MutableMapping[str, Any]): """ - def __init__(self): - self._non_defaults = {} - self._defaults = {} + def __init__(self) -> None: + self._non_defaults: Dict[str, Any] = {} + self._defaults: Dict[str, Any] = {} - def __len__(self): + def __len__(self) -> int: return len(set(self._non_defaults).union(self._defaults)) - def __iter__(self): + def __iter__(self) -> Iterator[str]: return iter(set(self._non_defaults).union(self._defaults)) - def __getitem__(self, key): + def __getitem__(self, key: str) -> Any: if key in self._non_defaults: return self._non_defaults[key] else: return self._defaults[key] - def __setitem__(self, key, value): + def __setitem__(self, key: str, value: Any) -> None: self._non_defaults[key] = value - def __delitem__(self, key): + def __delitem__(self, key: str) -> None: del self._non_defaults[key] @util.preload_module("sqlalchemy.dialects") -def _kw_reg_for_dialect(dialect_name): +def _kw_reg_for_dialect(dialect_name: str) -> Optional[Dict[Any, Any]]: dialect_cls = util.preloaded.dialects.registry.load(dialect_name) if dialect_cls.construct_arguments is None: return None @@ -469,12 +480,87 @@ class DialectKWArgs: __slots__ = () - _dialect_kwargs_traverse_internals = [ + _dialect_kwargs_traverse_internals: List[Tuple[str, Any]] = [ ("dialect_options", InternalTraversal.dp_dialect_options) ] + def get_dialect_option( + self, + dialect: Dialect, + argument_name: str, + *, + else_: Any = None, + deprecated_fallback: Optional[str] = None, + ) -> Any: + r"""Return the value of a dialect-specific option, or *else_* if + this dialect does not register the given argument. + + This is useful for DDL compilers that may be inherited by + third-party dialects whose ``construct_arguments`` do not + include the same set of keys as the parent dialect. + + :param dialect: The dialect for which to retrieve the option. + :param argument_name: The name of the argument to retrieve. + :param else\_: The value to return if the argument is not present. + :param deprecated_fallback: Optional dialect name to fall back to + if the argument is not present for the current dialect. If the + argument is present for the fallback dialect but not the current + dialect, a deprecation warning will be emitted. + + """ + + registry = DialectKWArgs._kw_registry[dialect.name] + if registry is None: + return else_ + + if argument_name in registry.get(self.__class__, {}): + if ( + deprecated_fallback is None + or dialect.name == deprecated_fallback + ): + return self.dialect_options[dialect.name][argument_name] + + # deprecated_fallback is present; need to look in two places + + # Current dialect has this option registered. + # Check if user explicitly set it. + if ( + dialect.name in self.dialect_options + and argument_name + in self.dialect_options[dialect.name]._non_defaults + ): + # User explicitly set this dialect's option - use it + return self.dialect_options[dialect.name][argument_name] + + # User didn't set current dialect's option. + # Check for deprecated fallback. + elif ( + deprecated_fallback in self.dialect_options + and argument_name + in self.dialect_options[deprecated_fallback]._non_defaults + ): + # User set fallback option but not current dialect's option + warn_deprecated( + f"Using '{deprecated_fallback}_{argument_name}' " + f"with the '{dialect.name}' dialect is deprecated; " + f"please additionally specify " + f"'{dialect.name}_{argument_name}'.", + version="2.1", + ) + return self.dialect_options[deprecated_fallback][argument_name] + + # Return default value + return self.dialect_options[dialect.name][argument_name] + else: + # Current dialect doesn't have the option registered at all. + # Don't warn - if a third-party dialect doesn't support an + # option, that's their choice, not a deprecation case. + return else_ + @classmethod - def argument_for(cls, dialect_name, argument_name, default): + def argument_for( + cls, dialect_name: str, argument_name: str, default: Any + ) -> None: """Add a new kind of dialect-specific keyword argument for this class. E.g.:: @@ -511,7 +597,9 @@ def argument_for(cls, dialect_name, argument_name, default): """ - construct_arg_dictionary = DialectKWArgs._kw_registry[dialect_name] + construct_arg_dictionary: Optional[Dict[Any, Any]] = ( + DialectKWArgs._kw_registry[dialect_name] + ) if construct_arg_dictionary is None: raise exc.ArgumentError( "Dialect '%s' does have keyword-argument " @@ -521,8 +609,8 @@ def argument_for(cls, dialect_name, argument_name, default): construct_arg_dictionary[cls] = {} construct_arg_dictionary[cls][argument_name] = default - @util.memoized_property - def dialect_kwargs(self): + @property + def dialect_kwargs(self) -> _DialectArgView: """A collection of keyword arguments specified as dialect-specific options to this construct. @@ -543,26 +631,29 @@ def dialect_kwargs(self): return _DialectArgView(self) @property - def kwargs(self): + def kwargs(self) -> _DialectArgView: """A synonym for :attr:`.DialectKWArgs.dialect_kwargs`.""" return self.dialect_kwargs - _kw_registry = util.PopulateDict(_kw_reg_for_dialect) + _kw_registry: util.PopulateDict[str, Optional[Dict[Any, Any]]] = ( + util.PopulateDict(_kw_reg_for_dialect) + ) - def _kw_reg_for_dialect_cls(self, dialect_name): + @classmethod + def _kw_reg_for_dialect_cls(cls, dialect_name: str) -> _DialectArgDict: construct_arg_dictionary = DialectKWArgs._kw_registry[dialect_name] d = _DialectArgDict() if construct_arg_dictionary is None: d._defaults.update({"*": None}) else: - for cls in reversed(self.__class__.__mro__): + for cls in reversed(cls.__mro__): if cls in construct_arg_dictionary: d._defaults.update(construct_arg_dictionary[cls]) return d @util.memoized_property - def dialect_options(self): + def dialect_options(self) -> util.PopulateDict[str, _DialectArgDict]: """A collection of keyword arguments specified as dialect-specific options to this construct. @@ -580,9 +671,7 @@ def dialect_options(self): """ - return util.PopulateDict( - util.portable_instancemethod(self._kw_reg_for_dialect_cls) - ) + return util.PopulateDict(self._kw_reg_for_dialect_cls) def _validate_dialect_kwargs(self, kwargs: Dict[str, Any]) -> None: # validate remaining kwargs that they all specify DB prefixes @@ -756,7 +845,7 @@ class InPlaceGenerative(HasMemoized): __slots__ = () - def _generate(self): + def _generate(self) -> Self: skip = self._memoized_keys # note __dict__ needs to be in __slots__ if this is used for k in skip: @@ -826,7 +915,7 @@ def __init_subclass__(cls) -> None: ) super().__init_subclass__() - def __init__(self, **kw): + def __init__(self, **kw: Any) -> None: self.__dict__.update(kw) def __add__(self, other): @@ -851,7 +940,7 @@ def __eq__(self, other): return False return True - def __repr__(self): + def __repr__(self) -> str: # TODO: fairly inefficient, used only in debugging right now. return "%s(%s)" % ( @@ -868,7 +957,7 @@ def isinstance(cls, klass: Type[Any]) -> bool: return issubclass(cls, klass) @hybridmethod - def add_to_element(self, name, value): + def add_to_element(self, name: str, value: str) -> Any: return self + {name: getattr(self, name) + value} @hybridmethod @@ -882,7 +971,7 @@ def _state_dict(cls) -> Mapping[str, Any]: return cls._state_dict_const @classmethod - def safe_merge(cls, other): + def safe_merge(cls, other: "Options") -> Any: d = other._state_dict() # only support a merge with another object of our class @@ -908,8 +997,12 @@ def safe_merge(cls, other): @classmethod def from_execution_options( - cls, key, attrs, exec_options, statement_exec_options - ): + cls, + key: str, + attrs: set[str], + exec_options: Mapping[str, Any], + statement_exec_options: Mapping[str, Any], + ) -> Tuple["Options", Mapping[str, Any]]: """process Options argument in terms of execution options. @@ -948,8 +1041,8 @@ def from_execution_options( result[local] = statement_exec_options[argname] new_options = existing_options + result - exec_options = util.immutabledict().merge_with( - exec_options, {key: new_options} + exec_options = util.immutabledict(exec_options).merge_with( + {key: new_options} ) return new_options, exec_options @@ -969,28 +1062,32 @@ class CacheableOptions(Options, HasCacheKey): __slots__ = () @hybridmethod - def _gen_cache_key_inst(self, anon_map, bindparams): + def _gen_cache_key_inst( + self, anon_map: Any, bindparams: List[BindParameter[Any]] + ) -> Optional[Tuple[Any]]: return HasCacheKey._gen_cache_key(self, anon_map, bindparams) @_gen_cache_key_inst.classlevel - def _gen_cache_key(cls, anon_map, bindparams): + def _gen_cache_key( + cls, anon_map: "anon_map", bindparams: List[BindParameter[Any]] + ) -> Tuple[CacheableOptions, Any]: return (cls, ()) @hybridmethod - def _generate_cache_key(self): + def _generate_cache_key(self) -> Optional[CacheKey]: return HasCacheKey._generate_cache_key_for_object(self) class ExecutableOption(HasCopyInternals): __slots__ = () - _annotations = util.EMPTY_DICT + _annotations: _ImmutableExecuteOptions = util.EMPTY_DICT - __visit_name__ = "executable_option" + __visit_name__: str = "executable_option" - _is_has_cache_key = False + _is_has_cache_key: bool = False - _is_core = True + _is_core: bool = True def _clone(self, **kw): """Create a shallow copy of this ExecutableOption.""" @@ -1010,7 +1107,7 @@ class Executable(roles.StatementRole): supports_execution: bool = True _execution_options: _ImmutableExecuteOptions = util.EMPTY_DICT - _is_default_generator = False + _is_default_generator: bool = False _with_options: Tuple[ExecutableOption, ...] = () _with_context_options: Tuple[ Tuple[Callable[[CompileState], None], Any], ... @@ -1026,13 +1123,13 @@ class Executable(roles.StatementRole): ("_propagate_attrs", ExtendedInternalTraversal.dp_propagate_attrs), ] - is_select = False - is_from_statement = False - is_update = False - is_insert = False - is_text = False - is_delete = False - is_dml = False + is_select: bool = False + is_from_statement: bool = False + is_update: bool = False + is_insert: bool = False + is_text: bool = False + is_delete: bool = False + is_dml: bool = False if TYPE_CHECKING: __visit_name__: str @@ -1065,7 +1162,7 @@ def _execute_on_scalar( ) -> Any: ... @util.ro_non_memoized_property - def _all_selected_columns(self): + def _all_selected_columns(self) -> _SelectIterable: raise NotImplementedError() @property @@ -1325,10 +1422,21 @@ def _set_parent_with_dispatch( self.dispatch.after_parent_attach(self, parent) +class SchemaVisitable(SchemaEventTarget, visitors.Visitable): + """Base class for elements that are targets of a :class:`.SchemaVisitor`. + + .. versionadded:: 2.0.41 + + """ + + class SchemaVisitor(ClauseVisitor): - """Define the visiting for ``SchemaItem`` objects.""" + """Define the visiting for ``SchemaItem`` and more + generally ``SchemaVisitable`` objects. + + """ - __traverse_options__ = {"schema_visitor": True} + __traverse_options__: Dict[str, Any] = {"schema_visitor": True} class _SentinelDefaultCharacterization(Enum): @@ -1363,7 +1471,7 @@ class _ColumnMetrics(Generic[_COL_co]): def __init__( self, collection: ColumnCollection[Any, _COL_co], col: _COL_co - ): + ) -> None: self.column = col # proxy_index being non-empty means it was initialized. @@ -1373,10 +1481,10 @@ def __init__( for eps_col in col._expanded_proxy_set: pi[eps_col].add(self) - def get_expanded_proxy_set(self): + def get_expanded_proxy_set(self) -> FrozenSet[ColumnElement[Any]]: return self.column._expanded_proxy_set - def dispose(self, collection): + def dispose(self, collection: ColumnCollection[_COLKEY, _COL_co]) -> None: pi = collection._proxy_index if not pi: return @@ -1509,7 +1617,7 @@ class ColumnCollection(Generic[_COLKEY, _COL_co]): """ - __slots__ = "_collection", "_index", "_colset", "_proxy_index" + __slots__ = ("_collection", "_index", "_colset", "_proxy_index") _collection: List[Tuple[_COLKEY, _COL_co, _ColumnMetrics[_COL_co]]] _index: Dict[Union[None, str, int], Tuple[_COLKEY, _COL_co]] @@ -1628,7 +1736,7 @@ def __contains__(self, key: str) -> bool: else: return True - def compare(self, other: ColumnCollection[Any, Any]) -> bool: + def compare(self, other: ColumnCollection[_COLKEY, _COL_co]) -> bool: """Compare this :class:`_expression.ColumnCollection` to another based on the names of the keys""" @@ -1679,7 +1787,7 @@ def clear(self) -> NoReturn: :class:`_sql.ColumnCollection`.""" raise NotImplementedError() - def remove(self, column: Any) -> None: + def remove(self, column: Any) -> NoReturn: raise NotImplementedError() def update(self, iter_: Any) -> NoReturn: @@ -1688,7 +1796,7 @@ def update(self, iter_: Any) -> NoReturn: raise NotImplementedError() # https://github.com/python/mypy/issues/4266 - __hash__ = None # type: ignore + __hash__: Optional[int] = None # type: ignore def _populate_separate_keys( self, iter_: Iterable[Tuple[_COLKEY, _COL_co]] @@ -1781,7 +1889,7 @@ def as_readonly(self) -> ReadOnlyColumnCollection[_COLKEY, _COL_co]: return ReadOnlyColumnCollection(self) - def _init_proxy_index(self): + def _init_proxy_index(self) -> None: """populate the "proxy index", if empty. proxy index is added in 2.0 to provide more efficient operation @@ -2000,7 +2108,7 @@ def _populate_separate_keys( def extend(self, iter_: Iterable[_NAMEDCOL]) -> None: self._populate_separate_keys((col.key, col) for col in iter_) - def remove(self, column: _NAMEDCOL) -> None: + def remove(self, column: _NAMEDCOL) -> None: # type: ignore[override] if column not in self._colset: raise ValueError( "Can't remove column %r; column is not in this collection" @@ -2097,17 +2205,17 @@ class ReadOnlyColumnCollection( ): __slots__ = ("_parent",) - def __init__(self, collection): + def __init__(self, collection: ColumnCollection[_COLKEY, _COL_co]): object.__setattr__(self, "_parent", collection) object.__setattr__(self, "_colset", collection._colset) object.__setattr__(self, "_index", collection._index) object.__setattr__(self, "_collection", collection._collection) object.__setattr__(self, "_proxy_index", collection._proxy_index) - def __getstate__(self): + def __getstate__(self) -> Dict[str, _COL_co]: return {"_parent": self._parent} - def __setstate__(self, state): + def __setstate__(self, state: Dict[str, Any]) -> None: parent = state["_parent"] self.__init__(parent) # type: ignore @@ -2122,10 +2230,10 @@ def remove(self, item: Any) -> NoReturn: class ColumnSet(util.OrderedSet["ColumnClause[Any]"]): - def contains_column(self, col): + def contains_column(self, col: ColumnClause[Any]) -> bool: return col in self - def extend(self, cols): + def extend(self, cols: Iterable[Any]) -> None: for col in cols: self.add(col) @@ -2137,12 +2245,12 @@ def __eq__(self, other): l.append(c == local) return elements.and_(*l) - def __hash__(self): # type: ignore[override] + def __hash__(self) -> int: # type: ignore[override] return hash(tuple(x for x in self)) def _entity_namespace( - entity: Union[_HasEntityNamespace, ExternallyTraversible] + entity: Union[_HasEntityNamespace, ExternallyTraversible], ) -> _EntityNamespace: """Return the nearest .entity_namespace for the given entity. diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/cache_key.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/cache_key.py index 1f562f2e6..5037f15f9 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/cache_key.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/cache_key.py @@ -1,5 +1,5 @@ # sql/cache_key.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -516,7 +516,7 @@ def _whats_different(self, other: CacheKey) -> Iterator[str]: e2, ) else: - pickup_index = stack.pop(-1) + stack.pop(-1) break def _diff(self, other: CacheKey) -> str: diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/coercions.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/coercions.py index e174833fb..f7c8b1391 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/coercions.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/coercions.py @@ -1,5 +1,5 @@ # sql/coercions.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -52,6 +52,7 @@ from ._typing import _DDLColumnArgument from ._typing import _DMLTableArgument from ._typing import _FromClauseArgument + from ._typing import _OnlyColumnArgument from .dml import _DMLTableElement from .elements import BindParameter from .elements import ClauseElement @@ -212,7 +213,7 @@ def expect( @overload def expect( role: Type[roles.LabeledColumnExprRole[Any]], - element: _ColumnExpressionArgument[_T], + element: Union[_ColumnExpressionArgument[_T], _OnlyColumnArgument[_T]], **kw: Any, ) -> NamedColumn[_T]: ... @@ -843,7 +844,7 @@ def _warn_for_implicit_coercion(self, elem): ) @util.preload_module("sqlalchemy.sql.elements") - def _literal_coercion(self, element, *, expr, operator, **kw): + def _literal_coercion(self, element, *, expr, operator, **kw): # type: ignore[override] # noqa: E501 if util.is_non_string_iterable(element): non_literal_expressions: Dict[ Optional[_ColumnExpressionArgument[Any]], diff --git a/addons/source-python/packages/site-packages/sqlalchemy/sql/compiler.py b/addons/source-python/packages/site-packages/sqlalchemy/sql/compiler.py index 098667f92..7819d51ba 100644 --- a/addons/source-python/packages/site-packages/sqlalchemy/sql/compiler.py +++ b/addons/source-python/packages/site-packages/sqlalchemy/sql/compiler.py @@ -1,5 +1,5 @@ # sql/compiler.py -# Copyright (C) 2005-2025 the SQLAlchemy authors and contributors +# Copyright (C) 2005-2026 the SQLAlchemy authors and contributors # # # This module is part of SQLAlchemy and is released under @@ -109,9 +109,11 @@ from .elements import Null from .elements import True_ from .functions import Function + from .schema import CheckConstraint from .schema import Column from .schema import Constraint from .schema import ForeignKeyConstraint + from .schema import IdentityOptions from .schema import Index from .schema import PrimaryKeyConstraint from .schema import Table @@ -590,6 +592,19 @@ class _InsertManyValues(NamedTuple): """ + has_upsert_bound_parameters: bool = False + """if True, the upsert SET clause contains bound parameters that will + receive their values from the parameters dict (i.e., parametrized + bindparams where value is None and callable is None). + + This means we can't batch multiple rows in a single statement, since + each row would need different values in the SET clause but there's only + one SET clause per statement. See issue #13130. + + .. versionadded:: 2.0.37 + + """ + embed_values_counter: bool = False """Whether to embed an incrementing integer counter in each parameter set within the VALUES clause as parameters are batched over. @@ -2314,10 +2329,7 @@ def get(lastrowid, parameters): @util.memoized_property @util.preload_module("sqlalchemy.engine.result") def _inserted_primary_key_from_returning_getter(self): - if typing.TYPE_CHECKING: - from ..engine import result - else: - result = util.preloaded.engine_result + result = util.preloaded.engine_result assert self.compile_state is not None statement = self.compile_state.statement @@ -3676,8 +3688,19 @@ def visit_bindparam( skip_bind_expression=False, literal_execute=False, render_postcompile=False, + is_upsert_set=False, **kwargs, ): + # Detect parametrized bindparams in upsert SET clause for issue #13130 + if ( + is_upsert_set + and bindparam.value is None + and bindparam.callable is None + and self._insertmanyvalues is not None + ): + self._insertmanyvalues = self._insertmanyvalues._replace( + has_upsert_bound_parameters=True + ) if not skip_bind_expression: impl = bindparam.type.dialect_impl(self.dialect) @@ -4161,7 +4184,7 @@ def visit_cte( if cte.recursive: self.ctes_recursive = True text = self.preparer.format_alias(cte, cte_name) - if cte.recursive: + if cte.recursive or cte.element.name_cte_columns: col_source = cte.element # TODO: can we get at the .columns_plus_names collection @@ -4230,7 +4253,7 @@ def visit_cte( if self.preparer._requires_quotes(cte_name): cte_name = self.preparer.quote(cte_name) text += self.get_render_as_alias_suffix(cte_name) - return text + return text # type: ignore[no-any-return] else: return self.preparer.format_alias(cte, cte_name) @@ -4292,7 +4315,7 @@ def visit_alias( inner = "(%s)" % (inner,) return inner else: - enclosing_alias = kwargs["enclosing_alias"] = alias + kwargs["enclosing_alias"] = alias if asfrom or ashint: if isinstance(alias.name, elements._truncated_label): @@ -4382,7 +4405,13 @@ def _render_values(self, element, **kw): ) return f"VALUES {tuples}" - def visit_values(self, element, asfrom=False, from_linter=None, **kw): + def visit_values( + self, element, asfrom=False, from_linter=None, visiting_cte=None, **kw + ): + + if element._independent_ctes: + self._dispatch_independent_ctes(element, kw) + v = self._render_values(element, **kw) if element._unnamed: @@ -4403,7 +4432,12 @@ def visit_values(self, element, asfrom=False, from_linter=None, **kw): name if name is not None else "(unnamed VALUES element)" ) - if name: + if visiting_cte is not None and visiting_cte.element is element: + if element._is_lateral: + raise exc.CompileError( + "Can't use a LATERAL VALUES expression inside of a CTE" + ) + elif name: kw["include_table"] = False v = "%s(%s)%s (%s)" % ( lateral, @@ -4587,10 +4621,55 @@ def add_to_result_map(keyname, name, objects, type_): elif isinstance(column, elements.TextClause): render_with_label = False elif isinstance(column, elements.UnaryExpression): - render_with_label = column.wraps_column_expression or asfrom + # unary expression. notes added as of #12681 + # + # By convention, the visit_unary() method + # itself does not add an entry to the result map, and relies + # upon either the inner expression creating a result map + # entry, or if not, by creating a label here that produces + # the result map entry. Where that happens is based on whether + # or not the element immediately inside the unary is a + # NamedColumn subclass or not. + # + # Now, this also impacts how the SELECT is written; if + # we decide to generate a label here, we get the usual + # "~(x+y) AS anon_1" thing in the columns clause. If we + # don't, we don't get an AS at all, we get like + # "~table.column". + # + # But here is the important thing as of modernish (like 1.4) + # versions of SQLAlchemy - **whether or not the AS